opencode-skills-collection
v3.0.26
Published
OpenCode CLI plugin that automatically downloads and keeps skills up to date.
Maintainers
Readme
OpenCode Skills Collection
An OpenCode CLI plugin that bundles and auto-syncs a universal collection of AI skills — delivered instantly, with zero network latency at startup.
Overview
OpenCode Skills Collection ships a pre-bundled snapshot of 1000+ universal skills for the OpenCode CLI.
Instead of loading every skill into the AI context at startup — which would consume ~80k tokens and cause compaction loops — the plugin uses a SkillPointer architecture: skills are organized into categories inside a hidden vault and only loaded into context on demand.
How It Works
The plugin operates in two phases:
1. Local deployment (startup)
When OpenCode starts, the plugin copies the pre-bundled skills from the npm package and runs the SkillPointer pipeline:
bundled-skills/ (npm package)
│
▼
~/.config/opencode/skills/ ← OpenCode reads this
│
└── SkillPointer pipeline
│
├─ vault-manager → moves raw skills to the vault
└─ pointer-generator → writes ~35 lightweight pointer files2. On-demand skill loading
Each pointer file tells the AI: "there are N skills for this category in the vault — use list_dir / view_file to
retrieve them when needed."
The full skill content is only injected into context when the AI actually needs it.
Disk Layout
After the first startup, your ~/.config/opencode/ directory looks like this:
~/.config/opencode/
├── opencode.json
├── skills/ ← pointer folders (active, read by OpenCode)
│ ├── backend-dev-category-pointer/
│ │ └── SKILL.md
│ ├── devops-category-pointer/
│ │ └── SKILL.md
│ └── ...
└── skill-libraries/ ← vault with all raw skills (hidden from startup context)
├── backend-dev/
│ ├── laravel-expert/
│ │ └── SKILL.md
│ └── wordpress-core/
│ └── SKILL.md
├── devops/
└── ...Context Usage
| | Without SkillPointer | With SkillPointer |
|----------------------|----------------------|---------------------|
| Folders in skills/ | ~1000 | ~35 |
| Tokens at startup | ~80,000 | ~255 |
| Skills available | All injected upfront | On-demand via vault |
| Compaction loops | ✗ frequent | ✓ none |
Installation
Add the plugin to your global OpenCode configuration file at ~/.config/opencode/opencode.json:
{
"plugin": [
"opencode-skills-collection@latest"
]
}That's it. OpenCode will automatically download the npm package on next startup via Bun — no manual npm install
needed.
Usage
Once installed, all skills are available in three ways:
Explicit invocation via CLI:
opencode run /brainstorming help me plan a new feature
opencode run /refactor clean up this functionSlash commands in the OpenCode chat:
/brainstorming
/refactor
/documentNatural language — OpenCode picks the right skill automatically:
"Help me brainstorm ideas for a REST API design"
"Refactor this function to be more readable"Skill Risk Filter
The plugin supports configurable risk-based filtering of skills. By default, all skills are loaded — filtering is opt-in.
Each skill in the index has a risk field with one of these levels:
| Level | Description |
|-------------|--------------------------------------------------------------------|
| none | No risk assessment |
| safe | Verified safe |
| critical | Contains sensitive operations |
| offensive | Contains offensive security tools (exploits, reverse shells, etc.) |
| unknown | Not yet classified |
Configuration
Create a ~/.config/opencode/skill-filter.jsonc file:
{
"excludedRiskLevels": ["offensive"],
"excludedSkills": ["windows-privilege-escalation"]
}excludedRiskLevels: Array of risk levels to block entirelyexcludedSkills: Array of specific skill IDs to block
Blocked skills are excluded from both the vault and the generated pointers — they are never loaded into context.
Development
Requirements: Node.js ≥ 20, TypeScript ≥ 5
# Install dependencies
npm install
# Build
npm run build
# Output is in dist/The plugin is written in TypeScript and compiled to ESNext with full type declarations. It targets ES2022 and uses ESM module resolution.
The old opencode-skills-antigravity package on npm is deprecated and re-exports this one automatically.
Contributing
Issues and pull requests are welcome at github.com/FrancoStino/opencode-skills-collection.
Beta Releases
Beta versions are published from the develop branch for testing before official releases.
Installing Beta Versions
To use the latest beta version, update your ~/.config/opencode/opencode.json:
{
"plugin": [
"opencode-skills-collection@beta"
]
}