Skip to content

Releases: aaif-goose/goose

v1.47.0

Choose a tag to compare

@github-actions github-actions released this 21 Aug 18:14

✨ Features

  • Interactive git branch indicator in chat bottom bar #11290
  • Support for pre-registered OAuth clients for streamable_http extensions #11182
  • Show recently used models in chat footer model picker #11097

🐛 Bug Fixes

  • Isolate concurrent subagent notifications in summon #10772
  • Validate recipe parameter values #11234
  • Re-enable minijinja builtins so documented recipe filters work #11310
  • Send explicit thinking disabled to adaptive Claude models #11177
  • Handle error code for context length exceeded #11283
  • Include required annotations field on replayed output_text items #11263
  • Reject context commands for context-owning providers #11094
  • Prevent recipe parameter form from reloading the app on Enter #10522
  • Enforce secure token transport in OAuth #11183
  • Deprecate Gemini OAuth provider #11223
  • Stop paying the prompt-cache write premium on one-shot fast-model calls #11179
  • Skip local Stdio/StreamableHttp extension spawn when provider manages own context #11203
  • Navigation toggle showing hamburger menu icon to open navigation #11144
  • Return auth error for ACP provider from goose ACP server #11202
  • Ignore ACP provider generated title and use goose generated title #11197
  • Render visualizer data as text #11186
  • Bound XLSX range reads #11190
  • Update SQLite to 3.51.3 #11157
  • Classify byte-size request limit errors as context-length-exceeded #11173
  • Prevent large-session disconnects in ACP #11159
  • Narrow desktop file read IPC #11149
  • Avoid reading file params in recipe explain #11119
  • Bound local image reads #11114
  • Bound action-required stream admission #11113
  • Bound partial thinking tags #11108
  • Avoid following untracked review symlinks #10995
  • Bind deeplink recipe parameters to startup session #11123
  • Rename compare_tasks skill to a spec-valid name #11068
  • Suppress extension loading toast when all extensions succeed #11016

🔧 Improvements

  • Improve ACP provider setup and unify setup metadata #11100
  • Create goose-agent crate with unrolled agent loop state machine #11216
  • Make the unrolled loop state machine generic #11139
  • Retry ACP handoff context after failed prompts #10660
  • Remove automation_script, web_scrape, and cache tools from computercontroller #11198
  • Upgrade ACP SDK to 1.3.0 #11218
  • Pin V1 SDK and narrow ACP crate features #11289
  • Migrate session/delete to the standard ACP SDK #11286
  • Use rmcp ContentBlock in goose-sdk UniFFI #11210

v1.46.0

Choose a tag to compare

@github-actions github-actions released this 12 Aug 16:05

✨ Features

  • Unrolled agent loop #9574
  • Cache-safe request assembly with append-only turn context and declared cache semantics #11022
  • Streaming shell output while commands run #10808
  • Per-message usage stats UI (tokens, cost, TTFT, tok/s) #10210
  • Per-message usage/cost tracking with derived session totals #10172
  • Track cache tokens for accurate cost reporting #9752
  • Markdown format option to session export #10703
  • Resizable sidebar with drag handle and persisted width #10795
  • Interactive menu for single select elicitations #10327
  • Session metadata on sidebar chat hover #10663
  • Configurable LOCAL_WHISPER_LANGUAGE for multilingual local transcription #10634
  • Allow disabling built-in skills #10600
  • Structured summary output with template rendering for compaction #10471
  • Pass working_dir to the Stop hook context #10296
  • Surface output-token-limit info #10831
  • Tab completion and switch provider for model command #10585
  • Collapse const-union enums in tool schemas #10577
  • GenAI semantic convention attributes for OTEL #10700
  • Enrich root span with gen_ai attributes and improve OTEL output format #10816
  • Forward images and MCP embedded-resource blobs in Anthropic and Google formats #10340
  • ACP session/new supports Hidden session via _meta.hidden #10811
  • Stable agent event message identity #10716
  • OAuth logo_uri in client ID metadata documents #10727
  • Termux detection in installer to select musl portable build #10568
  • Hooks feature with PreToolUse denial #9093, #9304
  • /goal command for agent self-evaluation before finishing #9069
  • /status slash command #9845
  • /model slash command to switch session model #8747
  • --edit session flag to edit conversation before forking #9799
  • goose review local code review command #9114
  • Open plugins generalization with skills support #9112
  • Summon extension: peek mode for async background tasks #9519
  • Summon extension: context and working_dir parameters for delegate tasks #9518, #9520
  • Load global hints from ~/.agents/AGENTS.md #9736
  • Proactive OAuth token refresh to avoid re-auth on every session #8386
  • GOOSE_OAUTH_CALLBACK_PORT for stable OAuth redirect_uri #9209
  • Unified thinking effort control across all providers #9242
  • Projects as backend sources with system prompt injection #8739
  • Group chat sessions by project in nav panel #10212
  • Collapsible project group headers in nav panel #10278
  • Worktree-aware directory switcher #8450
  • Chat history search feature in navigation panel #8448
  • Search filter to provider grid #10437
  • Option to disable automatic update downloads #9872
  • TUI diff viewer #9260
  • MAX_CODE_BLOCK_LINES configurable via env vars #9301
  • GOOSE_MAX_TOOL_RESPONSE_SIZE to configure tool output size limit #9256
  • GOOSE_FAST_MODEL env var in ModelConfig::with_fast #9296
  • GOOSE_DOCS_ROOT for air-gapped docs access #10294
  • Quarterly option for scheduler #9076
  • Harbor eval runner #9138
  • goose://new-session and goose://resume deep links #9196, #9343
  • Initial prompt with goose://new-session #9427
  • Encrypted Nostr session sharing #8922
  • Import sessions #9474
  • Hugging Face OAuth support with auth tab in settings #9552
  • MLX models support in local inference provider #9154
  • Linux Vulkan support for local inference #9038
  • Reconnect desktop ACP sessions after sleep and connection loss #10411
  • TLS support for ACP serve #10088
  • Group consecutive tool calls into one summarized chain card #8995
  • Bind MCP apps to trusted ownership metadata #10747
  • MCP extensions in open plugins #9471
  • Skills to the chat composer #8881
  • Dynamically refresh skill instructions each turn #9217
  • CLI to list skills with token counts #9326
  • Image read tool #9607
  • View model interactions #9806
  • UniFFI SDK for cross-language bindings #9593
  • Provider bindings MVP to goose-sdk with Python wheel publishing #10208
  • Kotlin FFI with build and Maven publish #10375
  • Create source archive as release artifact #10786

