Intro
Get started with Canopy.
Canopy is an AI coding agent — a fork of OpenCode with focus on token economy, model routing, and modular skills.
Let’s get started.
Why Canopy?
Canopy keeps everything great about OpenCode and adds:
- 🧠 Model Routing — Auto-selects the cheapest adequate model per task (DeepSeek/MiMo for scripts, Kimi for dev, Qwen for research, GLM for planning)
- 💰 Token Economy — Optimized prompts (-66%), compressed tool descriptions (-30%), aggressive compaction (-25% per turn)
- 🎓 Built-in Skills — Domain-specific packs like
job-searchwith ATS templates, LinkedIn optimization, interview prep - 🔧 Dual env vars —
CANOPY_*andOPENCODE_*supported simultaneously for gradual migration - 🌿 Independent — All anomalyco references removed, 32 packages renamed to
@canopystack/*
Prerequisites
To use Canopy in your terminal, you’ll need:
-
A modern terminal emulator like:
-
API keys for the LLM providers you want to use.
Install
The easiest way to install Canopy is through the install script.
curl -fsSL https://canopy.dev/install | bashnpm install -g @canopystack/canopybun install -g @canopystack/canopybrew install mateussiqueira/tap/canopygit clone https://github.com/mateussiqueira/canopy.gitcd canopybun installbun run --cwd packages/canopy --conditions=browser src/index.tsdocker run -it --rm ghcr.io/mateussiqueira/canopyConfigure
With Canopy you can use any LLM provider by configuring their API keys.
canopy providersCanopy supports 75+ providers through Models.dev and local models.
Model Routing
Canopy automatically routes each task to the most cost-effective model:
| Task Type | Recommended Model | Why |
|---|---|---|
| Scripts, one-liners, SQL | DeepSeek V4 Flash / MiMo V2.5 | Cheapest, fast |
| General development | Kimi K2.6 | Best quality-cost balance |
| Investigation, research | Qwen 3.7 Plus | Handles large context |
| Planning, architecture | GLM-5.1 | Strong reasoning |
| Complex coding | Kimi K2.7 Code | Specialized for code |
Configure your default model in opencode.json:
{ "model": "kimi/k2.6", "small_model": "deepseek/v4-flash"}Token Economy
Canopy includes several optimizations to reduce token usage:
- System prompts: 66% shorter than stock OpenCode — same instructions, fewer tokens
- Tool descriptions: task.txt -79%, todowrite.txt -82%, edit.txt -75%
- Context compaction: Tool outputs truncated at 1,500 chars (was 2,000), less protected context
- Smart pruning: read/grep/glob outputs protected from pruning; less recent context kept verbatim
Skills
Skills are domain-specific instruction packs. Canopy ships with a built-in job-search skill:
{ "skills": { "paths": [".opencode/skills"] }}Available skills:
| Skill | Description |
|---|---|
customize-opencode | Guide for editing Canopy’s own config |
job-search | Resume/CV optimization, LinkedIn, interviews, follow-ups |
The job-search skill includes:
- Resume bullet formula (Action verb + Task + Result + Tool)
- ATS optimization (keywords, section headings, format)
- LinkedIn headline and about section templates
- Interview preparation (STAR stories, common questions)
- Follow-up email templates
- Pipeline tracking (applied → screening → offer)
Initialize
Navigate to a project you want to work on:
cd /path/to/projectcanopyThen initialize Canopy for the project:
/initThis creates an AGENTS.md file with project context.
Usage
Ask questions:
How is authentication handled?Make changes:
Add a dark mode toggle to the settings pagePlan first:
Use <TAB> to switch to Plan mode, describe what you want, review the plan, then switch back to Build mode.
Undo:
/undoShare
/shareCreates a shareable link to the current conversation.
Customize
Pick a theme, configure keybinds, set up formatters, or edit opencode.json:
{ "$schema": "https://canopy.dev/config.json", "theme": "tokyonight", "compaction": { "auto": true, "tail_turns": 3 }}