Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/classified-ai-core-write-skills
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: writing, agent-building
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions: not checked yet.
What's inside
- Skill name
write-skills- Description
- Create or revise agent skills. Use when adding a new skill file, renaming a skill, simplifying an existing skill, improving trigger descriptions, or deciding what belongs in a skill versus references, scripts, assets, or ordinary docs.
- License
- MIT
- Metadata
- author: Classified AI · category: google-ops · maturity: beta
- Instructions
- 218 lines in SKILL.md · view on GitHub
Files (1)
- SKILL.md
SKILL.md (first lines)
# Write Skills
A skill is not documentation. It is compressed operational memory for an
agent that already knows how to code and reason. Its job is
**predictability** — the agent taking the same *process* every run, not
producing the same output. Put only the context that changes what the agent
will do.
## First Principles
1. **Trigger from the description.** The frontmatter `description` is the
only part read before the skill loads. Say what the skill does and the
concrete situations that should trigger it. Do not hide trigger rules in
the body.
2. **Spend tokens like they are scarce.** Assume the agent is already good at
general reasoning. Keep only non-obvious workflow, domain constraints,
tool choices, failure modes, and validation rules. Delete background,
motivation, and generic advice.
3. **Write procedures, not essays.** Prefer imperative rules, decision
points, and small examples. A good skill changes behavior in the next
turn; it does not merely explain the topic. And match the procedure to
the deliverable's shape: a catalog of techniques with "pick what fits"
produces tool-picking, not a flow — if the job is a shaped interaction
(an interview, a staged walk), the workflow must *be* that shape, with
the techniques demoted to steps inside it.
4. **Use progressive disclosure.** Keep the main skill file short. Push long
schemas, examples, provider docs, or variant-specific guidance out into
linked `references/` files, reached by a pointer that fires only when
needed. Put repeatable fragile operations in `scripts/`. Put reusable
output material in `assets/`.
5. **Validate by use.** A skill is good when a fresh agent applies it
correctly on a realistic task — run it blind, and on the weakest model
that will run it; a skill that only drives correct behavior on the
frontier model that authored it is too fragile to ship. After editing,
read it as if you had no conversation history and remove anything that
would not affect action.
6. **Examples document the PROBLEM, not the solution.** An example earns its
tokens by teaching the agent to *recognise a recurring problem* — the smell,
the symptom, how you knew it was wrong. That is durable. The fix you happened
to apply is not: code changes, and a baked-in solution goes stale, or worse
prescribes a move that won't fit next time. Write the failure mode and its
tell; let the agent derive the fix fresh against the current code. "A
directional question gated on a centroid distance read wrong from every
bearing" teaches; "so we keyed it on FRONT_ARC" rots. When in doubt, state
what was broken and how you spotted it, and stop there.
## Leading Words
A **leading word** is a compact concept already in the model's pretraining
that the agent thinks with while running the skill (e.g. *fog of war*,
*tracer bullets*, *red*, *tight*). One word recruits priors the model
already holds and anchors a whole region of behavior in the fewest tokens.
- It anchors **execution** in the body (same word → same behavior every
time) and **invocation** in the description (when that word also lives in
the user's prompts, docs, and code, the skill fires more reliably).
- Hunt for restatements that a leading word retires. "fast, deterministic,
low-overhead" → a *tight* loop. "a loop you believe in" → the loop goes
*red*. You win twice: fewer tokens and a sharper hook.
- A weak leading word is a no-op (`be thorough` when the agent already is).
The fix is a stronger word (*relentless*), not more sentences.
## Invocation
Choose how the skill is reached; each choice spends a different cost.
- **Model-invoked** (default): keep a `description` so the agent can fire it
on its own and other skills can reach it. Costs **context load** — the
description sits in the window every turn. Write rich trigger phrasing.
- **User-invoked**: set `disable-model-invocation: true`. Only the user
typing its name can invoke it; zero context load, but the user must
remember it exists. The `description` becomes a human-facing one-liner.
Pick model-invocation only when the agent or another skill must reach it
unprompted. When user-invoked skills pile up past memory, add a **router
skill** that names the others and when to reach for each.
## Description
The description does two jobs: state what the skill is, and list the
distinct situations (**branches**) that trigger it.
- Front-load the leading word — invocation work happens here.
- One trigger per branch. Synonyms that rename one branch are duplication;
collapse them and keep only genuinely distinct branches.
- Cut identity already in the body. Keep triggers plus any "when another
skill needs…" reach clause.
## Information Hierarchy
A skill is **steps** and **reference**, mixed freely. Rank each piece by how
immediately the agent needs it:
1. **In-skill step** — an ordered action in `SKILL.md`. Each ends on a
**completion criterion**: make it *checkable* (can the agent tell done
from not-done?) and, where it matters, *exhaustive* ("every modified
model accounted for", not "produce a change list"). A vague criterion
invites premature completion.
2. **In-skill reference** — a definition or rule consulted on demand. A flat
peer-set of rules is fine, not a smell.
3. **External reference** — pushed out of `SKILL.md` into a linked file,
loaded only when its pointer fires.
Keep a concept's definition, rules, and caveats under one heading
(**co-location**) so reading one part brings its neighbors. Push too little
down and the top bloats; push too much down and you hide what the agent needs.
## When to Split
Each cut spends a cost, so split only when it earns it:
- **By invocation** — split off a model-invoked skill when a distinct
leading word should trigger it alone, or another skill must reach it. You
pay context load for the new always-loaded description.From Classified-AI-Core/skill-library, MIT.
More from Classified-AI-Core/skill-library
- 0.479score
prompt-improver
skeletorjs
Improve and optimize prompts for Claude using Anthropic's official best practices and the 5-Element Persona Framework.
SkillCFreshness: CClaude Code +9 - 0.476score
supermemory
skeletorjs
Long-term memory for AI agents via Supermemory's knowledge graph API.
SkillCFreshness: CClaude Code +9 - 0.475score
self-improvement
skeletorjs
AI self-improvement and reflection skill.
SkillCFreshness: CClaude Code +9 - 0.474score
refactor-clean
Classified AI
Refactor cleanly instead of layering sediment.
SkillCFreshness: CClaude Code +9 - 0.474score
write-spec
Classified AI
Break large features into independently verifiable, human-reviewable slices under specs/<feature>/.
SkillCFreshness: CClaude Code +9 - 0.474score
close-spec
Classified AI
When a spec under specs/<feature>/ is done shipping (a write-spec build, or any planned task that produced a spec), archive it to specs/done/ and rewrite it…
SkillCFreshness: CClaude Code +9 - 0.474score
premortem
Classified AI
Run a premortem on any plan, launch, product, hire, strategy, or decision.
SkillCFreshness: CClaude Code +9 - 0.472score
share-skill
rc2.zo.computer
Safely prepare and guide skills for contribution to the Zo Skills Registry.
SkillCFreshness: CClaude Code +9 - 0.471score
simplify
skeletorjs
Simplifies and refines code for clarity, consistency, and maintainability while preserving all functionality.
SkillCFreshness: CClaude Code +9 - 0.466score
plan-code-changes
0.zo.computer
Plan out code changes using a plan file.
SkillCFreshness: CClaude Code +9 - 0.448score
skill-creator
Anthropic
Guide for creating effective skills.
SkillCFreshness: CClaude Code +9 - 0.447score
brainstorming
Obra
You MUST use this before any creative work - creating features, building components, adding functionality, or modifying behavior.
SkillCFreshness: CClaude Code +9
Signals
- Stars
- 0
- Forks
- 1
- Open issues
- 0
- Last commit (this folder)
- Jul 23, 2026 (3 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Website
- www.classified.llc/resources
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
More from Classified AI
- 0.474score
close-spec
Classified AI
When a spec under specs/<feature>/ is done shipping (a write-spec build, or any planned task that produced a spec), archive it to specs/done/ and rewrite it…
SkillCFreshness: CClaude Code +9 - 0.474score
premortem
Classified AI
Run a premortem on any plan, launch, product, hire, strategy, or decision.
SkillCFreshness: CClaude Code +9 - 0.474score
refactor-clean
Classified AI
Refactor cleanly instead of layering sediment.
SkillCFreshness: CClaude Code +9 - 0.474score
write-spec
Classified AI
Break large features into independently verifiable, human-reviewable slices under specs/<feature>/.
SkillCFreshness: CClaude Code +9
Cite this page
write-skills. Agent Mart. https://agentmart.dev/skills/classified-ai-core-write-skills (last updated 2026-10-24)