with one click
skill-creator
Guides repo-local skill creation and updates. Use when adding or editing .agents/skills, SKILL.md frontmatter, references, scripts, or skill routing.
Menu
Guides repo-local skill creation and updates. Use when adding or editing .agents/skills, SKILL.md frontmatter, references, scripts, or skill routing.
| name | skill-creator |
| description | Guides repo-local skill creation and updates. Use when adding or editing .agents/skills, SKILL.md frontmatter, references, scripts, or skill routing. |
Use this skill when creating or updating repo-local skills under .agents/skills/. Generated .claude/skills content is managed by agent-skills-nix and must not be edited or committed.
.agents/skills/<skill-name>/SKILL.md with YAML frontmatter and concise Markdown instructions.SKILL.md focused on core workflow and navigation. Move detailed examples, APIs, or long checklists into references/ files linked directly from SKILL.md.scripts/ only for deterministic or repeated operations that are better executed than rewritten.AGENTS.md Skill Routing list when adding a repo-local skill that agents should discover before work.just fmt after edits and use the normal repo validation level for the change.Repo-local skills are the source of truth under .agents/skills. The .claude/skills directory is generated by agent-skills-nix through the Nix dev-shell hook, ignored by Git, and should not be used as an edit target.
See nix/agent-skills.nix for the local-only agent-skills-nix wiring. The flake uses nix-filter so only .agents/skills is included in the local skill source. Keep skill source files under .agents/skills; do not add global agent-skills-nix targets or git hook skill sync for this repository.
Required fields:
---
name: skill-name
description: Describes what the skill does and when to use it.
---
Follow Anthropic's skill authoring guidance from the Agent Skills best practices and skill structure docs:
description field is the primary discovery mechanism.Optional file routing fields:
paths for Claude-style file matching. It may be a comma-separated glob string or a YAML list.globs as a compatibility hint when a skill should trigger for file types across agent runtimes.paths:
- '**/*.ts'
- '**/*.tsx'
- '**/*.js'
- '**/*.jsx'
globs: '*.ts,*.tsx,*.js,*.jsx'
description explicit about the file types and actions that should trigger the skill.For this repo, prefer one or two short sentences, usually around 20-35 words. Do not compress a description so far that it becomes only a label; the agent still needs enough trigger context to choose the skill reliably.
Good pattern:
description: Guides ccusage Rust tests. Use when adding or fixing cargo tests, CLI snapshots, Claude model pricing, LiteLLM compatibility, or Rust fixture-backed parser and loader tests.
Weak pattern:
description: Use for tests.
Keep the body procedural and repo-specific:
Avoid explaining generic concepts the model already knows. The skill body is loaded only after the skill triggers, but it still competes with task context once loaded.
Assume some agents may preview only the first 200 lines of a skill or reference file. Keep each file comfortably below that limit, with the most important routing, safety, and workflow instructions near the top.
Targets:
SKILL.md under 160 lines.references/*.md file under 180 lines.SKILL.md.Audit with:
fd . .agents/skills -t f -e md -x wc -l {} | sort -nr
Use reference files when details are conditional:
.agents/skills/example-skill/
├── SKILL.md
└── references/
├── api.md
└── examples.md
Link reference files directly from SKILL.md and say when to read each one. Avoid nested reference chains because agents may only preview intermediate files.
Split references by when they are read, not just by heading. If several details will almost always be needed together, keep them in one reference file instead of forcing agents to open multiple small files.
Runs the full PR lifecycle. Use when creating a branch, committing, pushing, opening a PR, requesting AI review, and driving CI and review to completion.
Guides ccusage monorepo development. Use when editing packages, docs, shared configuration, bundled CLI packaging, dependencies, exports, or validation commands.
Guides ccusage Rust and Vitest tests. Use when adding or fixing cargo tests, CLI snapshots, Claude model pricing, LiteLLM compatibility, Vitest tests, or fixture-backed tests.
Guides ccusage TypeScript and JavaScript work. Use before reading or editing .ts, .tsx, .js, or .jsx files, including package launchers, Vitest tests, Bun scripts, schemas, mocks, and typed fixtures.
Guides t-wada Red-Green-Refactor TDD. Use when implementing features, fixing bugs, or refactoring logic with strict test-first development.
Guides ccusage agent source formats. Use when checking agent log locations, raw record structure, token mappings, model names, precomputed costs, or source-specific CLI behavior.