Skip to content

Goose v1.43.0

Released · Block

What the release notes say

✨ 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