← Goose Changelog

v1.21.0

Jan 22, 2026 (1mo ago) View on GitHub →

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)
  • Optional request params and context limit from GOOSE_PREDEFINED_MODELS - Extended model configuration options (#6489) (@zanesq)

Bug Fixes

  • Fix: handle model quirks with tool calls in code_execution (#6352) (@rabi)
  • Fix: Handle Gemini thoughtSignature for tool calls on OpenRouter (#6370) (@rabi)
  • Fix: Recipe slash command doesn't work with single optional parameter (#6235)
  • Fix: make tool_call arguments optional and fix silent stream termination (OpenAI) (#6309) (@rabi)
  • Fix: serialize record_result output as JSON in code_execution (#6495) (@rabi)
  • Fix: correctly parse extension name from tool call for MCP apps (#6482) (@aharvard)
  • Fix: popular topics not starting chat when clicked (#6508) (@zanesq)
  • Fix: omit structured_content when None instead of serializing as null (#6499) (@aharvard)
  • Fix: update ui/message to use ContentBlock[] for content for MCP apps (#6546) (@aharvard)
  • Fix: Missing instructions in goose/CONTRIBUTING.md (#6565)
  • Fix: sync all MCP prompt messages to session before agent reply (#6566) (@angiejones)
  • Fix: actually set the working dir for extensions from session (#6612) (@zanesq)

Improvements

  • Performance: avoid accumulating thoughtSignatures across conversation history (Google) (#6462) (@rabi)
  • UI: Use Intl.NumberFormat for token formatting in SessionsInsights (#6466) (@aharvard)

Documentation

  • Added goose doc map md file for goose agent to find relevant doc easily (#6598) (@lifeizhou-ap)