Block โ the company behind Square, Cash App, and Afterpay โ dropped Goose in early 2025 as an open-source AI agent. A year later it's sitting at 44k+ GitHub stars, 368 contributors, and 2,600 forks. But the real story isn't the download count. It's that roughly 60% of Block's ~12,000 employees are using it weekly across 15 different job profiles โ engineering, sales, design, product, customer success. That's not a pilot program. That's an adoption curve most enterprise software vendors would kill for. Goose is a local agent at its core: a Rust binary that runs on your machine, connects to an LLM provider of your choice (Anthropic, OpenAI, Gemini, Mistral, xAI, or local models via Ollama), and uses MCP servers as its tools. The architecture breaks into three pieces โ a core agent loop that plans, calls tools, evaluates, and repeats; a provider abstraction layer supporting 25+ LLMs; and an extension system built entirely on MCP (Model Context Protocol). That last piece is the architectural bet that makes everything else possible. The secret sauce isn't the agent itself. It's the recipe. A recipe is a YAML document that bundles instructions, required extensions, parameters, and a prompt into a single shareable file. Anyone can write one. Anyone can run it. The command to execute a PR review workflow looks like this: goose recipe run review-pr. That recipe might be 30 lines of YAML defining which tools the agent gets, what input it needs, and exactly how it's supposed to operate step-by-step. The agent doesn't decide which tools to load โ the recipe does. Numbered steps in the prompt become a planning skeleton the agent follows without improvising each time. This is where Block got clever. A YAML file is a thing a product manager can author. They can copy a teammate's recipe, tweak the prompt, run it, and see what happens. No deploy cycle required. For engineers, recipes live in Git repos next to the code they operate on โ your team's review workflow lives at recipes/review-pr.yaml in the same repo as the service. New hires read the recipe to understand the workflow. The recipe gets reviewed like any other artifact. Both groups get a shared mental model: the agent isn't a black box you talk to, it's a script you run, written in a language anyone can read. The MCP layer is where this design pays off exponentially. Since every tool is an MCP server, adding capabilities is a config entry, not a code change. Adding GitHub access takes three lines of YAML. Adding Jira support โ or your company's internal API โ also takes three lines. Goose installs nothing globally; extensions load for the recipe run and disappear when it ends. The implication: each new internal capability becomes a one-time MCP server build, then it's immediately available to every team and every recipe in the company. Block doesn't write separate agents for different workflows. They ship one binary, plus a directory of recipes and a directory of MCP servers. Composition does the rest. The governance question that haunted early adopters โ "what if Block stops investing?" โ got resolved when Goose moved from block/goose to the Agentic AI Foundation under the Linux Foundation. It's no longer governed by a single company. That changes the calculus for enterprise adoption. The roadmap is now community-driven, with active work on recipe discovery (a public registry), tighter MCP interop across the wider ecosystem, and richer parameter types including file uploads and structured objects beyond simple strings. Getting started takes about ten minutes. Install via curl or Homebrew, run interactive setup to configure your LLM provider and API key, add an MCP extension with one command (goose session --with-extension), write a recipe as YAML, then execute it (goose recipe run morning-standup). The whole stack runs locally โ you provide the credentials, Goose handles the rest. Apache 2.0 licensed, no vendor lock-in.
Key Takeaways
- Goose reached ~60% weekly adoption across Block's 12,000-person workforce using a single tool for 15 different job profiles
- The recipe system (YAML + MCP) is what separates this from bespoke agent builds โ one binary serves everyone without forking
- MCP as the extension layer means adding capabilities is a config change, not code, enabling fast internal adoption cycles
- Move to Agentic AI Foundation removes single-company governance risk that previously scared off enterprise buyers
- The pattern (local agent + YAML recipes + MCP extensions) can be copied on top of Claude Code skills, Cursor agents, or similar runtimes
The Bottom Line
Block proved something the AI agent space needed proven: one tool can actually work for an entire company if you make the abstraction boring enough. A YAML file with a name, a prompt, and an extension list โ that's it. Boring is how you reach 60% of twelve thousand people.