Skip to content

Releases: block/goose

v1.23.2

06 Feb 17:30

Choose a tag to compare

Don't swallow Tetrate errors  (#6998)

v1.23.1

06 Feb 05:36
6c486c7

Choose a tag to compare

Lifei/cherry pick fix dep (#7020)

Signed-off-by: rabi <[email protected]>
Co-authored-by: Rabi Mishra <[email protected]>

v1.23.0

04 Feb 17:52

Choose a tag to compare

✨ Features

  • Ask AI Discord bot #6842
  • WebSocket transport for goose-acp #6895
  • Streamable HTTP transport for ACP + goose-acp usage #6741
  • Laminar for Observability #6514
  • Platform extension migrator + code mode rename #6611
  • CLI flag to skip loading profile extensions #6780
  • Thinking status hook #6815
  • Hourly skill fetching #6814

🐛 Bug Fixes

  • Apps now work in built copies of goose #6901
  • Handle thoughtSignature differently for Gemini 2.5 vs 3 #6890
  • Preserve working directory when creating new chat #6789
  • Case-insensitive matching for builtin extension names #6825
  • Correct tool support detection in Tetrate provider model fetching #6808
  • Session manager fixes #6809
  • Handle quoted paths with spaces in extension commands #6430
  • Hardcoded J for newline key in missed locations #6853
  • UI settings prompt injection update #6830
  • Release build fix #6887

🔧 Improvements

  • Extract ProviderDef trait and OpenAiCompatibleProvider #6832
  • Remove dependency on goose-mcp from goose crate #6637
  • Sync desktop_prompt with UI #6898
  • Rejig dictation #6844
  • Clean up client side code for creating schedule #6805
  • Upgrade React and Electron to latest #6845
  • Move persisting extension to session outside of route #6685
  • ACP: load configured extensions and refactor tests #6803
  • Swap canonical model from openrouter to models.dev #6625
  • Centralize audience filtering before providers receive messages #6728
  • Don't output compaction in term mode #6799
  • Clean up build canonical warnings #6880
  • Remove autogenerated .gooseignore files from repo #6824
  • GitHub repo configurable for auto-updater and publisher #6828

📚 Documentation

  • 5 tips for building MCP Apps that work #6855
  • Session isolation #6846
  • CLI newline keybinding #6823
  • Usage data collection #6822
  • Contributor instructions for hermit activation and npm/node versions #6727
  • Copilot instructions: "No prerelease docs" update #6795

v1.22.2

02 Feb 05:27
46c5bbe

Choose a tag to compare

fix: fixed the broken release (#6887) (#6888)

v1.22.1

30 Jan 20:57

Choose a tag to compare

upgrade react and electron to latest (#6845)

v1.22.0

29 Jan 22:01

Choose a tag to compare

Goose v1.22.0 Release Notes

Released: January 29, 2026

✨ New Features

  • Session Forking - Fork existing sessions to create new branches of conversation (#5882) by @wpfleger96
  • Collapsible Chat Navigation - Chat nav is now collapsible for a cleaner UI (#6649) by @zanesq
  • Goose Documentation Skill - Built-in skill for referencing goose documentation (#6534) by @lifeizhou-ap
  • Codex Subscription Support - Added support for Codex subscriptions (#6600) by @michaelneale
  • External Editor Support - Use external editors like vim, helix, etc. (#5823) by @peterwilli
  • Diagnostics Viewer - New diagnostics viewer for debugging (#6770) by @DOsinga
  • OVHcloud AI Provider - Added OVHcloud AI as a new provider option (#6527) by @rbeuque74
  • Recipe Max Turns - Add max_turns setting to recipes and subagents (#6687) by @jhult
  • Container Extensions - Option to run extensions in a container (#6590) by @jamadeo
  • Custom Provider Auth Flag - requires_auth flag for custom providers without authentication (#6705) by @rabi
  • AWS Bearer Token for Bedrock - Support for AWS_BEARER_TOKEN_BEDROCK environment variable (#6739) by @andreswebs
  • Anthropic Custom Headers - Support for custom headers with Anthropic provider (#6774) by @DOsinga
  • Skills in Codemode - Skills are now available in codemode (#6763) by @michaelneale
  • OSS Skills Marketplace - New open source skills marketplace (#6752) by @EbonyLouis
  • Vibe MCP Apps - New MCP apps functionality (#6569) by @DOsinga
  • PR Code Review - Code review functionality (#6043) by @valeriikot

🐛 Bug Fixes

  • macOS Keychain Loop - Fixed infinite prompt loop for macOS keychain (#6620) by @sheikhlimon
  • MCP Elicitation Deadlock - Fixed deadlock and improved UX (#6650) by @blackgirlbytes
  • Manual Compaction - Fixed context window not updating after manual compaction (#6682) by @katzdave
  • Gemini Context Limits - Updated Gemini context limits (#6536) by @rabi
  • Empty Message Error - Return error on empty messages for OpenAI format (#6511) by @Yorisoft
  • Slash/@ Keyboard Navigation - Fixed popover background color (#6550) by @zanesq
  • Unsaved Changes Indicator - Fixed false "unsaved changes" showing in extensions (#6743) by @zanesq
  • Chat Input Width - Fixed text going under action buttons at certain widths (#6751) by @zanesq
  • Recipe Extensions Loading - Fixed recipe extensions not loading in Desktop (#6777) by @zanesq
  • GitHub Copilot Error Handling - Improved error handling (#6771) by @DOsinga
  • OpenRouter Custom Models - Enable custom model entry for OpenRouter (#6761) by @rabi
  • Gemini Subagents - Re-enabled subagents for Gemini models (#6513) by @rabi
  • Google Thought Signatures - Preserve thought signatures in streaming responses (#6708) by @rabi
  • read_resource_tool Deadlock - Fixed deadlock causing test_compaction to hang (#6737) by @lifeizhou-ap
  • Codex Reasoning Effort - Corrected reasoning effort conversion (#6523) by @fgsch
  • GCP Vertex AI Global Endpoint - Fixed global endpoint support for Gemini 3 models (#6187) by @clouatre
  • ADD_ACTIVE_SESSION Event - Dispatch event before navigating from "View All" (#6679) by @jhult
  • ElevenLabs API Key - Fixed API key not persisting (#6557) by @Abhijay007
  • Flatpak Release - Fixed release workflow not finding flatpak file (#6696) by @The-Best-Codes
  • MCP App Width - Respect width parameter in MCP app size-changed notifications (#6376) by @Abhijay007
  • Extension Name Normalization - Normalize extension names consistently in ExtensionManager (#6529) by @rabi
  • Shell Streaming Output - Respect GOOSE_CLI_MIN_PRIORITY for shell streaming output (#6558) by @rabi
  • Google JSON Schema - Use parametersJsonSchema for full JSON Schema support (#6555) by @rabi
  • Compilation Issue - Address compilation issue in main (#6776) by @alexhancock
  • Error Message Line Numbers - Removed line number in error messages (#6736) by @lifeizhou-ap

🔧 Improvements

  • Native Images - Improved native image handling (#6619) by @DOsinga
  • Better Image Compression - Optimized image compression (#6746) by @DOsinga
  • Summarize Old Tool Calls - Tool calls are now summarized for cleaner context (#6119) by @DOsinga
  • Audience Filtering - Strip audience for compacting (#6646) by @DOsinga
  • Config Loading Optimization - Optimized config loading in UI (#6662) by @lifeizhou-ap
  • Tool Call UI - Removed background from tool call containers, added clean labels (#5879) by @spencrmartin
  • Reduced Motion Support - Added support for reduced motion preferences (#6551) by @zanesq
  • Upgraded to Electron 39.3.0 (#6779) by @zanesq
  • Upgraded to rmcp 0.14.0 (#6674) by @alexhancock
  • Keyboard Shortcuts - New keyboard shortcuts (#6711) by @DOsinga
  • Show Provider Failures - Better visibility of provider failures (#6744) by @DOsinga
  • Upgraded Error Handling - Improved error handling throughout (#6747) by @DOsinga
  • BERT Command Injection Detection - ML-based command injection detection in tool calls (#6599) by @dorien-koelemeijer
  • Databricks Provider Speed - Faster initialization by removing fetch of supported models (#6616) by @jh-block
  • Prompt Injection Confidence - Different approach to determining final confidence level of prompt injection evaluation outcomes (#6729) by @dorien-koelemeijer
  • Logging Uplift - Logging uplift for model training purposes (#6330) by @dorien-koelemeijer
  • Default Gooseignore - Create default gooseignore file when missing ([#6498](htt...
Read more

v1.21.2

27 Jan 23:46

Choose a tag to compare

🐛 Bug Fixes

Fix MCP Elicitation Deadlock and Improve UX (#6650)

Fixed a critical deadlock in MCP elicitation that caused requests to timeout immediately when an MCP server called elicitInput().

The Problem:
When an MCP server triggered elicitation, the form would appear in the UI but immediately timeout due to a deadlock in the agent's tool execution loop.

The Solution:

  • Rust (agent.rs): Changed the tool execution loop to use tokio::select! with a 100ms timeout, allowing the loop to periodically check for elicitation messages even when tools are blocked
  • UI (ElicitationRequest.tsx): Added visual feedback including:
    • Countdown timer showing time remaining (5 minutes)
    • Pulsing clock icon with "Waiting for your response" message
    • Urgent state that turns red when under 60 seconds
    • Clear expired message when time runs out

Contributed by @blackgirlbytes


Fix Chat Input Text Overlap (#6751)

Fixed an issue where long chat input text would go under the submit/action buttons at certain window widths.

Contributed by @zanesq


Full Changelog

Compare: v1.21.1...v1.21.2

v1.21.1

23 Jan 18:08
82763c7

Choose a tag to compare

Revert "chore: upgrade rmcp (#6516)" (#6665)

v1.21.0

22 Jan 19:45

Choose a tag to compare

Features

  • Multi-chat support - Added ability to manage multiple chat sessions (#6428) (@zanesq)
  • Standalone MCP apps - Support for standalone MCP applications (#6458) (@DOsinga)
  • User configurable templates - Allow users to customize templates (#6420) (@DOsinga)
  • Flatpak support for Linux - Added Flatpak packaging for Linux distributions (#6387) (@The-Best-Codes)
  • GCP Vertex model list with org policy filtering - Enhanced model listing with organization policy support (#6393) (@rabi)
  • Parallel sessions with isolated agent state - Enable parallel sessions in goose-acp (#6392) (@codefromthecrypt)
  • CLI permission prompts - Ask for permission in the CLI (#6475) (@DOsinga)
  • Customizable new line keybinding in CLI - Allow customizing the new line keybinding (#5956) (@trobrock)
  • Graceful fallback for keyring failures - Better handling when keyring is unavailable (#5808) (@sheikhlimon)
  • Format large/small token counts for readability - Improved token count display in UI (#6449) (@aharvard)
  • Support prefersBorder option for MCP Apps - UI enhancement for MCP apps (#6465) (@aharvard)
  • Exclude subagent tool from code_execution filtering - Allow subagent delegation in code execution mode (#6531) (@rabi)
  • Standardize agent-session-id for session correlation - Improved session tracking across providers (#6626) (@codefromthecrypt)
  • MCP server for recipes - Added MCP server support for recipes (#6552) (@dianed-square)
  • Optional request params and context limit from GOOSE_PREDEFINED_MODELS - Extended model configuration options (#6489) (@zanesq)

Bug Fixes

Improvements

Documentation

Read more

v1.20.1

19 Jan 02:13

Choose a tag to compare

fix: trying this approach to undo regressions for extension loading (…