Skip to content

Releases: beyondeye/aitasks

v0.26.1

25 Jun 06:00

Choose a tag to compare

Features

  • Launch a bare code agent from the TUI switcher (t1070): The TUI switcher gained an e shortcut to start a code agent in a fresh window with no task attached, letting you pick the agent and model on the spot for ad-hoc work.

Bug Fixes

  • Resilient ait upgrade under GitHub rate limiting (t1069): ait upgrade and ait setup now handle GitHub API rate limits gracefully — falling back to git tags and reporting accurate status instead of failing with a misleading "No releases found" message.

v0.26.0

24 Jun 19:26

Choose a tag to compare

Features

  • Gate orchestrator engine (t635_11): Added a gate orchestrator that runs a task's declared verification gates — handling retries, parallelism, and stuck-detection — plus ait gates run and gate-authoring scaffolding.
  • Resume in-flight tasks (t635_6): Added an aitask-resume command that re-enters an interrupted task at its last checkpoint, driven by the recorded gate ledger.
  • Gate-aware task picking (t635_7): aitask-pick now surfaces in-flight tasks as resume candidates and routes a picked task straight back to where it left off.
  • Shared gate-ledger parser (t635_8): Added a shared parser for gate-run state so TUIs and tools read task progress from one consistent source.
  • Board In-Flight view (t635_9): The board gained an In-Flight view listing actively implementing tasks with their gate state and a one-key resume launch.
  • Monitor gate status (t635_10): The monitor now shows a compact gate summary (passed/pending/failed) for each running agent.
  • Mobile live terminal streaming (t822_8): Applink can stream live terminal snapshots to the mobile companion as compact binary keyframes.
  • Mobile delta streaming (t822_9): Terminal updates stream as row-level deltas, sending only changed lines to the mobile app.
  • Mobile append fast path (t822_10): Scrolling output uses an append fast path that sends just the new bottom rows, cutting bandwidth for log-like panes.
  • Mobile task-action handshakes (t822_11): Added confirm/suggest handshakes for restarting a task or picking the next sibling from the mobile app.
  • Headless applink bridge (t822_13): ait monitor --headless-for-applink runs the mobile bridge without the terminal UI, printing an ASCII-QR pairing block — ideal for servers.
  • Device name in pairing QR (t822_5): The mobile pairing QR now carries the host's name so the companion app can label the connection.
  • Applink firewall doctor (t1043): Applink diagnoses LAN firewall issues at launch and offers a guided, consent-based fix so pairing isn't silently blocked.
  • Project groups (t1025_1): Projects can be organized into named groups via ait projects group, with an explicit ungrouped bucket and slug validation.
  • Two-axis project navigation (t1025_2): The TUI switcher and stats view added group-aware navigation, letting you cycle by project group as well as by session.
  • Project Groups settings tab (t1025_3): The settings TUI gained a Project Groups tab to assign, clear, rename, and sync groups, with create-on-type support.
  • Topic anchor field (t1016_1): Tasks can carry an anchor field grouping them under a root topic, with --anchor/--followup-of flags on create and update.
  • Board By-Topic view (t1016_4): The board gained a By-Topic view (y) that groups tasks into topic lanes by their anchor, with an editable anchor field in task detail.
  • Shadow concern format (t1037_1): Defined a structured concern-block format and parser so a shadow agent's plan critiques can be machine-read.
  • Shadow emits concerns (t1037_2): The shadow agent now emits its plan challenges and assumption checks as a structured, prioritized concern block.
  • Concern picker (t1037_3): Added a picker modal to select among a shadow agent's surfaced concerns and copy them for the followed agent.
  • Forward shadow concerns (t1037_4): minimonitor can capture a shadow agent's concerns (c), offer them automatically, and copy the selected ones to the clipboard.

Enhancements

  • Restart operations from Running tab (t1018_2): The brainstorm Running tab can re-run a whole operation group fresh (n) or retry-apply it (i), with one-call group cleanup.
  • Double-click to open group detail (t1018_3): Double-clicking a group row in the brainstorm Running tab opens its detail, and a focused+hovered row keeps the accent color.
  • Cross-group project browsing (t1036): Session cycling in the switcher and stats walks a cross-group ring, re-pointing the group axis as you move.
  • Auto-refresh In-Flight board (t1024): Switching to the board's In-Flight view reloads task and gate state automatically.
  • DAG node marks (t1004): Marked nodes in the brainstorm graph show a ☑/☐ checkbox glyph, matching the list view.
  • Follow-up anchor provenance (t1016_3): Auto-created follow-up tasks inherit their origin via --followup-of, keeping them grouped with the originating topic.
  • Richer concern framing (t1037_6): Shadow concern bodies carry full framing (problem, why it bites, how to confirm) rather than a bare one-liner.

