====== Goose ======
**Goose** is an open-source, extensible AI coding agent developed by **Block** (formerly Square). With over **34,000 stars** on GitHub, Goose automates software development tasks — from building projects and debugging to orchestrating complex workflows — through natural language conversation. It is **MCP-native**, connecting to 1,700+ Model Context Protocol servers for extensible tool integration.(([[https://github.com/block/goose|GitHub Repository]]))(([[https://block.github.io/goose/docs/category/architecture-overview/|Architecture Documentation]]))(([[https://allthingsopen.org/articles/meet-goose-open-source-ai-agent|Meet Goose — All Things Open]]))
Goose goes beyond simple code generation by providing an executable infrastructure layer with composable YAML recipes, parallel subagents, and ambient terminal integration that fits seamlessly into existing developer workflows.
===== How It Works =====
Goose extends the standard LLM "text in, text out" paradigm with **tool integrations via MCP** (Model Context Protocol). The agent reasons through tasks using any connected LLM, then takes actions through MCP tools — file manipulation, testing, GitHub automation, and more. It supports GUI, CLI (REPL mode), terminal integration for ambient assistance, and CI/CD pipelines.
The **Recipes** system defines composable YAML workflows with typed parameters, sub-recipe calls, and explicit MCP pinning — making agent behaviors version-controlled, git-diffable, and team-shareable.
===== Key Features =====
* **MCP-native** — First-class integration with 1,700+ MCP servers (GitHub, Jira, Google Drive, etc.)
* **Recipes** — Composable YAML workflows with subagents and structured inputs
* **Parallel subagents** — Isolated task execution; failures don't cascade
* **Terminal integration** — Ambient mode in your existing shell, no context switching
* **Model-agnostic** — Works with Claude, GPT-4o, local GGUF models via Docker Model Runner
* **MCP-UI rendering** — Interactive widgets in GUI instead of raw text
* **Fully configurable** — Disable any tool, even built-in ones
===== Installation and Usage =====
# Goose can be installed and run via Docker Compose
# docker-compose.yml orchestrates Goose, Model Runner, and MCP Gateway
# Example Goose Recipe (YAML)
# recipes/analyze-pr.yaml
name: analyze-pr
description: Analyze a pull request for code quality
params:
- name: pr_url
type: string
required: true
steps:
- name: fetch_pr
tool: github.get_pull_request
input:
url: "{{pr_url}}"
- name: review
prompt: |
Review this PR for code quality, security issues,
and adherence to best practices.
PR Data: {{fetch_pr.output}}
# CLI Usage
# goose chat "Build a REST API with FastAPI for user management"
# goose run recipes/analyze-pr.yaml --pr_url https://github.com/org/repo/pull/42
# Terminal ambient mode
# goose next (continues from current context)
===== Architecture =====
%%{init: {'theme': 'dark'}}%%
graph TB
User([Developer]) -->|Natural Language| Interface[GUI / CLI / Terminal]
Interface -->|Tasks| Agent[Goose Agent]
Agent -->|Reasoning| LLM[LLM Provider]
LLM -->|Claude / GPT / Local| Agent
Agent -->|Tool Calls| Gateway[MCP Gateway]
Gateway -->|Isolated Containers| GitHub[GitHub MCP]
Gateway -->|Isolated Containers| Jira[Jira MCP]
Gateway -->|Isolated Containers| GDrive[Google Drive MCP]
Gateway -->|Isolated Containers| Custom[Custom MCPs]
Agent -->|Execute| Recipes[Recipe Engine]
Recipes -->|Spawn| SubA[Subagent A]
Recipes -->|Spawn| SubB[Subagent B]
SubA -->|Results| Recipes
SubB -->|Results| Recipes
===== Docker Deployment =====
Goose is designed for Docker Compose deployment with three core services:(([[https://www.docker.com/blog/building-ai-agents-with-goose-and-docker/|Building AI Agents with Goose and Docker]]))
* **Goose Agent** — Task execution and LLM reasoning
* **Docker Model Runner** — Local LLM inference (OpenAI-compatible API), auto-pulls GGUF models
* **MCP Gateway** — Aggregates and isolates MCP tools in containers with authenticated endpoints
===== See Also =====
* [[open_interpreter|Open Interpreter — Natural Language Computer Interface]]
* [[continue_dev|Continue.dev — Open-Source AI Code Assistant]]
* [[chainlit|Chainlit — Conversational AI Framework]]
===== References =====