New Providers

  • Celeris provider #10714
  • Friendli declarative provider #10762
  • Azure AI Foundry multi-LLM provider #10622
  • OllamaCloud provider with dynamic model discovery #10264
  • Sakana AI provider for OpenAI-compatible Fugu API #10357
  • iFlytek Spark and Astron MaaS providers #9837
  • Fireworks AI declarative provider #9990
  • OpenRouter request parameters support #9276
  • Together AI declarative provider #9545
  • OrcaRouter declarative provider #9515
  • Perplexity declarative provider #9324
  • Alibaba (Qwen via DashScope) declarative provider #9443
  • Databricks AI Gateway provider #9274
  • Scaleway provider #9254
  • NEAR AI Cloud provider #9352
  • EmpirioLabs declarative provider #9771
  • xAI SuperGrok OAuth subscription provider #9420
  • Vercel AI Gateway #9144
  • Routstr declarative provider #9175
  • FuturMix provider #8840
  • oMLX declarative provider #9177
  • Atomic Chat declarative provider #9210
  • Muse Spark 1.1 via Meta Models API #10432
  • AWS Bedrock support for OpenAI GPT models via mantle endpoint #9707
  • Azure AD (Entra ID) bearer token auth via AZURE_OPENAI_AD_TOKEN #9716

N...

Read more

v1.45.0

Choose a tag to compare

@github-actions github-actions released this 29 Jul 20:11

✨ Features

  • Stable agent event message identity #10716
  • Tab completion and switch provider for model command #10585
  • Support latest Gemini models #10630
  • Configurable GOOSE_DOCS_ROOT for air-gapped docs access #10294
  • Structured summary output with template rendering for compaction #10471
  • Allow disabling built-in skills #10600
  • Gate tool-call label enrichment on ACP client capability #10644

🐛 Bug Fixes

  • Restore dynamic model discovery and current Grok support #10756
  • Update DeepSeek model names to v4 API #10729
  • Forward Claude Code model picker selection to the adapter #10675
  • Forward Pi model selection to the adapter #10707
  • Preserve enabled flag when migrating platform extensions #10690
  • Pass session working_dir to on_call_tool #10689
  • Preserve adversary tool arguments #10529
  • Keep XML snippets inside JSON as data for local inference #10606
  • Sync generated chat title in header #10578
  • Prompt for tool approval in telegram gateway sessions #10613
  • Keep CLI provider prompts out of process arguments #10547
  • Ignore stale inventory for static model lists #10591
  • Use shell working directory on initial desktop launch #10655
  • Enable inventory refresh for OpenRouter model picker #10641
  • Preserve read lines and reload tool output in ACP #10662
  • Surface tool call output in CLI and Desktop #10654
  • Truncate overlong function names in provider requests #10659
  • Preserve ACP tool call update fields in desktop #10653
  • Use configured session manager for tool summaries #10628
  • Omit disabled OpenRouter reasoning #10517
  • Clear stale pending ACP connection after terminal recovery failure #10552
  • Confirm pending steer message on queuedSteer notification #10532
  • Apply hermit env directly in node shims so fish login shell doesn't break MCP startup #10028

🔧 Improvements

  • Upgrade to rmcp 2.0 #10584
  • Opus5 support including adaptive thinking #10686
  • Refine dark theme message surfaces for consistent, compliant dark mode UX #10693
  • Fix Korean translation errors, untranslated entries, and terminology consistency #10667
  • Simplify ACP tool-call handling and fix chain summaries #10599
  • Enhance the uniffi API layer #10427
  • Disable scheduler by default for ACP #10781
  • UI cleanup to remove unused components and functions #10761
  • Bump nostr to 0.44.6 to clear RUSTSEC-2026-0216 #10733
  • Create source archive as release artifact #10786

v1.44.0

Choose a tag to compare

@github-actions github-actions released this 23 Jul 19:18

Security fixes

✨ Features

  • Support for latest Gemini models #10630
  • Pass working_dir to the Stop hook context #10296
  • Declarative Sakana AI provider for OpenAI-compatible Fugu API #10357
  • Model interactions viewer restored #10205
  • Chunk command-classifier input with overlapping windows for security #10416
  • Search filter for provider grid #10437
  • Muse Spark 1.1 support via Meta Models API #10432
  • GPT-5.6 support #10384
  • Reconnect desktop ACP sessions after sleep and connection loss #10411
  • Per-message usage stats UI (tokens, cost, TTFT, tok/s) #10210
  • OllamaCloudProvider with dynamic model discovery and context limits #10264
  • Delete support for custom apps from Apps UI #10127
  • --edit session flag to edit conversation before forking #9799
  • iFlytek Spark and Astron MaaS providers #9837
  • Fireworks AI declarative provider #9990
  • OpenRouter request parameters support #9276
  • French, German, Italian, Portuguese, Indonesian, Malay, Vietnamese, zh-TW desktop locales #10072
  • MiniMax-M3 and missing M2.7 variants #10431

