Agent skill

Superpowers Writing Skills

by christopherarter in christopherarter/superpowers-reasonix

Creating, editing, or testing a Reasonix skill?. An agent skill from christopherarter/superpowers-reasonix.

MITAuto-check passedAgent Workflows

Install Superpowers Writing Skills

skills CLI
$ npx skills add christopherarter/superpowers-reasonix --skill superpowers-writing-skills -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install christopherarter/superpowers-reasonix superpowers-writing-skills --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/christopherarter/superpowers-reasonix.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/superpowers-writing-skills .claude/skills/superpowers-writing-skills && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
superpowers-writing-skills
GitHub stars
102
Token cost
~2.8k tokens
SKILL.md length
1,321 words
Files
2 (incl. references)
Skills in repo
11
Repo updated
First seen
Licence
MIT

At a glance

Creating, editing, or testing a Reasonix skill?. An agent skill from christopherarter/superpowers-reasonix.

  • Tasks that involve Skill authoring
  • SKILL.md covers Overview, What is a Skill?, Reasonix Skill Anatomy (get… and Subagent Skills (authoring…, plus 10 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md
  • Tasks that involve Test-driven development

What it does

Superpowers Writing Skills is an agent skill from christopherarter/superpowers-reasonix. Creating, editing, or testing a Reasonix skill? Load first, before you deploy it.

Its SKILL.md is about 2.8k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files, including reference files (for example `references/testing-skills-with-subagents.md`).

It sits in Agent Workflows, covering Skill authoring, Test-driven development and Subagents. The repository describes itself as: Superpowers skill port to Reasonix coding harness. The licence is MIT.

When your agent uses it

  • Tasks that involve Skill authoring
  • Tasks that involve Test-driven development
  • Tasks that involve Subagents

Example prompts

  • “/superpowers-writing-skills”

What it can do on your machine

Read from SKILL.md and the folder at commit d202ba4. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are yaml).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Superpowers Writing Skills loads about 2.8k tokens when it runs, and up to ~3.6k if it reads all its reference files. Until then it costs about 27 tokens; SKILL.md has 1,321 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~27
When it runs · the whole SKILL.md, loaded when a task matches
~2.8k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.6k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from christopherarter/superpowers-reasonix at commit d202ba4, republished under its MIT licence (© christopherarter). 1,321 words, ~2,751 tokens.

Download SKILL.mdSave it as .claude/skills/superpowers-writing-skills/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
superpowers-writing-skills
description
Creating, editing, or testing a Reasonix skill? Load first, before you deploy it.

Writing Skills (for Reasonix)

Overview

Writing skills IS TDD for process docs. Write test cases (pressure scenarios, subagents). Watch fail (baseline). Write skill. Watch pass (agent complies). Refactor (close loopholes).

Core principle: Didn't watch an agent fail without the skill? Don't know it teaches the right thing.

REQUIRED BACKGROUND: Know superpowers-test-driven-development first — defines RED-GREEN-REFACTOR. This adapts it to docs.

Platform spec: Full Reasonix skill/hook/MCP contract → extending-reasonix. This = authoring discipline; that = exhaustive spec.

What is a Skill?

Reusable playbook the model invokes via run_skill / read_skill (user: /name). Two kinds:

  • Inline — body folds into the turn as a tool result. Default.
  • Subagent (runAs: subagent) — body = a child's system prompt; runs isolated, returns only its final answer. Use only when work is context-heavy and only the conclusion matters.

ARE: reusable techniques, patterns, tools, reference guides. NOT: narratives of solving something once.

Reasonix Skill Anatomy (get these right)

Where skills live & how found
  • Discovery roots, highest priority first: project {.reasonix,.agents,.agent,.claude}/skills/ → [skills] paths in reasonix.toml → home ~/{.reasonix,...}/skills/ → built-ins.
  • First match by name wins (user review overrides built-in). Layout: <root>/skills/<name>/SKILL.md; flat <name>.md works too.
Name

Regex: ^[a-zA-Z0-9][a-zA-Z0-9._-]{0,63}$ — letters/digits/./_/-, ≤64 chars, alphanumeric start. Frontmatter name: overrides the dir stem.

Frontmatter — Reasonix's OWN minimal parser, not real YAML
  • --- opens, next --- closes. Unclosed fence → WHOLE file is the body (no frontmatter). Always close it.
  • Lines = key: value. Keys lowercased (runAs=runas). Values trimmed of one quote layer. Empty value + - item lines = list (comma-joined), so allowed-tools can be a YAML list.
  • No block scalars (>/|), no multi-line values, no nesting. One line per value.

Recognized keys:

KeyEffect
nameidentifier (must pass the regex)
descriptionone-liner for the pinned index. Missing = invisible (loads, runs by exact name, but undiscoverable)
runAssubagent → isolated child; else inline
modelsubagent only: child model (provider, bare model, or provider/model)
effortsubagent only: effort hint (high, max)
allowed-toolssubagent only: comma/list of literal registry tool names; scopes child's tools
Pinned index = 130 chars per line

System prompt lists every described skill as - <name> [🧬 subagent] — <description>, clipped to 130 chars incl. name, whole block capped at 4000 chars. So:

  • Front-load triggers — tail gets cut. Keep it short: 22-char name → ~100 chars before truncation.
  • Worker skill dispatched only by another skill can OMIT description to stay out of the index.
references/ auto-fold (undocumented, load-bearing)

Every references/*.md sibling is appended to the body at load time, sorted by filename, each under ## Reference: <name>. Put depth material there — ships inline, no read_file. scripts/, assets/, references/, dot-dirs never scanned as nested skills. Subagent skill: references join the child's prompt — budget accordingly.

Tool names are snake_case

Registry names only: read_file, write_file, edit_file, multi_edit, ls, glob, grep, bash, web_fetch, todo_write, run_skill, read_skill, task, explore. No web_search — only web_fetch. TitleCase Read/Edit/Bash don't exist; a typo in allowed-tools is silently dropped (subagent just lacks that tool).

Subagent Skills (authoring rules)

Body = child's system prompt, not a message to the parent. Write it as persona + procedure + output format; state the arguments/task string is its entire context.

  • Only input = arguments string. No history. Tell it exactly what its task input contains.
  • Cannot recurse — run_skill/task/skill tools stripped. Can't load other skills. Fold needed discipline (e.g. TDD) into the body or a references/ file.
  • No mid-run back-and-forth; returns one final message. Design "ask the controller" as a reported status (e.g. NEEDS_CONTEXT), not a question.
  • Scope allowed-tools to minimum. Empty = inherit all parent tools (minus meta-tools).

When to Create a Skill

Create when: technique wasn't obvious; you'd reuse it across projects; applies broadly; others benefit.

Don't create for: one-offs; standard documented practices; project conventions (→ AGENTS.md/REASONIX.md); mechanical constraints a hook/lint enforces (automate those — save skills for judgment calls).

Claude/Agent Search Optimization (CSO)

Critical: future agents must FIND your skill via the description.

Description = WHEN to use, not the step-by-step workflow

State the triggering condition. Name the single core action if you want — never enumerate the multi-step procedure. Its only job: get the skill discovered and loaded.

Why: spell out steps and the model follows the description, skips the body. "review between tasks" produced ONE review when the skill specified two; trimmed to the trigger, the model read the body and did both.

House style — validated, not dogma: on the floor model (deepseek-flash) a flat "Use when X" discovers less reliably than a forceful imperative naming the situation as a question + the one key move. So every description reads <trigger>? <STOP / Load first>[ — <one core action>]; the benchmark (bench/) proves it fires the right skill (12/12). Match that voice everywhere; no bare "Use when" lines.

yaml
# ❌ BAD: enumerates the workflow — the model follows this instead of the body
description: Dispatch a subagent per task, review between tasks, then merge
# ❌ BAD: flat trigger — weaker discovery on the floor model
description: Use when implementing a feature or bugfix
# ✅ GOOD: forceful trigger + the single core action (this repo's voice)
description: Writing or fixing any code? Load first — write the failing test before the code.
Keyword coverage & naming
  • Use words the model would search for: error messages ("race condition", "ENOTEMPTY"), symptoms ("flaky", "hanging"), tools (command/library names).
  • Voice: direct imperative/question ("Writing code? Load first…"), not third-person prose — it's injected into the system prompt as an instruction to act on.
  • Name by what you DO or the core insight, verb-first / gerund: condition-based-waiting > async-test-helpers; superpowers-writing-plans > plan-authoring.
Show full SKILL.md (521 more words)Show less
Cross-referencing other skills

Reference by bare name + explicit marker: **REQUIRED SUB-SKILL:** use the superpowers-test-driven-development skill. Don't read_file another SKILL.md, don't @-link it — use run_skill/read_skill so scope resolution and auto-fold work.

The Iron Law (Same as TDD)

NO SKILL WITHOUT A FAILING TEST FIRST

Applies to NEW skills AND EDITS. Wrote the skill before testing? Delete it. Start over. No exceptions for "simple additions" or "just a docs update."

RED-GREEN-REFACTOR for Skills (with Reasonix subagents)

RED — baseline. Dispatch a subagent (task, explore, or a throwaway subagent skill) with a pressure scenario, without your skill in context. Record verbatim: choices, rationalizations, which pressures triggered violations. Must see it fail first.

GREEN — minimal skill. Write a skill addressing those specific rationalizations. No content for hypothetical cases. Re-run the same scenarios with the skill loaded; agent should now comply.

REFACTOR — close loopholes. New rationalization? Add an explicit counter. Re-test until bulletproof.

See the Testing Skills With Subagents reference (auto-included below) for pressure types and methodology.

Bulletproofing Against Rationalization (for discipline skills)

  • Close every loophole explicitly. Not "delete it" but "delete it. Start over. Don't keep it as reference. Don't adapt it. Delete means delete."
  • Address spirit-vs-letter early: "Violating the letter of the rules is violating the spirit." Kills a whole class of rationalizations.
  • Build a rationalization table from baseline testing — every excuse the agent made, with the reality.
  • Create a Red Flags list for self-check before violating.

Flowchart Usage

Small inline dot flowchart ONLY for non-obvious decision points, loops where you might stop too early, or "A vs B" choices. Never for reference (tables), code (code blocks), or linear steps (numbered lists).

Anti-Patterns

  • ❌ Narrative example ("In session 2025-10-03 we found…") — too specific, not reusable
  • ❌ Multi-language dilution — one excellent example beats five mediocre
  • ❌ Code inside flowcharts — can't copy-paste
  • ❌ Generic labels (step1, helper2) — labels must carry meaning
  • ❌ Enumerating the multi-step workflow in description — #1 discovery bug (single core action fine; the step sequence is not)
  • ❌ Bloated bodies for a weak target model — on the floor model every extra paragraph competes with the rules; cut narrative and examples, fold discipline into terse tables, let the benchmark (not obra fidelity) decide what stays

STOP: Before Moving to the Next Skill

After writing ANY skill, STOP and finish its test+deploy cycle. Don't batch-create untested skills. Untested skill = untested code.

Skill Creation Checklist (TDD Adapted)

todo_write each item.

RED: [ ] pressure scenarios (3+ combined for discipline skills) · [ ] run WITHOUT skill, record baseline verbatim · [ ] identify rationalization patterns

GREEN: [ ] valid name (regex) · [ ] fence closed; name + description present · [ ] description trigger-first (single core action OK, never the full workflow), fits ~130-char line · [ ] imperative house voice · [ ] search keywords · [ ] addresses baseline failures · [ ] one excellent example · [ ] correct snake_case tools · [ ] run WITH skill, verify compliance

REFACTOR: [ ] counters for new rationalizations · [ ] rationalization table · [ ] red-flags list · [ ] re-test until bulletproof

Subagent skills: [ ] body = system prompt · [ ] states task is its entire context · [ ] allowed-tools minimal, valid names · [ ] no recursion or mid-run questions

Deploy: [ ] confirm discovery (appears in skill list / index) · [ ] invoke /name or run_skill to confirm it loads · [ ] commit to git

The Bottom Line

Creating skills IS TDD for process docs. Same Iron Law (no skill without a failing test first), same cycle (RED → GREEN → REFACTOR), same payoff (better quality, bulletproof results).

© christopherarter, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file (references) in skills/superpowers-writing-skills of christopherarter/superpowers-reasonix.

  • SKILL.md
  • references/testing-skills-with-subagents.md

Open the folder on GitHubat commit d202ba4

Compare with similar skills

Superpowers Writing Skills next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Superpowers Writing Skills compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Superpowers Writing Skills this skillchristopherarter/superpowers-reasonix102—~2.8kAutomated safety check: PassMIT
Writing Skillsed3dai/ed3d-plugins2501 repos~1.3kAutomated safety check: PassNone
Writing Skillssandgardenhq/sgai137—~4.9kAutomated safety check: PassCustom licence
Reflect on Session Learningscursor/plugins11k5 repos~1.2kAutomated safety check: PassNone
Harness Agent Team Designerrevfactory/harness9.1k—~4.5kAutomated safety check: PassApache-2.0
Writing Skillsfarm-fe/farm5.6k39 repos~5.6kAutomated safety check: PassMIT

Similar skills

  • Writing Skills

    ed3dai/ed3d-plugins

    A skill your agent uses when creating new skills, editing existing skills, or verifying skills work before deployment - applies TDD to process documentation by testing with subagents before writing…

    250 GitHub starsUsed in 1 repo~1.3k tokens
    Agent WorkflowsAuto-check passed
  • Writing Skills

    sandgardenhq/sgai

    TDD for process documentation - test with subagents before writing, iterate until bulletproof.

    137 GitHub stars~4.9k tokensUpdated 20 days ago
    Agent WorkflowsAuto-check passed
  • Official

    Starts three parallel reviewer subagents over the current conversation transcript, then turns their findings into concrete edits to existing skills.

    11k GitHub starsUsed in 5 repos~1.2k tokens
    Agent WorkflowsAuto-check passed
  • Harness Agent Team Designer

    revfactory/harness

    Designs a project-specific agent harness: defines specialist agents, writes the skills they follow, picks an execution mode and model for each, and keeps the setup maintained.

    9.1k GitHub stars~4.5k tokensUpdated 13 days ago
    Agent WorkflowsAuto-check passed
  • Writing Skills

    farm-fe/farm

    A skill your agent uses when creating new skills, editing existing skills, or verifying skills work before deployment

    5.6k GitHub starsUsed in 39 repos~5.6k tokens
    Agent WorkflowsAuto-check passed
  • Skill Builder

    metaskills/skill-builder

    A skill your agent uses when creating new Claude Code skills from scratch, editing existing skills to improve their descriptions or structure, or converting Claude Code sub-agents to skills.

    111 GitHub stars~2.5k tokensUpdated 9 mo ago
    Agent WorkflowsAuto-check passed

More from christopherarter/superpowers-reasonix

All 11 skills in this repo
  • Superpowers Systematic Debugging

    christopherarter/superpowers-reasonix

    Any bug, failing or flaky test, or surprise behavior?. An agent skill from christopherarter/superpowers-reasonix.

    102 GitHub stars~2k tokensUpdated 1 mo ago
    Auto-check passed
  • Superpowers Test Driven Development

    christopherarter/superpowers-reasonix

    Writing or fixing any code?. An agent skill from christopherarter/superpowers-reasonix.

    102 GitHub stars~1.9k tokensUpdated 1 mo ago
    Auto-check passed
  • Superpowers Brainstorming

    christopherarter/superpowers-reasonix

    Building a feature or starting from an idea?. An agent skill from christopherarter/superpowers-reasonix.

    102 GitHub stars~1.7k tokensUpdated 1 mo ago
    Auto-check passed
  • Superpowers Finishing A Development Branch

    christopherarter/superpowers-reasonix

    Branch finished, tests green?. An agent skill from christopherarter/superpowers-reasonix.

    102 GitHub stars~1.3k tokensUpdated 1 mo ago
    Auto-check passed
  • Superpowers Receiving Code Review

    christopherarter/superpowers-reasonix

    Got review feedback?. An agent skill from christopherarter/superpowers-reasonix.

    102 GitHub stars~1.2k tokensUpdated 1 mo ago
    Auto-check passed
  • Superpowers Using Git Worktrees

    christopherarter/superpowers-reasonix

    Feature work needing an isolated workspace, or executing a plan?

    102 GitHub stars~1.4k tokensUpdated 1 mo ago
    Auto-check passed

Categories

Questions about Superpowers Writing Skills

What does Superpowers Writing Skills do?

Creating, editing, or testing a Reasonix skill?. An agent skill from christopherarter/superpowers-reasonix. Superpowers Writing Skills is an agent skill from christopherarter/superpowers-reasonix. Creating, editing, or testing a Reasonix skill?

When should I use Superpowers Writing Skills?

Superpowers Writing Skills fits situations like: tasks that involve Skill authoring; tasks that involve Test-driven development; tasks that involve Subagents.

How do I install Superpowers Writing Skills in Claude Code?

Run `npx skills add christopherarter/superpowers-reasonix --skill superpowers-writing-skills -a claude-code`. Or copy the skill folder (skills/superpowers-writing-skills in christopherarter/superpowers-reasonix) into .claude/skills/superpowers-writing-skills in your project. Claude Code loads it when a task matches its description.

How do I install Superpowers Writing Skills in Codex?

Run `npx skills add christopherarter/superpowers-reasonix --skill superpowers-writing-skills -a codex`. Or copy the skill folder (skills/superpowers-writing-skills in christopherarter/superpowers-reasonix) into .agents/skills/superpowers-writing-skills in your project. Codex loads it when a task matches its description.

Can I use Superpowers Writing Skills in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add christopherarter/superpowers-reasonix --skill superpowers-writing-skills -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/superpowers-writing-skills, .gemini/skills/superpowers-writing-skills, .github/skills/superpowers-writing-skills and .opencode/skills/superpowers-writing-skills in your project.

What does Superpowers Writing Skills need to run?

SKILL.md names no scripts, command-line tools or credentials: Superpowers Writing Skills is instructions for the agent only.

Does Superpowers Writing Skills access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Superpowers Writing Skills safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Superpowers Writing Skills use?

Superpowers Writing Skills is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Superpowers Writing Skills use?

About 2.8k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 835 tokens, read only when the agent opens those files.

What are the alternatives to Superpowers Writing Skills?

Skills that share tags, products or a category with Superpowers Writing Skills: Writing Skills (ed3dai/ed3d-plugins, 250 stars), Writing Skills (sandgardenhq/sgai, 137 stars), Reflect on Session Learnings (cursor/plugins, 11k stars) and Harness Agent Team Designer (revfactory/harness, 9.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Superpowers Writing Skills?

christopherarter (a GitHub user) maintains it in christopherarter/superpowers-reasonix, which has 102 GitHub stars. The repository holds 11 skills in this directory. The repository was last updated on August 20, 2026.

Source: christopherarter/superpowers-reasonix on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.