Improvements

  • Unified Browse tab (t983_3): Merged the brainstorm list and graph tabs into a single Browse tab with a toggle and one shared node-detail panel.
  • Operations dialog (t983_4): The node-action dialog became a unified Operations dialog with selection-aware ops, a target summary, and in-modal help.
  • Node Hub overlay (t983_5): Pressing Enter on a node opens a Node Hub overlay combining detail view with an Operations entry point.
  • Pre-seeded operation wizard (t983_6): Launching an operation from a node or marked set pre-seeds the wizard, skipping the redundant node-selection step.
  • Compare overlay (t983_7): The brainstorm Compare tab became an on-demand overlay reachable from the Node Hub and Browse.
  • Session tab (t983_8): Split session-lifecycle actions into their own Session tab, keeping the operations picker focused on design ops.
  • Running tab + status strip (t983_9): Renamed the Status tab to Running, added an always-on runtime strip, and added agent cleanup/retry actions.
  • Operation wizard as overlay (t983_11): Moved the multi-step operation wizard out of a tab into a dedicated modal screen.
  • Footer keybinding hygiene (t1018_1): Scoped brainstorm retry actions to their owning tab and replaced undeliverable chord shortcuts with working ones.
  • Single Browse cursor state (t1003): Consolidated the brainstorm Browse cursor onto a single selection model.
  • Modularized brainstorm code (t1048): Split the large brainstorm TUI module into focused submodules, shrinking the main file by ~39% with no behavior change.
  • Named project registry records (t1029): Project registry rows are parsed into named records for clearer, safer field access.
  • Shared group-cycle logic (t1033): Centralized the project-group cycling logic shared by the switcher and stats views.

Bug Fixes

  • Cross-repo & archived board relations (t1021): The board resolves archived tasks in cross-repo, child, and folded relations.
  • Board detail actions from dependencies (t1062): Fixed board detail actions being dropped when a task was opened from a dependency.
  • Parent/child task resolution (t1026): A parent id no longer wrongly matches an active child.
  • Primary-branch detection in sync (t1027): Sync/desync detects the repo's primary branch instead of assuming main.
  • Primary-branch in contribute/externalize (t1031): Fixed hardcoded main assumptions in the contribute and plan-externalize flows.
  • Brainstorm comparator lifecycle (t1020): Gave the comparator a proper completion lifecycle so results apply reliably.
  • Brainstorm crew status (t1041): Fixed stale crew status by deriving the rollup on read.
  • Brainstorm tab-switch keys (t1060): Tab-switch keys fire from any tab, not just Browse.
  • Brainstorm wizard/preview UX (t1047): Fixed several node-operation wizard and preview-checkbox UX bugs.
  • Brainstorm config mount timing (t1050): Hardened config mounting so the proposal preview populates reliably.
  • Root node delete guard (t1010): Guarded against deleting the root node in a brainstorm graph.
  • Brainstorm footer scoping (t1039): The footer no longer shows actions that don't apply to the current tab.
  • Brainstorm cycle-field contrast (t1019): Fixed low-contrast text on a focused cycle field.
  • Focused-row hover color (t1038): Fixed focused brainstorm rows losing their accent color on hover.
  • Applink empty subscribe (t1044): An empty applink subscribe expands to all panes instead of subscribing to none.
  • Monitor pane resize (t981): Fixed monitor pane resize to use the subprocess path, restoring correct geometry.
  • Narrow agent-command dialog (t1012): Fixed the minimonitor agent-command dialog to render correctly in narrow panes.
  • Codex plan helper readiness (t1006): The Codex plan helper waits for the composer to be ready before sending the prompt.
  • Codex/OpenCode mirror markers (t1028): Fixed duplicated instruction markers in the Codex and OpenCode mirrors.
  • Helper-script permission drift (t1001): Restored a missing helper-script permission entry that caused approval drift.
  • Pre-existing test failures (t1014): Fixed pre-existing board and workflow test failures.
  • Multi-session monitor test (t987): Fixed a multi-session monitor test by isolating its tmux environment.

Documentation

  • Brainstorm TUI docs (t929_3): Added a code-verified brainstorm TUI documentation set (overview, how-to, reference).
  • Brainstorm agent defaults (t968): Documented brainstorm per-agent model defaults and stopped the settings UI from rendering orphaned agent rows.
  • Project group docs (t1025_4): Added code-verified documentation for project groups and the new navigation behaviors.
  • Anchor docs (t1016_2): Documented the new task anchor field across all schema, skill, and website surfaces.
  • Shadow agent docs (t986_6): Documented the shadow companion agent across the framework docs and website.
  • Shadow concern picker docs (t1049): Documented the shadow concern-forwarding flow and the minimonitor c picker.
  • Applink permissions docs (t822_12): Synced the applink permission/verb gating table with the canonical command inventory.
  • Monitor design doc refresh (t1013): Refreshed the applink monitor-port design doc to drift-proof symbol references.

Mai...

Read more

v0.25.0

15 Jun 12:57

Choose a tag to compare

