

Also from Kynth Studios


Also from Kynth Studios


Also from Kynth Studios
1# AGENTS.md23This file provides guidance to AI coding agents (Claude Code, Cursor, Copilot, Antigravity, etc.) when working with code in this repository.45> **Scope:** This file configures agents working on the [`addyosmani/agent-skills`](https://github.com/addyosmani/agent-skills) repository itself. It is not meant to be copied into other projects or into a global agent configuration; the reusable assets are the skills in `skills/`, not this file.67## Repository Overview89A collection of skills for Claude.ai and Claude Code for senior software engineers. Skills are packaged instructions and scripts that extend Claude and your coding agents capabilities.1011## OpenCode Integration1213OpenCode uses a **skill-driven execution model** powered by the `skill` tool and this repository's `/skills` directory.1415### Core Rules1617- If a task matches a skill, you MUST invoke it18- Skills are located in `skills/<skill-name>/SKILL.md`19- Never implement directly if a skill applies20- Always follow the skill instructions exactly (do not partially apply them)2122### Intent → Skill Mapping2324The agent should automatically map user intent to skills:2526- Feature / new functionality → `spec-driven-development`, then `incremental-implementation`, `test-driven-development`27- Planning / breakdown → `planning-and-task-breakdown`28- Bug / failure / unexpected behavior → `debugging-and-error-recovery`29- Code review → `code-review-and-quality`30- Refactoring / simplification → `code-simplification`31- API or interface design → `api-and-interface-design`32- UI work → `frontend-ui-engineering`3334### Lifecycle Mapping (Implicit Commands)3536OpenCode does not support slash commands like `/spec` or `/plan`.3738Instead, the agent must internally follow this lifecycle:3940- DEFINE → `spec-driven-development`41- PLAN → `planning-and-task-breakdown`42- BUILD → `incremental-implementation` + `test-driven-development`43- VERIFY → `debugging-and-error-recovery`44- REVIEW → `code-review-and-quality`45- SHIP → `shipping-and-launch`4647### Execution Model4849For every request:50511. Determine if any skill applies (even 1% chance)522. Invoke the appropriate skill using the `skill` tool533. Follow the skill workflow strictly544. Only proceed to implementation after required steps (spec, plan, etc.) are complete5556### Anti-Rationalization5758The following thoughts are incorrect and must be ignored:5960- "This is too small for a skill"61- "I can just quickly implement this"62- "I’ll gather context first"6364Correct behavior:6566- Always check for and use skills first6768This ensures OpenCode behaves similarly to Claude Code with full workflow enforcement.6970## Orchestration: Personas, Skills, and Commands7172This repo has three composable layers. They have different jobs and should not be confused:7374- **Skills** (`skills/<name>/SKILL.md`) — workflows with steps and exit criteria. The *how*. Mandatory hops when an intent matches.75- **Personas** (`agents/<role>.md`) — roles with a perspective and an output format. The *who*.76- **Slash commands** (`.claude/commands/*.md`) — user-facing entry points. The *when*. The orchestration layer.7778Composition rule: **the user (or a slash command) is the orchestrator. Personas do not invoke other personas.** A persona may invoke skills.7980The only multi-persona orchestration pattern this repo endorses is **parallel fan-out with a merge step** — used by `/ship` to run `code-reviewer`, `security-auditor`, and `test-engineer` concurrently and synthesize their reports. Do not build a "router" persona that decides which other persona to call; that's the job of slash commands and intent mapping.8182See [docs/agents.md](docs/agents.md) for the decision matrix and [references/orchestration-patterns.md](references/orchestration-patterns.md) for the full pattern catalog.8384**Claude Code interop:** the personas in `agents/` work as Claude Code subagents (auto-discovered from this plugin's `agents/` directory) and as Agent Teams teammates (referenced by name when spawning). Two platform constraints align with our rules: subagents cannot spawn other subagents, and teams cannot nest. Plugin agents silently ignore the `hooks`, `mcpServers`, and `permissionMode` frontmatter fields.8586## Creating a New Skill8788> **Before you start:** run the pre-flight checks in [CONTRIBUTING.md](CONTRIBUTING.md#before-proposing-a-new-skill), search the catalog, check open PRs (`gh pr list --state open`), confirm the idea fits [docs/skill-anatomy.md](docs/skill-anatomy.md), and justify the gap in your PR description. Most new-skill ideas overlap an existing skill or an open PR; prefer extending an existing skill over adding a near-duplicate. CONTRIBUTING.md is the single source of truth for this workflow.8990Skills in this repo are markdown-first: each lives at `skills/<kebab-case-name>/SKILL.md` with YAML frontmatter (`name`, `description`) and follows the section anatomy (Overview, When to Use, Process, Common Rationalizations, Red Flags, Verification). Add a `scripts/` directory only when the skill ships runnable helpers; most skills are markdown only, and there are no per-skill zip packages.9192For the full format, naming conventions, frontmatter rules, supporting-file thresholds, and writing principles, see [docs/skill-anatomy.md](docs/skill-anatomy.md), the single source of truth for skill structure. Do not restate that guidance here, link to it.93
One repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| addyosmani/agent-skillsCLAUDE.md · 87k | CLAUDE.md | teststylearchgit+1 | 74/100 | 14 days ago |
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| vllm-project/vllmAGENTS.md · 89k | AGENTS.md | setuptestlint-formatstyle+5 | 100/100 | 14 days ago | |
| code-yeongyu/oh-my-openagentpackages/web/AGENTS.md · 68k | AGENTS.md | setupbuildtestlint-format+6 | 100/100 | 13 days ago | |
| deepseek-ai/deepseek-harnessnative/landlock-run/AGENTS.md · 104k | AGENTS.md | setupteststylearch+3 | 100/100 | today | |
| TryGhost/Ghoste2e/AGENTS.md · 55k | AGENTS.md | setupteststylearch+2 | 100/100 | today | |
| aaif-goose/gooseAGENTS.md · 53k | AGENTS.md | setupbuildtestlint-format+7 | 100/100 | 8 days ago | |
| duckduckgo/content-scope-scriptsspecial-pages/AGENTS.md · 70 | AGENTS.md | buildteststylearch+3 | 100/100 | 14 days ago | |
| n8n-io/n8npackages/@n8n/agents/AGENTS.md · 201k | AGENTS.md | buildteststylearch+3 | 100/100 | 14 days ago | |
| mui/material-uiAGENTS.md · 99k | AGENTS.md | setupbuildtestlint-format+9 | 100/100 | 14 days ago |
A badge carrying the measured quality of the strongest agent config file in this repository, out of 100. It reads from this index every time somebody loads your page, so it changes when the measurement changes and there is nothing to keep up to date. Free, no account, and the value is not something you or we can set by hand.
[](https://rulestack.kynth.studio/configs/addyosmani-agent-skills-agents)Would rather not hotlink us? Every badge is also served in shields.io’s endpoint schema, so shields renders the image and your readers never talk to our domain:
Published by Toolproof, the masthead over this index and eight others. The method behind the number is at toolproof.kynth.studio/methodology, and the whole thing is readable as JSON with no key at /api.