Skip to content
alyn
dzhng

skills

Reusable AI agent skills for software factories: explore ideas, write specs, implement, review, and run autonomous research. Works with Claude Code, Codex, and other skill-compatible agents.

$npx skills add dzhng/skills
Stars
1,471
Installs
7.1k
Forks
85
Updated
4 h ago
License
MIT

38 skills in this pack.

64
dzhng

isometric-motion

Build animations and interactive elements (explainers, figures, hero visuals, step-through walkthroughs) in the crafted isometric "Anatomy" style, with many small precise solid parts…

Pack1.5k7.1kFrontend
62
dzhng

cinematic-shot

Shoot software UI like a film. A sequence of hero shots, each a steep, oblique, extreme close-up of the interface floating in black, with a razor-thin focal plane, a slow motivated camera…

Pack1.5k7.1kDesign
62
dzhng

explore-unknowns

Guide the user through a quadrant walk that maps the unknowns of a task — open by listing the known knowns, then work through known unknowns, unknown knowns, and unknown unknowns one stage…

Pack1.5k7.1kCoding
62
dzhng

ratchet-files

Ratchet source file size so every file stays small enough for an agent to read whole: find every file over a token budget, split oversized files by concept, and set up the pre-commit…

Pack1.5k7.1kCoding
61
dzhng

xiaohei-illustrations

Generate Ian-style Xiaohei illustrations for articles, posts, blogs, Notion documents, workflows, methods, processes, structures, states, metaphors, and opinions. Use when the user asks for…

Pack1.5k7.1kImages & art
60
dzhng

audit-decisions

Audit the decisions an implementing agent made, not its diff — a pure audit that traces the session's history into a decisions ledger, changes no code, and never blocks an unsupervised run…

Pack1.5k7.1kCoding
60
dzhng

audit-tests

Audit whether tests earn their maintenance cost and which suite owns each contract. Use when pruning redundant tests, investigating implementation coupling or test-only production hooks…

Pack1.5k7.1kTesting
60
dzhng

auto-research

Run fast, progressive experiments to map tunable parameters and their effects. Use when optimizing code, prompts, configurations, or other artifacts against a goal or benchmark, or when a…

Pack1.5k7.1kResearch
60
dzhng

claude

Use Claude Code as an independent `claude -p` subagent when the user explicitly asks for Claude, wants a second-agent opinion from Claude, or asks to delegate a well-scoped task to Claude…

Pack1.5k7.1kAI engineering
60
dzhng

close-spec

When a spec under specs// is done shipping (a write-spec build, or any planned task that produced a spec), archive it to specs/done/ and rewrite it from a build-plan into a durable…

Pack1.5k7.1kCoding
60
dzhng

code-review

Review changed code for naming, stale references, unnecessary complexity, and comment quality. Use after completing implementation work, before committing, or when the user asks to review…

Pack1.5k7.1kCode review
60
dzhng

codex

Use the local Codex CLI as an independent second agent. Two branches — (1) proactively run `codex review` for a second opinion after completing a substantive change, before presenting it as…

Pack1.5k7.1kCoding
60
dzhng

eval-skills

Eval and improve a skill against golden cases — run the target skill blind in a fresh, context-free subagent on each example input, grade the artifact against the expected outcome, and let…

Pack1.5k7.1kAI engineering
60
dzhng

implement-spec

Implement an existing spec through committed passes. Use for long or multi-pass specs that need maintenance checkpoints to periodically clean code, handoffs, priorities, and plan bloat…

Pack1.5k7.1kCoding
60
dzhng

launch-video

Make a showreel-grade motion-graphics launch video, with music, that introduces a CLI, library, or product from its repo. Use when asked for a launch, promo, sizzle, or showreel video, an…

Pack1.5k7.1kVideo
60
dzhng

marketing-pages

Best-practice rulebook for a marketing site's pages, organized by page class — campaign landers, product pages, programmatic SEO trees, editorial. Use when writing or updating a…

Pack1.5k7.1kMarketing
60
dzhng

write-skills

Create or revise agent skills. Use when adding a new skill file, renaming a skill, simplifying an existing skill, improving trigger descriptions, or deciding what belongs in a skill versus…

Pack1.5k7.1kWriting
60
dzhng

write-spec

Break large features into independently verifiable, human-reviewable slices under a feature directory in specs/. Use for risky or multi-step feature work that needs upfront questioning, API…

Pack1.5k7.1kWriting
60
dzhng

write-tests

Write tests that pin real behavior instead of implementation details, config values, or lucky samples. Use when adding tests for new behavior, writing a regression test, fixing a brittle or…

