The skill that builds skills. Draft one and ship it in a single pass, or run evals against a baseline and iterate until it measurably works — targeting Claude Code, Claude.ai or Cowork, whose runtimes differ in ways that silently break skills. You can also just ask it how skills work. Based on Anthropic's official skill-creator plugin, with bug fixes and best practices baked in.
Official skill-creator |
skill-creator-plus |
|
|---|---|---|
| Best practices guide | — | 620+ line Anthropic patterns reference |
| Script vs. Instruct guidance | — | Decision framework for when to bundle scripts vs. use instructions |
| Structure validation | — | Frontmatter, naming and length caps against the agentskills.io spec |
| Cross-runtime linting | — | 12 rules for what breaks on Claude.ai and Cowork — subagents, claude CLI, browser access, third-party imports, file delivery, compaction |
| Cowork authoring guidance | — | Runtime-specific guidance for Cowork's two lanes (below) |
| Claude Code runtime docs | — | Listing budget + per-skill degradation order, permission semantics, truncation caps, live-reload behavior — verified against 2.1.222–2.1.251 |
| Eval viewer in Cowork | Silent fail on submit | Copyable JSON textarea (fixed) |
| Description optimizer | Requires separate ANTHROPIC_API_KEY; drifts toward 1,024-char bloat |
Uses your existing claude session; length-aware selection + plateau early-stop |
| Benchmarking script | Silent empty results | Fixed directory handling |
| Skill type taxonomy | 3 broad categories | 3 + 9 Anthropic internal types |
| Pre-packaging checklist | — | Official checklist built in |
Anthropic ships a skill-creator plugin. It's good, but several parts are broken or missing:
- Best practices guide included — 620+ lines of patterns, structural templates, troubleshooting guide, and checklists extracted from Anthropic's Complete Guide to Building Skills for Claude and Thariq's Lessons from Building Claude Code Skills. Includes a "Script vs. Instruct" decision framework for when to bundle pre-made scripts vs. keep logic as instructions — covering context window efficiency, reliability, and auditability. The built-in doesn't ship any of this.
- A skill that works here can break there, silently — the
claudeCLI exists only in Claude Code, so aclaude -pstep is dead anywhere else; Claude.ai has no subagents to dispatch, so parallel eval runs have to collapse to serial; a Cowork agent can't serve a local HTTP server and open it, so the eval viewer needs a static build; a third-party import on Cowork costs an install on every run, and egress is org-configurable, so a locked-down org can refuse it; and file delivery differs per surface — on Cowork's remote lane, writing a file is not delivering it. Structure validation can't see any of that, so there are two checks:quick_validatefor structure, and a 12-rule portability linter for runtime assumptions — including the two ways compaction loses a skill. Both are stdlib-only, because they have to run inside the sandboxes they lint. Rule ids, flags and exit codes are indocs/DEVELOPMENT.md. - Claude Code runtime docs — the mechanics most skill authors hit the hard way, read out of the shipping binary rather than inherited from a blog post: overflow of the shared listing budget drops descriptions per skill, least-recently-used first, so full and name-only entries coexist;
allowed-toolsgrants permission rather than requesting it; and compaction is a CHARACTER gate, not the documented token one, losing content two different ways — truncation keeps the first 19,900 characters and leaves a marker, while the combined cross-skill cap zeroes a skill outright with no marker and no entry. Verified against Claude Code 2.1.222–2.1.251. Where the public docs and the binary disagree, the reference says so and shows which one shipped.
The eval viewer, description optimizer and benchmarking fixes are in the table above; see the CHANGELOG for the full list.
Install (Claude Code):
claude plugin marketplace add https://github.com/yaniv-golan/skill-creator-plus
claude plugin install skill-creator-plus@skill-creator-plus-marketplaceThen just ask:
/skill-creator-plus:skill-creator-plus Create a skill that reviews pull requests for security issues
The skill takes it from there — intent capture, drafting, test cases, and delivery.
You can also just ask it a question. Mechanics are in scope on their own — frontmatter fields, path variables, size limits, directory layout, or what breaks across runtimes — however small the question.
Note: If you also have Anthropic's built-in
skill-creatorinstalled, Claude may pick that one instead. Either uninstall the built-in, or use/skill-creator-plus:skill-creator-plusto invoke this version explicitly.
There are two routes, and the fast one is a real route rather than a shortcut.
For when you want the skill itself, not an eval report:
- Draft — captures your intent through structured questions, researches existing patterns, then writes a SKILL.md with metadata, instructions and test cases.
- Smoke-test every bundled script — directly, on synthetic input with the problems planted: malformed rows, wrong delimiter, unusual encoding, empty and header-only files, a missing file. A script that only ever ran on clean input is untested.
- Validate —
quick_validatefor structure, thencheck_portabilityfor the runtime you're targeting. - Package and deliver.
Steps 2 and 3 are the verification when you skip evals. Shipping without eval evidence is fine; shipping with nothing exercised is not.
For when you need to show the skill helps:
- Evaluate — spawns parallel runs (with-skill and baseline) on test prompts. While runs execute, drafts quantitative assertions. Grades results via the grader agent and shows them in an interactive viewer, so you form your own opinion before anything is rewritten.
- Improve — analyzes results, identifies weaknesses, rewrites the skill. Each iteration is benchmarked against the previous version.
Then repeat. Order is flexible, and an existing draft can join at step 1.
- Blind A/B comparison — the comparator agent scores two outputs without knowing which skill produced them; the analyzer agent then unblinds and explains the differences.
- Description optimization — generates trigger and non-trigger queries, runs an optimization loop with a train/test split, and selects the best-performing description. A description is what decides whether your skill is ever invoked at all.
Cowork breaks assumptions that hold everywhere else, and it breaks them quietly — the write succeeds, the tool reports success, and the file is somewhere nobody will look. The skill knows about:
- Where the workspace must live. The skill directory is a read-only plugin mount, so the workspace can't sit beside it. The agent falls back to the session scratchpad — which on the remote lane is reclaimed at session end, destroying the skill it just built.
- File tools and the shell don't share a working directory. No single relative path is correct for both, so the identifier and the base have to stay apart.
- Writing a file is not delivering it. On the remote lane a file written and never presented through a tool is silently lost. Delivery is two steps, always taught in order.
- A script's stdout is not delivery for text, either. Tool-call output is collapsed in the Cowork transcript, so anything the user actually needs to read has to be said, not printed.
Parts of this are authoring guidance rather than verified behavior, and the guidance says which is which. See docs/DEVELOPMENT.md for the linter's flags, rule ids and exit codes.
— or install manually —
- Click Customize in the sidebar
- Click Browse Plugins
- Go to the Personal tab and click +
- Choose Add marketplace
- Type
yaniv-golan/skill-creator-plusand click Sync
From your terminal:
claude plugin marketplace add https://github.com/yaniv-golan/skill-creator-plus
claude plugin install skill-creator-plus@skill-creator-plus-marketplaceOr from within a Claude Code session:
/plugin marketplace add yaniv-golan/skill-creator-plus
/plugin install skill-creator-plus@skill-creator-plus-marketplace
- Download
skill-creator-plus.zip - Click Customize in the sidebar
- Go to Skills and click +
- Choose Upload a skill and upload the zip file
/skill-creator-plus:skill-creator-plus Create a skill that reviews pull requests for security issues
/skill-creator-plus:skill-creator-plus Run evals on my skill and show me the results
/skill-creator-plus:skill-creator-plus Optimize my skill's description for better triggering
/skill-creator-plus:skill-creator-plus Do a blind A/B comparison between the old and new version of my skill
/skill-creator-plus:skill-creator-plus Check whether my skill will work in Cowork
/skill-creator-plus:skill-creator-plus What happens to my skill when the context gets compacted?
If you built a skill using Skill Creator Plus, add this badge to your README:
[](https://github.com/yaniv-golan/skill-creator-plus)MIT — see LICENSE. Built on Anthropic's skill-creator (Apache 2.0) — see NOTICE.
