Addy Osmani (Google Chrome engineering lead) packaged senior engineering practices into 20 core skills that AI coding agents can follow. The insight: AI agents naturally take shortcuts β skipping specs, tests, and security reviews. These skills enforce the discipline that experienced engineers bring to every project. Its rapid GitHub adoption has made it a reference implementation for encoding engineering culture into agent workflows.
| *Source: GitHub - addyosmani/agent-skills | Weibo discussion by 马εAIεεδΈζη»΄* |
The 7 Slash Commands
Each command maps to a phase of the software development lifecycle:
| Command | Phase | What It Does |
|---|---|---|
/spec |
Define | Spec before code β clarify requirements first |
/plan |
Plan | Break work into small, atomic tasks |
/build |
Build | Implement one slice at a time |
/test |
Verify | Tests are proof, not decoration |
/review |
Review | Improve code health before merge |
/code-simplify |
Simplify | Clarity over cleverness |
/ship |
Ship | Faster is safer β deploy to production |
Six Development Phases, 20 Skills
Phase 1: DEFINE
βββ idea-refine
βββ spec-driven-development
Phase 2: PLAN
βββ planning-and-task-breakdown
Phase 3: BUILD
βββ incremental-implementation
βββ test-driven-development
βββ frontend-ui-engineering
βββ api-and-interface-design
βββ context-engineering
βββ source-driven-development
Phase 4: VERIFY
βββ browser-testing-with-devtools
βββ debugging-and-error-recovery
Phase 5: REVIEW
βββ code-review-and-quality
βββ code-simplification
βββ security-and-hardening
βββ performance-optimization
Phase 6: SHIP
βββ git-workflow-and-versioning
βββ ci-cd-and-automation
βββ deprecation-and-migration
βββ documentation-and-adrs
βββ shipping-and-launch
Plus 3 specialist agent personas (code-reviewer, test-engineer, security-auditor) and 4 reference checklists.
What Makes These Skills Special
Each SKILL.md follows a standardized structure with an βanti-rationalization tableβ β anticipating shortcuts agents try to take:
| Agent Excuse | Skill Response |
|---|---|
| βIβll add tests laterβ | Tests are proof. No proof = not done. |
| βThis is just a small changeβ | Small changes cause big outages. |
| βSeems rightβ | Seems is not evidence. Run it. |
| βI donβt need a spec for thisβ | You donβt know what youβre building without one. |
Google Engineering Culture Encoded
The skills draw heavily from Software Engineering at Google:
- Hyrumβs Law in API design β backward compatibility matters
- The Beyonce Rule in testing β βIf you liked it, you shouldβve put a test on itβ
- Chestertonβs Fence in code simplification β donβt remove what you donβt understand
- Change sizing norms (~100 lines) in code review
- Trunk-based development in git workflow
- Shift Left principle in CI/CD β catch problems early
Installation
# Claude Code
/plugin marketplace add addyosmani/agent-skills
/plugin install agent-skills@addy-agent-skills
# Gemini CLI
gemini skills install https://github.com/addyosmani/agent-skills.git --path skills
# Cursor / Windsurf / Copilot
# Follow the repo's tool-specific setup docs for rules, agent definitions, or instructions files.
# Manual (any agent)
git clone https://github.com/addyosmani/agent-skills.git
Skills are plain Markdown β any agent accepting system prompts can use them.
How LearnAI Team Could Use This
- Teaching software engineering β the 6-phase lifecycle is a pedagogical framework itself
- Improving AI-assisted student projects β install the skills to enforce best practices
- Studying skill design patterns β the anti-rationalization table is a novel concept worth teaching
- Building custom skills β use this repo as a template for encoding domain expertise
Real-World Use Cases
- Engineering teams β enforce consistent practices across all AI-assisted development
- Open source projects β standardize contribution quality regardless of agent used
- Junior developers β learn senior-level practices by reading the skill files
- Code review β the reviewer agent persona provides structured, opinionated feedback <!β REVIEW-TODO: [source_links] Weibo source link is generic (https://weibo.com), not a specific post URL β find actual post or remove β>