Features

  • Gate ledger substrate (t635_1): Tasks can now carry named approval checkpoints ("gates") recorded in a durable ledger — the foundation for gate-aware dependency, archival, and resume behavior.
  • Task-workflow checkpoint recording (t635_2): With the new record_gates profile option, the task workflow records its approval checkpoints (plan approved, risk evaluated, build verified, review approved, merge approved) as gate runs. Enabled by default on the fast profile.
  • Dependency-unblock semantics (t635_3): A task's dependents are now released as soon as its integration gates pass, rather than waiting for the task to fully complete.
  • Gate-guarded archival (t635_4): A task that declares gates won't archive until all of them pass, with an in-session "resolve now & archive" offer and an --ignore-gates escape hatch.
  • Ledger-driven re-entry (t635_5): The task workflow is now re-entrant — picking up an in-flight task resumes it at the right point (planning, implementation, or post-implementation) based on its recorded checkpoints.
  • Applink WebSocket listener (t822_7): Added the applink control plane — a paired, TLS-secured wss:// listener that lets the mobile companion app connect, plus a Devices screen for viewing and revoking paired devices.
  • Shadow context fetch (t986_3): Added a helper that resolves a task's file and most-recent plan (and optionally sibling context) to feed the shadow companion.
  • Shadow companion command (t986_4): Added /aitask-shadow, an advisory companion that reads a followed agent's terminal output to explain it, help answer a prompt, or critically challenge its plan.
  • Minimonitor shadow trigger (t986_5): The minimonitor can now launch a shadow companion for the followed agent (the e key), with a configurable agent/model and same-window-vs-separate-window placement.

Bug Fixes

  • Preserve local models on upgrade (t982): Upgrading now merges new seed models into your model configuration instead of overwriting it — local entries are kept and new ones appended.
  • Monitor refresh benchmark (t984): Fixed the monitor-refresh benchmark to patch the current monitor internals instead of a removed symbol.
  • Cross-repo deps in board detail (t990): The board detail view now shows cross-repo dependencies, and opening a linked cross-repo task renders its metadata and body correctly instead of raw YAML.
  • Project resolver whitelist (t991): Whitelisted the project-resolver helper so code agents can resolve cross-repo project names without a permission prompt.
  • Archived tasks in board dialogs (t992): Board relation dialogs (Depends / Verifies) now resolve and open archived tasks read-only instead of failing to find them.
  • Narrow-pane sibling dialogs (t998): Fixed cramped rendering of the minimonitor's next-sibling dialogs in narrow panes — they now widen and stack their buttons vertically.

Enhancements

  • Minimonitor shadow layout (t994): Improved the minimonitor shadow pane (placement and configurable width), reorganized the footer, added an r refresh binding, and wrapped the task description onto two lines.
  • Trim kill-confirm dialog (t995): Trimmed the minimonitor's kill-confirmation dialog so it fits in narrow panes.
  • Shadow startup greeting (t997): The shadow companion now greets you with its capabilities at startup and proactively surfaces relevant observations after each capture.

Improvements

  • Extract monitor core (t822_6): Extracted a Textual-free headless monitor core module — the shared substrate for the monitor TUIs and the new applink listener (no user-visible behavior change).
  • Brainstorm node detail panel (t983_1): Refactored the brainstorm node-detail view into a reusable panel widget.
  • Brainstorm node-selection model (t983_2): Added a headless node-selection model (primary cursor + marked set) for the brainstorm TUI.
  • Pane-keyed monitor state (t986_1): Re-keyed monitor state by pane so multiple agents per window — and shadow panes — are tracked and excluded correctly.

Tests

  • Multi-session monitor test update (t999): Aligned the multi-session monitor test suite with the monitor_core package and the new shadow-target pane field.

Maintenance

  • Stale test comment fix (t915): Fixed a stale comment in the skill-render test suite.
  • Port shadow to Codex (t988): Ported the /aitask-shadow command to Codex CLI.
  • Port shadow to OpenCode (t989): Ported the /aitask-shadow command to OpenCode.

v0.24.0

12 Jun 08:13

Choose a tag to compare

Features

  • Gates framework roadmap (t635): Locked the design decisions and roadmap for an upcoming task-gates framework, including a documentation track and a docs_updated gate.
  • Kill & next commands in minimonitor (t944): The minimonitor can now kill the followed agent (k) or launch its next sibling task (n) directly, and shows the followed agent in its own dedicated panel separate from the general list.
  • Reusable proposal preview pane (t945_1): Added a side-by-side proposal preview to the brainstorm TUI, with a section minimap and adjustable split ratios.
  • Proposal preview in the explore wizard (t945_2): The brainstorm explore wizard now shows the source node's proposal side-by-side as you configure the next step.
  • Source-node choice & preview in decompose (t945_3): The module-decompose wizard now lets you pick the source node and previews its proposal side-by-side, with full Tab navigation across inputs, minimap, and proposal.
  • Fable 5 model for Claude Code (t966): Registered the Fable 5 (claude-fable-5) model so it can be selected for Claude Code agents.

