v1.29.0

cortezaproject/cortezav1.29.0Mar 31, 2026by github-actions[bot]

AI Summary

This release focuses on enhancing Model Context Protocol (MCP) capabilities, introducing new providers like Gemini-ACP, and improving desktop UI management. It also includes security enhancements through Sigstore/SLSA verification and various performance optimizations.

Key Highlights

  • Manage sub recipes in desktop UI
  • Sigstore/SLSA provenance verification for Rust self-update
  • Gemini-ACP provider with subscription models support
  • Orchestration support
  • CodeMode ToolDisclosure variants support

New Features

  • Manage sub recipes in desktop UI
  • Display delegate sub agents logs in UI
  • Pass toolInfo to MCP Apps via hostContext
  • Expand sidebar to see chat names
  • Sigstore/SLSA provenance verification for Rust self-update
  • GOOSE_SHELL env var to configure preferred shell
  • CodeMode ToolDisclosure variants support
  • Feature-gate local inference dependencies
  • ACP session/set_config stabilization
  • Gemini-ACP provider with subscription models support
  • Orchestration support
  • Upgrade ink for performance (stdio instead of http)
  • Filter tools by MCP Apps visibility metadata

Full Release Notes

## ✨ Features

- Ability to manage sub recipes in desktop UI [#6360](https://github.com/block/goose/pull/6360)
- Display delegate sub agents logs in UI [#7519](https://github.com/block/goose/pull/7519)
- Pass toolInfo to MCP Apps via hostContext [#7506](https://github.com/block/goose/pull/7506)
- Ability to expand sidebar to see chat names [#7816](https://github.com/block/goose/pull/7816)
- Sigstore/SLSA provenance verification for Rust self-update [#7818](https://github.com/block/goose/pull/7818)
- `GOOSE_SHELL` env var to configure preferred shell [#7909](https://github.com/block/goose/pull/7909)
- CodeMode ToolDisclosure variants support [#7926](https://github.com/block/goose/pull/7926)
- Feature-gate local inference dependencies [#7976](https://github.com/block/goose/pull/7976)
- ACP session/set_config and stabilize list, delete and close [#7984](https://github.com/block/goose/pull/7984)
- Gemini-ACP provider with subscription models support [#8000](https://github.com/block/goose/pull/8000)
- Orchestration support [#7999](https://github.com/block/goose/pull/7999)
- Upgrade ink for performance, use stdio instead of http [#8004](https://github.com/block/goose/pull/8004)
- Filter tools by MCP Apps visibility metadata [#8022](https://github.com/block/goose/pull/8022)

## 🐛 Bug Fixes

- Empty tool results from resource content (e.g. auto visualiser) [#7866](https://github.com/block/goose/pull/7866)
- Clean up OAuth token cache on provider deletion [#7908](https://github.com/block/goose/pull/7908)
- SSE parsers to accept optional space after data: prefix [#7929](https://github.com/block/goose/pull/7929)
- Hard-coded tool call id in code mode callback [#7939](https://github.com/block/goose/pull/7939)
- Config for GOOSE_MAX_BACKGROUND_TASKS [#7940](https://github.com/block/goose/pull/7940)
- Unregister goosed child process's listener [#7956](https://github.com/block/goose/pull/7956)
- Include token usage in Databricks streaming responses [#7959](https://github.com/block/goose/pull/7959)
- Overwrite the deprecated googledrive extension config [#7974](https://github.com/block/goose/pull/7974)
- Emit user-facing message on compaction failure [#7975](https://github.com/block/goose/pull/7975)
- Use Responses API for gpt-5.4 [#7982](https://github.com/block/goose/pull/7982)
- Auto-focus chat input on Hub mount [#8007](https://github.com/block/goose/pull/8007)
- Apps extension: coerce string arguments from inner LLM responses [#8030](https://github.com/block/goose/pull/8030)
- Handle mid-stream error events in OpenAI SSE streaming [#8031](https://github.com/block/goose/pull/8031)
- Fullscreen header bar + always-visible close controls [#8033](https://github.com/block/goose/pull/8033)
- Use default provider and model when provider in session no longer exists [#8035](https://github.com/block/goose/pull/8035)
- Gemini models via Databricks [#8042](https://github.com/block/goose/pull/8042)
- Handle reasoning content blocks in OpenAI-compat streaming parser [#8078](https://github.com/block/goose/pull/8078)
- Remove configured marker when deleting OAuth provider configuration [#7887](https://github.com/block/goose/pull/7887)
- Download manager [#7933](https://github.com/block/goose/pull/7933)
- macOS Intel signing [#8218](https://github.com/block/goose/pull/8218)

## 🔧 Improvements

- Improve formatting of tool calls, show thinking, treat Reasoning and Thinking the same [#7626](https://github.com/block/goose/pull/7626)
- Separate SSE streaming from POST work submission [#7834](https://github.com/block/goose/pull/7834)
- Optimize tool summarization [#7938](https://github.com/block/goose/pull/7938)
- Support reasoning and gpt-5.4 for ChatGPT Codex [#7941](https://github.com/block/goose/pull/7941)
- Fix N+1 thinking message storage issue [#7958](https://github.com/block/goose/pull/7958)
- Remove unnecessary Arc<Mutex> from tool execution pipeline [#7979](https://github.com/block/goose/pull/7979)
- Remove lead/worker provider [#7989](https://github.com/block/goose/pull/7989)
- Allow delete all types [#8018](https://github.com/block/goose/pull/8018)
- Improve terminal output formatting and visual clarity [#8025](https://github.com/block/goose/pull/8025)
- Consolidate duplicated dependencies into workspace [#8041](https://github.com/block/goose/pull/8041)
- Show setup instructions for ACP providers in settings modal [#8065](https://github.com/block/goose/pull/8065)
- Replace sigstore-verification with sigstore-verify to remove vulnerabilities [#8064](https://github.com/block/goose/pull/8064)
- Update tar version to avoid CVE-2026-33056 [#8073](https://github.com/block/goose/pull/8073)
- Code review step using short-lived provider token [#7932](https://github.com/block/goose/pull/7932)

## 📚 Documentation

- Remote Access section with Telegram Gateway documentation [#7955](https://github.com/block/goose/pull/7955)
- WebMCP for Beginners blog post [#7957](https://github.com/block/goose/pull/7957)
- GOOSE_INPUT_LIMIT in config-files.md [#7961](https://github.com/block/goose/pull/7961)
- Claude Code approve mode permission routing [#7949](https://github.com/block/goose/pull/7949)
- VMware-AIOps MCP extension documentation [#8055](https://github.com/block/goose/pull/8055)
- Correct `gosoe` typo to `goose` [#8062](https://github.com/block/goose/pull/8062)