This page looks best with JavaScript enabled

Agent Skills: Getting AI Coding Assistants to Follow Engineering Conventions

 ·  โ˜• 11 min read

1. What Agent Skills Is

Agent Skills is a production-grade engineering skill pack for AI coding assistants. It encodes the way senior engineers work โ€” their working methods, quality gates, and best practices across the full Define โ†’ Plan โ†’ Build โ†’ Verify โ†’ Review โ†’ Ship lifecycle โ€” into Markdown workflows (Skills) that an agent can execute.

Put simply, it does not address whether an agent can write code, but whether an agent will skip the spec, the tests, and the security review โ€” the key steps that make software reliable.

The project is maintained by Addy Osmani and contains 24 Skills, 8 Slash Commands, 4 expert Personas, and 7 reference checklists. It is pure Markdown with no runtime dependencies, and supports mainstream tools including Claude Code, Cursor, Gemini CLI, Antigravity, OpenCode, Windsurf, and Copilot.

2. Why You Need It

AI coding assistants default to the shortest path โ€” if they can edit the code directly they skip the spec, if it “looks right” they skip the tests, if they can ship it first they skip the security review. That is fast during prototyping, but in production code it leaves behind a mountain of technical debt.

Agent Skills takes the approach of structuring a senior engineer’s judgment โ€” when to write a spec, what to test, how to review, when it is acceptable to ship โ€” so that the agent executes step by step instead of skipping on a hunch.

Without Agent Skills, the agent improvises from a generic prompt; with Agent Skills, the agent follows a verifiable workflow where every step has exit criteria and an anti-rationalization table.

3. Comparison: With and Without Agent Skills

3.1 The Same Requirement, Two Paths

Suppose you want the agent to implement a new API endpoint with authentication.

Without Agent Skills:

Verbal requirement description โ†’ agent writes code directly โ†’ maybe adds a few tests
     โ†’ "looks like it runs" so it commits โ†’ misses boundary validation, error semantics, security review
     โ†’ only after merging do you discover an auth bypass or missing regression tests

With Agent Skills:

/spec โ†’ write the PRD (goals, commands, structure, test strategy, boundaries)
     โ†’ /plan โ†’ break down into verifiable small tasks
     โ†’ /build โ†’ incremental TDD implementation (RED โ†’ GREEN โ†’ regression โ†’ commit)
     โ†’ /test โ†’ prove the behavior is correct
     โ†’ /review โ†’ five-axis code review + security-and-hardening
     โ†’ /ship โ†’ parallel fan-out across personas, merged into a go/no-go
DimensionWithout Agent SkillsWith Agent Skills
Requirement clarificationImprovised understanding from conversationinterview-me / spec-driven-development structured
Task breakdownLarge changes, hard to roll backplanning-and-task-breakdown, ~100-line atomic tasks
ImplementationWrite the implementation, then add teststest-driven-development, RED-GREEN-REFACTOR
Code review“Review this for me”code-review-and-quality five axes + severity labels
SecurityOften skippedsecurity-and-hardening OWASP + three-layer boundaries
LaunchDeploy directlyshipping-and-launch checklist + feature flag
Skipped stepsThe agent often rationalizes on its ownEvery Skill has a Common Rationalizations counter-table
Verification standard“Looks right”Verification checklist, requiring evidence such as test output

3.2 Measured Comparison (Controlled Experiment)

Om Mishra ran a controlled comparison on Claude Code: same model (Sonnet 4.6), same repository, same prompt, swapping only the skill framework (Agent Skills vs Superpowers):

MetricAgent SkillsSuperpowers
Time to first code~8 minutes~12 minutes
Verification rounds7 (including the full test suite)5
Token efficiencyRoughly evenRoughly even

On this task Agent Skills showed broader verification depth โ€” the full test suite surfaced a compatibility issue the feature tests did not cover. Superpowers, by contrast, invested more in upfront architectural reasoning, which suits exploratory work with no established pattern.

This is a single experiment, not a benchmark, but it illustrates the core trade-off: disciplined verification with broad coverage vs. autonomous execution weighted toward upfront reasoning.

3.3 When You Can Skip It