Enhancements

  • Review module decomposition before applying (t929_1): module_decompose now offers a "Review before apply" gate where you can preview the proposed breakdown and re-run it with steering notes before it lands.
  • Agent-proposed module sets (t929_2): module_decompose gained an "Agent-proposed" mode that infers the module breakdown from the plan instead of requiring you to name modules up front.
  • Tmux sessions survive compositor restarts (t943): Agent tmux sessions now launch in a persistent systemd user slice, so they survive a session/compositor teardown (e.g., a Wayland compositor restart).
  • Dedicated tmux server (t953): ait now runs its tmux sessions on a dedicated, persistent socket isolated from your default tmux server, with a configurable opt-out and a legacy-attach offer.
  • Line-numbered proposal view (t954): Added a Ctrl+Shift+L toggle that switches the brainstorm proposal preview to a syntax-highlighted, line-numbered source view.
  • Hardened tmux server creation (t956): New tmux servers spawned by agent launches now land in a persistent slice (with setsid/plain fallbacks), making detached agent sessions more robust.
  • Fuzzy search for shortcuts (t958): The shortcut editor and the Settings Shortcuts tab now have a fuzzy filter box for quickly finding keybindings.

Bug Fixes

  • Codebrowser ANSI-file hang (t940): Fixed the codebrowser hanging on files containing raw ANSI/control characters; those bytes now render as visible control-picture glyphs.
  • Monitor window rename (t941): The monitor now renames only its own tmux window on startup instead of an untargeted rename that could hit the wrong window.
  • TUI switcher default project from minimonitor (t947): Opening the TUI switcher from the minimonitor now defaults to the followed agent's project, regardless of list focus.
  • Dead minimap Tab binding (t949): Removed a dead minimap class carrying a misleading, latent Tab binding.
  • tmux test bitrot (t951): Fixed two broken tmux tests (a relative-import failure and a stale field assertion).
  • stats-tui missing from help (t963): ait help now lists the stats-tui command.
  • App-scope shortcut remapping (t964): Custom App- and modal-scope keybinding overrides now take effect on the live keymap immediately, instead of silently requiring a restart.
  • Settings shortcuts test isolation (t972): Fixed a test-ordering failure in the Settings Shortcuts tab caused by shared label-case cache state.
  • Detached TUI-spawned agents (t974): Agents launched from a TUI (board, codebrowser, sync) now run in their own session and survive quitting the TUI that spawned them.
  • History progressive-load fixes (t975): Fixed the codebrowser History view dropping child tasks during progressive loading and serving stale data; it now reconciles the window and auto-refreshes on open.
  • Minimonitor pane width on resize (t978): The minimonitor companion pane now stays pinned to its target width when the terminal is resized.

Improvements

  • Brainstorm: drop detail/patch ops (t891_2): Removed the brainstorm detail/patch operations and the detailer/patcher agents as part of the move to a proposal-only model.
  • Brainstorm: remove plan data model (t891_3): Removed the brainstorm plan data model and the plan-tab TUI surfaces.
  • Brainstorm: finalize exports a proposal (t891_4): Brainstorm "finalize" now exports the node's proposal to aiplans/ and blocks if a decomposed module still needs syncing.
  • Brainstorm initializer cleanup (t672): Simplified the brainstorm initializer's error handling, removing a stale slow-watcher path.
  • Editable Settings tab-switch keys (t896): The Settings tab-switch keys are now driven by the keybinding registry — editable, reflected in footer hints, and shown in each tab title.
  • NodeDetailModal minimap pane (t946): Moved the NodeDetailModal section minimap into a fixed sibling pane with exact-heading scrolling.
  • Tmux command gateway (t952_1, t952_2, t952_3, t952_4, t952_5): Centralized all tmux invocations (Python and shell) behind a single gateway that owns socket policy and exact-match targeting, re-pointed the monitor's control mode through it, and added a lint guard preventing new raw tmux calls.
  • Shared numbered source view (t959): Extracted a shared line-numbered source-view widget used by both the codebrowser and the brainstorm proposal preview.
  • Single projects.yaml registry reader (t970): Collapsed the projects.yaml registry reader to a single authoritative implementation shared by the read and write paths.
  • Dead-code cleanup (t976): Removed a dead find_terminal helper from the codebrowser.

Documentation

  • Monitor-to-applink port design (t822_3): Added a design doc mapping the monitor's headless core and protocol verbs for the mobile companion port.
  • Brainstorm architecture v2 (t891_1): Authored a proposal-only brainstorm engine architecture doc and archived the v1 (two-level plan) design.
  • AgentCrew docs (t917): Documented ait crew and the AgentCrew concept on the website, including all subcommands and the dashboard/logview TUIs.
  • tmux pane-switching shortcuts (t948): Documented native tmux pane-switching shortcuts and how to focus the minimonitor from the agent pane.
  • Wish/SSH transport evaluation (t950): Added an evaluation of SSH-based serving (charmbracelet/wish) as a complementary access path alongside the native mobile transport.
  • Persistent tmux workspace docs (t957): Documented how to keep a self-launched tmux server alive across a compositor restart on Linux/Wayland.
  • Module design doc reconciliation (t971): Updated the module-decomposition design doc to reflect the as-implemented (post-t756) proposal-only reality.
  • tmux gateway architecture (t980): Documented the tmux gateway chokepoint, its centralized policies, and the raw-tmux freeze/allowlist.

