|
| 1 | +# IC Skills |
| 2 | + |
| 3 | +**Skills for agents, not docs for humans.** |
| 4 | + |
| 5 | +Structured, versioned, agent-readable skill files for every Internet Computer capability. Your AI reads the skill. It builds correctly. No hallucinations. |
| 6 | + |
| 7 | +**[icskills.dev](https://joshdfn.github.io/icskills/)** |
| 8 | + |
| 9 | +--- |
| 10 | + |
| 11 | +## The Problem |
| 12 | + |
| 13 | +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. |
| 14 | + |
| 15 | +## The Solution |
| 16 | + |
| 17 | +Each skill is a single markdown file containing everything an agent needs to build correctly: |
| 18 | + |
| 19 | +``` |
| 20 | +skills/ckbtc/SKILL.md |
| 21 | +skills/internet-identity/SKILL.md |
| 22 | +skills/stable-memory/SKILL.md |
| 23 | +... |
| 24 | +``` |
| 25 | + |
| 26 | +Every skill follows the same structure: |
| 27 | + |
| 28 | +| Section | Purpose | |
| 29 | +|---------|---------| |
| 30 | +| **What this is** | One paragraph. What the technology does. | |
| 31 | +| **Prerequisites** | Exact versions. `dfx >= 0.24.0`, `ic-cdk >= 0.17`. | |
| 32 | +| **Mistakes that break your build** | Numbered pitfalls that prevent hallucinations. | |
| 33 | +| **Implementation** | Tested, copy-paste-correct code blocks. | |
| 34 | +| **Deploy & Test** | Step-by-step commands for local and mainnet. | |
| 35 | +| **Verification** | Concrete commands to confirm it works. | |
| 36 | + |
| 37 | +The pitfalls section is the highest-value part. Every pitfall documented is a hallucination prevented. |
| 38 | + |
| 39 | +## Skills |
| 40 | + |
| 41 | +| Skill | Category | Description | |
| 42 | +|-------|----------|-------------| |
| 43 | +| [ckbtc](skills/ckbtc/SKILL.md) | DeFi | Accept, send, and manage chain-key Bitcoin | |
| 44 | +| [icrc-ledger](skills/icrc-ledger/SKILL.md) | Tokens | ICRC-1/ICRC-2 token ledger standard | |
| 45 | +| [internet-identity](skills/internet-identity/SKILL.md) | Auth | Passkey authentication with Internet Identity | |
| 46 | +| [multi-canister](skills/multi-canister/SKILL.md) | Architecture | Inter-canister calls and multi-canister design | |
| 47 | +| [stable-memory](skills/stable-memory/SKILL.md) | Architecture | Persistent storage that survives upgrades | |
| 48 | +| [https-outcalls](skills/https-outcalls/SKILL.md) | Integration | HTTP requests from canisters to external APIs | |
| 49 | +| [evm-rpc](skills/evm-rpc/SKILL.md) | Integration | Read/write Ethereum from the IC | |
| 50 | +| [sns-launch](skills/sns-launch/SKILL.md) | Governance | Configure and launch an SNS DAO | |
| 51 | +| [asset-canister](skills/asset-canister/SKILL.md) | Frontend | Deploy frontend assets to the IC | |
| 52 | +| [certified-variables](skills/certified-variables/SKILL.md) | Data | Certified query responses | |
| 53 | +| [vetkd](skills/vetkd/SKILL.md) | Crypto | Threshold key derivation for encryption | |
| 54 | +| [wallet](skills/wallet/SKILL.md) | DevOps | Cycles management and canister lifecycle | |
| 55 | + |
| 56 | +## Usage |
| 57 | + |
| 58 | +### Drop into agent context |
| 59 | + |
| 60 | +The simplest way — paste the raw skill file into your agent's system prompt or context window: |
| 61 | + |
| 62 | +``` |
| 63 | +curl -s https://raw.githubusercontent.com/JoshDFN/icskills/main/skills/ckbtc/SKILL.md |
| 64 | +``` |
| 65 | + |
| 66 | +### Claude Code (`.claude/skills/`) |
| 67 | + |
| 68 | +```bash |
| 69 | +# Clone the skills you need into your project |
| 70 | +mkdir -p .claude/skills/ckbtc |
| 71 | +curl -sL https://raw.githubusercontent.com/JoshDFN/icskills/main/skills/ckbtc/SKILL.md \ |
| 72 | + > .claude/skills/ckbtc/SKILL.md |
| 73 | +``` |
| 74 | + |
| 75 | +Claude Code automatically loads skill files from `.claude/skills/*/SKILL.md` into context. |
| 76 | + |
| 77 | +### Cursor / Windsurf / Any Agent |
| 78 | + |
| 79 | +Add the skill content to your agent's rules, instructions, or context file — whatever your tool supports. The files are plain markdown. No special tooling required. |
| 80 | + |
| 81 | +## API (Planned) |
| 82 | + |
| 83 | +The website documents a REST API for programmatic access: |
| 84 | + |
| 85 | +| Endpoint | Description | |
| 86 | +|----------|-------------| |
| 87 | +| `GET /skills` | List all skills with metadata | |
| 88 | +| `GET /skills/{id}` | Full structured skill data | |
| 89 | +| `GET /skills/{id}/raw` | Raw SKILL.md for direct context injection | |
| 90 | +| `GET /skills/{id}/deps` | Dependency tree | |
| 91 | +| `GET /skills/search?q={query}` | Search by task description | |
| 92 | +| `GET /skills/{id}/pitfalls` | Just the pitfalls (guardrails only) | |
| 93 | + |
| 94 | +## Contributing |
| 95 | + |
| 96 | +See [CONTRIBUTING.md](CONTRIBUTING.md) for how to add or update skills. |
| 97 | + |
| 98 | +**All PRs require repo admin approval.** One skill per PR. Code examples must be tested. |
| 99 | + |
| 100 | +## Tech Stack |
| 101 | + |
| 102 | +- **Site**: [Preact](https://preactjs.com/) + [Vite](https://vite.dev/) — 3kb runtime, ~16kb gzipped total |
| 103 | +- **Hosting**: GitHub Pages via Actions |
| 104 | +- **Skills**: Plain markdown files in `skills/*/SKILL.md` |
| 105 | + |
| 106 | +## License |
| 107 | + |
| 108 | +MIT |
0 commit comments