ScenarioExplanation
Single-line typo / obvious small fixspec-driven-development explicitly excludes these
An established team convention already existsIf the project already has a complete CLAUDE.md / AGENTS.md, you can borrow just some Skills
Pure exploration / spikeThe full lifecycle is too heavy; Superpowers or a bare agent fits better
Loading multiple skill frameworks at onceTwo meta-skills will compete for routing and command names, making behavior unpredictable
One-off scriptsNo need for the full TDD, review, and ship flow

4. How It Works

Agent Skills encodes engineering practices as loadable Skill files, activated through two mechanisms: Slash Commands and automatic triggering.

DEFINE          PLAN           BUILD          VERIFY         REVIEW          SHIP
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”      โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”      โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”      โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”      โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”      โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚ Idea โ”‚ โ”€โ”€โ”€โ–ถ โ”‚ Spec โ”‚ โ”€โ”€โ”€โ–ถ โ”‚ Code โ”‚ โ”€โ”€โ”€โ–ถ โ”‚ Test โ”‚ โ”€โ”€โ”€โ–ถ โ”‚  QA  โ”‚ โ”€โ”€โ”€โ–ถ โ”‚  Go  โ”‚
โ”‚Refineโ”‚      โ”‚  PRD โ”‚      โ”‚ Impl โ”‚      โ”‚Debug โ”‚      โ”‚ Gate โ”‚      โ”‚ Live โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”˜      โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”˜      โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”˜      โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”˜      โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”˜      โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
 /spec          /plan          /build        /test         /review       /ship

4.1 Skill Anatomy

Each Skill is a SKILL.md with a fixed structure:

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚  Frontmatter (name + description, including trigger conditions) โ”‚
โ”‚  Overview         โ†’ what it does, and why                 โ”‚
โ”‚  When to Use      โ†’ when to use it, when not to           โ”‚
โ”‚  Core Process     โ†’ step-by-step workflow                 โ”‚
โ”‚  Common Rationalizations โ†’ excuses + rebuttals            โ”‚
โ”‚  Red Flags        โ†’ violation signals                     โ”‚
โ”‚  Verification     โ†’ exit criteria + evidence requirements โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Key design:

  • Process, not prose: a Skill is a set of steps for the agent to execute, not reference documentation
  • Anti-rationalization: excuses like “I’ll add the tests later” all have a rebuttal in the table
  • Verification is non-negotiable: “looks right” is never enough; you need evidence such as test output and build results
  • Progressive disclosure: at startup only the name + description enter the context; the full Skill loads on demand, and Supporting files are read on demand as well

4.2 The 24 Skills at a Glance

Grouped by lifecycle:

StageSkillPurpose
Metausing-agent-skillsRouting: map a task to the right Skill
Defineinterview-meQuestion by question, digging out the real requirement
Defineidea-refineDiverge/converge, turning a vague idea into something concrete
Definespec-driven-developmentWrite the PRD; settle the spec before the code
Planplanning-and-task-breakdownBreak down tasks, acceptance criteria, dependency ordering
Buildincremental-implementationVertical slices, implement โ†’ test โ†’ verify โ†’ commit
Buildtest-driven-developmentRED-GREEN-REFACTOR, test pyramid 80/15/5
Buildcontext-engineeringRules files, context packaging, MCP integration
Buildsource-driven-developmentFramework decisions must cite official documentation
Builddoubt-driven-developmentAdversarial review of high-risk decisions
Buildfrontend-ui-engineeringComponent architecture, WCAG 2.1 AA
Buildapi-and-interface-designContract first, Hyrum’s Law
Verifybrowser-testing-with-devtoolsRuntime verification with Chrome DevTools MCP
Verifydebugging-and-error-recoveryReproduce โ†’ locate โ†’ narrow โ†’ fix โ†’ guard
Reviewcode-review-and-qualityFive-axis review, ~100-line change granularity
Reviewcode-simplificationChesterton’s Fence, Rule of 500
Reviewsecurity-and-hardeningOWASP Top 10, three-layer boundaries
Reviewperformance-optimizationMeasure before optimizing, Core Web Vitals
Shipgit-workflow-and-versioningTrunk-based, atomic commits
Shipci-cd-and-automationShift Left, feature flags
Shipdeprecation-and-migrationCode as liability, migration patterns
Shipdocumentation-and-adrsADRs, recording why rather than what
Shipobservability-and-instrumentationStructured logs, RED metrics, OpenTelemetry
Shipshipping-and-launchLaunch checklist, staged rollout