🐛 Bug Fixes

  • Preserve command arguments through extension forms #10527
  • Enforce manual approval for code mode #10528
  • Confine app file operations #10481
  • Preserve featured model size on delete and backfill missing sizes #10422
  • Preserve recursive schema types with pctx 0.4.1 #10572
  • Create inventory tables atomically with schema version #10586
  • Rewrite oneOf to anyOf in tool schemas for OpenAI-compatible backends #10571
  • Allow custom model as default for non-local providers #10438
  • Require absolute goose path roots #10454
  • Scope smart approval by request #10457
  • Preserve fixed subrecipe values #10452
  • Bundle git in Flatpak so hermit can clone its package registry #10511
  • Expose AGENT_SESSION_ID to shell commands #10428
  • Forward image content chunks to client during live session #10485
  • Dispatch Code Mode callbacks on main runtime to prevent hangs #10484
  • Protect OAuth token caches #10516
  • Preserve content audience boundaries #10493
  • Bound scheduled recipe validation #10509
  • Return JSON-RPC errors from dispatch handlers instead of killing connection #10499
  • Isolate prepare tools test state #10504
  • Avoid local inference Metal teardown crash #10508
  • Enable indexmap serde support for musl builds #10507
  • Scroll chat to latest reply on session resume #10501
  • Secure large response spill files #10482
  • Register LiteLLM with refresh_only inventory so model picker lists models #10489
  • Limit provider selector height in CLI #10420
  • Tighten existing secrets file permissions #10453
  • Classify image access capabilities #10451
  • Preserve one-time permission scope #10450
  • Register goose:// scheme handler in Flatpak desktop entry #10461
  • Reject duplicate recipe parameter keys #10448
  • Synchronously kill orphaned goose serve backends on GUI close #10292
  • Break self-referential $ref cycles before Code Mode schema #10469
  • Stop multiline paste auto-submitting line-by-line on Windows #10326
  • Hide nested config values in Configuration Editor #10390
  • Stop resolving TUI scripts from cwd #10449
  • Exclude MCP App tools from Code Mode callbacks #10290
  • Apply default extension timeout to developer shell tool calls #10348
  • Preserve reasoning_content for DeepSeek thinking mode on multi-turn tool calls #10366
  • Make prompt timestamps timezone-explicit #10209
  • Disable compaction during approval #10089
  • Restore pnpm 11 project configuration #10395
  • Treat empty-string finish_reason as non-terminal in streaming #10258
  • Fix Gemini OAuth onboarding #10363
  • Retry empty provider turns instead of stopping silently #10360
  • Guard llama.cpp backend init against SIGILL on x86_64 CPUs without FMA/AVX2 #10105
  • Sanitize responses function call names #10344
  • Pick session mode from the ids the agent actually offers #10320
  • Show manual-setup indicator for extensions without install link #10321
  • Dedupe duplicate signed thinking blocks to fix Anthropic 400 #10083

🔧 Improvements

  • Extract tool call handling from ACP server #10574
  • Report cache-aware Harbor costs #10430
  • Trim macOS desktop entitlements #10490
  • Consolidate and harden release workflows #10447
  • TLS backend matrix job for rustls-tls and native-tls #10148
  • Bound code-mode execution with timeout and cancellation #10214
  • Recover malformed tool calls from GLM/Minimax models instead of rejecting them #10230
  • Group chat sessions by project in nav panel #10212
  • Per-message usage/cost tracking with derived session totals #10172
  • Return effective context limit from /model-info #10165
  • Disable thinking preservation for Groq #10284
  • Clarify terminal color semantics in CLI #10414

📚 Documentation

  • Clean up stale documentation audit findings #10114
  • Update environment and config references #10203
  • Document hook deny contract, matcher regex, tool_input keys, and provider config #10467
  • Remove stale gooseignore references #10359
  • Add Code of Conduct #10424
  • Clarify session --edit context retention #10257

v1.43.0

Choose a tag to compare

@github-actions github-actions released this 14 Jul 09:46

✨ Features

  • Reconnect desktop ACP sessions after sleep and connection loss #10411
  • Per-message usage stats UI (tokens, cost, TTFT, tok/s) #10210
  • Per-message usage/cost tracking with derived session totals #10172
  • Group chat sessions by project in nav panel #10212
  • Show project names in directory switcher dropdown #10207
  • OllamaCloudProvider with dynamic model discovery and context limits #10264
  • Delete support for custom apps from Apps UI #10127
  • --edit session flag to edit conversation before forking #9799
  • iFlytek Spark and Astron MaaS providers #9837
  • Fireworks AI declarative provider #9990
  • OpenRouter request parameters support #9276
  • OVHcloud Qwen3.6-27B model (262K context) #10339
  • GPT-5.6 family support #10349
  • GLM-5.2 support #9967
  • French, German, Italian, Portuguese, Indonesian, Malay, Vietnamese, and Traditional Chinese desktop locales #10072
  • Provider bindings MVP to goose-sdk with Python wheel publishing #10208
  • TLS support for ACP serve #10088
  • Streamable HTTP support in deeplink generator #9954

🐛 Bug Fixes

  • Exclude MCP App tools from Code Mode callbacks #10290
  • Preserve reasoning_content for DeepSeek thinking mode on multi-turn tool calls #10366
  • Compaction disabled during approval #10089
  • Treat empty-string finish_reason as non-terminal in streaming #10258
  • Gemini OAuth onboarding failure #10363
  • Retry empty provider turns instead of stopping silently #10360
  • Guard llama.cpp backend init against SIGILL on x86_64 CPUs without FMA/AVX2 #10105
  • Sanitize responses function call names #10344
  • Pick session mode from the IDs the agent actually offers #10320
  • Desktop ACP shell PATH #10336
  • Dedupe duplicate signed thinking blocks to fix Anthropic 400 #10083
  • Resolve provider default model instead of leaking sentinel "current" #10305
  • Return effective context limit from /model-info #10165
  • Gate rcgen aws_lc_rs feature behind rustls-tls #10116
  • Recover malformed tool calls from GLM/Minimax models instead of rejecting them #10230
  • Restore cursor when configure exits #10222
  • Skip scheduled sessions for implicit resume #10178
  • Sync slash help with builtins #10173
  • Treat unicode punctuation as image path terminators #10106
  • Don't bleed provider-specific request_params into delegate() sessions #9906
  • Purge empty phantom sessions on startup #9651
  • Include structuredContent from MCP tool response #10128
  • Propagate agent cleanup errors on session delete #10112
  • Tolerate partial Responses output items #10108
  • Always use OpenAI-compatible "parameters" for Databricks tools #10101
  • Unescape shell-escaped image paths #10098
  • Send inference config (max_tokens, temperature) on Bedrock Converse #9889
  • Dedupe Nostr session deep link imports #9918
  • Don't retry deterministically-permanent 400s (thinking-block immutability) #10005
  • Use async reqwest client so OTLP export works in goose serve mode #10100
  • Reject non-object tool-call arguments instead of panicking #9832
  • Save /edit prompts to history #10011
  • Buffer thinking across stream chunks for DeepSeek/Kimi tool calls #9704
  • Surface actionable errors for truncated tool-call arguments #9946
  • Show optimistic toggle state when disabling an extension #9882
  • Resolve databricks_v2 pricing and surface cost in standard usage update #9925
  • Activate hermit on macOS so STDIO extensions resolve node #9482
  • Prompt timestamps are now timezone-explicit #10209

