v1.44.0

FujiwaraChoki/MoneyPrinterV2v1.44.0Jul 23, 2026by github-actions[bot]

AI Summary

Version 1.44.0 focuses on security by patching a critical command execution vulnerability in the CLI and introduces support for new AI models including GPT-5.6 and MiniMax-M3. It also brings enhancements to UI, new provider integrations, and various bug fixes regarding file operations and OAuth flows.

Key Highlights

  • Critical security fix: Patched arbitrary command execution vulnerability in goose CLI via git config.
  • New Model Support: Added GPT-5.6 and MiniMax-M3 support.
  • New Providers: Introduced Sakana AI, Fireworks AI, and OllamaCloudProvider.
  • UI Improvements: Added per-message usage stats and provider grid search functionality.

New Features

  • Support for latest Gemini models
  • Declarative Sakana AI provider for OpenAI-compatible Fugu API
  • Per-message usage stats UI (tokens, cost, TTFT, tok/s)
  • OllamaCloudProvider with dynamic model discovery and context limits
  • Delete support for custom apps from Apps UI
  • --edit session flag to edit conversation before forking
  • French, German, Italian, Portuguese, Indonesian, Malay, Vietnamese, zh-TW desktop locales
  • MiniMax-M3 and missing M2.7 variants support
  • OpenRouter request parameters support
  • Muse Spark 1.1 support via Meta Models API

Full Release Notes

## Security fixes

- Arbitrary command execution in goose CLI via `goose review` (via git core.fsmonitor config) - [GHSA-r5pp-p5r8-466r](https://github.com/aaif-goose/goose/security/advisories/GHSA-r5pp-p5r8-466r) (credit to @0xmagic0)

## ✨ Features

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

## 🐛 Bug Fixes

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

## 🔧 Improvements

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

## 📚 Documentation

- Clean up stale documentation audit findings [#10114](https://github.com/aaif-goose/goose/pull/10114)
- Update environment and config references [#10203](https://github.com/aaif-goose/goose/pull/10203)
- Document hook deny contract, matcher regex, tool_input keys, and provider config [#10467](https://github.com/aaif-goose/goose/pull/10467)
- Remove stale gooseignore references [#10359](https://github.com/aaif-goose/goose/pull/10359)
- Add Code of Conduct [#10424](https://github.com/aaif-goose/goose/pull/10424)
- Clarify session --edit context retention [#10257](https://github.com/aaif-goose/goose/pull/10257)