Skills also trigger automatically by task type โ€” designing an API activates api-and-interface-design, doing UI work activates frontend-ui-engineering.

4.3 Slash Commands

Eight commands correspond to lifecycle entry points and automatically load the matching Skill:

What you are doingCommandCore principle
Define what to do/specSpec before code
Plan how to do it/planSmall, verifiable tasks
Implement incrementally/buildOne slice at a time
Fully automatic implementation/build autoTDD + commit per task after the plan is approved
Prove it correct/testTests are proof
Review before merging/reviewImprove code health
Web performance audit/webperfMeasure before optimize
Simplify code/code-simplifyClarity over cleverness
Ship/shipFaster is safer

/build auto does not skip verification โ€” every task still goes through the full TDD loop and gets its own commit; it only removes the manual stepping between tasks.

4.4 Expert Personas

The agents/ directory provides four preconfigured review roles that can be combined with Skills:

AgentPerspectiveTypical use
code-reviewerSenior Staff EngineerFive-axis code review
test-engineerQA SpecialistTest strategy, Prove-It pattern
security-auditorSecurity EngineerOWASP, threat modeling
web-performance-auditorWeb Perf EngineerCore Web Vitals, Quick/Deep modes

/ship fans these personas out in parallel and merges them into a go/no-go decision.

4.5 Embedded Engineering Culture

The Skills bake in Google engineering practices โ€” not as abstract slogans but written into the steps:

  • API design: Hyrum’s Law, One-Version Rule
  • Testing: Beyonce Rule, test pyramid 80/15/5, DAMP over DRY
  • Review: change granularity ~100 lines, severity labels (Nit/Optional/FYI)
  • Simplification: Chesterton’s Fence, Rule of 500
  • Git: Trunk-based development, commit as save point
  • CI/CD: Shift Left, feature flags
  • Deprecation: Code as liability, compulsory vs advisory deprecation

5. Getting Started

Marketplace installation:

/plugin marketplace add addyosmani/agent-skills
/plugin install agent-skills@addy-agent-skills

If you get an SSH error, use HTTPS instead:

1
2
/plugin marketplace add https://github.com/addyosmani/agent-skills.git
/plugin install agent-skills@addy-agent-skills

Local development:

1
2
git clone https://github.com/addyosmani/agent-skills.git
claude --plugin-dir /path/to/agent-skills

After installation, commands such as /spec, /build, and /review are immediately available.

5.2 Cursor

Option A: Rules directory (recommended)

1
2
3
4
mkdir -p .cursor/rules
cp /path/to/agent-skills/skills/test-driven-development/SKILL.md .cursor/rules/test-driven-development.md
cp /path/to/agent-skills/skills/code-review-and-quality/SKILL.md .cursor/rules/code-review-and-quality.md
cp /path/to/agent-skills/skills/incremental-implementation/SKILL.md .cursor/rules/incremental-implementation.md

Option B: Load on demand

Add frontend-ui-engineering.md when doing UI work and security-and-hardening.md when doing a security review, then remove them when you are done to keep the context under control.

Reference them explicitly when you use them: “Follow the test-driven-development rules for this change.”

5.3 Gemini CLI

1
gemini skills install https://github.com/addyosmani/agent-skills.git --path skills

5.4 Antigravity CLI

1
agy plugin install https://github.com/addyosmani/agent-skills.git

5.5 Other Agents

Skills are pure Markdown: just copy SKILL.md into CLAUDE.md, AGENTS.md, .github/copilot-instructions.md, or the conversation’s system prompt. See each tool’s setup documentation for details.

If you would rather not load all 24 Skills at once, start with these three:

  1. spec-driven-development โ€” define what to do
  2. test-driven-development โ€” prove it was done right
  3. code-review-and-quality โ€” the quality gate before merging

Then load the using-agent-skills meta-skill so the agent routes to the remaining Skills automatically.

6. Command and Skill Mapping

