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.1)2)3)
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.
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.
# 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)
%%{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
Goose is designed for Docker Compose deployment with three core services:4)