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://mp-staging.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
references/mode-selection.md
Mode Selection
Choose the minimal set of paths needed for the request. Regardless of path, prioritize input quality and coverage depth before finalizing outputs.
Path mapping
| Request shape | Required paths |
|---|---|
| New skill from scratch | synthesis + authoring + description optimization + registration/validation |
| Update existing skill wording/structure | authoring + description optimization + registration/validation |
| Improve skill from outcomes/examples | iteration + authoring + description optimization + registration/validation |
| Research-first skill planning | synthesis only, then authoring if requested |
Skill class selection
Classify the target skill before synthesis. This determines the coverage dimensions that must be represented in sources, references, and validation.
| Skill class | Typical request shape | Required dimensions |
|---|---|---|
workflow-process | repeatable operations, CI/task orchestration | preconditions, ordered flow, failure handling, safety boundaries |
integration-documentation | library/framework integration, SDK usage, API correctness | API surface, config/runtime options, common use cases, known issues/workarounds, version/migration variance |
skill-authoring | creating/updating/reviewing other skills | source provenance, precision pass, transformed examples, registration/validation |
generic | does not match above | explicit dimensions chosen and justified in synthesis |
When the class is ambiguous, ask one direct clarification question before synthesis.
Execution shape selection
Choose the skill's primary execution shape separately from the skill class. Class answers "what domain/problem is this skill for?" Shape answers "how should this skill run?"
Use references/execution-shapes.md for the full decision table and the next leaf reference to load.
Record:
primary execution shape
simpler-shape rejection when the chosen shape is advanced
exact leaf references opened because of that choice
Required outputs by path
synthesis: source inventory, decisions, coverage matrix, gaps.synthesis: selected class, selected execution shape, and selected example profile path(s), including profile-requirement coverage.synthesis: simplicity rationale showing why the chosen shape is necessary and which simpler shapes were rejected.synthesis: portability note when provider-specific mechanics are used.synthesis: explicit retrieval stopping rationale showing why further collection is currently low-yield.authoring: updatedSKILL.mdand required supporting files.description optimization: should/should-not trigger sets and final description.iteration: example intake summary and behavior deltas.registration/validation: registration edits and validator results.
Completion Checks
Do not claim completion when any required path output is missing.
For authoring/generator skills, report missing transformed examples, selected-profile requirements, required class dimensions, or execution-shape choices as open gaps instead of hiding them. When advanced mechanics are used, include justification and portability notes or report the missing decision as an open gap.
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.
Download ZIP
The ZIP holds the skill’s files, its licence files and an ATTRIBUTION.md. Download skill-writer.zip