CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

spec-driven-coding

Build software projects using structured spec-driven development with the Ralph Wiggum pattern. Use when asked to build, implement, or code a project, feature, or application. Covers discovery (requirements gathering), spec generation, AGENTS.md context generation, and autonomous implementation with fresh-context iterations. Supports any language/framework.

61

Quality

77%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide
SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./clawd/skills/spec-driven-coding/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

63%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A well-structured, mostly lean skill body with clear phase sequencing, good reference linking, and concrete templates for specs, state, and spawn prompts. The main weaknesses are the pseudocode (rather than executable) orchestrator loop, an unlinked helper script in the bundle, and body references to stacks/ files that don't ship with the bundle.

Suggestions

Surface `scripts/ralph-state.sh` from the body (e.g. 'Initialize state: `scripts/ralph-state.sh init <task> <project_dir>`') — and note the script's header advertises `step`/`complete`/`done` commands that its case statement doesn't implement, so either implement them or fix the usage comment.

Replace the Phase 4 orchestrator pseudocode with an executable loop, or explicitly justify the pseudocode (e.g. because `sessions_spawn` invocation is host-specific) and link to `references/ralph-pattern.md` for runnable details.

Remove the hardcoded 'Available stacks' list (or mark it as dynamically read from `stacks/`), and either ship the referenced `stacks/*.md` files in the bundle or state that they are created on first use, so no body path dangles.

DimensionReasoningScore

Conciseness

The body is dense and nearly every section earns its tokens: JSON schemas for `.spec.json` and `.ralph-state.json`, a verbatim spawn prompt, a stack-file template, and a quick-reference table. Only minor instances could be trimmed — the 'Why Ralph?' rationale about context degradation (something Claude already knows), the 'This is the key differentiator' motivational sentence, and the orchestrator pseudocode that duplicates the numbered list above it. This is 'efficient; minor instances of over-explanation', not the noticeably-verbose anchor 3.

4 / 5

Actionability

Discovery, stack matching, and planning give concrete, executable guidance, but the core Phase 4 orchestrator loop is explicitly labeled 'Pseudocode — main session runs this' with no justification for why it isn't executable, and the bundled helper script `scripts/ralph-state.sh` (which implements init/show/reset for exactly this state file) is never mentioned, so the reader can't run state management as-is. 'Pseudocode instead of executable code; missing key details' fits better than anchor 4's 'concrete code with minor gaps'.

3 / 5

Workflow Clarity

The four phases are clearly sequenced with inputs and outputs summarized in the Quick Reference table, and checkpoints are mostly explicit: 'Confirm spec with user before proceeding' in Phase 1, and the spawn prompt's rule 'Set status to "completed" only when everything builds and works' plus the max-iteration guard. The gap keeping it below 5 is that the orchestrator loop itself has no verify step — validation is delegated entirely to the spawned iteration's self-reported status.

4 / 5

Progressive Disclosure

The three reference files (agents-template.md, execution-rules.md, ralph-pattern.md) exist and are clearly signaled one level deep with proper links, but the bundle structure is misaligned in both directions: `scripts/ralph-state.sh` ships in the bundle yet is never referenced from the body (orphaned, undiscoverable), and the body points to a `stacks/` directory and stack files (`cloudflare-hono.md`, `go-cli.md`) that are not present in the bundle. The hardcoded 'Available stacks' list marked '(read from stacks/ dir)' is also stale-prone. This is more than the 'minor organization gaps' of anchor 4.

3 / 5

Total

14

/

20

Passed

Description

81%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

A strong description with concrete, comprehensive capability statements, natural trigger synonyms, and an explicit 'Use when' clause. Its one weakness is breadth: triggering on nearly any build/coding request creates high overlap risk with more specific implementation skills.

Suggestions

Narrow the 'Use when' clause to signal the spec-driven workflow specifically (e.g. 'Use when the user wants a structured, spec-first build process or autonomous multi-iteration implementation'), so plain one-off coding requests route elsewhere.

Keep the methodology name but add a one-phrase gloss of what it means (e.g. 'fresh-context spawn-per-iteration implementation') so the distinctive 'Ralph Wiggum pattern' term isn't opaque jargon to whoever chooses between skills.

DimensionReasoningScore

Specificity

Lists multiple concrete actions covering the whole workflow: 'discovery (requirements gathering)', 'spec generation', 'AGENTS.md context generation', and 'autonomous implementation with fresh-context iterations' — comprehensive coverage with no real gaps, matching the anchor-5 example's pattern of four-plus specific actions. It is not a 4 because no phase of the skill's coverage is missing.

5 / 5

Completeness

Explicitly answers both questions: the 'what' ('Build software projects using structured spec-driven development... Covers discovery... spec generation... AGENTS.md context generation...') and a concrete 'when' clause ('Use when asked to build, implement, or code a project, feature, or application'). This mirrors the anchor-5 good example structure exactly.

5 / 5

Trigger Term Quality

Natural trigger phrases are present with synonyms — 'Use when asked to build, implement, or code a project, feature, or application' — but common variations like 'create', 'develop', 'make', or 'scaffold' are missing. Good coverage, a few natural terms absent, so 4 rather than the comprehensive 5.

4 / 5

Distinctiveness Conflict Risk

Although the methodology named (spec-driven, 'Ralph Wiggum pattern', AGENTS.md) is distinctive, the trigger set — 'asked to build, implement, or code a project, feature, or application' plus 'Supports any language/framework' — matches virtually every ordinary coding request, so this skill would fire in place of many similar implementation/framework skills. This is 'very broad; high overlap risk' rather than the somewhat-specific anchor 3, whose example at least narrows to a file type.

2 / 5

Total

16

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository

stukennedy/openclaw-starter-kit

Path

clawd/skills/spec-driven-coding/SKILL.md

Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.