CommandSkill activated
/specspec-driven-development
/planplanning-and-task-breakdown
/buildincremental-implementation + test-driven-development
/build autoThe above + auto-generated tasks/plan.md
/testtest-driven-development
/reviewcode-review-and-quality
/code-simplifycode-simplification
/webperfweb-performance-auditor (agent persona)
/shipshipping-and-launch + parallel persona review

/spec and /plan produce artifacts such as SPEC.md and tasks/plan.md, which serve as a human-and-agent-shared source of truth during development; before merging you can delete them or add them to .gitignore.

7. Usage Advice

  1. Run /spec first for non-trivial work โ€” anything over 30 minutes, spanning multiple files, or involving architectural decisions should have a spec
  2. Do not load all Skills at once โ€” keep 2โ€“3 resident plus on-demand loading to control the context
  3. Reference Skills explicitly โ€” tell the agent “follow the test-driven-development flow”; do not assume it will read the rules
  4. Trust the Verification โ€” skipping the checklist is the same as not using the Skill
  5. Use a Persona for review โ€” give the agent the contents of agents/code-reviewer.md to catch different problems from another perspective
  6. Pick only one primary framework โ€” you can borrow from Matt Pocock’s grill-me or Superpowers’ worktree at the same time, but do not run two meta-skills as routers at once
  7. /build auto has gates โ€” it pauses for your confirmation when the spec does not exist, the working tree is dirty, or a step is high risk

A few design principles worth knowing:

  • Process over knowledge: a Skill is a workflow, not an encyclopedia
  • Evidence over assumption: every Verification step requires provable output
  • Human checkpoint: every phase has a human review point; it is not a fully black-box autonomous system
  • Multi-tool: the same set of Skills is reused across Claude Code, Cursor, Gemini, and more

8. Comparison with Other Skill Frameworks

Agent SkillsSuperpowersMatt Pocock’s skills
OrganizationComplete SDLC stagesAutonomous execution loopA personal day-to-day toolbox
Lifecycle coverageBroad (including security, performance, CI/CD, launch)Deep (the core build loop)Planning + TDD + toolchain
Entry point/spec /plan /build โ€ฆ/brainstorming /execute-plan/tdd /grill-me
Signature mechanismAnti-rationalization tables + parallel personasSubagent + worktree isolationRequirement grilling + strict TDD
Best forEnd-to-end feature delivery with checkpointsLong autonomous, exploratory workDay-to-day TypeScript with Claude Code

How to choose:

  • Want full-lifecycle discipline + multi-tool coverage โ†’ Agent Skills
  • Want long autonomous runs weighted toward upfront reasoning โ†’ Superpowers
  • Want low-ceremony, sharp day-to-day tools โ†’ Matt Pocock’s skills

You can cherry-pick individual Skills, but do not run two routers at the same time.

9. Reference Checklists

The references/ directory provides supplementary material that Skills reference on demand:

FileCovers
definition-of-done.mdProject-level definition of done
testing-patterns.mdTest structure, mocks, React/API/E2E
security-checklist.mdPre-commit security, OWASP
performance-checklist.mdCore Web Vitals, measurement commands
accessibility-checklist.mdKeyboard, screen readers, ARIA
observability-checklist.mdStructured logs, RED metrics, alerting
orchestration-patterns.mdMulti-persona orchestration rules

10. Summary

Agent Skills turns an AI coding assistant from “an intern who can write code” into “a production-grade partner that delivers by a senior engineer’s process.”

  • Comparison: without Skills, the agent often skips spec/tests/security; with Skills, every phase has steps, an anti-rationalization table, and Verification evidence requirements
  • Mechanism: 24 Markdown Skills + 8 Slash Commands + 4 Personas, routed by SDLC stage
  • Usage: on Claude Code use /plugin install; on Cursor copy into .cursor/rules/; start non-trivial work from /spec

If you already use Cursor or Claude Code, start with the three Skills spec-driven-development + test-driven-development + code-review-and-quality, and run your next non-trivial requirement through /spec โ†’ /plan โ†’ /build โ€” you will usually feel the difference.


ๅพฎไฟกๅ…ฌไผ—ๅท
WRITTEN BY
ๅพฎไฟกๅ…ฌไผ—ๅท