Wires tauri-plugin-updater + tauri-plugin-process into the app so
future releases are discovered and installed from GitHub Releases
without a manual download.
Backend
- Registers both plugins in lib.rs and adds updater:default /
process:default capabilities.
- tauri.conf.json: plugins.updater block pointing at
releases/latest/download/latest.json, bundle.createUpdaterArtifacts
so tauri-action emits the .app.tar.gz + signature pair, and
bundle.macOS.signingIdentity "-" ad-hoc signing to avoid Gatekeeper
"app is damaged" errors on Apple Silicon after an in-place update.
- Pubkey is a placeholder; generated locally and pasted before
tagging v1.1.0.
Frontend
- src/lib/updater.ts wraps check() → downloadAndInstall() → relaunch()
with failure modes (offline, 404, bad signature, non-tauri dev
preview) collapsed into a plain result shape.
- App runs a silent check on mount and surfaces a dismissable banner
when a newer version is available. A "Updates" button in the
header runs the same check on demand.
CI
- release.yml passes TAURI_SIGNING_PRIVATE_KEY +
TAURI_SIGNING_PRIVATE_KEY_PASSWORD to tauri-action so it generates
and signs latest.json.
- New publish-release job flips draft → false after all artifacts
upload, so releases/latest never resolves to a half-built manifest.
- Release notes call out that v1.0.0 → v1.1.0 requires a one-time
manual install; the updater can only take over from v1.1.0 onward.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Introduces an Agent Settings editor for ~/.gsd/agent/settings.json
(Claude Code config), covering model, permissions, environment vars,
status line, and maintenance fields. Unknown keys round-trip verbatim
so hooks and experimental flags are preserved on save.
Also fixes a Vite CSS build break: the Google Fonts @import now
precedes @import "tailwindcss", since Tailwind v4 inlines its import
and would otherwise push any later @import past the top-of-file
requirement.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>