Goose started as Block’s internal coding agent, then moved to the Linux Foundation’s Agentic AI Foundation (AAIF) in late 2025. Apache-2.0, written in Rust, distributes as a single static binary with no Node runtime, no Python runtime, no Electron. The latest stable is v1.42.0 (2026-07-13). Where Claude Code is for solo power users and Cline is for VS Code fans, Goose is the agent that doesn’t apologize for being an autonomous multi-tool — it ships with browser automation, file ops, shell, and an extension system out of the box.
Install on Ubuntu 22.04 / 24.04
Goose’s official install is a single shell-script download — no apt, no npm, no Python:
curl -fsSL https://github.com/aaif-goose/goose/releases/download/stable/download_cli.sh | bashThis drops a self-contained goose binary in ~/.local/bin and registers it on your PATH. Verify:
goose --versionThere’s also a desktop .deb on the same release page for users who want a GUI:
curl -fsSL -o /tmp/goose.deb https://github.com/aaif-goose/goose/releases/download/stable/goose-desktop_1.42.0_amd64.deb
sudo apt install -y /tmp/goose.debThe desktop is optional. The CLI is where 90% of the value lives.
Provider setup
Goose is BYOK. Run goose configure once and pick:
- Anthropic — for Claude Sonnet / Haiku
- OpenAI — GPT-4o, o3, etc.
- Google Gemini
- Ollama — local inference, no API key needed
- OpenAI-compatible — any other endpoint
- Tetrate — the AAIF-sponsored gateway for open-weight models
Keys live in ~/.config/goose/config.yaml (not your shell env). Goose also supports multiple named profiles so you can flip between them per session.
Three idioms to learn
1. Recipes
Recipes are reusable Markdown prompts. Drop one in ~/.config/goose/recipes/<name>.md and it becomes slash-invokable from the CLI or desktop. A daily-standup recipe might just be three questions; a pr-review recipe might invoke the linter and aggregate results.
2. Extensions
Goose extensions are MCP servers (the standard). goose extension add <git-or-https-url> installs one. The catalog includes filesystem, GitHub, Postgres, Slack, browser automation. Each extension adds tools to the agent’s toolshed without modifying the core.
3. Sessions and Forking
A session is a running conversation with all its context. goose session --fork <id> creates a new branch from an existing session with full context — useful when an exploratory thread hits something promising and you want to pursue it in a clean room.
Day-one workflow
cd ~/work/my-app
gooseYou’ll land in a REPL. Three commands to learn:
goose recipe list— see available recipesgoose extension list— see enabled extensionsgoose session list— see past sessions
A recipe pattern that works well:
---
description: review the diff against main and produce a structured report
---
1. Read the working tree, run `git diff main`.
2. Identify three severity buckets: correctness, security, style.
3. For each finding, name the file, line, and a one-sentence fix.
4. Output as a Markdown checklist.Save this to ~/.config/goose/recipes/code-review.md, then goose recipe run code-review runs it from anywhere.
The “no runtime” angle
The static-binary distribution matters more than it sounds. On an Ubuntu VM with no Node, no Python, no Electron, you can scp the goose binary and run it. AI tooling that used to need a 200MB node_modules/ and a Python venv is now 80MB of x86_64. Compare that to Claude Code’s npm install, OpenCode’s npm install, or Hermes’ Python requirements.
When Goose is the wrong pick
- You’re an IDE-first user. Goose is terminal + optional desktop, not an editor extension. For VS Code, Cline.
- You want a strict plan-first UX. Goose has plans but defaults to Act. For plan-first, Claude Code.
- You want a maintainer relationship. Post-AAIF, Goose has a foundation governance model, not a single vendor. Some users prefer the Block-era direct line; it’s no longer the same.
Goose’s real 2026 value proposition is “agent that doesn’t need a runtime”. If that combination — Rust binary, AAIF governance, Apache-2.0 — is what you want, Goose is the cleanest pick on Linux today.
Comments