ScriptsApr 7, 2026·2 min read

Goose — AI Developer Agent by Block

Open-source AI developer agent by Block (Square). Goose automates coding tasks with extensible toolkits, session memory, and MCP server support in your terminal.

TL;DR
Goose automates coding tasks in your terminal with session memory, toolkits, and MCP support.
§01

What it is

Goose is an open-source AI developer agent built by Block (formerly Square). It runs in your terminal, reads your codebase, executes shell commands, and edits files based on natural-language instructions. Unlike chatbot-style coding assistants, Goose operates autonomously within a session, maintaining context across multiple interactions.

The target audience is developers who want an AI pair programmer that lives in the terminal rather than inside an IDE. Goose supports extensible toolkits and connects to MCP servers for additional capabilities.

§02

How it saves time or tokens

Goose's session memory means you do not need to re-explain project context on every interaction. It retains file edits, command outputs, and conversation history across a session. The toolkit architecture lets you preload domain-specific tools so the agent spends fewer tokens discovering how to interact with your stack.

By running commands directly in the terminal, Goose avoids the copy-paste loop between a chat UI and your editor. Multi-step tasks like 'create a new API endpoint, write tests, and run them' execute in a single session without manual intervention.

§03

How to use

  1. Install Goose via Homebrew or pipx:
brew install block/goose/goose
# or
pipx install goose-ai
  1. Start a session and give instructions:
goose session start
  1. Chat naturally. Goose reads your codebase, runs commands, and edits files. End the session when done:
# Inside the session, type your request:
> Add a health check endpoint to the FastAPI app and write a test for it
§04

Example

A typical Goose session for scaffolding a Python CLI:

$ goose session start
Goose> Create a Python CLI tool called 'logparse' that reads
       nginx access logs, counts status codes, and outputs
       a summary table. Use click for argument parsing.

# Goose will:
# 1. Create the project structure
# 2. Write logparse/cli.py with click commands
# 3. Add requirements.txt
# 4. Run a test with sample data
§05

Related on TokRepo

§06

Common pitfalls

  • Goose executes shell commands with your user permissions. Review destructive commands (rm, git push --force) before confirming.
  • Session memory grows with conversation length. For large codebases, scope your instructions to specific directories to avoid context overflow.
  • Toolkit configuration happens before session start. Adding a new toolkit mid-session requires restarting.
  • Goose depends on an LLM API key (Claude, GPT, or local models). Ensure your API key is set in the environment or config before starting.

Frequently Asked Questions

What LLM providers does Goose support?+

Goose supports Claude (Anthropic), GPT (OpenAI), and local models. You configure the provider and API key in Goose's config file or environment variables. The agent adapts its prompts to the chosen model's capabilities.

How does Goose differ from GitHub Copilot?+

Copilot provides inline code completions inside an editor. Goose is an autonomous agent that reads your entire project, runs commands, edits multiple files, and maintains session context. Goose operates in the terminal and handles multi-step tasks end to end, while Copilot focuses on single-line or function-level suggestions.

Can Goose connect to MCP servers?+

Yes. Goose supports MCP (Model Context Protocol) servers as extensible toolkits. You configure MCP server endpoints in the Goose config, and the agent gains access to the tools those servers expose -- such as database queries, API calls, or file system operations.

Is Goose safe to use in production codebases?+

Goose runs commands with your user permissions, so it can modify files and execute shell commands. Use it in development branches, review proposed changes before committing, and avoid giving it access to production credentials. The session log provides a full audit trail of every action taken.

Does Goose work on Windows?+

Goose primarily targets macOS and Linux. Windows support is available via WSL (Windows Subsystem for Linux). Native Windows support may vary by version -- check the project's GitHub issues for the latest compatibility status.

Citations (3)
🙏

Source & Thanks

Created by Block. Licensed under Apache 2.0.

block/goose — 10k+ stars

Discussion

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

Related Assets