Pack1.5k7.1kTesting
59
dzhng

audit-agents

Audit or rewrite AGENTS.md so it holds only lasting principles. Run it only when the user asks for it by name; never invoke it on your own.

Pack1.5k7.1kCoding
59
dzhng

audit-performance

Audit and prioritize performance work through bounded-work and forward-progress checks. Use when asked to find performance issues, investigate freezes/500s/OOMs, review retries or polling…

Pack1.5k7.1kCoding
57
dzhng

eli5

Explain a technical spec or proposed change in plain language: what problem it solves, how the solution works, and every schema change.

Pack1.5k7.1kCoding
57
dzhng

port-features

Port a feature from an existing repository by copying its actual code and editing the copy, so its bug fixes and behavioral nuances survive, then naturalizing it to this project's names and…

Pack1.5k7.1kWriting
57
dzhng

write-docs

Write and edit project docs (README/markdown) as a glossary of principles, not a mirror of the code. Use when creating or revising a README; when a doc enumerates exact scenes, scenarios…

Pack1.5k7.1kWriting
56
dzhng

implement-spec-with-codex

Run [implement-spec](../implement-spec/SKILL.md) with Codex doing the implementation passes while you orchestrate, integrate, and review. Use when the user asks to implement a spec with…

Pack1.5k7.1kCoding
56
dzhng

renderer

Architecture rules for GPU rendering with TypeGPU/WebGPU. Use when adding or changing render passes, shaders, frame orchestration, GPU resources, culling, terrain, shadows, or visual…

Pack1.5k7.1kCoding
55
dzhng

find-overengineering

Find and roll back overengineering — protective code that solves an edge case of an edge case at the cost of far too much complexity, or careful migrations for a product with no users. Use…

Pack1.5k7.1kCoding
55
dzhng

find-state-machines

Find implicit state machines, where one lifecycle's state, transitions, and ownership are scattered across flags, effects, callbacks, and async work, and make them explicit. Use when…

Pack1.5k7.1kCoding
55
dzhng

handoff-spec

Hand a spec that is mid-implementation to another machine or another agent.

Pack1.5k7.1kCoding
54
dzhng

implement-spec-with-goal

Implement a spec using the harness's goal feature.

Pack1.5k7.1kCoding

Showing 30 of 38. See the full pack on GitHub.

From the README

How to use skills

Skills

skills.sh

AI skills for building software factories

AI skills for building software factories. My personal library of domain-agnostic agent skills, reused across every project. Small, composable, and hackable — works with any harness that supports skills: Claude Code, Codex, opencode, Cursor, duet, and 70+ others.

npx skills add dzhng/skills

Add --list to pick individual skills, or copy any skills/<category>/<name>/ folder into your harness's skills directory (e.g. .claude/skills/).

From a clone, npm run install-skills does the same without the registry:

npm run install-skills              # into ~/.agents/skills, linked from ~/.claude/skills
npm run install-skills -- ../my-app # into a repo instead of the home directory
npm run install-skills -- --only write-spec,review ../my-app
npm run list-skills                 # names and categories

.agents/skills/<name>/ holds the real files (flat, category-free, with cross-category links rewritten to match); .claude/skills/<name> is a relative symlink into it, so both harnesses read one copy. Re-running overwrites the installed copies — a .claude/skills/<name> you keep as a real directory is left alone, and a .claude/skills that is already a symlink is left as is. Add --dry-run to see the plan first.

Why

Software is moving from tasks to factories: agents that pursue a goal autonomously until the output can be trusted. The hard part isn't breaking the goal into tasks — it's breaking it into independently verifiable pieces, and knowing where the pieces even are.

These skills run that loop. Treat the unknown as fog of war: map the terrain, carve it into territories that build and verify in isolation, and recursively re-slice whatever hides more map. And re-planning doesn't stop when planning ends — the spec is a living document, updated and re-sliced mid-implementation whenever the work teaches the agent that the plan is stale. Every piece must prove itself — architecture review, code review, and visual review against a baseline — before the loop moves on. Each iteration gets less wrong, until the goal is done.

A single autonomous run — 3 days, 18 minutes pursuing one goal

Proof: one unattended Codex run pursuing a single goal for 3d 18m on top of these skills, slicing and iterating until done.

How to use

Use a chained pipeline to build a feature, a research loop to discover what works, or individual skills as needed. Every skill stands alone.

The full loop — a big feature, start to finish

