v1.32.0

aaif-goose/goosev1.32.0Apr 23, 2026by github-actions[bot]

AI Summary

A feature-rich release that adds Exa AI-powered search, desktop notifications, agent mentions, and voice dictation capabilities. It also overhauls the Extensions management to ACP+ and introduces the `/skills` command and project association features.

Key Highlights

  • Exa AI-powered search tool.
  • Desktop notification when goose finishes a task.
  • Agent mentions (`@agent`) and `/skills` command.
  • Voice dictation support.
  • Migration of Extensions management to ACP+.

New Features

  • Exa AI-powered search tool
  • Desktop notification
  • @agent mention support
  • /skills command
  • Associate threads with projects
  • Auto-compaction for context window
  • Message bubble + action tray
  • Voice dictation
  • Context window usage indicator
  • Unix domain socket transport for StreamableHttp MCP
  • /edit command
  • Novita AI provider
  • Kimi Code provider
  • Extension management screen
  • Chat attachments
  • Husky git hooks

Full Release Notes

## ✨ Features

- Exa AI-powered search tool [#8487](https://github.com/aaif-goose/goose/pull/8487)
- Desktop notification when goose finishes a task [#8647](https://github.com/aaif-goose/goose/pull/8647)
- @agent mention support in chat [#8571](https://github.com/aaif-goose/goose/pull/8571)
- `/skills` command [#8600](https://github.com/aaif-goose/goose/pull/8600)
- Associate threads with projects [#8745](https://github.com/aaif-goose/goose/pull/8745)
- Auto-compaction for goose2 context window UX [#8721](https://github.com/aaif-goose/goose/pull/8721)
- Message bubble + action tray in goose2 [#8720](https://github.com/aaif-goose/goose/pull/8720)
- Voice dictation via direct-ACP pattern in goose2 [#8609](https://github.com/aaif-goose/goose/pull/8609)
- Context window usage in goose2 chat input [#8613](https://github.com/aaif-goose/goose/pull/8613)
- Unix domain socket transport for StreamableHttp MCP [#7860](https://github.com/aaif-goose/goose/pull/7860)
- Cash App extension in Extensions Library [#8622](https://github.com/aaif-goose/goose/pull/8622)
- `/edit` command for on-demand prompt editing [#8566](https://github.com/aaif-goose/goose/pull/8566)
- Novita AI as declarative provider [#8432](https://github.com/aaif-goose/goose/pull/8432)
- Kimi Code provider with OAuth device flow authentication [#8466](https://github.com/aaif-goose/goose/pull/8466)
- Extension management screen in TUI [#8536](https://github.com/aaif-goose/goose/pull/8536)
- Extensions settings page and context panel widget [#8540](https://github.com/aaif-goose/goose/pull/8540)
- Client ID Metadata Document (CIMD) support for OAuth [#8550](https://github.com/aaif-goose/goose/pull/8550)
- Context window usage inline in status bar [#7607](https://github.com/aaif-goose/goose/pull/7607)
- Chat attachments in goose2 [#8534](https://github.com/aaif-goose/goose/pull/8534)
- Husky git hooks for ui/goose2 [#8577](https://github.com/aaif-goose/goose/pull/8577)

## 🐛 Bug Fixes

- Cache TLS cert to disk to avoid slow startup on first launch [#8174](https://github.com/aaif-goose/goose/pull/8174)
- Preprompt would show after loading session [#8744](https://github.com/aaif-goose/goose/pull/8744)
- Handle missing delta field in streaming chunks [#8700](https://github.com/aaif-goose/goose/pull/8700)
- Accept streaming chunks with both reasoning fields in OpenAI provider [#8715](https://github.com/aaif-goose/goose/pull/8715)
- `strict:false` for Responses API tools and gpt-5.4 to known models [#8636](https://github.com/aaif-goose/goose/pull/8636)
- Correct grammar in apps view description [#8679](https://github.com/aaif-goose/goose/pull/8679)
- Links in chat could not be opened [#8544](https://github.com/aaif-goose/goose/pull/8544)
- Run shell tool under bash/sh regardless of login shell [#8659](https://github.com/aaif-goose/goose/pull/8659)
- Append /chat/completions for prefixed v1 base URLs [#8521](https://github.com/aaif-goose/goose/pull/8521)
- Align Kimicode model metadata with live Kimi Code API [#8588](https://github.com/aaif-goose/goose/pull/8588)
- Stop idle 300ms re-render loop that could OOM the TUI [#8616](https://github.com/aaif-goose/goose/pull/8616)
- Chat loading-state model placeholder [#8431](https://github.com/aaif-goose/goose/pull/8431)
- Expand tool calls by default when Response Style is Detailed [#8478](https://github.com/aaif-goose/goose/pull/8478)
- Create logs dir before writing LLM request log [#8522](https://github.com/aaif-goose/goose/pull/8522)
- Enable token usage tracking and configurable stream timeout for Ollama provider [#8493](https://github.com/aaif-goose/goose/pull/8493)
- Use sqlx chrono decode for thread timestamps instead of manual parsing [#8575](https://github.com/aaif-goose/goose/pull/8575)
- Remove double border on content in chat [#8545](https://github.com/aaif-goose/goose/pull/8545)
- Accept self-signed certs from configured external goosed host [#8400](https://github.com/aaif-goose/goose/pull/8400)
- Sync sidebar sessions after chat history deletion [#7707](https://github.com/aaif-goose/goose/pull/7707)
- Prevent session hang when tool approval required in headless mode [#7915](https://github.com/aaif-goose/goose/pull/7915)
- Eliminate ~5s delay when opening Switch Models panel with local provider [#8626](https://github.com/aaif-goose/goose/pull/8626)
- Removed hardcoded dependency of goose-acp-macro [#8753](https://github.com/aaif-goose/goose/pull/8753)
- Stop load openai fast model for openapi compatible custom endpoint [#8644](https://github.com/aaif-goose/goose/pull/8644)

## 🔧 Improvements

- Split agent setup into staged phases to reduce startup blocking [#8746](https://github.com/aaif-goose/goose/pull/8746)
- Extensions management migrated to ACP+ [#8733](https://github.com/aaif-goose/goose/pull/8733)
- Harden code review skill for async state and default-resolution bugs [#8740](https://github.com/aaif-goose/goose/pull/8740)
- Persist and reliably apply chat model selection [#8734](https://github.com/aaif-goose/goose/pull/8734)
- Overhaul provider inventory and agent/model selection [#8652](https://github.com/aaif-goose/goose/pull/8652)
- Consolidate provider ACP methods onto inventory [#8710](https://github.com/aaif-goose/goose/pull/8710)
- Manage skills as sources over ACP [#8675](https://github.com/aaif-goose/goose/pull/8675)
- Extract shared OAuth device-flow helper [#8619](https://github.com/aaif-goose/goose/pull/8619)
- Full width assistant message in goose2 [#8760](https://github.com/aaif-goose/goose/pull/8760)
- TUI improvements [#8736](https://github.com/aaif-goose/goose/pull/8736)
- Goose2 agent management flows [#8737](https://github.com/aaif-goose/goose/pull/8737)
- Sidebar polish: search copy, dividers, project reorder, DnD fixes [#8568](https://github.com/aaif-goose/goose/pull/8568)
- Sidebar activity indicators, placeholder token, and search field refinements [#8606](https://github.com/aaif-goose/goose/pull/8606)
- Warm shell PATH lookup during session init [#8631](https://github.com/aaif-goose/goose/pull/8631)
- Gate perf logs and dedup build_config_update on first message [#8627](https://github.com/aaif-goose/goose/pull/8627)
- Use default fallback provider and model if default are set [#8650](https://github.com/aaif-goose/goose/pull/8650)
- Show individual untracked files in git changes widget [#8574](https://github.com/aaif-goose/goose/pull/8574)
- Goose2 session working dir [#8624](https://github.com/aaif-goose/goose/pull/8624)
- Update rmcp to 1.5.0 [#8618](https://github.com/aaif-goose/goose/pull/8618)
- Merge goose-acp crate into goose [#8726](https://github.com/aaif-goose/goose/pull/8726)
- Upgrade goose SDK and TUI to be compatible with the latest agentclientprotocol/sdk package [#8667](https://github.com/aaif-goose/goose/pull/8667)
- Declare and enforce MSRV of 1.91.1 [#8670](https://github.com/aaif-goose/goose/pull/8670)
- Pass globally unique conversation identifier as sessionId in Databricks API call [#8576](https://github.com/aaif-goose/goose/pull/8576)
- Move agent skills to repo root for tool discoverability [#8535](https://github.com/aaif-goose/goose/pull/8535)
- Reset ChatGPT Codex auth during OAuth setup [#8569](https://github.com/aaif-goose/goose/pull/8569)
- Isolate gym scenario Cargo projects from parent workspace [#8640](https://github.com/aaif-goose/goose/pull/8640)

## 📚 Documentation

- AGENTS.md section on goose2 desktop backend architecture [#8732](https://github.com/aaif-goose/goose/pull/8732)
- Rendex MCP Server extension tutorial [#8541](https://github.com/aaif-goose/goose/pull/8541)
- Blog post about Mesh LLM provider option [#8655](https://github.com/aaif-goose/goose/pull/8655)
- Remove stale gemini-acp references [#8572](https://github.com/aaif-goose/goose/pull/8572)
- Replace deprecated Claude ACP package links [#8625](https://github.com/aaif-goose/goose/pull/8625)