🔧 Improvements

  • Apply the default extension timeout to developer shell tool calls #10348
  • Disable thinking preservation for Groq #10284
  • Bound code-mode execution with timeout and cancellation #10214
  • Keep turn-context out of the Anthropic prefix cache #10030
  • Disable extended thinking for fast-model operations #9815
  • Switch the local inference provider MLX backend to use the safemlx crate #10304
  • OpenAI Responses API store param configurable #10040
  • Support streamed tool calls without indexes #10023
  • Fail closed on unverifiable update provenance #10168
  • Migrate diagnostics to JSON report #9964
  • Route MCP elicitations through tool streams #9943
  • ACP migration for desktop UI #10081
  • Relabel settings 'Session' tab to 'External Backend' #10318
  • Show manual-setup indicator for extensions without an install link #10321

📚 Documentation

  • Clarify session --edit context retention #10257
  • Name the message field in the hooks payload guide #9913
  • Custom agents guide #9293
  • Correct custom agents guide #9947

v1.42.0

Choose a tag to compare

@github-actions github-actions released this 13 Jul 19:33

✨ Features

  • OllamaCloudProvider with dynamic model discovery and context limits #10264
  • Per-message usage stats UI (tokens, cost, TTFT, tok/s) #10210
  • Per-message usage/cost tracking with derived session totals #10172
  • Group chat sessions by project in nav panel #10212
  • Show project names in directory switcher dropdown #10207
  • Provider bindings MVP to goose-sdk with Python wheel publishing #10208
  • AskAI bot hints for followups #10291

🐛 Bug Fixes

  • Resolve provider default model instead of leaking sentinel "current" #10305
  • Return effective context limit from /model-info #10165
  • Recover malformed tool calls from GLM/Minimax models instead of rejecting them #10230
  • Restore cursor when configure exits #10222
  • Sync slash help with builtins #10173
  • Treat unicode punctuation as image path terminators #10106
  • Don't bleed provider-specific request_params into delegate() sessions #9906
  • Purge empty phantom sessions on startup #9651
  • Include structuredContent from MCP tool response #10128
  • Gate rcgen aws_lc_rs feature behind rustls-tls #10116

🔧 Improvements

  • Increase /mcp-app-guest body limit for larger single-file MCP apps #10324
  • Relabel settings 'Session' tab to 'External Backend' #10318
  • Switch local inference provider MLX backend to use the safemlx crate #10304
  • Disable thinking preservation for Groq #10284
  • Bound code-mode execution with timeout and cancellation #10214
  • Skip scheduled sessions for implicit resume #10178
  • Fail closed on unverifiable update provenance #10168
  • Update Rust toolchain and raise recursion limit #10303
  • Drop unsupported gpt-5.3-codex from chatgpt_codex provider #10271
  • Move Google provider into goose-providers #10216
  • Move Snowflake provider #10218
  • Move Databricks providers into goose-providers crate #10162
  • Move declarative definitions #10167

📚 Documentation

  • Clarify session --edit context retention #10257
  • Simplified the issue templates #10316
  • Remove stale crates/goose-server and update docs #10224

v1.41.0

Choose a tag to compare

@github-actions github-actions released this 03 Jul 00:26

