v1.47.0
aaif-goose/goosev1.47.0Aug 21, 2026by github-actions[bot]
AI Summary
v1.47.0 introduces several user-facing features including a git branch indicator and OAuth support, alongside significant backend architectural updates like the new goose-agent crate and SQLite upgrade. The release also includes a comprehensive list of bug fixes addressing context handling, ACP providers, and file operations.
Key Highlights
- Interactive git branch indicator in chat bottom bar
- Support for pre-registered OAuth clients for streamable_http extensions
- Introduction of goose-agent crate with a generic state machine
- Upgrade to SQLite 3.51.3 and ACP SDK 1.3.0
New Features
- Interactive git branch indicator in chat bottom bar
- Support for pre-registered OAuth clients for streamable_http extensions
- Show recently used models in chat footer model picker
Full Release Notes
## ✨ Features - Interactive git branch indicator in chat bottom bar [#11290](https://github.com/aaif-goose/goose/pull/11290) - Support for pre-registered OAuth clients for streamable_http extensions [#11182](https://github.com/aaif-goose/goose/pull/11182) - Show recently used models in chat footer model picker [#11097](https://github.com/aaif-goose/goose/pull/11097) ## 🐛 Bug Fixes - Isolate concurrent subagent notifications in summon [#10772](https://github.com/aaif-goose/goose/pull/10772) - Validate recipe parameter values [#11234](https://github.com/aaif-goose/goose/pull/11234) - Re-enable minijinja builtins so documented recipe filters work [#11310](https://github.com/aaif-goose/goose/pull/11310) - Send explicit thinking disabled to adaptive Claude models [#11177](https://github.com/aaif-goose/goose/pull/11177) - Handle error code for context length exceeded [#11283](https://github.com/aaif-goose/goose/pull/11283) - Include required annotations field on replayed output_text items [#11263](https://github.com/aaif-goose/goose/pull/11263) - Reject context commands for context-owning providers [#11094](https://github.com/aaif-goose/goose/pull/11094) - Prevent recipe parameter form from reloading the app on Enter [#10522](https://github.com/aaif-goose/goose/pull/10522) - Enforce secure token transport in OAuth [#11183](https://github.com/aaif-goose/goose/pull/11183) - Deprecate Gemini OAuth provider [#11223](https://github.com/aaif-goose/goose/pull/11223) - Stop paying the prompt-cache write premium on one-shot fast-model calls [#11179](https://github.com/aaif-goose/goose/pull/11179) - Skip local Stdio/StreamableHttp extension spawn when provider manages own context [#11203](https://github.com/aaif-goose/goose/pull/11203) - Navigation toggle showing hamburger menu icon to open navigation [#11144](https://github.com/aaif-goose/goose/pull/11144) - Return auth error for ACP provider from goose ACP server [#11202](https://github.com/aaif-goose/goose/pull/11202) - Ignore ACP provider generated title and use goose generated title [#11197](https://github.com/aaif-goose/goose/pull/11197) - Render visualizer data as text [#11186](https://github.com/aaif-goose/goose/pull/11186) - Bound XLSX range reads [#11190](https://github.com/aaif-goose/goose/pull/11190) - Update SQLite to 3.51.3 [#11157](https://github.com/aaif-goose/goose/pull/11157) - Classify byte-size request limit errors as context-length-exceeded [#11173](https://github.com/aaif-goose/goose/pull/11173) - Prevent large-session disconnects in ACP [#11159](https://github.com/aaif-goose/goose/pull/11159) - Narrow desktop file read IPC [#11149](https://github.com/aaif-goose/goose/pull/11149) - Avoid reading file params in recipe explain [#11119](https://github.com/aaif-goose/goose/pull/11119) - Bound local image reads [#11114](https://github.com/aaif-goose/goose/pull/11114) - Bound action-required stream admission [#11113](https://github.com/aaif-goose/goose/pull/11113) - Bound partial thinking tags [#11108](https://github.com/aaif-goose/goose/pull/11108) - Avoid following untracked review symlinks [#10995](https://github.com/aaif-goose/goose/pull/10995) - Bind deeplink recipe parameters to startup session [#11123](https://github.com/aaif-goose/goose/pull/11123) - Rename compare_tasks skill to a spec-valid name [#11068](https://github.com/aaif-goose/goose/pull/11068) - Suppress extension loading toast when all extensions succeed [#11016](https://github.com/aaif-goose/goose/pull/11016) ## 🔧 Improvements - Improve ACP provider setup and unify setup metadata [#11100](https://github.com/aaif-goose/goose/pull/11100) - Create goose-agent crate with unrolled agent loop state machine [#11216](https://github.com/aaif-goose/goose/pull/11216) - Make the unrolled loop state machine generic [#11139](https://github.com/aaif-goose/goose/pull/11139) - Retry ACP handoff context after failed prompts [#10660](https://github.com/aaif-goose/goose/pull/10660) - Remove automation_script, web_scrape, and cache tools from computercontroller [#11198](https://github.com/aaif-goose/goose/pull/11198) - Upgrade ACP SDK to 1.3.0 [#11218](https://github.com/aaif-goose/goose/pull/11218) - Pin V1 SDK and narrow ACP crate features [#11289](https://github.com/aaif-goose/goose/pull/11289) - Migrate session/delete to the standard ACP SDK [#11286](https://github.com/aaif-goose/goose/pull/11286) - Use rmcp ContentBlock in goose-sdk UniFFI [#11210](https://github.com/aaif-goose/goose/pull/11210)