Skills for AI coding agents: code review, test writing, design docs, debugging, security audits, refactoring, and cleaning up AI-written code and text. Each skill is a folder with a SKILL.md in the Agent Skills format — install by copying it into your agent's skills directory.
Distilled from widely-used public collections and the documented practice of large open-source projects, then sharpened over several rounds of use on real repositories.
Compatible with Claude Code, Claude.ai, OpenAI Codex, Gemini CLI, Cursor, GitHub Copilot, opencode, Amp, Windsurf, Antigravity, Kilo Code, Qwen Code, and any other agent that supports the standard. See Install for exact paths.
- Awesome Agent Skills
Clone once, then install every skill into your agents with one command:
git clone https://github.com/khasky/awesome-agent-skills.git
cd awesome-agent-skills
npx skills add ./skills -g -s "*" -a claude-code codex gemini-cli -yThe skills CLI installs all skills globally into Claude Code, Codex, and Gemini CLI. Change -a to pick agents (-a "*" installs to every detected agent); add --copy to force independent copies.
Then confirm what you got. The CLI may link an agent's directory into its own store at ~/.agents/skills/ rather than into your clone, so up to two hops sit between the clone and the agent, and any hop can be a copy:
| Shell | Check |
|---|---|
| POSIX (bash, zsh, fish) | ls -l ~/.agents/skills |
| PowerShell | Get-ChildItem ~\.agents\skills | Select-Object Name, LinkType, Target |
A link names its target — an arrow in ls -l, a Target in PowerShell. An entry with no target is a copy, and a git pull in your clone will not reach it. Copies or symlinks has what to do about that.
Keep them current. Where the install linked through to your clone, one pull moves every skill:
cd awesome-agent-skills && git pullWhere it copied, npx skills update -g re-fetches instead. Either way, re-run the skills add command to pick up skills added since. Then ask the agent naturally ("review this diff against main") or invoke a skill explicitly (/awesome-code-review in Claude Code and Cursor, $awesome-code-review in Codex).
Prefer not to clone? npx skills add khasky/awesome-agent-skills installs straight from GitHub — but it won't auto-sync with git pull.
The plugin installs every skill at once and updates with the repository. Pick the plugin or the skills add install from the Quick start, not both: both put every skill in front of the agent twice.
| Agent | Install | Update | Uninstall |
|---|---|---|---|
| Claude Code | /plugin marketplace add khasky/awesome-agent-skills, then /plugin install awesome-agent-skills@awesome-agent-skills |
/plugin marketplace update awesome-agent-skills, or turn on auto-update under /plugin → Marketplaces |
/plugin uninstall awesome-agent-skills@awesome-agent-skills |
| Codex | codex plugin marketplace add khasky/awesome-agent-skills, then codex plugin add awesome-agent-skills@awesome-agent-skills |
codex plugin marketplace upgrade awesome-agent-skills, then the add again |
codex plugin remove awesome-agent-skills@awesome-agent-skills |
| GitHub Copilot CLI | copilot plugin marketplace add khasky/awesome-agent-skills, then copilot plugin install awesome-agent-skills@awesome-agent-skills |
copilot plugin update awesome-agent-skills |
copilot plugin uninstall awesome-agent-skills |
| Gemini CLI | gemini extensions install https://github.com/khasky/awesome-agent-skills (add --auto-update to follow the repository) |
gemini extensions update awesome-agent-skills |
gemini extensions uninstall awesome-agent-skills |
| Qwen Code | qwen extensions install https://github.com/khasky/awesome-agent-skills |
qwen extensions update awesome-agent-skills |
qwen extensions uninstall awesome-agent-skills |
| Cursor | git clone https://github.com/khasky/awesome-agent-skills ~/.cursor/plugins/local/awesome-agent-skills, then Developer: Reload Window |
git pull in that folder |
delete the folder |
| Antigravity CLI | clone the repository, then agy plugin install <clone> |
git pull in the clone, then the install again |
agy plugin uninstall awesome-agent-skills |
| Kilo Code CLI | clone the repository, then add its skills folder to ~/.config/kilo/kilo.jsonc: "skills": { "paths": ["C:/repos/awesome-agent-skills/skills"] } |
git pull in the clone |
remove the path |
- Invoke a plugin skill as usual:
/awesome-code-reviewin Claude Code and Cursor,$awesome-code-reviewin Codex. Qwen Code prefixes it with the extension's name:awesome-agent-skills:awesome-code-review. - Installed users get new work when the version in
.claude-plugin/plugin.jsonchanges, which every release bumps. - CI installs the plugin into Claude Code, Codex, Copilot CLI and Gemini CLI on every push. The Antigravity CLI and Kilo Code rows were checked by hand (
agy1.2.14,kilo7.8.1: all skills listed); the Qwen Code and Cursor rows follow each agent's documentation. - Antigravity CLI installs from a folder only, and copies it: an
owner/repotarget is refused. Kilo Code has no plugin format for skills (kilo plugininstalls npm code modules), so it reads the clone throughskills.pathsinstead, and agit pullreaches it directly. - Any other agent (opencode, Amp, Windsurf, Kiro, Grok Build, ...): use the Quick start or copy the folders by the table below.
The Quick start covers Claude Code, Codex, and Gemini CLI. For any other agent, or to install by hand without the CLI, a skill is a folder: copy it into the directory your agent reads. Most agents also read the shared .agents/skills/ path, so one copy can serve several tools at once. To stay in sync with git pull, link from your clone instead of copying — Copies or symlinks has the command and the way to tell the two apart.
| Agent | Project path | Global path | Docs |
|---|---|---|---|
| Claude Code | .claude/skills/ |
~/.claude/skills/ |
docs |
| OpenAI Codex | .agents/skills/ |
~/.agents/skills/ |
docs |
| Gemini CLI | .gemini/skills/ or .agents/skills/ |
~/.gemini/skills/ or ~/.agents/skills/ |
docs |
| Cursor | .cursor/skills/ or .agents/skills/ |
~/.cursor/skills/ or ~/.agents/skills/ |
docs |
| GitHub Copilot | .github/skills/ or .agents/skills/ |
~/.copilot/skills/ or ~/.agents/skills/ |
docs |
| opencode | .opencode/skills/ or .agents/skills/ |
~/.config/opencode/skills/ |
docs |
| Amp | .agents/skills/ |
~/.agents/skills/ |
docs |
| Windsurf | .windsurf/skills/ |
~/.codeium/windsurf/skills/ |
docs |
| Antigravity | .agents/skills/ (legacy .agent/skills/) |
~/.gemini/antigravity/skills/ |
docs |
| Kilo Code | .kilo/skills/ |
~/.kilo/skills/ or ~/.agents/skills/ |
docs |
- Claude.ai (web): zip a skill folder and upload it under Settings → Skills.
- Gemini CLI can also install straight from a repo URL:
gemini skills install <repo-url> --consent. - Restart or reload the agent afterwards so it picks up new skills.
What "compatible" means here: the skills are plain SKILL.md folders under the open standard, and the Quick start (Claude Code, Codex, Gemini CLI) is the path they are used through day to day. The other rows are the paths each agent's own documentation gives; installs there have not been exercised for every release, and whether a skill then behaves as documented is not checked agent by agent. If an agent trips on a skill, file an issue with the agent and its version. The store-and-link behavior described below was confirmed on Windows with a local clone as the source — other systems, and installs from a repo URL, may link where that one copied, so run the check and trust its output over this paragraph.
A copy never breaks and never announces itself stale. It stays the version you installed, and you learn that from a skill behaving like an old one rather than from an error. That is the argument for linking, and it is worth verifying rather than assuming, because several of the paths here yield copies:
- Installing straight from GitHub (
npx skills add khasky/awesome-agent-skills) and--copyboth copy by design. - A shell may answer a link request with a copy instead. Git Bash on Windows does that for
ln -s, silently and with exit code 0, unlessMSYS=winsymlinks:nativestrictis set. - With a local path as the source,
skills addhas been seen writing copies into the store even without--copy.
Linking a skill by hand, once the copy is out of the way:
| Shell | Command |
|---|---|
| POSIX | ln -s <clone>/skills/<skill> ~/.agents/skills/<skill> |
| PowerShell | New-Item -ItemType SymbolicLink -Path ~\.agents\skills\<skill> -Target <clone>\skills\<skill> |
Some systems restrict who may create a link, and some filesystems have none at all — Windows wants Developer Mode or an elevated prompt, and FAT32 volumes, certain network shares and container mounts will refuse. Where linking is unavailable, npx skills update -g refreshes the copies instead: it re-fetches the source, it does not follow your clone.
To clear an install, npx skills remove -g -s <name> takes explicit skill names, one per skill (-s "*" removes every CLI-installed skill, including ones from other repos). Every skill here is prefixed awesome-, so one glob covers them when you delete the folders yourself.
| Skill | What it does |
|---|---|
| awesome-code-review | Reviews diffs and PRs for correctness, security, and team standards |
| awesome-code-review-feedback | Responds to review feedback: verify before implementing, clarify, push back with reasoning |
| awesome-code-review-jury | Second opinion on a change: blind read-only reviewers on different models, a judge that cross-examines them and returns one verdict |
| Skill | What it does |
|---|---|
| awesome-code-standards | Naming, structure, and patterns for consistent code across a team |
| awesome-code-cleanup | Repo-wide, behavior-preserving cleanup of AI-like code noise: comments by default, plus audit, refactor, dead-code detection, and an execution mode for another audit's findings. The only skill here that edits |
| awesome-dependency-upgrade | Executes dependency upgrades safely: risk-classified batches, changelog-driven majors, overrides with removal conditions, verification between steps |
| Skill | What it does |
|---|---|
| awesome-test-writing | Designs and writes tests that catch real regressions: placement ladder, behavior-first assertions, characterization tests, property/fuzz for parsers — every test proven able to fail |
| awesome-regression-sweep | Read-only multi-layer verification sweep against a recorded baseline: aspect pass, live wire contract, cross-implementation parity, deployed-vs-committed drift, 9 rotating deep angles |
| Skill | What it does |
|---|---|
| awesome-design-doc | Produces design docs and ADRs: requirements and numbers first, real alternatives, a recommendation tied to requirements, risks found by inverting to failure first, non-goals and rollout — with a structural gate run before delivery |
| awesome-api-design | Designs or reviews HTTP API shape before code: resource modeling, versioning by layering, cursor pagination, idempotency keys |
| Skill | What it does |
|---|---|
| awesome-code-explainer | Explains how a codebase works as one illustrated, self-contained page, from a local folder or a temporary clone of any git host URL: purpose, stack, structure, entry points, the main flow traced hop by hop, patterns with evidence, data model, history, where to start reading and open questions — every claim linked to the file at the analyzed commit, the page published as an artifact or opened in the browser |
| awesome-code-docs | Generates a full technical documentation set from a local folder or a temporary clone of any git host URL: a dependency graph walked bottom-up so each module is documented after what it relies on, cycles documented as one unit, per-module and public-symbol reference, architecture, flows with sequence diagrams, API, CLI, config and data-model reference, operations, how-to guides from co-change history, every statement cited at the analyzed commit, and graph-aware updates that redo only what changed and its dependents |
| Skill | What it does |
|---|---|
| awesome-bug-fix | Reproduce → isolate root cause → fix → verify; no random edits |
| awesome-root-cause | Root-cause analysis for incidents and process problems with no failing test: 5-Whys, fishbone, PDCA, one-page A3 |
| awesome-error-standards | Consistent error handling, retries, and user-facing messages |
| awesome-logging-standards | Structured logging, levels, and PII handling |
| Skill | What it does |
|---|---|
| awesome-architecture-audit | Read-only whole-project audit: module boundaries, docs-vs-code fidelity, YAGNI/KISS/SOLID, extensibility, with a SHIP/FIX/BLOCK verdict and a prioritized report |
| awesome-security-audit | Read-only check for injection, secrets, auth issues, dependency CVEs, CI/CD pipeline exposure, and crypto misuse — findings carry their remediation, applying it is the owner's call |
| awesome-pentest | Authorization-gated penetration test: scoping and rules of engagement, recon, attack-surface mapping, exploitation-to-proof, findings with CWE/CVSS and retest — follows PTES, OWASP WSTG, NIST SP 800-115 |
| awesome-leak-audit | Keeps a public client (extension, app, SPA, CLI) from leaking backend internals; client hardening |
| awesome-accessibility-audit | Read-only WCAG-oriented a11y checks, each finding carrying its fix as a reviewable snippet |
| awesome-seo-audit | Read-only whole-site SEO audit across eight tracks: crawl and indexing, on-page and content, markup and SERP appearance, rendering and mobile parity, international and local, the link graph, scaled-content safety, and AI/agent visibility — plus a baseline/diff pass, a verdict per axis, and no composite score |
| awesome-performance-audit | Read-only performance and reliability audit: event loop, streams/backpressure, memory diagnostics, graceful shutdown, resilience topology, with a SHIP/FIX/BLOCK verdict |
| awesome-database-audit | Read-only database-layer audit: schema anti-patterns (EAV, imprecise types), query/index fit, integrity and concurrency, migration hygiene and tenancy, with a SHIP/FIX/BLOCK verdict |
| awesome-dependency-audit | Read-only supply-chain audit of the dependency graph: lockfile discipline, typosquats and hallucinated package names, install-script exposure, CVE reachability, licenses — with a SHIP/FIX/BLOCK verdict |
| awesome-landing-audit | Read-only structural audit of landing/marketing pages: single CTA, form friction, message match, trust elements, CLS-safe banners — mechanics only |
| awesome-claims-audit | Audits public claims (site, README, store listing, privacy policy, docs) against the constants, manifests and catalogs that decide them — mechanical checks with a mutation proof, then a fix phase |
| awesome-slop-audit | Read-only audit of a repo for machine-written "AI slop" markers across code, tests, docs and CI — absence proven per category, findings ranked and handed to awesome-code-cleanup, which applies them |
| Skill | What it does |
|---|---|
| awesome-git-commit-plan | Reads a codebase and plans its commit history: a split where every commit builds and tests alone, proven by replaying it in a scratch clone against the repo's own gates, output as one plan file numbered #1 to #N. Read-only; feeds awesome-git-history-rebuild |
| awesome-git-history-reset | Wipes a repo's git history to a single Initial commit and force-pushes — safely: access checks, verified mirror backup, secret scan, and a confirmation gate before anything irreversible |
| awesome-git-author-rewrite | Rewrites the author/committer identity on a commit, or on every commit carrying a wrong one, and force-pushes — ownership and access checks, verified backup, counted hash blast radius |
| awesome-git-history-rebuild | Erases a history and replays the same tree as a curated commit series — an approved split plan, the repo's own commit rules and hooks, paced timestamps, verified backup, and a tree-hash proof that nothing was lost |
| awesome-git-history-salvage | Read-only reconstruction of every commit a repo has ever held, erased history included — merges current refs, pull-request refs, mirror backups and the host's activity log, then fetches unreachable commits by SHA over the git protocol |
| Skill | What it does |
|---|---|
| awesome-agents-md-generator | Reads a codebase and writes an agent-agnostic AGENTS.md from what the code already does: commands verified by running them, conventions admitted only with counted evidence, change recipes derived from co-change history, Always / Ask first / Never boundaries, nested files per monorepo package, and opt-in shims for agents that read their own filename |
| awesome-skills-purge | Removes installed skills from every agent on the machine behind a keep list — a home-wide sweep for skill roots, links deleted as links, git work trees protected as sources, archive and confirmation gate before anything goes |
| Skill | What it does |
|---|---|
| awesome-copywriting | Writes a product's own short copy — headlines, descriptions, button and empty-state and error microcopy, subject lines, CTAs — from the reader's state at the moment the line lands, with a quality-probing intake, a story gate, and variants delivered with a pick |
| awesome-humanize-en | Removes signs of AI generation from English text (Russian via a calibration file): review and edit operations, venue rules for release notes, replies, postmortems, tickets and articles, a discourse layer fixed before style, regex markers, source-fabrication checks, editing-trace tests, a pinned evidence ledger |
| awesome-document-style | Line-edits Markdown into clear, specific, publication-ready prose |
| awesome-grammar-check | Advisory copy-edit — grammar, logic, and flow issues as suggestions, without rewriting the text |
| awesome-translate-ru-en | Russian → English translation that preserves structure, formatting, and the author's voice |
| awesome-style-mimic | Learns a website's writing style into a reusable style guide (live-browser deep crawl), then rewrites documents in that voice with a cross-document consistency pass |
| Skill | What it does |
|---|---|
| awesome-content-voice | Builds one reusable author-voice profile from whatever evidence exists — own posts read through the live browser, files, samples, or an interview — with per-platform register, protected personal tics, and a confidence stamp |
| awesome-content-campaign | Builds a scheduled batch of platform-fit marketing posts from any source (repos, sites, files): claim tracing, an interview for topic, start date, duration and posting times, a shipped best-time table, dated platform limits, the writing handed to awesome-content-repurpose per unit, a 2-stage self-audit, dated folders of posts plus a manifest whose filenames and frontmatter are checked by a gate, not asserted |
| awesome-content-repurpose | Turns one existing text (a link, a file, pasted notes) into three posts that cover every platform: a full long read written first, a regular post derived from it and a short post, each held to the tightest cap of its platform group and listing those platforms in frontmatter. A source-module map that keeps a guide a guide, an interview for language, idea, voice, emoji, creativity and footer, verified facts with locked comparison peers, a counted audit |
| awesome-content-image-adapter | Adapts one finished image into two pictures, a horizontal 16:9 and a vertical 9:16, and each platform takes the one the canonical platform table names for it, from researched per-platform feed behavior, so nothing is restated. Standalone it writes a session folder and opens it; in a chain it runs straight after the user hands over a picture and drops both pictures beside the posts |
| awesome-content-publisher | Publishes a post batch to the user's own accounts through their live browser (Playwright MCP bridge): login preflights, a persistent dedup ledger, timezone-aware scheduling, human-paced posting with read-back verification |
These five chain, and the publisher needs a browser bridge set up before its first run. The step-by-step guide covers installing the Playwright MCP extension, reading the per-profile token, the MCP server entry that pairs them, running each skill alone, and running the whole chain:
- Content skills guide — English
- Руководство по content-навыкам — Russian
Measured from the publisher's own ledger timestamps on a 25-platform run. The figure is the full cycle per platform: open the composer, fill it, attach the image, submit, read back the permalink, diff it against the source file, write the ledger.
| Composer type | Platforms | Per post |
|---|---|---|
| Plain text box | x, bluesky, threads, mastodon, truthsocial, minds, peerlist, lemmy, quora, bastyon | 2–6 min |
| Markdown field | devto, wonderful-dev | 2–4 min |
| Caption with a required image | instagram, pixelfed, pinterest | 4–8 min |
| Rich editor, short post | tumblr, daily-dev, patreon, ko-fi, buymeacoffee | 3–9 min |
| Rich editor, long-form | medium, hashnode, substack, hackernoon, teletype | 4–9 min |
15 platforms took 73 minutes of uninterrupted work — about 5 minutes each, which is the number to plan with. The first platform of a session costs more, because the bridge gate, the login preflights and the source scan all land on it: budget 15–20 minutes before the first post goes out. Posts to different platforms follow each other immediately; two posts to the same platform stay at least 2 hours apart.
Some skills sit next to each other on purpose: they share a file format, a target, or a vocabulary. The overlap is real — what separates them is one question, in the last column. Names are shortened there; every skill links from the tables above.
| These look alike | Shared ground | What decides |
|---|---|---|
| awesome-code-review · awesome-architecture-audit | Both read code and rank findings on the same severity scale | One diff or PR before merge → code-review. The whole project — boundaries, docs-vs-code fidelity, extensibility, SHIP/FIX/BLOCK → architecture-audit. |
| awesome-code-review · awesome-code-review-feedback | Two ends of one review thread | Writing the review → code-review. Answering comments you received → code-review-feedback. |
| awesome-code-review · awesome-code-review-jury | Both review one change and rank findings by severity | One reviewer, one pass → code-review. Several isolated reviewers on different models plus a judge that cross-examines them, at several times the cost → code-review-jury. |
| awesome-security-audit · awesome-pentest | Same vulnerability classes, same CWE mapping | Static white-box read of your own code, no gate → security-audit. Active probing of a live target, hard-gated behind written authorization → pentest. |
| awesome-security-audit · awesome-leak-audit | Both ask what an attacker gains | Exploitable server-side flaws → security-audit. What a shipped public client reveals about the private backend → leak-audit. |
| awesome-security-audit · awesome-dependency-audit | Both report CVEs | Vulnerabilities in code you wrote → security-audit. The dependency graph itself — lockfiles, typosquats, install scripts, reachability → dependency-audit. |
| awesome-dependency-audit · awesome-dependency-upgrade | Same package set, two halves of one job | Decide what is risky → audit. Execute the bumps in verified batches → upgrade. |
| awesome-performance-audit · awesome-database-audit | Both answer "why is this slow" | Runtime behavior — event loop, memory, streams, resilience topology → performance-audit. The static data layer — schema, index-vs-predicate fit, migrations → database-audit. |
| awesome-code-explainer · awesome-architecture-audit | Both read a whole codebase and map its layers | Understand how it works — a neutral, illustrated explanation for a newcomer, no verdict → code-explainer. Judge whether the design is sound, with a SHIP/FIX/BLOCK verdict → architecture-audit. |
| awesome-code-explainer · awesome-agents-md-generator | Both mine the same signals — commands, entry points, patterns | A page a person reads once to understand the project → code-explainer. Standing instructions an agent loads every session → agents-md-generator. |
| awesome-code-docs · awesome-code-explainer | Same sources, same citations at a pinned commit | One illustrated page a newcomer reads once → code-explainer. A linked Markdown set — architecture, per-module and API reference, operations, how-to guides — that a team keeps and updates → code-docs. |
| awesome-bug-fix · awesome-root-cause | Both refuse to fix before the cause is known | A failure you can reproduce on command → bug-fix. An incident or process problem with nothing runnable to fail → root-cause. |
| awesome-test-writing · awesome-regression-sweep | Both live in the test suite | Designing and writing tests → test-writing. Running every layer against a recorded baseline and reporting deltas → regression-sweep. |
| awesome-seo-audit · awesome-landing-audit · awesome-accessibility-audit | 3 read-only audits of the same public page | Found and parsed by search and LLMs → seo-audit. Structure that converts — CTA, form friction, message match → landing-audit. Usable by everyone, WCAG → accessibility-audit. |
| awesome-seo-audit · awesome-regression-sweep | Both diff a live surface against a recorded baseline | Search-visible surfaces — canonical, robots, schema, titles → seo-audit's re-audit mode. Everything the build and the test suite can prove — types, lint, contracts, parity → regression-sweep. |
| awesome-claims-audit · awesome-architecture-audit | Both catch drift between what is written and what the code does | Public claims — site, store listing, privacy policy, README → claims-audit. Internal docs against the codebase they describe → architecture-audit. |
| awesome-slop-audit · awesome-code-cleanup | Both target machine-written noise in a repo | They chain rather than compete: slop-audit finds and ranks across code, tests, docs and CI, and never edits; code-cleanup executes — its own comment and naming pass, or the report slop-audit produced. |
| awesome-agents-md-generator · awesome-code-standards | Both end in coding rules an agent follows | Describe the conventions this repository already follows, with evidence, as an AGENTS.md → agents-md-generator. Prescribe conventions the project lacks → code-standards. |
| awesome-code-standards · awesome-code-cleanup | Both govern how code reads | Prescribe conventions for work being written → code-standards. Sweep noise out of what already exists → code-cleanup. |
| awesome-git-commit-plan · awesome-git-history-rebuild | The same split, planned then executed | Read-only, produces the numbered plan → commit-plan. Erases the history and replays the tree to that plan → history-rebuild. |
| awesome-git-history-reset · awesome-git-history-rebuild | Both erase history and force-push, behind the same safety gates | One Initial commit → history-reset. A curated series over the identical tree → history-rebuild. |
| awesome-git-history-salvage · awesome-git-history-reset | Both act on a history that is about to be, or already was, rewritten | Recover and list every commit that ever existed, writing nothing → history-salvage. Destroy and replace → history-reset. |
| awesome-design-doc · awesome-api-design | Both run before code exists | The system — requirements, alternatives, recommendation, rollout → design-doc. The HTTP surface — resources, versioning, pagination, idempotency → api-design. |
| awesome-error-standards · awesome-logging-standards | Both shape what happens on failure | The error contract — types, envelopes, status mapping, retries → error-standards. What gets written down — levels, structure, PII → logging-standards. |
| awesome-humanize-en · awesome-document-style · awesome-grammar-check | 3 passes over the same English text | Strip AI fingerprints → humanize-en. Line-edit for clarity and specificity → document-style. Suggest without touching the text → grammar-check. |
| awesome-copywriting · awesome-humanize-en · awesome-document-style | All four end in English prose someone ships | There is no line yet and you are writing one → copywriting. A line exists and reads machine-made → humanize-en. A document exists and reads vague → document-style. |
| awesome-copywriting · awesome-landing-audit | Both act on the words a marketing page shows | Write or replace the line → copywriting. Judge the page's structure — CTA count, form friction, message match — without touching the words → landing-audit, which hands copy quality to copywriting. |
| awesome-copywriting · awesome-content-campaign | Both write marketing text from product facts | The product's own surfaces — headline, button, empty state, subject line → copywriting. Posts for other people's platforms, on a schedule, in that platform's register → content-campaign. |
| awesome-style-mimic · awesome-content-voice | Both write the same section set, so either file feeds a rewrite or a campaign | A site's brand voice, learned by crawling it → style-mimic. The author's own voice from their own evidence, with consent, counted absence and a confidence stamp → content-voice. |
| awesome-content-campaign · awesome-content-repurpose | One schedules and one writes: the campaign hands each unit to the repurposer | Product sources plus a schedule → content-campaign, which calls the other. One existing text, no schedule → content-repurpose on its own. |
| awesome-content-campaign · awesome-content-publisher | Two halves of one shipping pipeline | Write the post files → content-campaign. Post them to your accounts through your own browser → content-publisher. |
Skills trigger on intent — plain requests work. Explicit mentions make the choice deterministic:
- "Use awesome-code-review on the diff against
main: Critical / Suggestions / Nice to have, with file:line references." - "Here are the review comments — use awesome-code-review-feedback: agree, clarify, or push back with evidence."
- "awesome-bug-fix for this error: reproduce first, root cause before any fix — [paste logs]."
- "awesome-security-audit the files touched by this change (auth, injection, secrets)."
- "Audit this repo with awesome-leak-audit before we open-source it."
- "awesome-humanize-en: remove the AI voice from this draft."
- "awesome-translate-ru-en: mirror
docs-ru/intodocs-en/— same structure, translate each file."
They also chain: implement → awesome-code-cleanup in audit mode (read-only findings) → apply the cleanup → awesome-code-review before merge. Or: awesome-content-campaign from your repo and site → review the drafts → awesome-content-publisher ships them on schedule.
The four skills that rewrite a published history or post to live accounts (awesome-git-history-reset, awesome-git-history-rebuild, awesome-git-author-rewrite, awesome-content-publisher) set disable-model-invocation: true: in Claude Code and Cursor they run only when you name them (/awesome-content-publisher), never on a matching request alone.
Each skill follows the Agent Skills specification:
skills/<skill-name>/
├── SKILL.md # required: YAML frontmatter (name, description) + instructions
└── references/ # optional: detailed docs the agent loads on demand
No README.md inside a skill folder. A skill folder holds only what the agent reads: SKILL.md and the files it names. What each skill is for and when to reach for it belongs here in the root README (the tables above), so a reader compares skills in one place instead of opening every folder. Where a skill ships references/, SKILL.md itself maps them: an agent that skips the map skips the files.
Instructions only, no code. A skill is Markdown and nothing else: no scripts, no templates, no fixtures, no binaries. A check is written as what to look for, what counts as a pass and what evidence to report, and the agent writes whatever it needs in whatever language fits its own environment — which is also the one that knows the platform, the shell and the project in front of it. Nothing here runs the author's code on your machine.
The frontmatter description tells the agent when to activate the skill; the body loads only after activation, and references/ files only when needed — so a large skill still costs little context until used.
The collection shares 2 rating vocabularies, so reports never mean different things by the same word:
- Findings —
Critical / High / Medium / Low / Informational, rated on impact and reachability. A skill may truncate the scale from the bottom: top 4 whereInformationalcarries no meaning (architecture, database), top 3 whereLowdoesn't either (accessibility, copy-editing, landing mechanics), and its output section states which tiers it uses. Never reorder or rename tiers. - Verdict —
SHIP / FIX / BLOCK, for the read-only audits that gate a release, always paired withNOT ASSESSEDfor anything that could not be checked.
awesome-code-review keeps its own reviewer-comment buckets (Critical / Suggestions / Nice to have) because those are addressed to an author, not to a release gate.
The repository has one gate, and it is the same one locally and in CI:
python3 scripts/lint.py # run the gates by hand
python3 scripts/install-hooks.py # once per clone: run them before every commitThe installer writes a pre-commit hook that calls scripts/lint.py. Where core.hooksPath points outside the repository — a tool that manages git identities, say — it says so: git runs that directory's hooks instead, and the gate fires only if they chain through to the repository's own.
3 passes per skill:
- Survey — the widely-used public skill and prompt collections, plus the documented practice of projects that do the job at scale: kernel and git patch-series rules, OpenStack's commit guide, Conventional Commits, OWASP, WCAG, PTES, NIST SP 800-115.
- Distill — keep what changes an agent's output, drop what it already does untold. A rule that survives is one an agent gets wrong without it. Borrowed material is cited where it is used.
- Iterate on real work — every skill is run on real repositories, revised from what it got wrong, and run again. The phases, stop gates and output formats here are what survived those rounds.
- Self-contained — every skill is complete in this repo; no chasing external links or docs.
- A small set — enough skills to cover repeated engineering work, few enough to remember.
- Portable — plain
SKILL.mdper the open spec, stack-agnostic, nothing vendor-specific baked in. - Verification-first — skills end with the check that proves the claim: run the command, read the output, then say "done".
A rule is a standing constraint the agent honors without being asked; a skill is a procedure you invoke, with phases and an output contract. The two layers overlap by design: rules/code-review.md in Awesome AGENTS.md sets the bar every review must meet, awesome-code-review here runs the review and produces the report. Install both: rules keep everyday work in line, skills handle the jobs you name.
Part of a set of agent tooling — pick the layer you need:
- Awesome Agent Skills — this repo: portable
SKILL.mdskills every agent loads — code review, debugging, security and leak audits, code and text cleanup. - Awesome AGENTS.md — the base, tool-agnostic ruleset every agent imports (one
AGENTS.md). - Agent MCP Integrations — MCP servers that connect agents to browsers, cloud, databases, infra, and domain APIs.
- Claude Code Token Optimization — the token-efficiency layer (RTK, LSP, Context7,
codebase-memory-mcp, claude-mem, Caveman, Ponytail). - Claude Code Security Audit — the layered security-audit workflow (deep audit, continuous guardrails, scanners).
Released under the MIT license. The awesome-humanize-en skill adapts material from humanizer-ru and, for its venue rules, editing-trace tests and evidence ledger, from sepia; awesome-seo-audit cross-checked its Google-policy detail against claude-seo, from which it also took the falsifiability line on every recommendation, the fix-ordering rule and the refusal of unsafe fetch targets, and took its collection mechanics from on-page-seo; its two-axis verdict follows claude-seo-ai and its evidence-and-confidence contract follows Agentic-SEO-Skill. awesome-agents-md-generator takes its section set and its differences-only nested files from agentseed, and its file format from agents.md. awesome-code-explainer takes its signals-first method, its input forms and its reading-path and open-questions sections from ExplainThisRepo. awesome-code-docs takes its dependency-graph method — symbol resolution, topological order, bottom-up summaries — from AutoDocs.
