ScriptsApr 1, 2026·2 min read

Goose — Open-Source AI Dev Agent by Block

Goose is Block's open-source AI agent that automates developer workflows. 33.8K+ stars. Extensible plugins, MCP support, multi-tool orchestration. Apache 2.0.

TL;DR
Goose automates developer workflows through extensible plugins and MCP support, built by Block (formerly Square).
§01

What it is

Goose is an open-source AI agent built by Block (formerly Square) that goes beyond code suggestions. It installs packages, executes shell commands, manages files, and orchestrates entire developer workflows through a plugin system. The agent supports the Model Context Protocol (MCP) for connecting to external tools and data sources.

Goose targets developers who want an AI assistant that takes action rather than just generating text. If you need an agent that can set up projects, run tests, manage infrastructure, and interact with APIs, Goose provides the extensibility framework to do it.

§02

How it saves time or tokens

Instead of copying AI-generated commands and pasting them into your terminal, Goose executes them directly. Its plugin architecture means you can extend the agent with custom tools without modifying the core codebase. MCP support lets Goose connect to databases, file systems, and APIs through standardized server configurations.

The agent maintains context across tool calls, so multi-step workflows (like setting up a new service, writing tests, and deploying) happen in a single conversation without re-explaining the project context.

§03

How to use

  1. Install Goose:
brew install block/tap/goose
# or
pipx install goose-ai
  1. Start a Goose session:
goose session start
  1. Describe what you want to accomplish. Goose will plan and execute the steps, asking for confirmation before destructive actions.
§04

Example

# Start a Goose session and ask it to set up a project
goose session start

# In the Goose prompt:
> Create a new FastAPI project with a health check endpoint,
> a Dockerfile, and a GitHub Actions CI pipeline.
> Run the tests to make sure everything works.

Goose creates the project structure, writes the code, builds the Docker image, and runs the test suite. Each step is visible in the terminal with the option to approve or modify before execution.

§05

Related on TokRepo

§06

Common pitfalls

  • Goose executes real commands on your system. Always review the proposed actions before confirming, especially for destructive operations like file deletion or production deployments.
  • Plugin configuration requires a YAML file. Missing or malformed configuration is a common source of startup errors. Validate your config before starting a session.
  • Goose requires an LLM API key (OpenAI, Anthropic, or others). The agent itself is free, but you pay for the underlying model's token usage.

Frequently Asked Questions

What LLM providers does Goose support?+

Goose supports multiple LLM providers including OpenAI (GPT-4o), Anthropic (Claude), and local models via Ollama. You configure the provider and API key in Goose's configuration file. The agent's behavior adapts based on the model's capabilities.

How does Goose differ from Claude Code?+

Goose is provider-agnostic and works with any LLM backend. Claude Code is Anthropic's official CLI tied to Claude models. Goose emphasizes extensibility through its plugin system, while Claude Code focuses on deep integration with Claude's capabilities. Both support MCP.

Can I use Goose with MCP servers?+

Yes. Goose has built-in MCP support. You can configure MCP servers in Goose's settings to give the agent access to databases, file systems, GitHub, Slack, and other services through the Model Context Protocol.

Is Goose safe to use on production systems?+

Goose asks for confirmation before executing commands by default. However, it can execute arbitrary shell commands, so you should always review proposed actions. For production systems, use Goose in a sandboxed environment or with restricted permissions.

What programming languages does Goose support?+

Goose works with any programming language since it operates through shell commands and file system interactions. It does not compile or interpret code itself. The underlying LLM determines the quality of code generation for each language.

Citations (3)
🙏

Source & Thanks

Discussion

Sign in to join the discussion.
No comments yet. Be the first to share your thoughts.

Related Assets