| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2026-04-07 | feat: reverse alias IDs for better shell tab-completionv0.28.2 | Paul Buetow | |
| Alias IDs are now stored in reversed form (e.g. id=37 → "10" instead of "01") so that the first character varies quickly across consecutive IDs, making shell auto-completion more effective. The counter logic is unchanged; only the string representation is reversed via a new reverseString helper in encodeTaskAliasID/decodeTaskAliasID. The cache file is bumped to task-aliases-v2.json so existing mappings are abandoned and all aliases are regenerated with the new format. Also fix TestDispatcher_CompleteUUIDsSubcommand to use an isolated temp dir for the alias cache, preventing flakiness from cross-test pollution. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-04-07 | release: v0.28.1v0.28.1 | Paul Buetow | |
| Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-04-07 | feat: remove tmux edit popup support for Claude Code | Paul Buetow | |
| Claude Code CLI now supports Ctrl+G to open the prompt in EDITOR (like OpenAI Codex CLI), making the built-in hexai-tmux-edit agent profile redundant. - Remove internal/tmuxedit/claude_agent.go and its tests - Update builtinAgents() to exclude claude; built-ins are now: cursor, amp, aider - Update all documentation (README, docs/tmux.md, docs/usage.md, docs/configuration.md) - Update config.toml.example to reflect new agent list Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-03-29 | feat: implicit add for na/no-agent scope prefixv0.28.0 | Paul Buetow | |
| Amp-Thread-ID: https://ampcode.com/threads/T-019d37f6-6549-7119-979a-88bc1225c594 Co-authored-by: Amp <amp@ampcode.com> | |||
| 2026-03-28 | release: v0.27.3v0.27.3 | Paul Buetow | |
| Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-03-28 | fix: prevent integration test task leaks and fix cleanup reliability | Paul Buetow | |
| Two related issues with the integration test cleanup: 1. deleteTask used the test's context, which could be cancelled if the test had already timed out — causing deferred cleanup to silently fail and leak Taskwarrior tasks across runs. Fixed by using a fresh background context with a short timeout inside deleteTask. 2. No mechanism existed to clean up tasks leaked by previous runs, which could accumulate and pollute subsequent test runs. Added cleanupOrphanedIntegrationTasks() called from TestMain that bulk-deletes all project:hexai +integrationtest pending tasks using taskwarrior's "all" confirmation answer for efficiency. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-03-28 | perf: replace linear scan with O(1) map lookup in task alias cache | Paul Buetow | |
| Add in-memory byUUID and byAlias maps to taskAliasCache so that ensureAlias, lookupUUIDByAlias, and lookupAliasByUUID all run in O(1) instead of scanning the full entries slice. Maps are rebuilt after every mutation (load, prune, append) to avoid stale pointers. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-03-28 | Rename "Pro" column header to "Pri" for Priority in ask command output | Paul Buetow | |
| Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com> | |||
| 2026-03-27 | release: v0.27.2v0.27.2 | Paul Buetow | |
| 2026-03-27 | release: v0.27.1v0.27.1 | Paul Buetow | |
| 2026-03-27 | Rename ask table headers | Paul Buetow | |
| 2026-03-27 | Implement command registry for askcli commands | Paul Buetow | |
| 2026-03-27 | docs: document askcli exports | Paul Buetow | |
| 2026-03-27 | Explicitly ignore askcli write errors | Paul Buetow | |
| 2026-03-27 | Switch task alias cache save to pointer | Paul Buetow | |
| 2026-03-27 | Move selector helpers into task selector | Paul Buetow | |
| 2026-03-27 | Extract parseGlobalFlags helper | Paul Buetow | |
| 2026-03-27 | refactor: share alias cache lookup | Paul Buetow | |
| 2026-03-27 | Split askcli info and add commands | Paul Buetow | |
| 2026-03-27 | Use Go 1.21 max builtin in formatter | Paul Buetow | |
| 2026-03-27 | 664b9fe4: extract renderTaskList helper | Paul Buetow | |
| 2026-03-27 | Remove dead UUID completion items (61568dc2-6915-4444-8027-2ad4eacf2408) | Paul Buetow | |
| 2026-03-27 | Fix dispatcher routing test for 38d5bd83-29e7-4a3c-ad44-21dddfbdfe22 | Paul Buetow | |
| 2026-03-27 | refactor: extract runSingleTaskCommand helper ↵ | Paul Buetow | |
| (715cc01f-1630-4d11-b6fd-18d64a8c2035) | |||
| 2026-03-27 | task 3a4c0f14-16ad-487f-af7c-bd99ee6464e6: use pointer Dispatcher receivers | Paul Buetow | |
| 2026-03-27 | askcli: support add depends selectors | Paul Buetow | |
| 2026-03-27 | release: v0.27.0v0.27.0 | Paul Buetow | |
| 2026-03-27 | fix ask description width 84f1af4e-be84-4265-9df2-8f6932059913 | Paul Buetow | |
| 2026-03-27 | fix ask alias output wording 7f53c2ff-4eb0-4c7e-bf90-f44587364f4a | Paul Buetow | |
| 2026-03-27 | fix askcli header width for 0685342b-606c-4c8f-aab5-cd363d926e77 | Paul Buetow | |
| 2026-03-27 | fix ask add alias output for 1a1731dc-1f11-42bd-be12-4c1af7f7e673 | Paul Buetow | |
| 2026-03-27 | test: cover ask info dependencies 052ad39a-6967-4628-a65c-db2a163de09b | Paul Buetow | |
| 2026-03-27 | Verify fish selector completion coverage for ↵ | Paul Buetow | |
| 6c1f2f60-d55c-4a0c-ba5d-e897c738ecb4 | |||
| 2026-03-27 | Add alias coverage for task b777fcc2-8f64-4250-b0ac-6038a8aa26b4 | Paul Buetow | |
| 2026-03-27 | task 73fabcf6-d4a1-4bf3-aae1-a390a734e517: extend ask selector completion | Paul Buetow | |
| 2026-03-27 | askcli: show task aliases in output (cd322ed1-882d-40e9-ab98-689acd5f161e) | Paul Buetow | |
| 2026-03-26 | askcli: resolve aliases for selector task 0b9480fe-ec1b-4c0e-a8b0-88f1f08b56d3 | Paul Buetow | |
| 2026-03-26 | Implement ask alias cache foundation for d5a99b1b-13f3-4b73-8222-71f012c60bc9 | Paul Buetow | |
| 2026-03-26 | test: cover ask subcommands bc6220a5-4fd3-4413-abce-3555230ac919 | Paul Buetow | |
| 2026-03-26 | Implement ask started-task info 4c3640dc-3730-40c9-bfa6-db90564e3171 | Paul Buetow | |
| 2026-03-26 | release: v0.26.1v0.26.1 | Paul Buetow | |
| 2026-03-26 | release: v0.26.0v0.26.0 | Paul Buetow | |
| 2026-03-26 | ask: speed up fish UUID completion | Paul Buetow | |
| 2026-03-26 | build: enforce coverage threshold | Paul Buetow | |
| 2026-03-26 | ask: filter fish UUID completion | Paul Buetow | |
| 2026-03-26 | ask: add fish UUID completions | Paul Buetow | |
| 2026-03-26 | ask: align list header columns for task da6d3d36 | Paul Buetow | |
| 2026-03-26 | ask: silence rc.confirmation override banner | Paul Buetow | |
| 2026-03-26 | ask: add fish completions for task CLI | Paul Buetow | |
| 2026-03-24 | ask: add --json flag for machine-readable outputv0.25.12 | Paul Buetow | |
| List, ready, all, info, and urgency commands now output JSON arrays when --json is passed. This fixes pi agent-plan-mode extension which expects JSON from ask but was getting human-readable tables. Amp-Thread-ID: https://ampcode.com/threads/T-019d207c-b8e2-748d-af52-dd8f84fb2b32 Co-authored-by: Amp <amp@ampcode.com> | |||
