OpenCode, Pi, and Goose: Three Layers of the AI Agent Stack · GitHub
/" data-turbo-transient="true" />
Skip to content
-->
Search Gists
Search Gists
Sign in
Sign up
You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.
Dismiss alert
{{ message }}
Instantly share code, notes, and snippets.
AIMOWAY/opencode-pi-goose-three-layers.md
Created<br>July 3, 2026 20:36
Show Gist options
Download ZIP
Star
(0)
You must be signed in to star a gist
Fork
(0)
You must be signed in to fork a gist
Embed
Select an option
Embed<br>Embed this gist in your website.
Share<br>Copy sharable link for this gist.
Clone via HTTPS<br>Clone using the web URL.
No results found
Learn more about clone URLs
Clone this repository at <script src="https://gist.github.com/AIMOWAY/bd8007c8f834a9bc83c71e3178239d75.js"></script>
" readonly="readonly" data-autoselect="true" data-target="primer-text-field.inputElement " aria-describedby="validation-447bfe75-07e5-4d42-9946-e21e6719882c" class="form-control FormControl-monospace FormControl-input FormControl-small rounded-left-0 rounded-right-0 border-right-0" type="text" name="gist-share-url-sized-down" />
Save AIMOWAY/bd8007c8f834a9bc83c71e3178239d75 to your computer and use it in GitHub Desktop.
Embed
Select an option
Embed<br>Embed this gist in your website.
Share<br>Copy sharable link for this gist.
Clone via HTTPS<br>Clone using the web URL.
No results found
Learn more about clone URLs
Clone this repository at <script src="https://gist.github.com/AIMOWAY/bd8007c8f834a9bc83c71e3178239d75.js"></script>
" readonly="readonly" data-autoselect="true" data-target="primer-text-field.inputElement " aria-describedby="validation-77aa4762-ffcd-411b-99c9-9b4f86da2241" class="form-control FormControl-monospace FormControl-input FormControl-small rounded-left-0 rounded-right-0 border-right-0" type="text" name="gist-share-url-original" />
Save AIMOWAY/bd8007c8f834a9bc83c71e3178239d75 to your computer and use it in GitHub Desktop.
Download ZIP
OpenCode, Pi, and Goose: Three Layers of the AI Agent Stack
Raw
opencode-pi-goose-three-layers.md
OpenCode, Pi, and Goose: Three Layers of the AI Agent Stack
There are many open-source AI agent tools now, but I do not think they all live at the same layer of the stack.
Three projects I have been looking at recently are:
OpenCode: https://github.com/anomalyco/opencode
Pi: https://github.com/earendil-works/pi
Goose: https://github.com/aaif-goose/goose
They are easy to group together as “AI coding agents,” but that label hides an important distinction. My current mental model is this:
Pi is closest to an agent kernel, agent harness, or agent toolkit.
Goose is closest to a local AI agent workbench and orchestration surface for developers.
OpenCode is closest to a coding-first software-development agent.
This is not a ranking. It is a layer distinction.
1. Pi: Agent Kernel, Harness, and Toolkit
Pi feels less like a single end-user coding assistant and more like a foundation for building, studying, and extending agent systems.
The repository describes itself as the Pi agent harness project and includes packages such as:
an interactive coding-agent CLI
an agent runtime with tool calling and state management
a unified multi-provider LLM API
a terminal UI library
That structure matters. Pi is useful not only as something you can run directly, but also as a place to understand the moving parts of an agent system: model calls, tool calls, state, provider abstraction, terminal interaction, and workflow control.
A practical way to think about Pi:
Use it if you want to understand how agents are built.
Use it if you want a lower-level base for your own agent tools.
Use it if you care about agent runtime design, provider abstraction, and reproducible workflows.
Use it if you want to experiment with the structure of agent systems rather than only use a finished assistant.
One important detail is its permission model. Pi is explicit that it does not include a built-in permission system for restricting filesystem, process, network, or credential access. By default, it runs with the permissions of the user and process that launched it. If you need stronger boundaries, you need to provide containerization or sandboxing.
That is not necessarily a weakness. In some ways it is a clear architectural statement: Pi is the harness; the security boundary belongs to the environment around it.
So I would not primarily describe Pi as “a coding agent.” I would describe it as an agent harness and toolkit that happens to include a coding-agent CLI.
2. Goose: Local Agent Workbench and Orchestration Surface
Goose feels broader than coding.
The project describes itself as a native open-source AI agent with a desktop app, CLI, and API. It is...