The full loop — explore, spec, build unattended, review the decisions

  1. Map the fog. /explore-unknowns on the idea. It interviews you quadrant by quadrant and hands you rendered options, mocks, and decision tables to react to instead of asking you to imagine. By the end you know what the feature does.

  2. Codify. /write-spec on that map. Most decisions were already made upstream, so this pass is transcription — I don't read the spec. Anything genuinely new it hits, it asks about instead of deciding.

  3. Build. Kick off the loop:

    /goal /implement-spec specs/<feature>
    

    /goal is what puts the harness in loop mode — same move in Claude Code or Codex — and the spec drives it from there. A couple of hours for a small feature, two or three days for a large one. Add whatever framing fits: on the xyz branch, or using /codex as the implementer while you stay the parent orchestrator and reviewer.

  4. Review the decisions, not the diff. The run ends by consolidating specs/<feature>/decisions.md — every decision the agent made where the spec was silent, ranked least-confident first. That's the review surface. Send changes back and the next pass re-audits: every time the AI writes code, you audit what it decided.

    The rest fires on its own: a /review pass at the end of every slice, /screenshot-critique and /compare-screenshots on anything visual, /close-spec when the last slice lands, and a re-slice of the plan whenever implementation proves it stale.

Budget: 30 minutes to a few hours on steps 1–2, 30 minutes to a few hours on step 4. A run that goes two days is more like 2–3 hours on each end. Your time is in the bookends; the middle is unattended.

Research — learn through fast experiments

Use Auto Research when the next decision needs experimental evidence. It starts with one fast, revealing task, tests a short batch of hypotheses, checks combinations, and expands coverage as the approach improves. New failures become the focus; earlier tasks become regression checks.

/auto-research Reduce cost per task by at least 15% relative to the saved
baseline, without reducing task success. Start with one fast development task.

If the evaluator, metric, baseline, or required improvement is unclear, the skill asks before experimenting. Passing an evaluation and meeting an improvement target are separate requirements. The output includes the best verified artifact and a parameter-effect map: what was tested, where it helps or hurts, and how changes interact. Use that evidence to inform a spec when the research is ready for implementation.

À la carte — the spontaneous path

  • A brainstorm turns out to be a feature. /explore-unknowns works at the end of a discussion as well as at the start — run it to sweep for the angles neither of you thought of, then pick the loop up at step 2.

  • Any code change that didn't come from a spec. An ad hoc fix that touched more than expected: /review first (refactor-change → code-review → write-docs), then /audit-decisions. When the diff is too big to read, the decisions ledger is how you still understand what is now in your codebase.

Skills

Plan — map the fog, then slice it

Skill What it does
explore-unknowns Walk the user through mapping a task's unknowns quadrant by quadrant — known knowns first, then interviews, reactable artifacts, and blindspot passes — ending with a complete four-quadrant map.
auto-research Optimize through fast, progressive experiments, producing a verified candidate and a map of parameter effects and tradeoffs.
write-spec Break a large feature into independently verifiable, human-reviewable slices with API seams and playable checkpoints.

Implement — build every slice to completion

Skill What it does
implement-spec Build an existing spec to completion, one reviewable pass at a time, delegating independent slices in parallel.
implement-spec-with-goal Use the harness's goal feature, then follow implement-spec to completion.
implement-spec-with-codex Run implement-spec with Codex writing the code — you orchestrate, integrate, and review every pass.
handoff-spec Hand a spec that is mid-implementation to another machine or agent: capture what the session knows in the spec, then push. User-invoked.
close-spec Archive a shipped spec and rewrite it from a build plan into a durable rationale record that points back at the code.
port-features Port a feature by copying its exact upstream code and editing the copy instead of rewriting it, with git history explaining each odd line before it changes.
write-tests Write tests one tracer bullet at a time that pin real behavior — not implementation details, config values, or lucky samples.
write-docs Write docs as a glossary of principles and pointers, never a mirror of the code that will rot.
codex Use the local Codex CLI as an independent second agent for review and (on explicit ask) delegated implementation.
claude Use Claude Code (claude -p) as an independent second agent for consultation and (on explicit ask) delegated implementation.
marketing-pages Rulebook for writing, updating, and auditing marketing pages by page class — campaign landers stay noindexed and unlinked with one CTA; everything else earns its sitemap entry, crawl-rail link, and canonical copy source.

Review — every piece proves itself before the loop moves on

