chore(release): v0.5.0
All checks were successful
Release / goreleaser (push) Successful in 5m32s
Release / publish-npm (push) Has been skipped
Release / update-homebrew (push) Has been skipped

- Mail improvements: numeric index, hook alias, --body alias, bulk delete, parallel queries
- New aliases: gt bd, gt work, --comment, read
- OpenCode agent preset, config-based role system
- Deacon status line display, hook registry
- Squash merge in refinery
- Crew session stability fixes
- Many bug fixes

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
mayor
2026-01-21 23:05:00 -08:00
committed by beads/crew/emma
parent e57297cb1b
commit 5cc2995345
4 changed files with 89 additions and 5 deletions

View File

@@ -7,13 +7,76 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
## [Unreleased] ## [Unreleased]
## [0.5.0] - 2026-01-22
### Added ### Added
- **Configurable polecat branch naming** - Rigs can now customize polecat branch naming via `polecat_branch_template` configuration. Supports template variables: `{user}`, `{year}`, `{month}`, `{name}`, `{issue}`, `{description}`, `{timestamp}`. Defaults to existing behavior for backward compatibility. #### Mail Improvements
- **Numeric index support for `gt mail read`** - Read messages by inbox position (e.g., `gt mail read 1`)
- **`gt mail hook` alias** - Shortcut for `gt hook attach` from mail context
- **`--body` alias for `--message`** - More intuitive flag in `gt mail send` and `gt mail reply`
- **Multiple message IDs in delete** - `gt mail delete msg1 msg2 msg3`
- **Positional message arg in reply** - `gt mail reply <id> "message"` without --message flag
- **`--all` flag for inbox** - Show all messages including read
- **Parallel inbox queries** - ~6x speedup for mail inbox
#### Command Aliases
- **`gt bd`** - Alias for `gt bead`
- **`gt work`** - Alias for `gt hook`
- **`--comment` alias for `--reason`** - In `gt close`
- **`read` alias for `show`** - In `gt bead`
#### Configuration & Agents
- **OpenCode as built-in agent preset** - Configure with `gt config set agent opencode`
- **Config-based role definition system** - Roles defined in config, not beads
- **Env field in RuntimeConfig** - Custom environment variables for agent presets
- **ShellQuote helper** - Safe env var escaping for shell commands
#### Infrastructure
- **Deacon status line display** - Shows deacon icon in mayor status line
- **Configurable polecat branch naming** - Template-based branch naming
- **Hook registry and install command** - Manage Claude Code hooks via `gt hooks`
- **Doctor auto-fix capability** - SessionHookCheck can auto-repair
- **`gt orphans kill` command** - Clean up orphaned Claude processes
- **Zombie-scan command for deacon** - tmux-verified process cleanup
- **Initial prompt for autonomous patrol startup** - Better agent priming
#### Refinery & Merging
- **Squash merge for cleaner history** - Eliminates redundant merge commits
- **Redundant observers** - Witness and Refinery both watch convoys
### Fixed ### Fixed
- **Orphan cleanup skips valid tmux sessions** - `gt orphans kill` and automatic orphan cleanup now check for Claude processes belonging to valid Gas Town tmux sessions (gt-*/hq-*) before killing. This prevents false kills of witnesses, refineries, and deacon during startup when they may temporarily show TTY "?" #### Crew & Session Stability
- **Don't kill pane processes on new sessions** - Prevents destroying fresh shells
- **Auto-recover from stale tmux pane references** - Recreates sessions automatically
- **Preserve GT_AGENT across session restarts** - Handoff maintains identity
#### Process Management
- **KillPaneProcesses kills pane process itself** - Not just descendants
- **Kill pane processes before all RespawnPane calls** - Prevents orphan leaks
- **Shutdown reliability improvements** - Multiple fixes for clean shutdown
- **Deacon spawns immediately after killing stuck session**
#### Convoy & Routing
- **Pass convoy ID to convoy check command** - Correct ID propagation
- **Multi-repo routing for custom types** - Correct beads routing across repos
- **Normalize agent ID trailing slash** - Consistent ID handling
#### Miscellaneous
- **Sling auto-apply mol-polecat-work** - Auto-attach on open polecat beads
- **Wisp orphan lifecycle bug** - Proper cleanup of abandoned wisps
- **Misclassified wisp detection** - Defense-in-depth filtering
- **Cross-account session access in seance** - Talk to predecessors across accounts
- **Many more bug fixes** - See git log for full details
## [0.4.0] - 2026-01-19
_Changelog not documented at release time. See git log v0.3.1..v0.4.0 for changes._
## [0.3.1] - 2026-01-18
_Changelog not documented at release time. See git log v0.3.0..v0.3.1 for changes._
## [0.3.0] - 2026-01-17 ## [0.3.0] - 2026-01-17

View File

@@ -74,9 +74,30 @@ type VersionChange struct {
// versionChanges contains agent-actionable changes for recent versions // versionChanges contains agent-actionable changes for recent versions
var versionChanges = []VersionChange{ var versionChanges = []VersionChange{
{
Version: "0.5.0",
Date: "2026-01-22",
Changes: []string{
"NEW: gt mail read <index> - Read messages by inbox position",
"NEW: gt mail hook - Shortcut for gt hook attach from mail",
"NEW: --body alias for --message in gt mail send/reply",
"NEW: gt bd alias for gt bead, gt work alias for gt hook",
"NEW: OpenCode as built-in agent preset (gt config set agent opencode)",
"NEW: Config-based role definition system",
"NEW: Deacon icon in mayor status line",
"NEW: gt hooks - Hook registry and install command",
"NEW: Squash merge in refinery for cleaner history",
"CHANGED: Parallel mail inbox queries (~6x speedup)",
"FIX: Crew session stability - Don't kill pane processes on new sessions",
"FIX: Auto-recover from stale tmux pane references",
"FIX: KillPaneProcesses now kills pane process itself, not just descendants",
"FIX: Convoy ID propagation in refinery and convoy watcher",
"FIX: Multi-repo routing for custom types and role slots",
},
},
{ {
Version: "0.4.0", Version: "0.4.0",
Date: "2026-01-17", Date: "2026-01-19",
Changes: []string{ Changes: []string{
"FIX: Orphan cleanup skips valid tmux sessions - Prevents false kills of witnesses/refineries/deacon during startup by checking gt-*/hq-* session membership", "FIX: Orphan cleanup skips valid tmux sessions - Prevents false kills of witnesses/refineries/deacon during startup by checking gt-*/hq-* session membership",
}, },

View File

@@ -12,7 +12,7 @@ import (
// Version information - set at build time via ldflags // Version information - set at build time via ldflags
var ( var (
Version = "0.4.0" Version = "0.5.0"
// Build can be set via ldflags at compile time // Build can be set via ldflags at compile time
Build = "dev" Build = "dev"
// Commit and Branch - the git revision the binary was built from (optional ldflag) // Commit and Branch - the git revision the binary was built from (optional ldflag)

View File

@@ -1,6 +1,6 @@
{ {
"name": "@gastown/gt", "name": "@gastown/gt",
"version": "0.4.0", "version": "0.5.0",
"description": "Gas Town CLI - multi-agent workspace manager with native binary support", "description": "Gas Town CLI - multi-agent workspace manager with native binary support",
"main": "bin/gt.js", "main": "bin/gt.js",
"bin": { "bin": {