✨ Features

  • iFlytek Spark and Astron MaaS providers (#9837)
  • --edit session flag to edit conversation before forking (#9799)
  • Fireworks AI declarative provider (#9990)
  • OpenRouter request parameters support (#9276)
  • French, German, Italian, Portuguese, Indonesian, Malay, Vietnamese, and Traditional Chinese desktop locales (#10072)
  • Spanish (es) locale support (#9833)
  • Korean localization for desktop app (#9856)
  • Japanese locale support (#9768)
  • Hindi desktop locale (#9733)
  • Language selection feature in desktop (#9405)
  • /status slash command in CLI (#9845)
  • Streamable HTTP support in deeplink generator (#9954)
  • GLM-5.2 model support (#9967)
  • Global hints loading from ~/.agents/AGENTS.md (#9736)
  • Azure Entra ID bearer token auth via AZURE_OPENAI_AD_TOKEN (#9716)
  • Together AI declarative provider (#9545)
  • OrcaRouter as declarative OpenAI-compatible provider (#9515)
  • EmpirioLabs AI declarative provider (#9771)
  • MLX model support for local inference provider (#9154)
  • Summon peek mode for async background tasks (#9519)
  • Summon context parameter for delegate tasks (#9518)
  • Summon working_dir override for delegate tasks (#9520)
  • Structured metadata for summon task load results (#9521)
  • TLS support for ACP serve (#10088)
  • OpenAI Responses API store param configurability (#10040)
  • Exposed available tools in ACP schema (#10097)
  • ACP thinking effort config option (#10711)
  • Last message snippets for ACP sessions (#9798)
  • OTLP logging schema for cross-tool detection (#9713)
  • Option to disable automatic update downloads (#9872)
  • Cache token tracking for accurate cost reporting (#9752)
  • Session import functionality (#9474)
  • xAI SuperGrok OAuth subscription provider (#9420)
  • Perplexity as declarative OpenAI-compatible provider (#9324)
  • Alibaba (Qwen via DashScope) declarative provider (#9443)
  • Configurable tool output size limit via GOOSE_MAX_TOOL_RESPONSE_SIZE (#9256)
  • /model slash command for session model switching (#8747)
  • Databricks AI Gateway provider (#9274)
  • Russian language support (#9406)
  • Turkish desktop locale (#9392)
  • NEAR AI Cloud provider (#9352)
  • Scaleway provider (#9254)
  • Harbor eval runner (#9138)
  • /goal command for agent self-evaluation before finishing (#9069)
  • Summon subagent instructions (#9325)
  • Open-plugins generalization + skills (#9112)
  • PreToolUse denial in hooks (#9304)
  • Optional api_key configuration for declarative openai-engine providers (#9202)
  • goose review local code review command (#9114)
  • TUI diff viewer (#9260)
  • Paginated session list in ACP (#9199)
  • Structured per-provider config block with non-destructive provider switching (#8977)
  • tui command on goose-cli (#9385)
  • Configurable MAX_CODE_BLOCK_LINES via env vars (#9301)
  • goose://resume session deep link (#9343)
  • GOOSE_FAST_MODEL env var support (#9296)
  • Vercel AI Gateway provider (#9144)
  • Quarterly option for scheduler (#9076)
  • Hooks feature (#9093)
  • Projects as backend sources with system prompt injection (#8739)
  • Worktree-aware directory switcher (#8450)
  • Chat history search feature (#8448)
  • Optional --parameters for scheduled recipes (#8741)
  • GitHub Copilot /responses API (#9043)
  • Unified thinking effort control across all providers (#9242)
  • Slash commands (built-in, skill, recipe) in ACP server (#9238)
  • Nushell terminal and completion support (#8628)
  • Simplified Chinese (zh-CN) translation (#8765)
  • Atomic Chat as declarative OpenAI-compatible provider (#9210)
  • GOOSE_OAUTH_CALLBACK_PORT for stable OAuth redirect_uri (#9209)
  • Proactive OAuth token refresh to avoid re-auth on every session (#8386)
  • goose://new-session deep link for fresh chat (#9196)
  • Routstr as declarative provider (#9175)
  • FuturMix provider (#8840)
  • oMLX declarative provider (#9177)
  • Declarative provider support in goose-providers crate (#9992)
  • ACP elicitation improvements (#9797)
  • Image read tool (#9607)
  • gpt-5.5 model support for ChatGPT Codex provider (#9292)

🐛 Bug Fixes

  • Canonical model output paths (#10196)
  • ACP agent cleanup errors propagation on session delete (#10112)
  • claude-sonnet-5 added to canonical model registry (#10183)
  • MCP-app-guest request body limit increased (#10180)
  • Tolerate partial Responses output items (#10108)
  • Databricks tool parameters for OpenAI compatibility (#10101)
  • Unescape shell-escaped image paths (#10098)
  • Desktop Mac auto-update config seeding (#10132)
  • /edit prompts saved to history (#10011)
  • Schedule sessions listing using session.message_count (#10026)
  • Session store sync after provider/model update and thinking effort update (#10060)
  • Fallback REST API call removed in ACP mode for edit in place (#10034)
  • Don't retry deterministically-permanent 400s (thinking-block immutability) (#10005)
  • Async reqwest client for OTLP export in goose serve mode (#10100)
  • Reject non-object tool-call arguments instead of panicking (#9832)
  • Databricks pricing resolution and cost surfacing (#9925)
  • Removed unused SubagentStart/SubagentStop hook events (#9960)
  • Recipe modal closes when canceling parameter form (#9195)
  • Tool request timestamp precedes tool response timestamp (#9462)
  • Activate hermit on macOS so STDIO extensions resolve node (#9482)
  • Auto-visualiser JSON-encoded string handling (#9838)
  • User-Agent sent on URL image fetches (#9927)
  • Do not pass temperature to ChatGPT Codex provider (#9931)
  • Nostr session deep link import deduplication (#9918)
  • Provider refresh when session working directory changes (#9883)
  • GCP refreshed gcloud token after reauth (retry Vertex AI on 401/403) (#9849)
  • Start a turn when /goal or /grind is set (#9801)
  • Handle resume deep links (#9298)
  • PATH repair for plugin hook commands (#9615)
  • Cmd/Ctrl+T new chat shortcut restored (#9614)
  • Mention menu icon opens sidebar (#9643)
  • Dedupe React to prevent multiple instances in renderer (#9631)
  • Hermit cleanup added to uvx and jbang scripts (#9616)
  • Blocking OTLP HTTP exporter (#9599)
  • Fall back to default provider when resuming session with unavailable provider (#9547)
  • Tokio runtime provided for OTLP HTTP exporter batch thread (#9541)
  • OpenAI meta.n_ctx read from /v1/models for local server context limit (#9530)
  • Session history scrollbar aligned with window edge (#9601)
  • Session name refresh in sidebar after rename (#9543)
  • Resolved skill supporting file paths shown (#9584)
  • Bedrock real streaming via ConverseStream API (#9579)
  • OpenAI-native cached_tokens recorded in usage metering (#9829)
  • Moonshot provider API URL override option (#9819)
  • Image paths with spaces detected (#9387)
  • New chat shortcut navigation restored (#9528)
  • Stale completed tasks evicted in summon (#9514)
  • OAuth callback timeout in WSL instead of hanging (#9536)
  • Unmatched extension names warning in delegate (#9513)
  • Elicitation decline and cancel actions propagated end-to-end (#9437)
  • Bedrock inference config (max_tokens, temperature) sent on Converse (#9889)
  • Optimistic toggle state shown when disabling an extension (#9882)
  • Windows backslash paths preserved in custom extension command (#9741)
  • ACP cancel race condition fixed (#9804)
  • Removed window goosed when closing window (#9818)
  • Context exceeded checker made more precise (#9831)
  • Login-shell PATH inherited in spawned subagents (#9737)
  • String values accepted for GOOSE_CONTEXT_LIMIT (#9738)
  • Rejected OAuth credentials cleared after refresh (#9694)
  • Extended thinking kept within Anthropic output cap (#9814)
  • RPM build-id links disabled (#9671)
  • Custom API path preserved in OpenAI base_url derivation (#9649)
  • Bedrock ValidationException classified as ExecutionError (#9735)
  • Unparseable extension entries preserved during config refresh (#9439)
  • Session info ACP method (#9729)
  • Anthropic stream refusals surfaced as visible errors (#9724)
  • Ollama_cloud correctly mapped to canonical provider (#9639)
  • Groq provider max tokens values corrected (#9790)
  • Stream decode errors marked retryable (#9723)
  • Databricks AI Gateway v2 endpoints pagination (#9753)
  • Pattern-based prompt injection detection confidence scores adjusted (#9690)
  • ACP compatibility in TUI for config extensions (#9683)
  • Thinking content buffered across stream chunks for DeepSeek/Kimi tool calls (#9704)
  • Actionable errors surfaced for truncated tool-call arguments (#9946)
  • Deleting recently created session and creating new one no longer shows deleted content (#9351)
  • Custom OpenAI provider port preserved when URL scheme omitted (#9730)
  • ACP agentInfo included in initialize response (#9765)
  • Local inference media marker parts used for vision prompts (#9452)
  • Extensions icon visible after switching sessions (#9787)
  • Non-recipe project config files skipped in summon (#9808)
  • Duplicate tool-call ids deduped within a turn (#9792)
  • Bundled extensions resolved from discovery (#9759)
  • Thinking config passed to Bedrock Anthropic models (#9794)
  • LiteLLM context limit from /model/info for custom models (#9303)
  • Thinking content preserved for provider context (#9314)
  • Configurable timeout env vars mentioned in Ollama stream stall error (#9246)
  • Full recipe parameter details included in load/discovery output (#9233)
  • Unused fetch-metadata IPC handler removed (SSRF) (#9340)
  • Gateway respects GOOSE_MAX_TURNS (#9354)
  • Anthropic empty object sent instead of null for tool_use input (#9355)
  • Selected branch preserved across project chats (#9010)
  • Tolerate missing responses output (#9449)
  • Azure api-version query param made optional (#9221)
  • Pending env vars preserved in Add Extension form (#9285)
  • Linux x86_64 built inside manylinux_2_28 for glibc 2.28+ compat (#9415)
  • Main window stops growing taller on every launch (#9409)
  • Desktop chat search session limiting (#9366)
  • Per-session agent creation serialized to stop duplicate MCP init (#9357)
  • OTLP signals skipped when protocol=grpc to avoid background-thread panic (#9512)
  • Stop hook decisions honored when blocking...
Read more

v1.40.0

Choose a tag to compare

@github-actions github-actions released this 02 Jul 05:12

✨ Features

  • Language selection in desktop app #9405
  • French, German, Italian, Portuguese, Indonesian, Malay, Vietnamese, Traditional Chinese desktop locales #10072
  • Korean localization for desktop app #9856
  • Japanese locale support #9768
  • Spanish (es) locale support #9833
  • Hindi desktop locale #9733
  • /status slash command in CLI #9845
  • /model slash command for session model switching #8747
  • /goal command for agent self-evaluation before finishing #9069
  • goose review local code review command #9114
  • Peek mode for async background tasks in summon #9519
  • Context parameter and working_dir override for delegate tasks #9518 #9520
  • GLM-5.2 support #9967
  • Together AI declarative provider #9545
  • EmpirioLabs as declarative OpenAI-compatible provider #9771
  • OrcaRouter as declarative OpenAI-compatible provider #9515
  • NEAR AI Cloud provider #9352
  • Perplexity as declarative OpenAI-compatible provider #9324
  • Alibaba (Qwen via DashScope) declarative provider #9443
  • Databricks AI Gateway provider #9274
  • Scaleway provider #9254
  • Vercel AI Gateway #9144
  • xAI SuperGrok OAuth subscription provider #9420
  • OpenAI GPT models via AWS Bedrock mantle endpoint #9707
  • Azure Entra ID bearer token auth via AZURE_OPENAI_AD_TOKEN #9716
  • MLX models support for local inference provider #9154
  • Streamable HTTP support for deeplink generator #9954
  • Global hints loading from ~/.agents/AGENTS.md #9736
  • Unified thinking effort control across all providers #9242
  • Canonical thinking modes #9743
  • Hooks system for extensibility #9093
  • PreToolUse denial in hooks #9304
  • Honor blocking Stop hook decisions #9468
  • Option to disable automatic update downloads #9872
  • Track cache tokens for accurate cost reporting #9752
  • Configurable tool output size limit via GOOSE_MAX_TOOL_RESPONSE_SIZE #9256
  • Configurable MAX_CODE_BLOCK_LINES via env vars #9301
  • GOOSE_FAST_MODEL env var support #9296
  • Hugging Face OAuth support with auth tab in settings #9552
  • Chat history search in navigation panel #8448
  • Import sessions #9474
  • View model interactions #9806
  • View JSON content #9678
  • Image read tool #9607
  • goose://new-session deep link #9196
  • goose://resume session deep link #9343
  • Initial prompt with goose://new-session #9427
  • MCP extensions support in open plugins #9471
  • Nushell terminal and completion support #8628
  • TUI command on goose-cli #9385
  • TUI diff viewer #9260
  • Unified OTLP logging schema for cross-tool detection #9713
  • Prompt injection mitigation enabled by default for internal users #9612
  • Encrypted Nostr session sharing #8922
  • Quarterly option for scheduler #9076
  • Optional --parameters for scheduled recipes #8741
  • Worktree-aware directory switcher #8450
  • Harbor eval runner #9138
  • Linux musl CLI builds #9240

🐛 Bug Fixes

  • Mac auto-update config seeding #10132
  • Use async reqwest client so OTLP export works in goose serve mode #10100
  • Reject non-object tool-call arguments instead of panicking #9832
  • Save /edit prompts to history #10011
  • Use session.message_count for schedule sessions listing #10026
  • Sync session store after provider and model update #10060
  • Buffer thinking across stream chunks for DeepSeek/Kimi tool calls #9704
  • Surface actionable errors for truncated tool-call arguments #9946
  • Show optimistic toggle state when disabling an extension #9882
  • Do not pass temperature to ChatGPT Codex provider #9931
  • Resolve databricks_v2 pricing and surface cost in standard usage update #9925
  • Activate hermit on macOS so STDIO extensions resolve node #9482
  • Autovisualiser: accept JSON-encoded string for the data parameter #9838
  • Developer/read_image: send a User-Agent on URL image fetches #9927
  • Start a turn when /goal or /grind is set #9801
  • Pass thinking config to Bedrock Anthropic models #9794
  • Preserve Windows backslash paths in custom extension command #9741
  • Custom OpenAI provider dropping port when URL scheme is omitted #9730
  • ACP cancel race condition #9804
  • Removed window goosed when closing window #9818
  • Context exceeded checker more precise #9831
  • Inherit login-shell PATH in spawned subagents #9737
  • Accept string values for GOOSE_CONTEXT_LIMIT #9738
  • Clear rejected OAuth credentials after refresh #9694
  • Keep extended thinking within the Anthropic output cap #9814
  • RPM build-id links disabled #9671
  • Preserve custom API path in base_url derivation for OpenAI #9649
  • Handle resume deep links #9298
  • Repair PATH for plugin hook commands #9615
  • Restore Cmd/Ctrl+T new chat shortcut #9614
  • Lead with extension description, shorten HTTP/SSE transport label #9653
  • Mention menu icon to open the sidebar #9643
  • Dedupe React to prevent multiple instances in renderer #9631
  • Hermit cleanup in uvx and jbang scripts #9616
  • Use blocking OTLP HTTP exporter #9599
  • Fall back to default provider when resuming session with unavailable provider #9547
  • Provide Tokio runtime for OTLP HTTP exporter batch thread #9541
  • Read meta.n_ctx from /v1/models to fix context limit for local servers #9530
  • Align session history scrollbar with window edge #9601
  • Refresh session name in sidebar after rename [#9543](htt...
Read more

v1.39.0

Choose a tag to compare

@github-actions github-actions released this 25 Jun 22:50

✨ Features

  • ACP method for managing recipes and UI changes #9951
  • Use ACP to manage global config and session extensions #9948
  • Recipe handling in new_session #9935
  • /status slash command in CLI #9845
  • ACP new session on desktop (non-recipe sessions) #9914
  • Typed request/response for add, get session extensions in ACP #9890
  • Option to disable automatic update downloads #9872
  • Change cwd using ACP and refactor extension in bottom menubar #9887
  • Track cache tokens for accurate cost reporting #9752
  • Load session using ACP #9875
  • View model interactions #9806
  • Support OpenAI GPT models via AWS Bedrock mantle endpoint #9707
  • Peek mode for async background tasks in summon #9519
  • Korean localization for desktop app #9856
  • Chat reply UI with ACP #9857
  • Durable ACP chat session state for desktop UI #9852
  • ACP for desktop chat prompt (feature toggle off) #9802
  • MCP extensions support in open plugins #9471
  • Initial prompt with goose://new-session deep link #9427
  • Configurable Open Model Gym output dir #9789
  • Spanish (es) locale support #9833
  • EmpirioLabs as a declarative OpenAI-compatible provider #9771
  • MLX models support for local inference provider #9154
  • Elicitation method for ACP with improvements #9797
  • View JSON #9678
  • Load global hints from ~/.agents/AGENTS.md #9736
  • Configurable per-agent timeout (GYM_AGENT_TIMEOUT) #9791
  • Azure Entra ID bearer token auth via AZURE_OPENAI_AD_TOKEN #9716
  • _meta.conversationBefore for ACP forking session #9821
  • Quarterly option for scheduler #9076
  • Together AI declarative provider #9545
  • Image read tool #9607
  • Context parameter for summon delegate tasks #9518
  • Structured metadata for summon task load results #9521
  • Working_dir override for summon delegate tasks #9520
  • OrcaRouter as a declarative OpenAI-compatible provider #9515
  • Elicitation decline and cancel actions propagation #9437
  • ACP opt-in last message snippets #9798
  • Japanese locale support #9768
  • Unified OTLP logging schema for cross-tool detection #9713
  • Canonical thinking modes #9743
  • Hindi Desktop locale #9733
  • Custom ACP method to get session info #9729
  • GOOSE_SERVER__SECRET_KEY support at goose serve ACP endpoint #9726
  • Surface Anthropic stream refusals as visible errors #9724
  • ACP search session in Desktop #9717
  • Steering messages with ACP #9560
  • ACP list session with keyword and type filter #9695
  • ACP thinking effort config option #9711
  • Prompt injection mitigation enabled by default for internal users #9612
  • ACP list sessions and manage sessions in Desktop #9687
  • ACP methods for config extensions #9581
  • Custom notifications only when ACP client specifies capability #9596
  • Minimal uniffi setup for cross-language SDK #9593
  • Hugging Face OAuth support with auth tab in settings #9552
  • Import sessions #9474
  • xAI SuperGrok OAuth subscription provider #9420
  • Replay ACP images on session load #9496
  • Raw provider supported models over ACP #9475
  • ACP session system prompt setter #9478
  • Scholar Sidekick MCP extension #9433
  • tui feature flag to gate the tui command #9428
  • CLI to list skills with token counts #9326
  • Perplexity as a declarative OpenAI-compatible provider #9324
  • Alibaba (Qwen via DashScope) declarative provider #9443
  • Configurable tool output size limit via GOOSE_MAX_TOOL_RESPONSE_SIZE #9256
  • /model slash command to CLI for session model switching #8747
  • Databricks AI Gateway provider #9274
  • Russian language support #9406
  • Turkish desktop locale #9392
  • Language selection feature #9405
  • Handle resume deep links #9298

🐛 Bug Fixes

  • Publish mac updater metadata #9945
  • Activate hermit on macOS so STDIO extensions resolve node #9482
  • Accept JSON-encoded string for autovisualiser data parameter #9838
  • Send User-Agent on URL image fetches in developer/read_image #9927
  • Allow unlisted models in search #9933
  • Do not pass temperature to ChatGPT Codex provider #9931
  • Sanitize extension environment maps #9884
  • Desktop updater to target aaif-goose releases #9868
  • Refresh provider when session working directory changes #9883
  • Use refreshed gcloud token after reauth (retry Vertex AI on 401/403) #9849
  • Start a turn when /goal or /grind is set #9801
  • Remove hard-coded React alias that breaks dev render #9842
  • Pass thinking config to Bedrock Anthropic models #9794
  • Check for responses API support in Databricks #9347
  • Use media marker parts for vision prompts in local-inference #9452
  • Keep extensions icon visible after switching sessions #9787
  • Skip non-recipe project config files in summon #9808
  • Dedupe duplicate tool-call ids within a turn #9792
  • Resolve bundled extensions from discovery #9759
  • Include agentInfo in ACP initialize response #9765
  • Custom OpenAI provider dropping port when URL scheme is omitted #9730
  • Preserve Windows backslash paths in custom extension command #9741
  • ACP cancel race condition #9804
  • Removed window goosed when closing window #9818
  • Inherit login-shell PATH in spawned subagents #9737
  • Accept string values for GOOSE_CONTEXT_LIMIT #9738
  • Clear rejected OAuth credentials after refresh #9694
  • Keep extended thinking within the Ant...
Read more

v1.38.0

Choose a tag to compare

@github-actions github-actions released this 17 Jun 04:06

✨ Features

  • Opt-in ACP last message snippets for sessions #9798
  • Unified OTLP logging schema for cross-tool detection #9713
  • Canonical thinking modes across providers #9743
  • Custom ACP method to get session info #9729
  • ACP secret key support at goose serve endpoint #9726
  • Surface Anthropic stream refusals as visible errors #9724
  • ACP search session support in Desktop #9717
  • Steering messages with ACP #9560
  • ACP list sessions with keyword and type filter #9695
  • ACP thinking effort config option #9711
  • ACP session management in Desktop #9687
  • Image read tool #9607
  • ACP methods for config extensions #9581
  • Custom notifications only when ACP client specifies capability #9596
  • Minimal uniffi setup for cross-language SDK #9593
  • Hugging Face OAuth support with auth tab in settings #9552
  • Session import functionality #9474
  • Replay ACP images on session load #9496
  • Raw provider supported models over ACP #9475
  • ACP session system prompt setter #9478
  • Scholar Sidekick MCP extension #9433
  • TUI feature flag to gate tui command #9428
  • CLI to list skills with token counts #9326
  • xAI SuperGrok OAuth subscription provider #9420
  • Perplexity as declarative OpenAI-compatible provider #9324
  • Alibaba (Qwen via DashScope) declarative provider #9443
  • Configurable tool output size limit via GOOSE_MAX_TOOL_RESPONSE_SIZE #9256
  • /model slash command in CLI for session model switching #8747
  • Databricks AI Gateway provider #9274
  • TUI command on goose-cli #9385
  • Configurable MAX_CODE_BLOCK_LINES via env vars #9301
  • NEAR AI Cloud provider #9352
  • goose://resume session deep link #9343
  • Scaleway provider #9254
  • Honor GOOSE_FAST_MODEL env var in ModelConfig::with_fast #9296
  • goose review local code review command #9114
  • TUI diff viewer #9260
  • ACP paginate session list #9199
  • Structured per-provider config block, non-destructive provider switching #8977
  • Pass session cwd param to ACP providers #9229
  • gpt-5.5 added to known models #9292
  • Opt-in to Vercel AI Gateway leaderboard #9259
  • Harbor eval runner #9138
  • Slash commands (built-in, skill, recipe) in ACP server #9238
  • /goal command for agent self-evaluation before finishing #9069
  • Summon subagent instructions #9325
  • Open-plugins generalization with skills #9112
  • PreToolUse denial hook #9304
  • Optional api_key configuration for declarative openai-engine providers #9202
  • Login shell PATH flag #9313
  • Linux musl CLI builds #9240
  • goose://new-session deep link to open fresh chat #9196
  • GOOSE_DISABLE_TOOL_CALL_SUMMARY to opt out of per-tool-call summaries #8947
  • Recipe discovery and execution via ACP server #8925
  • GOOSE_OAUTH_CALLBACK_PORT for stable OAuth redirect_uri #9209
  • Proactive OAuth token refresh to avoid re-auth on every session #8386
  • Encrypted Nostr session sharing #8922
  • Simplified Chinese (zh-CN) translation #8765
  • Nushell terminal and completion support #8628
  • Optional --parameters for scheduled recipes #8741
  • GitHub Copilot /responses API #9043
  • Vercel AI Gateway provider #9144
  • Routstr declarative provider #9175
  • FuturMix provider #8840
  • oMLX declarative provider #9177
  • Strip chain-of-thought markers from custom provider output #8635
  • Quarterly option for scheduler #9076
  • Hooks system #9093
  • Atomic Chat as declarative OpenAI-compatible provider #9210
  • Projects as backend sources with system prompt injection #8739
  • Worktree-aware directory switcher #8450
  • Chat history search feature in navigation panel #8448
  • Expose built-in skills through sources list ACP calls #9045
  • ACP streamable HTTP spec compliance #9034
  • Move goose2 provider catalog behind ACP layer #9030
  • Group consecutive tool calls into one summarized chain card #8995
  • Replace raw config and secret methods in ACP #9000
  • Support Google model inventory refresh #8913
  • MCP Apps inline rendering in goose2 #8877
  • Goose2 custom providers support in UI and ACP #8924
  • Ollama host configurable in goose2 #8912
  • Skills added to chat composer #8881
  • MCP Apps hydrate and replay payloads in Goose2 #8632
  • Windows CUDA release artifacts #8750

🐛 Bug Fixes

  • Desktop new chat shortcut #9659
  • Correctly map ollama_cloud to canonical provider and update max tokens #9639
  • Incorrect max tokens values for Groq provider #9790
  • Classify Bedrock ValidationException as ExecutionError #9735
  • Page through all Databricks AI Gateway v2 endpoints when listing models #9753
  • Preserve unparseable extension entries during config refresh #9439
  • goose-sdk release compat check with new schema #9697
  • Compatibility of config extension ACP call in TUI #9683
  • Intermittent missing extension override on UI #9575
  • Scheduled recipe session params #9553
  • Skip OTLP signals when protocol=grpc to avoid background-thread panic #9512
  • Forward ACP server context window size to clients #9455
  • Quote release PR search phrase in pre-release.sh #9573
  • Refresh provider list in Switch Models picker #9408
  • Start new chat in current window from recipe param modal #9422
  • Make Azure api-version query param optional #9221
  • Preserve pending env vars in Add Extension form [#9285...
Read more