Skip to content

Agent-readable skill files for Internet Computer (ICP) development. Prevents AI hallucinations.

Notifications You must be signed in to change notification settings

dfinity/icskills

Repository files navigation

IC Skills

⚠️ Under active development — Skill files are being reviewed and signed off by DFINITY engineers. Content may change. Feedback and PRs are welcome.

Agent-readable instructions for every IC need.

Structured, versioned, agent-readable skill files for every Internet Computer capability. Your AI reads the skill. It builds correctly. No hallucinations.


The Problem

AI agents building on the Internet Computer hallucinate canister IDs, use deprecated APIs, and miss critical pitfalls. Traditional documentation is written for humans to browse — not for agents to consume programmatically.

The Solution

Each skill is a single markdown file containing everything an agent needs to build correctly:

skills/ckbtc/SKILL.md
skills/internet-identity/SKILL.md
skills/stable-memory/SKILL.md
...

Every skill follows the same structure:

Section Purpose
What this is One paragraph. What the technology does.
Prerequisites Exact versions. icp-cli >= 0.1.0, ic-cdk >= 0.18.
Mistakes that break your build Numbered pitfalls that prevent hallucinations.
Implementation Tested, copy-paste-correct code blocks.
Deploy & Test Step-by-step commands for local and mainnet.
Verify It Works Concrete commands to confirm it works.

The pitfalls section is the highest-value part. Every pitfall documented is a hallucination prevented.

Skills

Skill Category Description
ckbtc DeFi Accept, send, and manage chain-key Bitcoin
icrc-ledger Tokens ICRC-1/ICRC-2 token ledger standard
internet-identity Auth Passkey authentication with Internet Identity
multi-canister Architecture Inter-canister calls and multi-canister design
stable-memory Architecture Persistent storage that survives upgrades
https-outcalls Integration HTTP requests from canisters to external APIs
evm-rpc Integration Read/write Ethereum from the IC
sns-launch Governance Configure and launch an SNS DAO
asset-canister Frontend Deploy frontend assets to the IC
certified-variables Security Certified query responses
vetkd Security Threshold key derivation for encryption
wallet Infrastructure Cycles management and canister lifecycle

Usage

Drop into agent context

The simplest way — paste the raw skill file into your agent's system prompt or context window:

curl -s https://raw.githubusercontent.com/dfinity/icskills/main/skills/ckbtc/SKILL.md

Claude Code

Copy skills into .claude/skills/ — they're automatically loaded into context:

mkdir -p .claude/skills/ckbtc
curl -sL https://raw.githubusercontent.com/dfinity/icskills/main/skills/ckbtc/SKILL.md \
  > .claude/skills/ckbtc/SKILL.md

OpenCode

Add skills as remote instructions in opencode.json:

{
  "instructions": [
    "https://raw.githubusercontent.com/dfinity/icskills/main/skills/ckbtc/SKILL.md",
    "https://raw.githubusercontent.com/dfinity/icskills/main/skills/internet-identity/SKILL.md"
  ]
}

Or copy into .opencode/rules/ for automatic discovery:

mkdir -p .opencode/rules
curl -sL https://raw.githubusercontent.com/dfinity/icskills/main/skills/ckbtc/SKILL.md \
  > .opencode/rules/ckbtc.md

OpenClaw

Install as a skill or paste into your assistant's context during conversation. OpenClaw can also fetch skills directly from URLs when asked.

Cursor

Add to .cursor/rules/:

mkdir -p .cursor/rules
curl -sL https://raw.githubusercontent.com/dfinity/icskills/main/skills/ckbtc/SKILL.md \
  > .cursor/rules/ckbtc.md

Windsurf

Add to .windsurfrules or paste into Windsurf's custom instructions.

GitHub Copilot

Add to .github/copilot-instructions.md:

mkdir -p .github
curl -sL https://raw.githubusercontent.com/dfinity/icskills/main/skills/ckbtc/SKILL.md \
  >> .github/copilot-instructions.md

Any Other Agent

The files are plain markdown. Copy the content into whatever instructions, rules, or context file your tool supports.

API (Planned)

The website documents a REST API for programmatic access:

Endpoint Description
GET /skills List all skills with metadata
GET /skills/{id} Full structured skill data
GET /skills/{id}/raw Raw SKILL.md for direct context injection
GET /skills/{id}/deps Dependency tree
GET /skills/search?q={query} Search by task description
GET /skills/{id}/pitfalls Just the pitfalls (guardrails only)

Contributing

See CONTRIBUTING.md for how to add or update skills.

All PRs require repo admin approval. One skill per PR. Code examples must be tested.

Tech Stack

  • Site: Preact + Vite — 3kb runtime, ~16kb gzipped total
  • Hosting: GitHub Pages via Actions
  • Skills: Plain markdown files in skills/*/SKILL.md

License

MIT

Releases

No releases published

Packages

No packages published