Install
$ agentstack add skill-int2t05-engineering-skills-skill-authoring ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Skill Authoring
Create, edit, and evaluate skills in this collection. Every skill conforms to the anatomy in references/skill-anatomy.md and passes scripts/validate-skills.sh. This skill is the authoring half — using-skills routes work to existing skills; this one makes new ones or fixes existing ones.
When to use
- Creating a new skill (new SDLC phase gap, repeated task worth a skill)
- Editing an existing skill's frontmatter, steps, or references
- Tuning a skill's description triggers (false positives, false negatives, collision with another skill)
- Evaluating a skill — does it fire when it should, stay distinct from neighbors, change agent behavior?
- Triggers on "write a skill", "edit skill", "skill eval", "tune triggers", "写技能", "改技能", "技能评估"
Not for: routing a task to an existing skill (use using-skills); designing an MCP server (out of scope, see official mcp-builder docs); writing project docs like PRD/README (use spec/oss-polish).
Steps
1. Check the anatomy before writing
Load [${CLAUDEPLUGINROOT}/references/skill-anatomy.md](${CLAUDEPLUGINROOT}/references/skill-anatomy.md) — the folder layout, frontmatter rules (name + description + optional disable-model-invocation only), the four body sections (When to use / Steps / Verify / References), the **Output:** convention, progressive disclosure (15-150 line SKILL.md, depth in references/), and the description hybrid format (Use when… + Triggers on… + exclusions, ≤1024 chars, no cross-skill phrase collisions).
2. Place the skill and wire the backbone
- Phase — pick the phase by output type + consumer, not by method. A skill producing a design artifact for design consumers goes in 03-design even if it reuses research methods (see
design-research). Method does not set phase; output and consumers do. - Backbone — every skill links
engineering-principles.md. PM-side skills also linkproduct-principles.md; UIUX skills also linkdesign-principles.md. The validator enforces these (seescripts/validate-skills.shpm_skills/uiux_skillslists — add the new skill there if it's PM or UIUX). - Path —
skills///SKILL.md(kebab-case name, uppercase SKILL.md).
3. Write the description for routing, not features
- Name actions, not tools. "Use when retrieving real design references" not "Use WebFetch on galleries." The model routes on user intent, not on the tool the skill happens to run.
- Hybrid format:
Use when [intent]. [One sentence: what]. Triggers on "phrase1", "phrase2", "中文1" — also when user says "[natural cue]". Not for [exclusion] → use [other-skill]. - No collision. Quoted trigger phrases must be unique across all skills — the validator's collision check flags any shared phrase. Before finalizing, grep the phrase across
skills/. - Keep "Triggers on" literal — the validator requires it;
gen-agents-yaml.pycuts the description at that clause for the Codex adapter.
4. Write the four sections
- When to use — 2-4 conditions + a
**Not for:**boundary naming the adjacent skills (prevents routing collisions). This is load-bearing: every boundary pair in this pack was deliberate. - Steps — numbered, each independently verifiable. Push encyclopedic data into
references/.mdloaded on demand (progressive disclosure). Reference files over 100 lines get a## ContentsToC (see the anatomy's progressive-disclosure rule). - Verify — concrete evidence (file exists, no placeholders, count met), not "looks right".
- References —
engineering-principles.md(+ domain backbone) + skill-specificreferences/. Everyreferences/link must resolve (dead-link check). - Output — declare
**Output:**only if the skill produces a doc/artifact. Behavior-only skills (implement, tdd, debugging) omit it. Every declared path must appear indocs/skill-outputs.md(validator syncs).
5. Generate the adapter + run the validator
python scripts/gen-agents-yaml.py # generate agents/openai.yaml for every skill
bash scripts/validate-skills.sh # schema + manifest-sync + collision + dead-links + domain-principles + Output-sync
Fix every FAIL before considering the skill done. The validator is the gate — a skill that doesn't pass doesn't ship.
6. Sync the discovery surface
A new or renamed skill touches: .claude-plugin/plugin.json skills[] (the source), docs/skill-outputs.md (if the skill produces a doc), AGENTS.md routing table, skills/meta/using-skills/SKILL.md phase list, skills/meta/using-skills/references/phase-tree.md, and the README.md + README.zh-CN.md catalogs. The catalog ordering and the research (general/market/tech-selection modes) suffix are human-curated, so these are maintained by hand — but the validator now enforces them: the presence check fails if a manifest skill is missing from any of the five routing surfaces, and the dynamic Output scan fails if a declared **Output: path is missing from docs/skill-outputs.md (no hardcoded dict to update). A rename is a breaking change (the old invocation name disappears) — bump the version and call it out in the commit.
7. Evaluate — does it actually work?
Three tiers (adapted from established skill-eval practice):
- Structural (free, CI) — validator green. Already done in Step 5.
- Trigger & routing (free, CI) — does the description fire on the right prompts and not collide? The collision check is the automated subset. For deeper routing eval, write ~3 positive + ~2 negative trigger prompts per skill and check the model routes correctly (defer to实战, like the Tier 2 framework).
- Behavioral (tokens, on demand) — does an agent following the skill satisfy its
## Verify?bash scripts/run-eval.sh --skillruns the skill against real tasks with and without the skill loaded (RED-GREEN baseline) and grades the output. Every skill should have ≥3 cases (2 positive + 1 negative control) inevals/cases/.jsonbefore it's trusted. This is the real test; do it before trusting the skill.
If a skill passes structural but fails behavioral, the SKILL.md is wrong even if the validator is green. Fix the skill, not the test.
Verify
- [ ]
scripts/validate-skills.shgreen (count, manifest-sync, collision, dead-links, domain-principles, Output-sync) - [ ]
gen-agents-yaml.pygenerated the adapter with no drift - [ ] Description follows the hybrid format; quoted phrases unique across the pack (grep-confirmed)
- [ ] Four sections present;
**Not for:**names adjacent skills;**Output:**declared iff doc-producing - [ ] All discovery surface files synced (plugin.json, validator lists, skill-outputs, AGENTS, phase-tree, using-skills, README×2)
- [ ] At least one behavioral check run against a real task (not just structural green); ≥3 eval cases in
evals/cases/.jsonfor skills that gate real work
References
- [${CLAUDEPLUGINROOT}/references/engineering-principles.md](${CLAUDEPLUGINROOT}/references/engineering-principles.md) — discipline for every skill (surface assumptions, verify don't assume, surgical scope).
- [${CLAUDEPLUGINROOT}/references/skill-anatomy.md](${CLAUDEPLUGINROOT}/references/skill-anatomy.md) — the anatomy this skill enforces: folder layout, frontmatter, four sections, Output convention, progressive disclosure, description hybrid format, superset-of-official-spec note.
- [references/eval-tiers.md](references/eval-tiers.md) — the three eval tiers (structural / trigger-routing / behavioral) in detail, with the prompt-template for routing eval.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: int2t05
- Source: int2t05/engineering-skills
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.