Tests

  • Run tmux tests alongside a live session (t936): tmux tests now run against an isolated socket so they no longer refuse to run when a live tmux session is present.
  • CodeViewer render regression tests (t960): Added render-contract regression tests for the CodeViewer after the shared numbered-source-view refactor.

Maintenance

  • Hide migrate-archives from help (t918): The one-time, upgrade-only migrate-archives command is now hidden from ait help (the command itself remains available).

v0.23.1

04 Jun 10:47

Choose a tag to compare

Bug Fixes

  • Cleaner installs and repeatable setup (t938): Re-running the installer no longer aborts when the global ait shim is already present, and an untracked packaging/ directory left behind by the installer is now removed automatically (a git-tracked packaging/ is preserved).
  • Reliable test Python resolution (t935): The test suite now invokes the project's resolved virtual-environment Python instead of a bare python3, preventing spurious ModuleNotFoundError failures when the system Python is missing yaml/textual.

Enhancements

  • Rendered skill-closure ignore rules installed by setup (t939): ait setup now writes gitignore rules that hide locally rendered skill-closure directories under .claude, .agents, and .opencode while still tracking the committed headless prerenders — so generated skill variants no longer show up as untracked clutter.

v0.23.0

03 Jun 20:31

Choose a tag to compare

Features

  • Brainstorm module decomposition (t756): Break a brainstorm design into independent module subgraphs. Decompose, merge, and sync modules as first-class brainstorm operations, view per-module fluid status, and use the "Fast-track this module" preset to extract a module into a linked aitask in a single pass.
  • Risk evaluation in task planning (t884): Planning now assesses two risk dimensions separately — code-health risk and goal-achievement risk — records them on the task, auto-creates before/after mitigation follow-up tasks, and force re-verifies a plan when a mitigation lands.
  • Cross-repo paired planning in explore (t832_11): aitask-explore auto-detects cross-repo scope from your description and can create a cross-repo paired task that inherits the cross-repo planning flow.
  • Brainstorm node action dialog (t925): The node picker surfaces all node operations — including cascade delete with a casualty preview — each with relevance hints.

Bug Fixes

  • Explicit agent args beat the env var (t703): --agent/--cli-id now take precedence over AITASK_AGENT_STRING, which acts only as a default.
  • macOS/BSD setup crashes fixed (t931): ait setup no longer silently crashes on BSD; added seed fallbacks and POSIX-portable parsing.
  • Remaining macOS sed portability (t932): Replaced GNU-only sed quantifiers with portable -E forms.
  • Board fast-path fallback (t933): venv Python dependencies are validated at install time, with the PyPy fast-path falling back to CPython when deps are missing.
  • Risk evaluation reaches the verify path (t909): the risk step now runs on the plan verify path, not just fresh planning.
  • Config-aware op-help hint (t921): the brainstorm op-help hint shows the live keybinding instead of a hardcoded key.
  • Headless prerender freshness (t894, t907): generalized the skill-verify headless prerender check and repaired git-equalized prerender drift via content diffing.
  • Drop minijinja from PyPy venv (t930): removed an unneeded dependency from the PyPy install line.
  • Harden test assert helpers (t920): guarded assert-grep calls against dash-prefixed needles.

Improvements

  • Opt-in headless mode (t778): claude headless --print is now gated behind an explicit --headless flag to reduce billing surprises.
  • Redesigned Settings → Execution Profiles tab (t900): fixed selector, name filter, dirty-state-aware Save/Revert, and keyboard navigation.
  • Larger board task-detail dialog (t904): taller dialog with collapsible metadata sections.
  • Board auto-refresh off by default (t927): the board no longer auto-refreshes unless you set an interval (existing configured values are preserved).
  • Single-source level enum (t911): priority/effort/risk levels now come from one canonical definition shared across bash and Python.
  • Internal refactors (t898, t923, t937): declarative brainstorm wizard step machine; consolidated the test assert helpers into one shared library; switched fragile test sed -i calls to the sed_inplace helper.

Documentation

  • ait command reference completed (t914): added missing TUI, cross-repo, and maintenance command docs.
  • aidocs reorganized (t901): loose docs moved into framework/, packaging/, and codeagents/ subjects.
  • Codex workflow-compliance caveats (t916): documented reasoning-effort guidance for workflow step compliance.
  • macOS awk/sed portability class (t934): documented the BSD/macOS portability bug class for contributors.

Performance

  • Slimmer CLAUDE.md (t924): moved on-demand sections into aidocs/, cutting always-loaded context by ~30%.

Tests

  • Brainstorm module-ops coverage (t906, t913, t922): added apply-hardening, module-sync contract, and module-status compute contract tests.

Maintenance

  • macOS compatibility audit (t926): clean periodic audit; filed follow-ups.
  • pickn/workflown hardening sandbox (t928): staging copies with stricter fail-closed gates.
  • Regenerate stale planning renders (t903): refreshed drifted prerenders and goldens.

v0.22.1

01 Jun 14:04

Choose a tag to compare

