Skip to content

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-search with ATS templates, LinkedIn optimization, interview prep
  • 🔧 Dual env varsCANOPY_* and OPENCODE_* 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:

  1. A modern terminal emulator like:

  2. API keys for the LLM providers you want to use.


Install

The easiest way to install Canopy is through the install script.

Terminal window
curl -fsSL https://canopy.dev/install | bash

Configure

With Canopy you can use any LLM provider by configuring their API keys.

Terminal window
canopy providers

Canopy supports 75+ providers through Models.dev and local models.


Model Routing

Canopy automatically routes each task to the most cost-effective model:

Task TypeRecommended ModelWhy
Scripts, one-liners, SQLDeepSeek V4 Flash / MiMo V2.5Cheapest, fast
General developmentKimi K2.6Best quality-cost balance
Investigation, researchQwen 3.7 PlusHandles large context
Planning, architectureGLM-5.1Strong reasoning
Complex codingKimi K2.7 CodeSpecialized 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:

SkillDescription
customize-opencodeGuide for editing Canopy’s own config
job-searchResume/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:

Terminal window
cd /path/to/project
canopy

Then initialize Canopy for the project:

/init

This 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 page

Plan first: Use <TAB> to switch to Plan mode, describe what you want, review the plan, then switch back to Build mode.

Undo:

/undo

Share

/share

Creates 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 }
}