Skill Writer
SentryOfficialPublished by Sentry
- Skill
- Meta (authoring, orchestration, planning, memory)
- Agent tooling
- Apache-2.0
- Low risk
- Has scripts
AutoGineer summary
Written by AutoGineer from the skill’s own files, not by the author
Skill Writer provides a standardized, multi-step framework for the full lifecycle of agent skill development. It acts as a router and guide, ensuring that skills are built with high-value coverage, proper architectural layout, and clear maintenance contracts. By following its defined paths—ranging from synthesis and authoring to iteration and validation—users can produce robust, portable, and well-documented skills that adhere to established design principles and precision standards.
What it does
- Guides the creation and synthesis of new agent skills from raw sources.
- Facilitates iterative improvements based on positive and negative performance examples.
- Enforces a structured reference architecture for skill documentation and runtime files.
- Provides precision passes to ensure changes are necessary, concise, and impactful.
- Supports the registration and validation of skills to ensure structural integrity.
- Offers specialized paths for different execution shapes like routers, subagents, and scripts.
When to use it
- When you need to create a new agent skill from scratch.
- When updating or improving an existing skill's logic or documentation.
- When synthesizing disparate sources into a cohesive, functional skill.
- When you need to refine a skill's behavior based on specific success or failure examples.
- When maintaining skill documentation and ensuring it meets registration standards.
Advantages
- Ensures consistency across all developed agent skills.
- Minimizes wasted runtime tokens by prioritizing high-value input coverage.
- Provides clear, actionable paths for different levels of skill complexity.
- Promotes modularity through a well-defined reference architecture.
- Includes built-in precision checks to prevent unnecessary bloat or rule redundancy.
Usage examples
- “Create a skill for managing cloud infrastructure deployments.”
- The agent initiates the synthesis path, identifies the required execution shape, and guides you through authoring the SKILL.md and SPEC.md files.
- “Improve this skill based on these failed test cases.”
- The agent enters the iteration path, analyzes the provided evidence, and proposes specific updates to the skill's logic or documentation to resolve the failures.
Install
Download the skill as a ZIP:
https://autogineer.com/agent-skills/getsentry/skill-writer/downloadUnzip it into the cross-client skills folder of your project:
mkdir -p .agents/skills && unzip skill-writer.zip -d .agents/skills
Documentation by Sentry
Skill Writer
Use this as the single canonical workflow for skill creation and improvement. Primary success condition: maximize high-value input coverage before authoring while minimizing wasted runtime tokens.
Follow the workflow steps in order. Load only the reference files required for the step you are on.
SKILL.md is the primary router: every bundled reference file should be flat under references/ and listed here with a direct "open when..." reason.
Core Workflow References
| Open when you need to... | Read |
|---|---|
| choose the minimum workflow path for create, update, iterate, or research-first work | references/mode-selection.md |
| choose the simplest adequate execution shape before deciding files | references/execution-shapes.md |
| apply writing constraints for depth, concision, and portability | references/design-principles.md |
decide what belongs in SKILL.md, references/, SPEC.md, or supporting files | references/reference-architecture.md |
| create or update the maintenance contract for a skill | references/spec-template.md |
| find missing high-signal sources, including history and regressions | references/source-discovery.md |
| adapt an upstream prompt, workflow, rubric, benchmark, or docs into a skill | references/source-adaptation.md |
| run the full synthesis pass with coverage checks and source capture | references/synthesis-path.md |
author or update SKILL.md, SPEC.md, and supporting files | references/authoring-path.md |
| improve trigger language and false-positive/false-negative behavior | references/description-optimization.md |
| iterate from positive, negative, or fix examples | references/iteration-path.md |
| store persistent working and holdout examples for future revisions | references/iteration-evidence.md |
| choose a response template, schema, or output contract | references/output-contracts.md |
| add or update evals for a skill's generated outputs or runtime behavior | references/skill-evals.md |
| troubleshoot overloaded layouts, hidden refs, or other structure failures | references/structure-troubleshooting.md |
| register the skill and run final validation checks | references/registration-validation.md |
Artifact Layout References
| Open when you need to... | Read |
|---|---|
keep the whole skill inline in one coherent SKILL.md | references/layout-inline-skill.md |
| split optional deep knowledge into focused routed references | references/layout-reference-backed-skill.md |
| add scripts for deterministic automation or validation | references/layout-script-backed-workflow.md |
| define a skill that is usually invoked with explicit arguments | references/layout-argument-driven-skill.md |
| ship reusable templates, schemas, or other static assets | references/layout-asset-template-skill.md |
Workflow Mechanic References
| Open when you need to... | Read |
|---|---|
| break a task into fixed ordered steps | references/workflow-prompt-chaining.md |
| classify requests and route them to different downstream paths | references/workflow-routing.md |
| split independent work into parallel units or votes | references/workflow-parallel.md |
| discover work units dynamically and coordinate worker outputs | references/workflow-orchestrator-workers.md |
| run validate-fix-repeat checks during authoring or execution | references/workflow-validation-loops.md |
| validate a plan before executing a risky action | references/workflow-plan-validate-execute.md |
Claude Code References
| Open when you need to... | Read |
|---|---|
| use Claude-specific frontmatter or invocation controls | references/claude-frontmatter-invocation.md |
| use Claude argument fields or substitution variables | references/claude-argument-substitutions.md |
build a skill that runs in isolated context: fork | references/claude-subagent-fork.md |
| build a skill that uses Claude hooks for deterministic enforcement | references/claude-hook-backed.md |
| use Claude shell preprocessing for dynamic context injection | references/claude-dynamic-context.md |
Example Profiles
| Open when you need to... | Read |
|---|---|
| see the expected depth for a documentation-heavy skill | references/example-documentation-skill.md |
| see the expected depth for a workflow-process skill | references/example-workflow-process-skill.md |
| see what a good routed skill looks like | references/example-router-skill.md |
| see what a good subagent-fork skill looks like | references/example-subagent-fork-skill.md |
| see what a good hook-backed skill looks like | references/example-hook-backed-skill.md |
Step 1: Resolve target, path, and shape
Resolve the intended operation (
create,update,synthesize,iterate) and inspect workspace prior art before choosing where files belong.Choose the target skill root from observed conventions. If the canonical location is still unclear after inspection, ask one direct question before editing files.
Read
references/mode-selection.mdto choose the minimum required workflow paths.Read
references/execution-shapes.mdto choose the primary execution shape.Default to the simplest adequate shape. If selecting a more complex shape, record why simpler shapes were rejected.
Load only the exact artifact-layout, workflow-mechanic, and provider-specific leaf files required by that shape.
Before adding guidance, identify what existing rule, section, or file should be narrowed, replaced, or removed.
Record portability implications before using provider-specific mechanics.
Step 2: Run synthesis when needed
Read references/synthesis-path.md.
Use this path for new skills, material changes, and research-first planning.
Collect and score relevant sources with provenance.
Read
references/source-discovery.mdwhen source material is thin, stale, or ambiguous.Read
references/source-adaptation.mdwhen adapting an upstream prompt, workflow, rubric, benchmark, or docs.Produce source-backed decisions and coverage/gap status, including the class and execution-shape choice.
Load example profiles only when they add concrete depth for the selected class or shape.
If the skill uses provider-specific mechanics, include current official provider docs and capture usage constraints.
Do not move to authoring until required coverage is understood or gaps are explicit.
Step 3: Run iteration first when improving from outcomes/examples
Read references/iteration-path.md first when selected path includes iteration (for example operation iterate).
Capture and anonymize examples with provenance.
Read
references/iteration-evidence.mdwhen examples should persist beyond the current turn.Review skill behavior against working and holdout slices.
Propose improvements from positive/negative/fix evidence.
Carry concrete behavior deltas into authoring.
Skip this step when selected path does not include iteration.
Step 4: Author or update skill artifacts
Read references/authoring-path.md.
Write or update
SKILL.mdin imperative voice with trigger-rich description.Keep
SKILL.mdas the runtime router, not an encyclopedia.Run the pre-edit precision check in
references/authoring-path.mdbefore creating new sections or files.Read
references/reference-architecture.mdbefore adding bulk instructions or new reference files.Create or update
SPEC.mdusingreferences/spec-template.mdwhen creating a new skill or materially changing its contract.Create focused reference files, scripts, and assets only when each one has a clear "open when..." reason and cannot be handled by tightening an existing file.
If you add a bundled reference file, add a direct routing entry for it in this
SKILL.md.Prefer checklists, tables, templates, and input/output examples over explanatory prose.
Follow only the specific artifact-layout, workflow-mechanic, Claude-specific, and output-contract references selected for this skill.
For advanced execution shapes, add the required routing, delegation, or safety contracts before considering the skill complete.
For authoring/generator skills, include transformed examples in references:
happy-path
secure/robust variant
anti-pattern + corrected version
Read
references/skill-evals.mdwhen the request asks for evals, regression cases, benchmark cases, or model-graded quality checks for the skill being authored.After any skill artifact changes, run the post-change precision pass in
references/authoring-path.mdbefore description optimization or validation.
Step 5: Optimize description quality
Read references/description-optimization.md.
Validate should-trigger and should-not-trigger query sets.
Reduce false positives and false negatives with targeted description edits.
Keep trigger language generic across providers unless the skill is intentionally provider-specific.
Step 6: Register and validate
Read references/registration-validation.md.
Apply repository registration steps for the active layout you verified in the workspace.
Run quick validation for structural checks.
Review validator warnings, precision-pass results, and coverage gaps with judgment before completion.
Output format
Return:
SummaryChanges MadeValidation ResultsOpen Gaps
Files
- ATTRIBUTION.mdAdded by AutoGineer848 B
- EVAL.md6.4 KiB
- LICENSELicence file added by AutoGineer10.5 KiB
- SKILL.md9.8 KiB
- SOURCES.md19.1 KiB
- SPEC.md9.7 KiB
- evals/axis.config.json318 B
- evals/scenarios/iteration-from-bad-output.json2.8 KiB
- evals/scenarios/reference-backed-integration.json1.9 KiB
- evals/scenarios/small-inline-workflow.json1.9 KiB
- references/authoring-path.md4.7 KiB
- references/claude-argument-substitutions.md624 B
- references/claude-dynamic-context.md579 B
- references/claude-frontmatter-invocation.md1.9 KiB
- references/claude-hook-backed.md913 B
- references/claude-subagent-fork.md718 B
- references/description-optimization.md1.0 KiB
- references/design-principles.md3.6 KiB
- references/example-documentation-skill.md2.8 KiB
- references/example-hook-backed-skill.md989 B
- references/example-router-skill.md1.0 KiB
- references/example-subagent-fork-skill.md1.1 KiB
- references/example-workflow-process-skill.md2.4 KiB
- references/execution-shapes.md4.6 KiB
- references/iteration-evidence.md2.6 KiB
- references/iteration-path.md1.5 KiB
- references/layout-argument-driven-skill.md1.0 KiB
- references/layout-asset-template-skill.md809 B
- references/layout-inline-skill.md731 B
- references/layout-reference-backed-skill.md1.2 KiB
- references/layout-script-backed-workflow.md846 B
- references/mode-selection.md3.2 KiB
- references/output-contracts.md1.1 KiB
- references/reference-architecture.md2.5 KiB
- references/registration-validation.md3.5 KiB
- references/skill-evals.md5.6 KiB
- references/source-adaptation.md2.1 KiB
- references/source-discovery.md2.6 KiB
- references/spec-template.md2.2 KiB
- references/structure-troubleshooting.md4.0 KiB
- references/synthesis-path.md3.7 KiB
- references/workflow-orchestrator-workers.md652 B
- references/workflow-parallel.md540 B
- references/workflow-plan-validate-execute.md678 B
- references/workflow-prompt-chaining.md548 B
- references/workflow-routing.md828 B
- references/workflow-validation-loops.md658 B
- scripts/quick_validate.pyScript4.6 KiB
SPEC.md
Skill Writer Specification
Intent
skill-writer is the canonical workflow for creating, updating, synthesizing, and iteratively improving agent skills in this repository.
Its primary purpose is to prevent shallow skill authoring by forcing high-value source coverage, explicit provenance, focused runtime instructions, and validation before completion. It is also a meta-router: before authoring, it must choose the simplest adequate execution shape for the target skill and only then decide which artifacts are needed.
Scope
In scope:
New skill creation from local, external, or mixed sources.
Existing skill updates that affect runtime behavior, structure, trigger precision, references, or validation.
Research-first synthesis for proposed skills.
Iteration from positive examples, negative examples, review feedback, validation results, and observed agent behavior.
Registration and validation for this repository's canonical
skills/<skill-name>/layout and other discovered layouts.Choosing between execution shapes such as inline guidance, reference-backed expert, script-backed workflow, router, subagent-fork, hook-backed, asset-template, or hybrids.
Assessing when provider-specific mechanics are justified and documenting portability constraints.
Out of scope:
Acting as the runtime instructions for the skills it creates.
Storing full source inventories, raw examples, or changelog history directly in
SKILL.md.Replacing repository-level instructions in
AGENTS.md,README.md, orCONTRIBUTING.md.Creating per-skill aliases or symlink skills in this repository.
Guaranteeing compatibility with provider-specific skill extensions unless they are explicitly scoped and documented.
Users And Trigger Context
Primary users: agents and humans authoring or maintaining reusable agent skills.
Common user requests: "create a skill", "write a skill", "update this skill", "improve from examples", "synthesize a skill from docs", "maintain skill docs", or "validate/register this skill".
Should not trigger for: ordinary code review, generic documentation edits, PR writing, commit creation, or implementation work that does not create or modify an agent skill.
Runtime Contract
Required first actions:
Resolve the target skill root and operation.
Inspect local repository conventions before deciding where files belong.
Classify the skill and select the minimum required workflow paths.
Select a primary execution shape and default to the simplest adequate option.
Keep validation lightweight and structural unless project conventions require more.
Required outputs:
Summary.
Changes Made.
Validation Results.
Open Gaps.
Non-negotiable constraints:
SKILL.mdfrontmatter is first line andnamematches the directory.descriptioncontains realistic trigger language.SKILL.mdremains an orchestration/index layer for complex skills.Runtime guidance should prefer dense structures such as tables, checklists, templates, and examples over explanatory prose.
Material skill changes explicitly name the selected execution shape.
Advanced mechanics are justified and include portability notes.
Supporting runtime references are focused, flat under
references/, listed inSKILL.md, and loaded conditionally.Source provenance and decisions live in
SOURCES.md.Durable positive/negative examples live in
references/evidence/.SPEC.mdrecords the maintenance contract for new or materially changed skills.Lightweight structural validation runs before completion.
A post-change precision pass runs after any skill artifact change.
Semantic output quality is evaluated with repo-level evals rather than encoded in the structural validator.
Expected bundled files loaded at runtime:
references/mode-selection.mdreferences/execution-shapes.mdreferences/synthesis-path.mdreferences/iteration-path.mdreferences/authoring-path.mdreferences/reference-architecture.mdreferences/spec-template.mdreferences/description-optimization.mdreferences/registration-validation.mdreferences/source-adaptation.mdreferences/skill-evals.mdflat
references/*.mdfiles listed inSKILL.mdscripts/quick_validate.py
Source And Evidence Model
Authoritative sources:
Local
skill-writerruntime files:SKILL.md,references/**/*.md,scripts/quick_validate.py.Repository policy:
AGENTS.md,README.md,CONTRIBUTING.md, plugin manifests, and registration settings.Agent Skills specification and official skill authoring guidance.
Current official provider docs for any provider-specific mechanics being recommended.
Official orchestration guidance for routing, delegation, and reasoning-model planning patterns.
Useful improvement sources:
positive examples: successful generated skills, review-approved skill changes, and validation passes that demonstrate desired behavior
negative examples: shallow generated skills, overloaded
SKILL.mdfiles, catch-all references, missing provenance, failed validation, false triggers, or review feedbackcommit logs/changelogs: repeated fixes, reversions, migrations, and changes that explain why a rule exists
issue or PR feedback: reviewer comments about missing coverage, confusing trigger language, poor file placement, or insufficient validation
validation results: structural checks, review findings, and observed behavior from real skill use
Data that must not be stored:
secrets, credentials, or tokens
raw customer data
private URLs or identifiers that are not needed for reproduction
large copied source documents or long copyrighted excerpts
unredacted personal data from examples, logs, issues, or commits
Reference Architecture
SKILL.mdcontains the top-level workflow, path-loading table, branch points, universal constraints, and output contract.SKILL.mdacts as a meta-router for the authoring process: class selection, shape selection, and path selection happen before writing.SPEC.mdcontains this maintenance specification.SOURCES.mdcontains source inventory, decisions, coverage matrix, open gaps, and changelog.references/contains focused flat workflow guidance, routed leaf references, templates, rubrics, and class-specific authoring requirements.Runtime references should be direct children of
references/; use filename prefixes for related leaves and list every bundled reference directly fromSKILL.md.references/evidence/contains durable positive/negative examples when future iterations need them.scripts/contains validation automation.assets/is unused unless a future skill-authoring workflow needs static templates or media.
EVAL.md, evals/axis.config.json, and evals/scenarios/ test changes to skill-writer itself. Keep eval files outside runtime SKILL.md routing.
Skill evals use AXIS as the open source harness, with AXIS's built-in codex adapter exercising the Codex codex exec --json path rather than a repo-local runner script.
Validation
Lightweight validation:
Run
uv run skills/skill-writer/scripts/quick_validate.py skills/skill-writer.Inspect changed references for focused scope, direct discoverability, and absence of host-specific paths.
Verify that the selected execution shape is explicit and that advanced mechanics, if any, are justified.
Run the post-change precision pass and summarize what was replaced, narrowed, moved, deleted, or added with reason.
Holdout examples:
Keep durable holdout examples in
references/evidence/holdout-set.mdwhen repeated regressions appear.Do not tune directly against holdout examples until they are intentionally moved to the working set.
Acceptance gates:
Validator passes with no errors.
New or changed workflow rules are represented in the correct artifact.
SOURCES.mdrecords source-backed decisions and any remaining gaps.SPEC.mdis updated when intent, scope, evidence model, validation, or maintenance expectations change.
Known Limitations
The validator checks only structural requirements and a high-threshold advisory size warning; it cannot prove that a generated skill is semantically complete.
The validator intentionally does not classify skills, parse source coverage, enforce SPEC headings, judge trigger quality, or exhaustively validate provider-specific optional frontmatter fields.
Semantic evaluation requires representative cases and reviewer judgment; it is not fully automated by the structural validator.
Prose density, source adaptation quality, advanced-shape contracts, and precision rely on authoring judgment and review.
Source discovery can still miss private operational knowledge if it is not present in local files, accessible issue/PR history, or supplied context.
Provider-specific skill extensions may drift;
skill-writertreats them as compatibility guidance unless a skill is intentionally provider-specific.
Maintenance Notes
Update
SKILL.mdwhen the required runtime workflow, branch conditions, or output contract changes.Update
references/execution-shapes.mdwhen new skill mechanics or orchestration patterns become important.Update the relevant flat file under
references/when a specific routed leaf changes.Update
SPEC.mdwhen intent, scope, user/trigger context, evidence model, validation expectations, limitations, or maintenance rules change.Update
SOURCES.mdwhen source inventory, decisions, coverage, gaps, or changelog entries change.Update
references/evidence/when preserving examples for future iteration or regression tracking.Update
EVAL.md,evals/axis.config.json, andevals/scenarios/when eval case format, rubric dimensions, AXIS settings, or regression cases forskill-writerchange.
Requirements and compatibility
Works with: Claude Code, Claude apps, OpenAI Codex, GitHub Copilot, Cursor, Gemini CLI, Kiro, OpenCode, Goose, Amp, Roo Code, JetBrains Junie, Factory Droid, Devin (ex-Windsurf), Mistral Vibe, OpenHands, Letta
“Works with” means the tool reads the open Agent Skills format; a skill written for one tool may use features others lack.
Needs: Needs Python
Security
What our scanner noticed· Low risk
- Scripts that your agent may run
This skill includes scripts that your agent may run. Read them before you use it.
A static scan is not a guarantee. Skills are third-party content: review a skill before you let an agent use it.
Attribution and licence
- Published by
- Sentry
- Publisher
- Sentry (Official)
- Source
- getsentry/skills · skills/skill-writer · commit e94f222
- Licence
- Apache License 2.0 (redistribution allowed)
- LICENSE (added by AutoGineer from LICENSE)
- ATTRIBUTION.md (written by AutoGineer)
- Synced
AutoGineer is not affiliated with or endorsed by Sentry or Sentry.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download skill-writer.zip