https://github.com/kostiantyn-matsebora/canopy
AI skills as executable code, not prose. A declarative framework for writing skills as syntax trees of named operations, distributed as agentskills.io-format Agent Skills.
https://github.com/kostiantyn-matsebora/canopy
agent-skills ai-agent automation canopy claude claude-cli claude-code claude-skills copilot copilot-chat copilot-cli declarative framework llm prompt-engineering skills workflow
Last synced: about 19 hours ago
JSON representation
AI skills as executable code, not prose. A declarative framework for writing skills as syntax trees of named operations, distributed as agentskills.io-format Agent Skills.
- Host: GitHub
- URL: https://github.com/kostiantyn-matsebora/canopy
- Owner: kostiantyn-matsebora
- License: mit
- Created: 2026-04-22T16:33:30.000Z (3 months ago)
- Default Branch: master
- Last Pushed: 2026-06-26T22:09:44.000Z (12 days ago)
- Last Synced: 2026-06-27T00:25:19.062Z (12 days ago)
- Topics: agent-skills, ai-agent, automation, canopy, claude, claude-cli, claude-code, claude-skills, copilot, copilot-chat, copilot-cli, declarative, framework, llm, prompt-engineering, skills, workflow
- Language: Shell
- Homepage: https://kostiantyn-matsebora.github.io/canopy/
- Size: 586 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: docs/README.md
- Contributing: docs/CONTRIBUTING.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
- Security: SECURITY.md
Awesome Lists containing this project
README
# Canopy 
[](https://github.com/kostiantyn-matsebora/canopy/releases/latest)
[](https://github.com/kostiantyn-matsebora/canopy/actions/workflows/ci.yml)
[](../LICENSE)
[](https://marketplace.visualstudio.com/items?itemName=canopy-ai.canopy-skills)
[](https://agentskills.io)
[](https://code.claude.com/docs/en/skills)
[](https://code.visualstudio.com/docs/copilot/customization/agent-skills)
**AI skills as executable code, not prose.**
AI skills written as prose are instructions. Instructions get interpreted. Interpretations
drift. When a skill fails, you're re-reading sentences trying to figure out which one was
misunderstood. When it works, you're not entirely sure why it did.
**Canopy makes skills programs.**
> ๐ **Full documentation:**
---
## Why Canopy?
```
Canopy
โโโ ๐ฏ DETERMINISTIC
โ โโโ skills run identically every time
โ โโโ the tree is explicit โ no interpretation, no drift
โ
โโโ โป๏ธ REUSABLE OPS
โ โโโ define DEPLOY, VERIFY, ROLLBACK once in ops.md
โ โโโ one change keeps every skill in sync
โ
โโโ ๐ TRANSPARENT
โ โโโ the tree shows execution order before anything runs
โ โโโ when it fails, the failing node is obvious
โ
โโโ ๐ ORGANIZED RESOURCES
โ โโโ schemas ยท templates ยท constants ยท policies ยท verify
โ โโโ find what you need instantly
โ
โโโ ๐ AGENTSKILLS-NATIVE
โ โโโ meta-framework on agentskills.io โ standard install + frontmatter
โ โโโ agents with zero canopy knowledge install and run skills
โ
โโโ ๐ค AUTONOMOUS-AGENT READY
โ โโโ workflow engines (LangGraph, CrewAI) drive trees, not prompts
โ โโโ the LLM picks branches; the engine traces them deterministically
โ
โโโ ๐ CROSS-PLATFORM
โ โโโ write once; runs on Claude Code and GitHub Copilot unchanged
โ โโโ the interpreter adapts at runtime โ same SKILL.md
โ
โโโ โจ EDITOR-NATIVE
โ โโโ VS Code: completions, hover docs, go-to-def, live diagnostics
โ โโโ broken op refs and signature errors surface before run
โ
โโโ ๐ ZERO LEARNING CURVE
โโโ /canopy scaffolds, validates, improves, and converts for you
โโโ no syntax to memorize before you ship your first skill
```
---
## How it works
> The tree is the source of truth. The platform is just a detail.
Every Canopy skill is a `SKILL.md` file (uppercase, exact spelling per the agentskills.io spec) โ platform-agnostic by design. When a skill runs, the `canopy` agent detects whether you're on Claude Code or GitHub Copilot, loads the matching runtime spec, then executes the tree using platform-appropriate primitives. The same skill file works on both platforms without modification.
Here's a complete skill โ frontmatter, execution tree, and all:
```markdown
---
name: release
description: Bump version and update changelog.
compatibility: Requires canopy-runtime โ kostiantyn-matsebora/canopy
metadata:
argument-hint: "[major|minor|patch]"
---
> **Runtime required.** canopy-runtime must be active.
Parse `$ARGUMENTS` for bump tier (defaults to `patch`).
## Tree
* release
* **EXPLORE_TARGET** >> ctx
* SWITCH << $ARGUMENTS
* CASE << major
* BUMP_MAJOR << ctx.version >> new
* CASE << minor
* BUMP_MINOR << ctx.version >> new
* DEFAULT
* BUMP_PATCH << ctx.version >> new
* SHOW_PLAN >> new | ctx.files | changelog
* ASK << Proceed? | Yes | No
* IF << No
* END Cancelled.
* PARALLEL
* **WRITE_VERSION** << ctx.files | new
* **WRITE_CHANGELOG** << new
* VERIFY_EXPECTED << assets/verify/release.md
## Rules
* Never write without SHOW_PLAN + ASK confirmation.
## Response: new | files_bumped | changelog_status
```
> Subagent dispatch via `**OP_NAME**` markers, multi-way `SWITCH/CASE`, parallel writes via `PARALLEL`, plus a plan/confirm gate and post-execution verify โ this is **Canopy** in action.
---
## Quick Start
**Claude Code** โ inside a session, no external CLI needed:
```
/plugin marketplace add kostiantyn-matsebora/canopy
/plugin install canopy@canopy
```
**GitHub Copilot** โ one-shot install script:
```bash
curl -sSL https://raw.githubusercontent.com/kostiantyn-matsebora/canopy/master/install.sh | bash -s -- --target copilot
```
```powershell
irm https://raw.githubusercontent.com/kostiantyn-matsebora/canopy/master/install.ps1 | iex -Target copilot
```
Both install all three skills (`canopy-runtime`, `canopy`, `canopy-debug`) and self-activate the runtime on first agent load. After install, run `/canopy help` to see what's available.
For all install paths, flags, and the authoring-vs-execution split, see **[Getting Started](GETTING_STARTED.md)**.
Want a working project to copy from instead? **[canopy-examples](https://github.com/kostiantyn-matsebora/canopy-examples)** ships ready-to-run example skills with the framework vendored โ clone it and the skills work in both Claude Code and GitHub Copilot without extra setup.
---
## Where to next
- **[Getting Started](GETTING_STARTED.md)** โ full install paths, the `/canopy` operations reference, and a first-skill walkthrough.
- **[Concepts](CONCEPTS.md)** โ how Canopy thinks about skills: tree, ops, subagents, execution model, the runtime/authoring split.
- **[Terminology](TERMINOLOGY.md)** โ glossary of Canopy terms with one-sentence definitions and links to the relevant deep-dive.
- **[Cheatsheet](CHEATSHEET.md)** โ one-page reference: skill anatomy, primitives, op syntax, category dirs.
- **[Reference](reference/)** โ formal spec: framework grammar, primitives (auto-mirrored from canopy-runtime), per-platform runtime rules.
- **[VS Code Extension](VSCODE.md)** โ IntelliSense, semantic diagnostics, hover docs, and go-to-definition for canopy skills.
- **[Examples](https://github.com/kostiantyn-matsebora/canopy-examples)** โ a working project to learn from.
---
## License
MIT โ see [LICENSE](../LICENSE).