v1.112.0
This release adds several new built-in toolsets (git, webhook), budget limits, .agentsignore support, expanded Mermaid rendering, image rendering in the TUI, and numerous TUI improvements including per-agent usage details, session browser enhancements, and argument auto-completion for slash commands.
What's New
- Adds a read-only
gittoolset (git_status,git_log,git_branches,git_show,git_blame) giving agents structured access to the working repository without requiring agitbinary - Adds a
webhooktoolset with asend_webhooktool that lets agents send outbound notifications to a configured chat service without exposing the URL or secret to the model - Adds budget configuration (
budget/budgets) to cap what an agent may spend in cost, tokens, or working time, with live tracking in the TUI sidebar - Adds
.agentsignoresupport — a.gitignore-syntax file that prevents the agent from listing, reading, or writing matched files - Adds image rendering in the TUI for tool result images and markdown images in agent responses (using the Kitty graphics protocol, with a setting to disable)
- Adds an image rendering preference to settings
- Adds Mermaid flowchart direction support and subgraph rendering
- Adds argument auto-completion for
/toolset-restart,/drop, and/effortslash commands - Adds per-agent usage details to the TUI sidebar, with a new sidebar info mode selector in
/settings - Adds fuzzy search matching for tool discovery via
search_toolin the deferred toolset - Adds Claude Code harness setup and diagnostics as a new
docker agent setuppath - Adds explicit prompt cache breakpoint support for OpenAI (GPT-5.6+)
- Extends session browser search to match session IDs in addition to titles
- Groups the session browser by git repository root (worktree-aware)
- Allows configuring
compaction_modeldirectly on an agent as a sibling tocompaction_threshold - Opens the
/costdialog when clicking the sidebar cost/token usage reading - Adds a self-maintaining
llms.txtgenerated fromnav.ymlat Hugo build time
Improvements
- Fixes severe scrolling performance on very large sessions by caching rendered lines in the cost dialog and stopping message-list render cache thrashing
- Keeps the
/costdialog cache fresh on live updates and theme changes - Shows usage and team roster in the collapsed sidebar band from startup
- Adds sidebar agent info modes
Bug Fixes
- Fixes RAG query embedding usage tracking so tokens are correctly attributed and emitted to the active session
- Fixes telemetry model dimension pollution and captures partial usage in RAG
- Fixes Anthropic system cache breakpoints being exceeded by capping them so requests never exceed the limit
- Fixes transcripts carrying cache checkpoint marks after compaction
- Fixes slash command inline completion to match on command value, not just label (e.g. typing
/settingsnow surfaces the Settings command) - Fixes TUI panic when the terminal reports a degenerate (0×0 or 1×1) size
- Fixes the
/costdialog cache not refreshing on live updates and theme changes - Fixes the sidebar scrollbar clicks registering in content click zones
- Fixes the
settingscommand label to display consistently asSettings - Fixes right-to-left Mermaid connector rendering
- Fixes HTTP error statuses (4xx/5xx) being swallowed and treated as success in the API tool
- Fixes webhook tool to sanitize
*url.Errorto prevent secret URL leakage - Fixes MCP OAuth clients with
allow-private-ipsto use a private connection pool instead of sharinghttp.DefaultTransport - Fixes flaky OAuth tests by not sharing
http.DefaultTransportacross parallel tests - Fixes the template Docker build stage to use
COPY --frominstead of an unauthenticated GitHub API call that hit rate limits - Removes macOS Keychain and
passsecret providers fromDefaultSources
Technical Changes
- Freezes config schema v12 and opens v13 as the new latest
- Refactors Anthropic prompt-cache checkpoint handling into consolidated owners, making known failure modes structurally impossible
- Refreshes the embedded models.dev snapshot
- Drops the unused
benchmarks/folder - Exposes the current agent's supported thinking levels from the runtime
What's Changed
- Render images by @rumpl in #3699
- feat(docs): self-maintaining llms.txt generated from nav.yml by @aheritier in #3695
- fix(docs): constrain content images and shrink demo GIF by @aheritier in #3696
- docs: update CHANGELOG.md for v1.111.0 by @docker-read-write[bot] in #3703
- docs: sync documentation with recent main merges by @aheritier in #3700
- test(mcp): fix flaky OAuth tests by not sharing http.DefaultTransport by @dgageot in #3704
- feat(tools): add read-only "git" toolset for structured repository inspection by @dwin-gharibi in #3637
- chore: bump direct Go dependencies by @dgageot in #3706
- fix(mcp): give allow-private-ips OAuth clients a private connection pool by @dgageot in #3707
- docs: add Sessions, Code Mode, headless/CI guide, and expand the CLI reference by @aheritier in #3694
- feat(tui): extend session browser search to match session IDs by @dgageot in #3708
- chore: drop benchmarks folder by @dgageot in #3709
- docs: add tour pointer, prompt-files subsection, and product-naming consistency by @aheritier in #3698
- perf(tui): fix horrendous scrolling on very large sessions by @dgageot in #3710
- refactor: consolidate and harden Anthropic prompt-cache checkpoint handling by @dgageot in #3712
- feat(env): remove macOS keychain and pass secret providers by @dgageot in #3713
- Mermaid flowchart directions by @rumpl in #3715
- Mermaid flowchart subgraphs by @rumpl in #3716
- fix: address Mermaid subgraph review findings by @rumpl in #3717
- Use golden files for Mermaid renders by @rumpl in #3718
- fix(rag): correctly attribute and track query embedding usage for active sessions by @Piyush0049 in #3603
- Render markdown images in agent responses by @rumpl in #3720
- feat(tui): show usage details per agent by @Sayt-0 in #3714
- fix(tui): address PR #3720 review feedback on markdown image rendering by @dgageot in #3721
- feat(openai): support explicit prompt cache breakpoints by @Sayt-0 in #3719
- fix(tui): match slash command value, not just label, in inline completion by @aheritier in #3723
- fix(tui): hide no-op slash commands (/settings) in lean mode by @aheritier in #3724
- fix(tui): label settings command consistently by @Sayt-0 in #3726
- fix(tui): show usage and team roster in the collapsed sidebar band from startup by @Sayt-0 in #3727
- revert: pkg/tui lean-mode machinery from #3724 by @aheritier in #3729
- feat(tui): argument auto-completion for /toolset-restart by @aheritier in #3728
- feat: add Claude Code harness setup and diagnostics by @Sayt-0 in #3722
- docs: update documentation for recent merged PRs by @aheritier in #3735
- fix(tui): don't panic when the terminal reports a degenerate size by @dgageot in #3736
- feat: group session browser by git repo root (worktree-aware) by @dgageot in #3737
- feat(deferred): add fuzzy search matching for tool discovery by @Piyush0049 in #3738
- feat(tui): argument auto-completion for /effort by @aheritier in #3734
- feat(tui): argument auto-completion for /drop by @aheritier in #3733
- fix: use COPY --from for mcp-gateway in template stage by @aheritier in #3744
- docs: sync documentation with recent code changes by @aheritier in #3741
- chore(deps): bump mcp from 1.23.0 to 1.28.1 in /examples/dhi/dhi_mcp_server in the pip group across 1 directory by @dependabot[bot] in #3740
- fix: propagate HTTP error statuses in API tool by @Piyush0049 in #3739
- feat(filesystem): add
.agentsignoreto keep files out of the agent's reach by @dwin-gharibi in #3743 - feat(budget): cap what an agent may spend in money, tokens, or working time by @dwin-gharibi in #3702
- chore: refresh embedded models.dev snapshot by @github-actions[bot] in #3747
- feat(tools): add "webhook" toolset for outbound notifications by @dwin-gharibi in #3641
- feat: allow configuring compaction_model on agents by @dgageot in #3752
- feat(tui): open the /cost dialog when clicking the sidebar cost reading by @dgageot in #3754
- chore: freeze config v12 and open v13 as latest by @dgageot in #3753
New Contributors
- @github-actions[bot] made their first contribution in #3747
Full Changelog: v1.111.0...v1.112.0