Enhancements

  • Task risk fields (t884_1): Tasks now support a risk field (high/medium/low) and a risk_mitigation_tasks list. Set them with ait update --risk <level> / --risk-mitigation-tasks "a,b,c"; risk is shown in ait ls and is viewable/editable in the board TUI.
  • risk_evaluation profile key (t884_2): Added an opt-in risk_evaluation execution-profile key (in the Planning group) that gates risk evaluation during the planning step. Configure it per profile or from the settings TUI; it's off unless enabled.

Bug Fixes

  • Board detail dialog arrow navigation (t893): Restored up/down arrow-key field navigation in the board's task-detail dialog, while keeping arrow-key support in the shortcut editor's table.

Documentation

  • AI-enhanced workflows homepage highlight (t892): Added a fourth homepage feature highlight linking to the workflows docs, with the highlights reflowed into a 2×2 grid.

v0.22.0

31 May 20:33

Choose a tag to compare

Features

  • Cross-repo task dependencies (t832): Tasks can now depend on tasks in other aitasks projects via new xdeps/xdeprepo frontmatter, with cross-repo blocking logic, a parallel cross-repo planning procedure, ait board picker support, interactive cross-repo task creation, cross-repo explain-context, and cross-project aitasks#835_3 notation. Linked projects are referenced by logical name, not directory path.
  • Customizable keyboard shortcuts (t848): Per-user keyboard-shortcut overrides now work across all TUIs, with an in-TUI shortcut editor modal, a Shortcuts tab in the settings TUI, and case-aware mnemonic label rendering.
  • Autonomous manual-verification mode (t843, t845): Manual-verification tasks can run their checks autonomously — choose an impromptu or pre-built strategy, configurable per profile and from the settings TUI.
  • Claude Opus 4.8 (t853): Added Opus 4.8 to the model registry and promoted it to the default agent model.
  • Codex request-user-input flag (t861): Added a Codex feature flag that enables request-for-user-input behavior.

Bug Fixes

  • Compare-wizard improvements (t873): Fixed glob dimension link expansion and badge counts, section scroll-to-position accuracy, added expandable dimension descriptions in the detail pane, and scoped/grouped/labeled the wizard's dimensions.
  • TUI task-directory handling (t877, t881): The keybinding registry, user-config path, and TUI module/metadata loading now honor a non-default task directory.
  • YAML config guards (t863, t864, t865): Hardened YAML loading/writing in the keybinding registry, user-config writer, and shortcut persistence against parse failures and style collisions.
  • Brainstorm nested sections (t878): Fixed nested-section parsing and navigation in the brainstorm TUI.
  • TUI switcher overlay shortcuts (t876): The TUI switcher overlay's shortcuts are now properly registered.
  • Board cross-repo picker navigation (t886): Fixed keyboard navigation in the board's cross-repo reference picker.
  • add-model default target (t852): Fixed the target of the default-agent-string update in aitask-add-model.
  • Stale Gemini note in CLAUDE.md (t839): Removed an outdated Gemini reference from the Codex root note.
  • Test-fixture fixes (t883, t890): Repaired the desync test fixture's Python resolution and the PR-contributor fixture's cross-repo re-exec scaffold.

Improvements

  • Board task filtering (t850): Reworked board filtering into an independent base-filter plus git and type toggles, with broader locked/free visibility rules.
  • Re-verification prompt (t885): When a task plan is already verified, you're now asked whether to re-verify.
  • Eager subscope registration & mnemonic labels (t848_9, t848_10): Shortcut subscopes register eagerly and labels render case-aware mnemonics.
  • Terminology cleanups (t849, t859): Renamed "impromptu" → "autonomous" and the manual_verification_auto_mode profile key to clearer names across skills and docs.

Documentation

  • Multi-project & cross-repo workflow docs (t826_3, t832_12): New website pages covering the multi-project registry workflow and cross-project dependencies/planning.
  • Manual-verification & shortcuts docs (t846, t848_6): Documented autonomous manual-verification mode and the customizable-shortcuts layer.
  • Codex limitations & model-default refs (t862, t854): Refreshed Codex limitations docs and updated stale model-default references.
  • Memory-to-aidocs audit (t869): Promoted durable authoring conventions from Claude memories into aidocs/.

Tests

  • AGENTS.md idempotency (t875): Added tests for AGENTS.md creation and marker idempotency.

Maintenance

  • Codex profile/prompt cleanups (t860, t866, t870): Removed redundant default-profile prompt-suppression keys, relaxed forced Codex plan mode for analysis skills, and deleted orphaned Codex interactive prerequisites.

Removals

  • Remove Gemini CLI Support (t812): Removed geminicli from the framework: agent identity layer, skill rendering and templating, setup/install/release pipeline, and all current-state documentation. Google is sunsetting Gemini CLI in favor of Antigravity CLI (agy); see t813 and t814 for the agy migration path. Existing CHANGELOG / blog references to Gemini CLI are preserved as historical record. aidocs/adding_a_new_codeagent.md was expanded into a reusable add-an-agent checklist along the way.

v0.21.1

27 May 09:59

Choose a tag to compare

