Split monolithic app.go into focused modules (dashboard, chat, workflow,
config, agents, terminal, commands, handlers). Add proper error handling
for installer commands, proxy pipes, and MCP config parsing. Fix daemon
channel buffer, cap orchestrator history, compile think regex once, and
set HTTP timeouts on preview server. Improve CI with Go module caching,
dependency download step, and test stage with race detection.
😘 Generated with Crush
Assisted-by: GLM-5-Turbo via Crush <crush@charm.land>
Gitea 1.25.2 does not support workflow_dispatch, which silently
prevented the workflow from being parsed. Also added if conditions
on release steps so they only run on push to main, not on PRs.
💘 Generated with Crush
Assisted-by: GLM-5.1 via Crush <crush@charm.land>
Simplify CI: one job does build, vet, cross-compile, then replaces
the "latest" release every push to main. No more separate jobs.
💘 Generated with Crush
Assisted-by: GLM-5.1 via Crush <crush@charm.land>
Gitea Actions wasn't running the separate release.yml. Now both build
and release are in ci.yml as two jobs: build then release (release only
on push to main, not on PRs).
💘 Generated with Crush
Assisted-by: GLM-5.1 via Crush <crush@charm.land>
Remove the skip-if-tag-exists check. Instead, delete old release+tag
for the version before creating a fresh one (like before but per-version).
💘 Generated with Crush
Assisted-by: GLM-5.1 via Crush <crush@charm.land>
- Replace 'q' quit with Ctrl+C confirmation dialog (Yes/No overlay)
Second Ctrl+C within 2s force quits
- Redesign TUI with Charm bubbles components: spinner, progress bar,
help bar, key bindings, better color palette, rounded borders
- Add Shift+Tab to cycle tabs backward
- Fix version: bump to 0.2.0, release workflow checks existing tags
before publishing (no more overwriting releases)
- Handle sudo: CLI auto-relaunches with sudo/pkexec for tools that
need elevated privileges, TUI shows clear error message
💘 Generated with Crush
Assisted-by: GLM-5.1 via Crush <crush@charm.land>
- Skip delete step gracefully if no releases exist
- Check GITEA_TOKEN is set before attempting API calls
- Add clear error message if secret is missing
💘 Generated with Crush
Assisted-by: GLM-5.1 via Crush <crush@charm.land>
GITEA_ENV/GITHUB_ENV doesn't take effect in the same step with
act_runner. Added explicit 'export PATH=/usr/local/go/bin:$PATH'
in every step that uses go.
💘 Generated with Crush
Assisted-by: GLM-5.1 via Crush <crush@charm.land>
- Use actions/checkout@v4 (works with Gitea runner)
- Simplified CI: build + vet
- Release: auto on push to main, creates/updates "latest" release
- Cleaned up archive step
💘 Generated with Crush
Assisted-by: GLM-5.1 via Crush <crush@charm.land>
- Replaced actions/checkout with native git fetch (fixes directory not found)
- Release workflow now triggers on every push to main (no tags needed)
- Auto-creates/updates "latest" release with 6 cross-compiled binaries
- Includes checksums, install instructions, and recent commit log
- Requires GITEA_TOKEN secret in repo settings
💘 Generated with Crush
Assisted-by: GLM-5.1 via Crush <crush@charm.land>
Replaced GitHub Actions with Gitea-compatible workflows:
- CI: build + test + vet on ubuntu-latest (self-hosted runner)
- Release: cross-compile 6 binaries (linux/darwin/windows x amd64/arm64)
with Gitea API release creation and asset uploads
- Removed .github/workflows in favor of .gitea/workflows
Requires Gitea secrets: GITEA_TOKEN, GITEA_SERVER, GITEA_REPO
💘 Generated with Crush
Assisted-by: GLM-5.1 via Crush <crush@charm.land>