OpenCode Skill Creator plugin
A plugin and skill for OpenCode that draft a skill, build eval queries, measure description trigger accuracy and improve it.
- 195 ★ on the repository
- Last commit
- Apache-2.0
Extended access
Why this level
- The plugin starts a local HTTP review server and installs a skill into the user-level OpenCode directory.
- Eval runs call a model and spend paid tokens.
Install
- Works in
Manual install
npx opencode-skill-creator install --projectFor OpenCode V2 from the project directory. Use `install --global` for all projects; V1 needs manual setup.
Access and checks
How we reviewExtended accessThe tool runs code or makes network calls and only reads external data.
- The plugin starts a local HTTP review server and installs a skill into the user-level OpenCode directory.
- Eval runs call a model and spend paid tokens.
This is third-party code. Review the repository files before installing.
What it does
The workflow helps create a skill for OpenCode: a draft with `SKILL.md` and supporting files, sets of queries that should and should not trigger the skill, a measurement of description trigger accuracy and its improvement with a train and test split. A TypeScript plugin provides 14 tools, for example `skill_validate`, `skill_eval`, `skill_optimize_loop` and `skill_serve_review`. Run results are compared by grades, timing and tokens, and paired outputs are reviewed in an HTML viewer before the finished skill is installed. The project is an independent adaptation of Anthropic's skill-creator: Python automation is ported to TypeScript for OpenCode V2 and V1 from 1.18.29.
Who it is for. People writing their own OpenCode skills who want to measure whether they trigger on the right requests instead of guessing.
Good fit when
- A skill that reviews Docker Compose files is needed and its description must trigger only on such requests.
- An existing skill has a poorly triggering description and is optimized on train and test sets.
- Several runs are compared by output grade, timing and tokens.
- Paired results are reviewed in HTML before the skill is installed into `.opencode/skills/`.
Not a fit when
- You use an agent other than OpenCode.
- You need to grade a skill's answer quality: trigger evals measure only skill selection.
- OpenCode is older than 1.18.29 and the old `0.2.x` line is not used.
Example request
Use opencode-skill-creator to create a skill that reviews Docker Compose files, then build queries to evaluate its description triggering.Limitations
Trigger evals measure only skill selection, while output quality is judged from graded outputs and human review. Behaviour depends on model and provider, and runs cost money at the provider. On startup the plugin installs the skill into the user-level OpenCode directory even with `--project`. OpenCode V1 from 1.18.29 needs manual setup, and older versions use the `0.2.x` line. Keep drafts and eval workspaces in a temp directory outside the repository.
How to disable. Remove the plugin from the OpenCode configuration (`plugins` key for V2, `plugin` for V1) and delete the `opencode-skill-creator` folder from `~/.config/opencode/skills/`.
FAQ
How do I install it for a project?
Run `npx opencode-skill-creator install --project` from the project directory, then restart OpenCode. For all projects use `install --global`.
Which OpenCode versions are supported?
V2 through the `plugins` key and V1 from 1.18.29 through manual `plugin` setup. V1 below 1.18.29 needs the older `0.2.x` line.
Which tools does the plugin add?
Fourteen: `SKILL.md` validation and parsing, trigger measurement, description improvement, an optimization loop, benchmark aggregation, reports, a review server and gold-standard description examples.
What does `skill_eval` show?
Description trigger accuracy over a set of queries that should and should not invoke the skill.
Is there an example?
Yes, `examples/docker-compose-helper/` holds a small skill, an eval set in JSON and prompts for `skill_eval`, `skill_optimize_loop` and benchmark review.
Discussion
No questions or reviews yet.
Related
Pluginsskill-creator: skills from OpenAPI, GraphQL and MCP
@asnd/skill-creator
The /skill-creator command turns a link to an OpenAPI spec, GraphQL schema or MCP server into a ready skill with wrappers.
A skill that teaches an agent to write Obsidian plugins to ESLint and community review rules and scaffolds a new plugin.
Catalog of 46 versioned skills for code review, releases, CI and landing pages, installed as the lstack plugin or through npx.
A Windows plugin for OpenCode Desktop that sets edit boundaries, screens commands and ties test results to the current code.
An OpenTUI reference for agents: decision trees, the Core, React and Solid APIs, layout, keys, animation and testing
Twenty skills for reading unfamiliar code, reviewing documents and commits, translating Markdown and OpenSpec-driven development
Comparison with similar tools
Cards that share the main search query, and how they differ.
| Tool | Official | Repository stars | Main difference |
|---|---|---|---|
| OpenCode Skill Creator (this card) | no | 195 | |
| oil-skill-creator | no | 102 | building skills in the Anthropic manner; this plugin is made for OpenCode and measures description triggering with a test set |
| skill-creator: skills from OpenAPI, GraphQL and MCP | no | 611 | a skill creation helper; here fourteen plugin tools, paired result review and benchmarks |
README in short
The package has a bundled skill with grading agents, schemas and templates and a plugin that validates, runs evals, aggregates results and serves review. OpenCode loads the compiled `dist/skill-creator.js` bundle through a V1 or V2 entrypoint.
README badge
Original SKILL.md
--- name: opencode-skill-creator description: Create, test, evaluate, optimize, and package OpenCode skills with the opencode-skill-creator plugin. Use when users explicitly mention opencode-skill-creator, OpenCode Skill Creator, creating an OpenCode skill, editing an OpenCode SKILL.md, running skill evals, benchmarking skill performance, or optimizing an OpenCode skill description. Do not use for generic Claude Code or Superpowers skill creation unless the user asks to port that workflow to OpenCode. --- # OpenCode Skill Creator A skill for creating new skills and iteratively improving them. At a high level, the process of creating a skill goes like this: - Decide what you want the skill to do and roughly how it should do it - Write a draft of the skill - Create a few test prompts and run opencode-with-access-to-the-skill on them - Help the user evaluate the results both qualitatively and quantitatively - While the runs happen in the background, draft some quantitative evals if there aren't any (if there are some, you can either use as is or modify if you feel something needs to change about them). Then explain them to the user (or if they already existed, explain the ones that already exist) - Use the `skill_serve_review` tool to show the user the results for them to look at, and also let them look at the quantitative metrics - Rewrite the skill based on feedback from the user's evaluation of the results (and also if there are any glaring flaws that become apparent from the quantitative benchmarks) - Repeat until you're satisfied - Expand the test set and try again at larger scale Your job when using this skill is to figure out where the user is in this process and then jump in and help them progress through these stages. So for instance, maybe they're like "I want to make a skill for X". You can help narrow down what they mean, write a draft, write the test cases, figure out how they want to evaluate, run all the prompts, and repeat. On the other hand, maybe they already have a draft of the skill. In this case you can go straight to the eval/iterate part of the loop. For new skill creation, the intake interview is mandatory. Ask at least 3-5 targeted questions before drafting anything (ask more if the workflow is complex). Treat this as shadowing a teammate: the user is the domain expert and existing employee, and the agent is the new hire that must learn and mirror the real workflow. You can still be flexible about eval depth and iteration speed after intake. If the user asks to skip intake, warn once that skill quality and workflow match will be worse, get explicit confirmation, and then proceed with best effort. Then after the skill is done (but again, the order is flexible), you can also run the skill description optimizer (`skill_optimize_loop` tool), which we have a whole separate tool for, to optimize the triggering of the skill. Cool? Cool. ## Communicating with the user The skill creator is liable to be used by people across a wide range of familiarity with coding jargon. If you haven't heard (and how could you, it's only very recently that it started), there's a trend now where the power of AI coding agents is inspiring plumbers to open up their terminals, parents and grandparents to google "how to install npm". On the other hand, the bulk of users are probably fairly computer-literate. So please pay attention to context cues to understand how to phrase your communication! In the default case, just to give you some idea: - "evaluation" and "benchmark" are borderline, but OK - for "JSON" and "assertion" you want to see serious cues from the user that they know what those things are before using them without explaining them It's OK to briefly explain terms if you're in doubt, and feel free to clarify terms with a short definition if you're unsure if the user will get it. ---