Bug Fixes

  • Fix Brainstorm Retry Apply Drained Set (t841): The ctrl+shift+x/y/d retry-apply bindings in brainstorm now rescan the worktree for completed explorer/synthesizer/patcher/detailer agents instead of consuming a one-shot in-memory set, so retries no longer silently no-op after the original apply ran. Surfaces a "No completed agents to retry" notify when the worktree is empty.
  • Fix v0.21.0 Blog YAML and Release Post Quoting (t844): Repaired the v0.21.0 blog frontmatter (unescaped inner quotes broke the YAML parse) and hardened website/new_release_post.sh to escape title/description fields plus run a Python YAML smoke check after generation, preventing future release posts from shipping broken frontmatter.

Enhancements

  • Improve Dialog for Next in Monitor (t840): The monitor TUI's next-task dialog now offers a "Choose sibling" picker listing every ready sibling of the current task with blocked-by-sibling annotations, so you can pivot mid-family without backing out to the board.
  • Textual 8.2.7 Floor: Bumped the minimum textual version to 8.2.7 across ait setup and the applink reference docs to pick up upstream text-selection improvements in TUI screens.

v0.21.0

27 May 08:58

Choose a tag to compare

Features

  • Brainstorm Apply Explorer Output (t739): Brainstorm now auto-applies explorer agent outputs into DAG nodes when they complete, with a ctrl+shift+x retry binding and an apply-explorer CLI fallback for failure recovery.
  • Brainstorm Apply Synthesizer Output (t740): Brainstorm auto-applies synthesizer agent outputs to create hybrid nodes linked to multiple parents, with a ctrl+shift+y retry binding and an apply-synthesizer CLI fallback.
  • Brainstorm Apply Detailer Output (t741): Brainstorm auto-applies detailer agent outputs, writing the detailed plan into the node and updating its plan_file reference, with a ctrl+shift+d retry binding.
  • Operation Detail Screen (t749_5): Added an OperationDetailScreen modal to the brainstorm TUI showing an operation Overview plus per-agent Input / Output / log tail tabs.
  • Aitask Skill Render Subcommand (t777_2): Added the renderer that produces per-profile skill variants from .md.j2 templates, with skip-if-fresh caching and cross-skill include resolution.
  • Stub Skill Design and Gitignore (t777_3): Established the canonical "stub + per-profile render" model so each agent's skill surface dispatches to a profile-specific rendered variant, with a *-/ gitignore convention for the generated dirs.
  • Aitask Skill Verify and Precommit (t777_4): Added aitask_skill_verify.sh to validate that .md.j2 templates render cleanly across all profiles and agents and that per-agent stubs carry the canonical dispatch markers.
  • Aitask Skillrun Wrapper Dispatcher (t777_5): Added ait skillrun for launching any code agent with a profile-aware aitask skill, including --profile-override for ad-hoc YAML merges and --dry-run previews.
  • Per Run Profile Edit in AgentCommandScreen (t777_17): The launch dialog now has an (E)dit button to tweak the active execution profile for either a one-shot run or persistent save, propagated through to the rendered prompt.
  • Profile Modification Invalidation (t777_20): Saving a profile from the settings or launch TUIs now eagerly re-renders all affected per-profile skill variants so running agents see the new values on next invocation.
  • Extend Renderer for Uniform Recursive Rendering (t777_22): The skill renderer now walks the full reference closure of a template, rewriting cross-skill .md references per agent root and tracking staleness across the entire dependency graph.
  • Support Open in Editor in Codebrowser (t781): Added an E keybinding to the codebrowser TUI that suspends to $EDITOR on the currently-viewed file, then refreshes annotations on return.
  • Clickable Nodes in DAG (t793): Brainstorm Graph-tab DAG nodes are now click-focusable, mirroring arrow-key focus behavior; actions still require keyboard confirmation.
  • Detailed Operation Description in Wizard (t796): The brainstorm Actions wizard now shows the operation label plus a brief description on every step beyond Step 1, with ? reachable from any wizard step.
  • Allow Archived Tasks in Task Dependencies in Create (t798): ait create now offers a fzf-based picker for adding archived task references inline into a task description.
  • Context Aware Operations in Brainstorm (t819): Added an A keybinding on the brainstorm Graph/Dashboard tabs that pops a picker for Explore / Detail / Patch on the focused node and pre-seeds the Actions wizard with the choice.
  • Applink TUI QR (t822_2): Added the ait applink TUI which generates a QR code carrying a LAN pairing URI for the mobile companion app, including hostname and TLS-fingerprint fields.
  • Applink QR Add Hostname Field (t822_5): The applink QR pairing URL now includes an optional name= field carrying the local hostname for friendly device identification on the mobile side.
  • Registry Resolver Projects Cmd and Create Flag (t826_1): Added the cross-repo project registry at ~/.config/aitasks/projects.yaml plus the ait projects command (list/add/resolve/exec) and ait create --project <name> flag for cross-repo task creation.
  • TUI Switcher Show Inactive Projects (t826_2): The TUI switcher's Session row now surfaces registered-but-inactive projects; selecting one transparently spawns a tmux session for it on demand.
  • Ait Projects Remove Update Verbs (t826_7): Added ait projects remove (with --force) and ait projects update verbs to manage entries in the cross-repo registry.
  • Ait Projects Prune Verb (t826_8): Added ait projects prune to bulk-remove stale registry entries whose marker file is gone, with --dry-run and --yes modes.
  • Ait Projects Doctor Verb (t826_9): Added ait projects doctor for interactive triage of stale registry entries with options to prune, repoint, or clone the missing project back.
  • Switcher Stale Inline Render and Race (t826_10): The TUI switcher dims stale registry entries with a (stale) suffix and pops an inline Prune / Repoint modal when one is selected, including the race-condition path when an entry goes stale mid-session.

Bug Fixes

  • Template Completeness and Resolver Key (t777_26): Dropped the runtime profile-resolution fallback in templated skills and fixed the resolver-key mismatch between stubs and bodies so per-profile dispatch lands on the correct variant.
  • Graph Tab Breaks Tab Navigation (t788): Pressing Up on the brainstorm Graph tab's top layer now escalates focus back to the tab row instead of trapping the user inside the DAG view.
  • Missing Shortcuts from TUI Switcher Footer (t789): The TUI switcher footer is now pinned to the bottom of the dialog and stays visible regardless of list size, so keyboard shortcuts remain discoverable.
  • Status Update Error in Explorer Agent (t791): Crew agents can now use -m as a short alias for --message on the heartbeat command, and the generated instructions show the message syntax explicitly.
  • Brainstorm Explore Progress (t792): Brainstorm now force-canonicalizes each agent's created_by_group on apply, defends graph-tab consumers against historical drift, and shows a group-level aggregate progress bar in the Status tab.
  • Brainstorm Explorer Input Missing Node ID (t795): Brainstorm now assigns the node ID to each explorer/synthesizer/patcher agent at registration time, so parallel siblings cannot collide on the same generated node.
  • Disallow Patch for Node Without Plan (t797): The brainstorm UI now shows a has plan / no plan indicator on each node and disables the patch operation for nodes without a plan, preventing silent failures.
  • Aitask Explore With Codex (t801): ait setup now installs pexpect so the aitask explore workflow launches Codex without import errors on fresh installs.
  • Add Codex Rules Allowlist Support (t802): Added runtime and seed Codex allow-rules so the codex agent can be launched through aitasks without hand-editing rules files.
  • Keybinding in Wizard for Node Selection (t806): The brainstorm Hybridize / Compare wizards now offer a fuzzy filter plus Tab group cycling and arrow-key checkbox navigation, with checked rows always visible.
  • Synthetize or Hybridize (t807): Renamed the brainstorm DAG merge operation from hybridize to synthesize across code, tests, and docs, with a backward-compat alias so in-flight sessions still render correctly.
  • Fix Patcher CLI Next Node ID Assertion (t810): Fixed a brainstorm patcher CLI test that wrongly asserted next_node_id would advance on apply — the apply path is correct, the assertion was off-by-one.
  • Fix Aitask Update Multiline YAML List Parsing (t813): YAML frontmatter parsers now correctly join multi-line flow-list values (e.g. wrapped folded_tasks, verifies) so ait update, archive, and crew tools no longer truncate them.
  • TUI Switch Multiproject Hide Brainstorms (t814): The TUI switcher's brainstorm session discovery is now scoped to the selected project's .aitask-crews/, so multi-project switches don't surface cross-project brainstorms.
  • Dedup Read YAML Field Definition (t815): Consolidated two competing read_yaml_field definitions into a single shared yaml_utils.sh lib, eliminating a silent function-collision risk at archive time.
  • Fix Skill Dep Walker SKILL.md Collision (t817): The skill dep-walker now skips self-referencing SKILL.md prose mentions and raises a loud collision error if two distinct sources ever map to the same target path.
  • Brainstorm Ops Fail to Write Output (t820): Crew _instructions.md now tells the agent to read the pre-existing <agent>_output.md placeholder before writing, preventing accidental overwrites that produced empty operation results.
  • Detailer Final Output Parsing Seems Not Work (t821): Brainstorm's auto-apply scan now tracks in-flight agents (not just Completed ones) and prunes terminally-failed ones from polling, so detailer/patcher output is reliably picked up.
  • Fix TUI Switcher Desync Line Stale Across Sessions (t823): The desync helper now resolves the repo root from cwd rather than the script's install location, so the switcher's desync line reflects the active project in multi-project setups.
  • Fix Test Desync State Copy Changelog Missing YAML Utils (t824): Added the missing yaml_utils.sh to the changelog-test scaffold's file list so the test no longer crashes on missing-source errors.
  • Idle State Not Detected (t825): The monitor TUI now distinguishes "agent awaiting user input" from "idle" via per-agent prompt regex patterns, surfaces a separate awaiting count, and prefers awaiting panes when auto-switching.
  • Fix Test Codeagent Scaffold Missing Agent String (t827): Added agent_string.sh to the codeagent test scaffold so the test suite no longer fails on a missing source library.
  • Obsolete AgentCommand Dialog in Monitor (t830): The per-run profile edit now propagates through to launch dialogs in monitor, codebrowser, and history-screen TUIs, not just t...
Read more