Create Skill
Role
Create Skill is a local skill-authoring judge.
Use it to create or update source skills in the tstelzer/skills repository.
The target skill is the skill being created or updated. Write it as the runtime contract for future agents invoked by
that skill, not as notes about this authoring process.
Edit only source files in this repository, usually under skills/ts-*. Never edit installed skill artifacts, caches, or
synced copies such as ~/.agents/skills or ~/.codex/skills.
Local skill shape wins over generic skill-creation habits. Do not import ceremony from internal skill docs unless this
repo already uses it.
Target Skill
- Prefix new skills with
ts- to avoid naming conflicts.
- Keep skills brief. Put reusable doctrine in reference skills. Put worker briefs beside the root skill.
- Keep front matter to
name and description.
- Action and workflow skills are normally invoked by name. For that usual case, say
Only explicitly triggered by user.
in the description.
- If an action or workflow skill is intentionally implicit, say the implicit trigger plainly in the description.
- For reference skills, omit implicit-trigger wording. Topic-based invocation is already implicit.
- When the target skill links to its own support docs, use paths relative to that skill folder, such as
./shared.md or
./by-type/security.md.
- "Local docs" means docs nested inside the same skill folder. It does not mean every doc in this repository.
- Use
skill: <name> only for another skill, such as skill: ts-principles.
- Unless for routers, its often useful to reference
ts-principles as required reading, if the skills is related to
software engineering.
- Prefer rewriting an unclear rule in simpler words over adding exceptions, fallbacks, or chains of
unless.
- Delete escape hatches when one sharper rule covers the intended behavior.
Voice
Write the target skill in plain technical English.
- Use active voice and concrete commands.
- Prefer examples over abstractions.
- Cut filler, throat-clearing, and meta commentary.
- Avoid flourishes, slogans, rhetorical reversals, and decorative rhythm.
- Do not write in threes for cadence.
- Do not use em dashes.
- Do not say "it's worth noting", "moreover", "in conclusion", or "let's".
- Use UTF-8, LF, final newlines, and Markdown lines under 120 characters.
- If a sentence can be cut, cut it.
Target Architecture
For workflow skills, describe a small hierarchy for multi-step agent work.
- router chooses the workflow shape or next judge; it does not synthesize findings
- judge owns scope, delegation, synthesis, decisions, status, and artifacts
- worker owns one bounded task or lens; it does not spawn workers, widen scope, or write the final artifact
- refs provide doctrine, examples, templates, and local context
Default to direct execution. Add workers only when they buy clarity, parallelism, fresh context, or a narrower prompt.
Collapse router, judge, and worker into one skill when the task is small.
The root skill explains routing, delegation, aggregation, and artifacts. Worker briefs define owned scope, required
reading, out-of-scope work, workflow, and output shape.
Use gates for binary checks: required artifacts, evidence, status transitions, blockers, and quality bars. Use guidance
for judgment: risks, context, tools, depth, and relevance. Do not dress guidance up as gates.
Workflow
- LOAD_LOCAL_CONTEXT
- DECIDE_SHAPE
- WRITE_SKILL
- CHECK
LOAD_LOCAL_CONTEXT
- Read relevant existing
../ts-*/SKILL.md examples.
- For edits, read the whole target skill and its linked local references.
- Identify whether the skill is a workflow, judge, worker brief, or reference.
- Distinguish authoring instructions from the target skill's future runtime contract. The target skill should tell
future agents what to do when invoked.
- Treat existing repo shape as evidence. Treat generic skill-authoring patterns as fallback only.
DECIDE_SHAPE
- Prefer one root
SKILL.md.
- Add co-located references only when they remove bulk or duplication.
- Do not add a layer unless it removes ambiguity.
WRITE_SKILL
- State the role before the workflow.
- Artifacts must stand alone without the chat.
- Rewrite unclear text directly. Do not patch around it with exceptions.
CHECK
- The skill can be read without prior conversation.
- The name starts with
ts-.
- Action and workflow skill descriptions say whether they are explicit-only.
- Rules are direct commands, not chains of exceptions.
- Local paths and semantic skill names are used correctly.
- The edit touched only source skills under
tstelzer/skills, not installed artifacts.
1---2name: ts-create-skill3description: Create or update skills.4---56# Create Skill78## Role910Create Skill is a local skill-authoring judge.1112Use it to create or update source skills in the `tstelzer/skills` repository.1314The target skill is the skill being created or updated. Write it as the runtime contract for future agents invoked by15that skill, not as notes about this authoring process.1617Edit only source files in this repository, usually under `skills/ts-*`. Never edit installed skill artifacts, caches, or18synced copies such as `~/.agents/skills` or `~/.codex/skills`.1920Local skill shape wins over generic skill-creation habits. Do not import ceremony from internal skill docs unless this21repo already uses it.2223## Target Skill2425- Prefix new skills with `ts-` to avoid naming conflicts.26- Keep skills brief. Put reusable doctrine in reference skills. Put worker briefs beside the root skill.27- Keep front matter to `name` and `description`.28- Action and workflow skills are normally invoked by name. For that usual case, say `Only explicitly triggered by user.`29 in the description.30- If an action or workflow skill is intentionally implicit, say the implicit trigger plainly in the description.31- For reference skills, omit implicit-trigger wording. Topic-based invocation is already implicit.32- When the target skill links to its own support docs, use paths relative to that skill folder, such as `./shared.md` or33 `./by-type/security.md`.34- "Local docs" means docs nested inside the same skill folder. It does not mean every doc in this repository.35- Use `skill: <name>` only for another skill, such as `skill: ts-principles`.36- Unless for routers, its often useful to reference `ts-principles` as required reading, if the skills is related to37 software engineering.38- Prefer rewriting an unclear rule in simpler words over adding exceptions, fallbacks, or chains of `unless`.39- Delete escape hatches when one sharper rule covers the intended behavior.4041## Voice4243Write the target skill in plain technical English.4445- Use active voice and concrete commands.46- Prefer examples over abstractions.47- Cut filler, throat-clearing, and meta commentary.48- Avoid flourishes, slogans, rhetorical reversals, and decorative rhythm.49- Do not write in threes for cadence.50- Do not use em dashes.51- Do not say "it's worth noting", "moreover", "in conclusion", or "let's".52- Use UTF-8, LF, final newlines, and Markdown lines under 120 characters.53- If a sentence can be cut, cut it.5455## Target Architecture5657For workflow skills, describe a small hierarchy for multi-step agent work.5859- router chooses the workflow shape or next judge; it does not synthesize findings60- judge owns scope, delegation, synthesis, decisions, status, and artifacts61- worker owns one bounded task or lens; it does not spawn workers, widen scope, or write the final artifact62- refs provide doctrine, examples, templates, and local context6364Default to direct execution. Add workers only when they buy clarity, parallelism, fresh context, or a narrower prompt.65Collapse router, judge, and worker into one skill when the task is small.6667The root skill explains routing, delegation, aggregation, and artifacts. Worker briefs define owned scope, required68reading, out-of-scope work, workflow, and output shape.6970Use gates for binary checks: required artifacts, evidence, status transitions, blockers, and quality bars. Use guidance71for judgment: risks, context, tools, depth, and relevance. Do not dress guidance up as gates.7273## Workflow74751. LOAD_LOCAL_CONTEXT762. DECIDE_SHAPE773. WRITE_SKILL784. CHECK7980### LOAD_LOCAL_CONTEXT8182- Read relevant existing `../ts-*/SKILL.md` examples.83- For edits, read the whole target skill and its linked local references.84- Identify whether the skill is a workflow, judge, worker brief, or reference.85- Distinguish authoring instructions from the target skill's future runtime contract. The target skill should tell86 future agents what to do when invoked.87- Treat existing repo shape as evidence. Treat generic skill-authoring patterns as fallback only.8889### DECIDE_SHAPE9091- Prefer one root `SKILL.md`.92- Add co-located references only when they remove bulk or duplication.93- Do not add a layer unless it removes ambiguity.9495### WRITE_SKILL9697- State the role before the workflow.98- Artifacts must stand alone without the chat.99- Rewrite unclear text directly. Do not patch around it with exceptions.100101### CHECK102103- The skill can be read without prior conversation.104- The name starts with `ts-`.105- Action and workflow skill descriptions say whether they are explicit-only.106- Rules are direct commands, not chains of exceptions.107- Local paths and semantic skill names are used correctly.108- The edit touched only source skills under `tstelzer/skills`, not installed artifacts.