Skip to content

feat(update): add source-based update flow from local git checkout#461

Open
Steven17D wants to merge 4 commits intoasheshgoplani:mainfrom
Steven17D:feat/source-based-update
Open

feat(update): add source-based update flow from local git checkout#461
Steven17D wants to merge 4 commits intoasheshgoplani:mainfrom
Steven17D:feat/source-based-update

Conversation

@Steven17D
Copy link
Copy Markdown
Contributor

Summary

  • Adds a source-based self-update mode for users who build from a local git checkout
  • Configurable source_dir in user config (defaults to ~/agent-deck)
  • Shows commit hash in version output when built from source
  • Validates source dir is a git repo and skips update on diverged branches

Test plan

  • Build from source checkout with make build, verify version shows commit hash
  • Configure source_dir and run agent-deck update, verify it pulls and rebuilds
  • Test with invalid/missing source dir, verify graceful error handling

🤖 Generated with Claude Code

@Steven17D Steven17D force-pushed the feat/source-based-update branch 2 times, most recently from 5fb66f5 to e83c987 Compare March 30, 2026 02:24
Introduce source-based self-updates as an alternative to release binary
updates. Adds source_dir/source_ref config for tracking a local checkout,
compares HEAD vs source_ref to compute update availability, runs git pull
and builds directly to the install path during source-mode updates.

Skips update prompt on diverged branches, validates source_dir is a git
repository, and shows build commit hash in version output via ldflags.
Builds directly to the executable path and re-signs with codesign on
macOS to preserve the ad-hoc code signature.
@Steven17D Steven17D force-pushed the feat/source-based-update branch from e83c987 to abc58fe Compare March 30, 2026 02:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant