github gastownhall/gastown v0.5.0

latest releases: v1.2.1, v1.2.0, v1.1.0...
4 months ago

Gas Town v0.5.0

Pre-compiled binaries for Linux, macOS (Intel & Apple Silicon), and Windows.

Installation

Homebrew (macOS/Linux):

brew install steveyegge/gastown/gt

npm (Node.js):

npm install -g @gastown/gt

Manual Install:
Download the appropriate binary for your platform below, extract it, and place it in your PATH.

Changelog

Features

  • cd347df feat(bead): add 'read' as alias for 'show' subcommand
  • f6fab3a feat(cmd): add --comment as alias for --reason in gt close
  • e12aa45 feat(config): add Env field to RuntimeConfig and AgentPresetInfo (#860)
  • f00b025 feat(config): add OpenCode as built-in agent preset (#861)
  • 7a2090b feat(config): add ShellQuote helper for safe env var escaping (#830)
  • d0a1e16 feat(convoy): add redundant observers to Witness and Refinery
  • aef9975 feat(convoy): add specific convoy ID check and dry-run flag
  • 9b41270 feat(convoy): default owner to creator when not specified
  • 0db2bda feat(deacon): add zombie-scan command for tmux-verified process cleanup
  • 5791cd7 feat(doctor): add auto-fix capability to SessionHookCheck (#857)
  • 6c5c671 feat(doctor): add routing-mode check to detect .beads-planning routing bug (#810)
  • afc1ff0 feat(formula): add verification legs and presets to code-review (#841)
  • 37f465b feat(hooks): add gt block-pr-workflow command for PreToolUse hook
  • d0e49a2 feat(hooks): add hook registry and install command (bd-qj9nc)
  • 1dc3102 feat(mail): accept multiple message IDs in delete command
  • d610d44 feat(mail): add --all flag to 'gt mail inbox' command
  • 3d7b109 feat(mail): add --body as alias for --message/-m in gt mail send
  • 785d9ad feat(mail): add gt mail hook as alias for gt hook attach
  • b612df0 feat(mail): add numeric index support to 'gt mail read'
  • 6616a47 feat(mail): support positional message arg in reply command
  • 44d5b4f feat(orphans): add --aggressive flag for tmux-verified orphan detection
  • 6e2169d feat(orphans): add gt orphans kill command
  • d67aa02 feat(refinery): use squash merge to eliminate redundant merge commits (#856)
  • 544cacf feat(roles): add config-based role definition system (Phase 1)
  • a610283 feat(roles): switch daemon to config-based roles, remove role beads (Phase 2+3)
  • 9f06eb9 feat(seance): support cross-account session access
  • 7c2f968 feat(wisp): add misclassified wisp detection and defense-in-depth filtering (#833)
  • 0239025 feat: Add configurable polecat branch naming (#825)
  • dff6c3f feat: add aliases and deacon status line display
  • fd61259 feat: add initial prompt for autonomous patrol startup (deacon & witness) (#769)

Bug Fixes

  • fa1f812 fix(beads): multi-repo routing for custom types and role slots
  • a8be623 fix(cmd): extract orphan cleanup to platform-specific files (#835)
  • 55a3b98 fix(config): correct Claude prompt prefix from > to ❯ (#765)
  • 35abe21 fix(convoy): pass specific convoy ID in ConvoyWatcher check
  • a8bedd2 fix(costs): add event to BeadsCustomTypes constant (#731)
  • 45951c0 fix(costs): skip test affected by bd CLI 0.47.2 commit bug
  • fb4c415 fix(crew): auto-recover from stale tmux pane references
  • e57297c fix(crew): don't kill pane processes when creating new session
  • 183a0d7 fix(crew): use directory name as source of truth in loadState (#785)
  • 0cdcd0a fix(daemon): spawn Deacon immediately after killing stuck session (#729)
  • 3931d10 fix(dashboard): use registered rigs for merge queue instead of hardcoded repos (#863)
  • e59955a fix(docs): link for go install (#792)
  • 2119841 fix(doctor): check patrol formulas instead of placeholder beads (#715)
  • 7712628 fix(done): allow completion when work pushed directly to main
  • 9a91a1b fix(done): restrict gt done to polecats only
  • 2fe23b7 fix(done): terminate polecat session for all exit types (#800)
  • 1a0f2d6 fix(formula): clarify WITNESS_PING routing in witness patrol (#854)
  • 987502e fix(formula): sync source formula with embedded changes (#845)
  • e591f2a fix(formulas): replace hardcoded ~/gt/ paths with $GT_ROOT (#758)
  • 08cee41 fix(handoff): normalize identity in sendHandoffMail (#780)
  • 48ace2c fix(handoff): preserve GT_AGENT across session restarts (#788)
  • 39b1c11 fix(handoff): use env var fallback when town root detection fails
  • c42b5db fix(hook): normalize agent ID trailing slash in agentIDToBeadID (gt-az3jjb)
  • 77ac332 fix(hooks): add PreToolUse pr-workflow guard to settings templates
  • 7016b33 fix(hooks): allow feature branches in contributor workflow (#850)
  • 40cc4c9 fix(identity): copy all agent fields during polecat identity rename
  • b333bf8 fix(install): Makefile uses go install to match docs (#851)
  • 4dd11d4 fix(mq): use label instead of issue_type for merge-request filtering (#831)
  • 7564cd5 fix(patrol): use gt formula list instead of bd mol catalog (#827)
  • 3afd1a1 fix(polecat): exclude reserved infrastructure agent names from allocator (#837)
  • b14835b fix(refinery): pass convoy ID to convoy check command
  • b9f5797 fix(refinery): use role-specific runtime config for startup (#756) (#847)
  • aba0a50 fix(seance): add tests and fix race condition in session index (#864)
  • 08bc632 fix(session): add instructions for attach topic in startup nudge
  • 65c1fad fix(shutdown): Improve gastown shutdown reliability
  • f4072e5 fix(shutdown): fix session counter bug and add --cleanup-orphans flag (#759)
  • d2f7dbd fix(shutdown): use KillSessionWithProcesses to prevent orphans
  • 195ecf7 fix(sling): allow auto-attach mol-polecat-work on open polecat beads
  • 0dfb0be fix(sling): auto-apply mol-polecat-work (#288) and fix wisp orphan lifecycle bug (#842) (#859)
  • 126ec84 fix(sling): check hooked status and send LIFECYCLE:Shutdown on --force (#828)
  • 53fd6ba fix(sling): don't show closed convoy tracking
  • 82079f9 fix(sling): handle agent bead not found gracefully
  • b8eb936 fix(sling): prevent agent self-interruption during tests
  • f58a516 fix(test): remove stale TestInstallTownRoleSlots test (#819)
  • 405d40e fix(tmux): KillPaneProcesses must kill pane process itself, not just descendants
  • 94c2d71 fix(tmux): kill pane processes before all RespawnPane calls to prevent orphans
  • f82477d fix(tmux): prevent gt done from killing itself during session cleanup (#821)
  • 63a30ce fix(tmux): resolve claude path for alias installations (#703) (#748)
  • 9caf530 fix(tmux): use KillSessionWithProcesses to prevent zombie bash processes
  • 3c44e22 fix(witness): run convoy check regardless of cleanup status
  • 560431d fix: ExpectedPaneCommands returns both node and claude for Claude Code (#740)
  • 8b393b7 fix: cherry-pick lint and formula sync fixes from upstream
  • 61e9a36 fix: create boot directory on install and make fixable
  • e2bd5ef fix: create daemon.json on install, make templates check informational
  • b28c25b fix: create plugins/ directory during install
  • 2aadb01 fix: ensure gitignore patterns on role creation
  • 2333b38 fix: explicitly set issue_prefix config during install
  • 035b777 fix: handle error return from os.RemoveAll in defer
  • 7421d15 fix: include queue in custom types during install
  • 6f9bfec fix: install pre-checkout hook in gt git-init
  • b73ee91 fix: isolate git clone operations from parent repos
  • 4eb3915 fix: kill orphaned bd daemons before beads init
  • 05ea767 fix: orphan-processes check only detects Gas Town processes
  • 4fbe00e fix: respect GT_TOWN_ROOT in quick-add command (#840)
  • 78001d2 fix: update patrol_check tests and add cross-filesystem clone support
  • 3588dbc fix: use exec env for startup command to fix WaitForCommand detection (#844)
  • 8c200d4 fix: use gt prime --hook in session hooks
  • b71188d fix: use ps for cross-platform daemon detection
  • b41a5ef fix: verify .beads directory exists after bd init

Others

  • 5c45b44 Add Windows stub for orphan cleanup (#808)
  • 7e5c3dd Add comprehensive tests for internal/dog package (#737)
  • 477c28c Create initial commit before gh repo create --push
  • 6966eb4 Escape backticks and dollar signs in quoteForShell (#777)
  • 2514507 Fix GT_ROOT export for beads formula search compatibility (#718)
  • 6bfe61f Fix daemon shutdown detection bug
  • 1b036aa Fix deacon patrol process leak by killing pane processes before respawn (#745)
  • 1e97d1e Fix go-19z: updateAgentHookBead uses wrong directory for rig-level beads (#733)
  • 9de8859 Fix orphan detection to recognize hq-* sessions (#744)
  • e4ebd07 Fix settings templates to use 'gt prime --hook' for session ID tracking (#719)
  • 371074c Fix tmux error handling for "no current target" (#755)
  • 3d5a66f Fixing unit tests on windows (#813)
  • b2b9cbc Merge upstream/main into fix/fresh-install-fixes
  • 748fa73 chore(formula): trim verbose witness-patrol description
  • 5cc2995 chore(release): v0.5.0
  • 5a14053 docs(templates): add explicit bead filing guidance to role templates
  • 6a22b47 fix(await-signal): update agent last_activity on signal received (#774)
  • 78ca8bd fix(witness,refinery): remove ZFC-violating state types
  • 0a6b0b8 fix(witness,rig): code review cleanup
  • a5bbe24 perf: parallelize mail inbox queries for ~6x speedup
  • dcf7b81 refactor(hooks): rename to gt tap guard pr-workflow
  • 5218102 refactor(witness,refinery): ZFC-compliant state management

Don't miss a new gastown release

NewReleases is sending notifications on new releases.