Skill What it does
review Closeout a finished change as one pass — refactor-change, then code-review, then write-docs — sequenced into a single verdict.
code-review Audit a diff for stale names, dead references, needless complexity, and comments that narrate instead of explain — ending on a clean/not-clean verdict.
audit-decisions Audit the decisions an implementer made, not its diff — a pure, never-blocking audit whose ledger discloses the architecture settled on the user's behalf, reviewed instead of the code.
eli5 Explain a spec or change in plain language without losing precision — the ELI5 register other skills borrow for standalone, walked-scenario explanations.
audit-tests Map contracts to independent test proof, consolidate redundant coverage, and remove test-only machinery without losing regression protection.
audit-performance Find hot paths that amplify or repeat without progress, rank them by real failure risk, and prefer the smallest bounded fix that preserves healing.
refactor-change Refactor by moving ownership to one clean concept instead of layering compatibility sediment beside the problem.
refactor-codebase Refactor a whole codebase as one goal run, tuned for the layered debt AI-written code piles up: list every hidden link, needless link, surplus piece, and special case (with find-state-machines, find-overengineering, and ratchet-files hunting their own kinds), redesign from the list, land each fix through refactor-change and code-review, then audit the tests. User-invoked.
find-state-machines Find implicit state machines and make them explicit — small safe fixes proactively, larger restructures after confirming.
find-overengineering Roll back protective code for an edge case of an edge case, and migrations for products with no users.
ratchet-files Keep every source file small enough for an agent to read whole: list files over a token budget, split them by concept, and install a pre-commit ratchet that lets oversized files shrink but never grow. Ships the check and a shared hook installer that covers every worktree.
retro Conduct a coding-session retrospective and suggest improvements to the agent's environment, checks, guidance, and information access. User-invoked.

Visual review — never accept visuals on vibes

Skill What it does
design-with-images Explore generated visual options, preserve the selected target, and iterate real screenshots against it until the implemented design matches.
compare-screenshots Compare captures against an approved design or the intended result; use telemetry to locate differences rather than treating a historical baseline as correct. Ships a reusable diff script that also measures a lone capture for flat, empty, or misframed content.
screenshot-critique Use an unprimed subagent as a second set of eyes on visual work before accepting it; mandatory before declaring a reported visual bug fixed. Ships a checker that strikes any number the critique cannot show a command for, and any file it named but never wrote.
preview-shots Open a curated set of image shots in one macOS Preview window for the user to eyeball.

Authoring — keep the skills themselves sharp

Skill What it does
write-skills Create or revise agent skills: triggers, leading words, progressive disclosure, and the failure modes to prune.
audit-agents Audit or rewrite AGENTS.md so it holds only lasting principles, with iteration speed at the core. Ships an example AGENTS.md that pairs with this pack.
eval-skills Eval a skill against golden cases — blind runs in fresh subagents, a separate judge, and gap-driven edits.

Graphics

Skill What it does
renderer Architecture rules for GPU rendering with TypeGPU/WebGPU — one frame orchestrator, single owners, a resource registry, depth and compositing contracts, and verification that looks at pixels.
launch-video Direct a showreel-grade launch video in code, 2D unless the subject is 3D — one visual concept grown from the project, picture and a synthesized score locked to one timing source, and a preview frame that survives social feeds.
cinematic-shot Shoot software UI like a film — steep, oblique extreme close-up hero shots with a razor-thin focal plane, slow motivated camera drift, and UI that acts on its own, hard-cut on the action.
isometric-motion Build animations and interactive elements in a crafted isometric style — solid many-part figures, four-tone shading, a framed card with live readout, and calm eased motion driven by one model.
xiaohei-illustrations Hand-drawn 16:9 editorial illustrations for articles and docs, starring Xiaohei, a small solid-black creature acting out each idea, with sparse handwritten English annotations.

License

MIT

Acknowledgements

Thanks to Matt Pocock for the retro skill, copied here with its writing-guide references pointed at this repo's write-skills. Thanks also to Matt and Thariq for the fog of war and discovering the map concepts that helped shape these skills. Thanks to wheresryan22 for the Anatomy skill, copied here as isometric-motion and repurposed for animations and interactive elements. Thanks to helloianneo for the Ian Xiaohei illustrations skill, copied here in its English version as xiaohei-illustrations. Thanks to Caldo for the untangle-codebase skill, trimmed here as refactor-codebase so each fix runs through this repo's refactor-change.

Questions

What is dzhng/skills?

Reusable AI agent skills for software factories: explore ideas, write specs, implement, review, and run autonomous research. Works with Claude Code, Codex, and other skill-compatible agents.

How do I install skills?

Run "npx skills add dzhng/skills" and choose the skills you want. Many packs also document their own install path (for example a Claude Code plugin marketplace) in the README below.

How many skills are in skills?

38 SKILL.md skills. Alyn lists 30 of them with their own pages.