Windsurf rules
.windsurf/rules/craft-skill.mdCreate new bigpowers skills with proper structure, progressive disclosure, and bundled resources. Use when user wants to create, write, or build a new skill for the bigpowers lifecycle.
Windsurf rules
Quality
69/100
Scores the file, not the repository.Length
1,057 words
20 headings · 3 code blocksRepository
119
— · pushed 1 days agoLast changed
3 days ago
First indexed 3 days ago.1234567# Craft Skill89> **HARD GATE** — Do NOT name a skill without a two-word verb-noun pair. Do NOT merge a new skill without running `sync-skills.sh`. Generated `.cursor/rules/` and `.gemini/` artifacts MUST match the source SKILL.md.1011## CSO Description Discipline (e45s02)1213The YAML `description` is the **Catalog Selection Object** — the only field agents see when picking a skill.1415| Rule | Limit |16|------|-------|17| Max length | 1024 characters |18| Voice | Third person |19| Content | Capability + `Use when …` triggers only |20| Forbidden | Workflow steps, phase chains, numbered lists, `→ verify:`, HARD GATE prose |2122Move process detail into the SKILL.md body or REFERENCE.md — never into `description`.2324## Agentic STE body discipline (e79s02)2526Skill-body instructional prose MUST follow [AGENTIC-STE.md](../../docs/AGENTIC-STE.md).2728| Rule | Limit |29|------|-------|30| Sentence length | ≤20 words per instruction sentence |31| Voice | Imperative, active |32| Directive terms | MUST, MUST NOT, NEVER, ALWAYS, DO, DO NOT |33| Banned modals | should, might, could, may, consider, try, generally, typically |34| Scope | SKILL.md body only — not YAML `description`, not `terse-mode` output |3536> **HARD GATE** — Do NOT merge a new or edited skill until `bash scripts/validate-agentic-ste.sh --strict skills/<name>/SKILL.md` exits 0. Fix violations before `sync-skills.sh`.3738## Process39401. **Gather requirements** — ask user about:41 - What task/domain does the skill cover?42 - Which use cases must the skill handle?43 - Does it need executable scripts or just instructions?44 - Any reference materials to include?45 - What specs/ output does it produce (if any)?46472. **Verify Principles** — Ensure the skill aligns with [PRINCIPLES.md](../../docs/PRINCIPLES.md):48 - Is it atomic (verb-noun)?49 - Is it "deep" (simple interface, complex internal logic)?50 - Does it include Hard Gates?51 - Is it verifiable with a `.feature` file?52533. **Draft the skill** — create:54 - SKILL.md with concise instructions (see [REFERENCE.md](REFERENCE.md) for template)55 - Additional reference files if content exceeds 100 lines56 - Utility scripts if deterministic operations needed5758 **Auto-skill from library README:** When user provides a library README or API docs URL, extract triggers and HARD GATEs.59 Draft verify commands and specs/ output into SKILL.md. Do NOT invent APIs not in the source.60614. Add `model:` frontmatter (`haiku` | `sonnet` | `opus`) per [model-profiles.md](../../docs/references/model-profiles.md).6263> **STREAM CONTINUITY** — When writing file content, output in continuous chunks of ~200 lines. Do not pause. Continue immediately until complete. If you need time, emit a placeholder comment rather than going silent.64655. **Review with user** — present draft and ask:66 - Does this cover your use cases?67 - Anything missing or unclear?68 - Does any section need more or less detail?69706. **Completion-honesty gate (HARD GATE — e45s02)** — Before declaring done:71 - Run `bash scripts/validate-skill-description.sh skills/<name>/SKILL.md` — must exit 072 - Run `bash scripts/validate-agentic-ste.sh --strict skills/<name>/SKILL.md` — must exit 0 (e79s02)73 - Run `bash scripts/sync-skills.sh` — must complete without error74 - Run `bash scripts/run-skill-verify.sh <name>` if the skill defines a verify command75 - Show terminal output for each — narration without evidence is rejected7677## Naming Rules7879Every skill name must be a **two-word verb-noun pair**. See [REFERENCE.md](REFERENCE.md) for full rules, examples, and documented exceptions.8081## specs/ Output8283If the skill produces written output, it goes in `specs/` at the project root. Document the output file path in the skill body and in CONVENTIONS.md's output files table.8485## Review Checklist8687After drafting, verify:8889- [ ] Name is a two-word verb-noun pair (or follows grill-me exception)90- [ ] Description < 1024 chars, triggers only, no workflow-summary leakage91- [ ] Description includes triggers ("Use when...")92- [ ] SKILL.md under 100 lines93- [ ] No time-sensitive info94- [ ] Consistent terminology with CONVENTIONS.md95- [ ] specs/ output documented if applicable96- [ ] `validate-skill-description.sh` exits 097- [ ] `validate-agentic-ste.sh --strict` exits 0 (e79s02)98- [ ] `sync-skills.sh` run to propagate to Cursor/Gemini99- [ ] `bash scripts/validate-skill-catalog.sh` passes for the new skill (HARD GATE — completion honesty)100101> **HARD GATE** — Do NOT declare the skill done until `bash scripts/validate-skill-catalog.sh --strict --skill <name>` exits 0. Validator enforces verb-noun name, HARD GATE block, description ≤1024 chars, and `→ verify:` command.102103## Verify104105→ verify: `bash scripts/validate-skill-catalog.sh --strict --skill craft-skill && bash scripts/validate-skill-description.sh skills/craft-skill/SKILL.md`106107---108109# Craft Skill — Reference110111## Naming Rules (full)112113Every skill name must be a **two-word verb-noun pair**:114- First word: a verb (survey, model, define, develop, audit…)115- Second word: a noun from PMBOK 6 / Agile vocabulary (context, domain, language, tdd, code…)116- Pronounceable in any language, searchable, no noise words, no encodings117- Exception precedent: `grill-me` — kept for recognizability118119Good: `survey-context`, `audit-code`, `validate-fix`120Bad: `context-surveyor`, `code-auditing-skill`, `fix-validator`121122Any new naming exception requires an entry in CONVENTIONS.md before the skill is published.123124## Skill Structure125126```127skill-name/128├── SKILL.md # Main instructions (required)129├── REFERENCE.md # Detailed docs (if needed)130├── EXAMPLES.md # Usage examples (if needed)131└── scripts/ # Utility scripts (if needed)132 └── helper.sh133```134135## SKILL.md Template136137```md138---139name: skill-name140description: Brief description of capability. Use when [specific triggers].141---142143# Skill Name144145## Quick start146147[Minimal working example]148149## Workflows150151[Step-by-step processes with checklists for complex tasks]152153## Advanced features154155[Link to separate files: See [REFERENCE.md](REFERENCE.md)]156```157158## Description Requirements159160The description is **the only thing your agent sees** when deciding which skill to load.161162**Format**:163- Max 1024 chars164- Write in third person165- First sentence: what it does166- Second sentence: "Use when [specific triggers]"167168**Good example**:169```170Investigate a bug by exploring the codebase to find root cause, then write a TDD-based fix plan to specs/bugs/BUG-*.md. Use when user reports a bug, wants to investigate a problem, or mentions "triage".171```172173## When to Add Scripts174175Add utility scripts when:176- Operation is deterministic (validation, formatting)177- Same code would be generated repeatedly178- Errors need explicit handling179180## When to Split Files181182Split into separate files when:183- SKILL.md exceeds 100 lines184- Content has distinct domains185- Advanced features are rarely needed186187## sync-skills.sh Propagation188189After adding a new skill directory with SKILL.md, run `scripts/sync-skills.sh` from the bigpowers repo root. This automatically generates:190- `.cursor/rules/<name>.mdc` — for Cursor191- `.gemini/extensions/bigpowers/skills/<name>/SKILL.md` — Agent Skill192- `.gemini/extensions/bigpowers/commands/<name>.toml` — Slash Command193- `.gemini/extensions/bigpowers/commands/prompts/<name>.md` — Command Prompt194- Updated `gemini-extension.json`195196verify: `bash scripts/sync-skills.sh 2>&1 | grep "skills synced"`197
Also in danielvm-git/bigpowers
Diff this repo’s formatsOne 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 |
|---|---|---|---|---|---|
| danielvm-git/bigpowers.cursor/rules/align-grid.mdc · 119 | Cursor rules | lint-formatdo-notagent-behaviour | 65/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/assess-impact.mdc · 119 | Cursor rules | testtesting-strategydeployment | 66/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/audit-code.mdc · 119 | Cursor rules | setuptestlint-formatstyle+4 | 66/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/audit-plan.mdc · 119 | Cursor rules | buildteststylegit | 74/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/build-epic.mdc · 119 | Cursor rules | buildgit | 58/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/change-request.mdc · 119 | Cursor rules | no sections | 48/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/commit-message.mdc · 119 | Cursor rules | lint-formatstyletypesgit+3 | 82/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/compose-workflow.mdc · 119 | Cursor rules | styledo-notagent-behaviour | 65/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/context7-mcp.mdc · 119 | Cursor rules | style | 54/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/deepen-architecture.mdc · 119 | Cursor rules | testtesting-strategydo-not | 57/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/define-language.mdc · 119 | Cursor rules | lint-formatdo-not | 65/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/delegate-task.mdc · 119 | Cursor rules | git | 62/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/deploy.mdc · 119 | Cursor rules | setupbuildtestdeployment | 77/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/develop-tdd.mdc · 119 | Cursor rules | teststylearchtesting-strategy+5 | 85/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/diagnose-root.mdc · 119 | Cursor rules | no sections | 39/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/dispatch-agents.mdc · 119 | Cursor rules | git | 54/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/edit-document.mdc · 119 | Cursor rules | no sections | 39/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/elaborate-spec.mdc · 119 | Cursor rules | test | 58/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/enforce-first.mdc · 119 | Cursor rules | no sections | 50/100 | 3 days ago | |
| danielvm-git/bigpowers.cursor/rules/evolve-skill.mdc · 119 | Cursor rules | no sections | 50/100 | 3 days ago |
Diff against .cursor/rules/align-grid.mdc Diff against .cursor/rules/assess-impact.mdc Diff against .cursor/rules/audit-code.mdc Diff against .cursor/rules/audit-plan.mdc Diff against .cursor/rules/build-epic.mdc Diff against .cursor/rules/change-request.mdc Diff against .cursor/rules/commit-message.mdc Diff against .cursor/rules/compose-workflow.mdc Diff against .cursor/rules/context7-mcp.mdc Diff against .cursor/rules/deepen-architecture.mdc Diff against .cursor/rules/define-language.mdc Diff against .cursor/rules/delegate-task.mdc Diff against .cursor/rules/deploy.mdc Diff against .cursor/rules/develop-tdd.mdc Diff against .cursor/rules/diagnose-root.mdc Diff against .cursor/rules/dispatch-agents.mdc Diff against .cursor/rules/edit-document.mdc Diff against .cursor/rules/elaborate-spec.mdc Diff against .cursor/rules/enforce-first.mdc Diff against .cursor/rules/evolve-skill.mdc
Similar configs
Same format, overlapping stack, ranked by quality.
| Repository | Format | Stack | Covers | Score | Changed |
|---|---|---|---|---|---|
| danielvm-git/bigpowers.windsurf/rules/guard-git.md · 119 | Windsurf rules | stylearchgitsecurity+2 | 89/100 | 3 days ago | |
| danielvm-git/bigpowers.windsurf/rules/organize-workspace.md · 119 | Windsurf rules | buildstylegitdeployment+2 | 89/100 | 3 days ago | |
| danielvm-git/bigpowers.windsurf/rules/quick-fix.md · 119 | Windsurf rules | teststylegitdeployment+1 | 85/100 | 3 days ago | |
| danielvm-git/bigpowers.windsurf/rules/develop-tdd.md · 119 | Windsurf rules | teststylearchtesting-strategy+5 | 85/100 | 3 days ago | |
| danielvm-git/bigpowers.windsurf/rules/commit-message.md · 119 | Windsurf rules | lint-formatstyletypesgit+3 | 82/100 | 3 days ago | |
| danielvm-git/bigpowers.windsurf/rules/extract-design.md · 119 | Windsurf rules | lint-formatstyledependenciesui | 82/100 | 3 days ago | |
| danielvm-git/bigpowers.windsurf/rules/session-state.md · 119 | Windsurf rules | lint-formatstyleagent-behaviour | 82/100 | 3 days ago | |
| danielvm-git/bigpowers.windsurf/rules/setup-environment.md · 119 | Windsurf rules | setupstylesecuritydo-not+1 | 81/100 | 3 days ago |
