CtrlK
BlogDocsLog inGet started
Tessl Logo
SkillPublic

build

Use when implementing any feature or bugfix, before writing implementation code

Quality

63%

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 ./plugins/canonical-workflow/skills/build/SKILL.md

The canonical home for this skill is test-driven-development in obra/superpowers

SKILL.md
Quality
Evals
Security

Quality

Content

77%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.

The content is an exemplar of actionable, validated workflow instruction — concrete code, mandatory verification with expected output, and feedback loops for every failure mode. Its weaknesses are redundancy (the same enforcement rule restated across four sections) and a broken reference: writing-good-tests.md is cited but missing from the bundle, while bulk content that belongs in a reference file is inlined.

Suggestions

Create the referenced writing-good-tests.md (or remove the link) — currently the body points to a file that doesn't exist in the bundle.

Consolidate the overlapping enforcement sections: merge the Red Flags list into the Common Rationalizations table, since both restate "delete code, start over" and items like "Keep as reference" appear in both.

DimensionReasoningScore

Conciseness

The body is punchy and assumes competence (no explanations of what testing or refactoring are), but the same rule — delete code written before the test, start over — is restated four-plus times across "The Iron Law", "Common Rationalizations", "Red Flags", and "Final Rule", and the rationalization table's long "Reality" cells repeat items that reappear verbatim in the red-flags list. This matches anchor 3 ("mostly efficient but could be tightened") better than anchor 4, where over-explanation would be only minor.

3 / 5

Actionability

Fully executable Good/Bad TypeScript pairs, exact commands with expected output ("npm test path/to/test.test.ts", "$ npm test / FAIL: expected 'Email required', got undefined"), and concrete coverage of the common cases (feature, bug fix, refactoring, getting stuck). This matches anchor 5 ("copy-paste ready code or commands; specific examples cover the common cases"); the lone "// ..." elision in submitForm is a deliberate minimal-GREEN illustration, not a gap.

5 / 5

Workflow Clarity

The RED → verify-RED → GREEN → verify-GREEN → REFACTOR cycle has explicit mandatory verification commands after each phase, feedback loops for every failure mode ("Test passes? You're testing existing behavior. Fix test.", "Test errors? Fix error, re-run"), error recovery for suite-level failures, and a completion checklist. This matches anchor 5 (explicit validation steps, feedback loops, checklists for complex processes) exactly.

5 / 5

Progressive Disclosure

Section structure is clear, and the one reference is well-signaled ("read [writing-good-tests.md](writing-good-tests.md) for the rules that keep tests honest"), but that file does not exist in the skill bundle — no references/ directory is present — so the link is broken. Additionally, the ~330-line body inlines the large Common Rationalizations table, which is exactly the detail-level content that belongs in a reference file. This fits anchor 3 ("references present but not clearly signaled; content that should be separate is inline") better than anchor 4, whose structure would require the referenced file to actually resolve.

3 / 5

Total

16

/

20

Passed

Description

32%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.

The description is trigger-only: it says when to use the skill but never what the skill does, giving it no identity in a skill index. Its trigger scope is also the entire domain of writing code, creating high conflict risk with any other development skill.

Suggestions

Add a 'what' clause naming the skill's behavior, e.g., "Enforces test-driven development: write the failing test first, verify it fails, then write minimal code. Use when implementing any feature or bugfix, before writing implementation code."

Broaden trigger terms with natural variations users actually say: "fixing a bug", "writing or changing code", "adding functionality".

Narrow the trigger scope or add distinguishing keywords (TDD, test-first, red-green-refactor) so it doesn't compete with every general coding skill.

DimensionReasoningScore

Specificity

The description names the domain — "implementing any feature or bugfix, before writing implementation code" — but never states what the skill actually does (e.g., enforce test-driven development). It matches anchor 2 ("Names the domain but actions are minimal or generic") rather than anchor 1, since a concrete domain is identified, but no action verbs describe the skill's behavior.

2 / 5

Completeness

Only the 'when' is present ("Use when implementing any feature or bugfix, before writing implementation code") with no 'what' — the description never says the skill enforces test-first/TDD development. This exactly matches anchor 2 ("only 'when' is present without 'what'", e.g., "Use when working with documents"); it cannot score 3 because the 'what' is entirely absent, not merely weakly implied.

2 / 5

Trigger Term Quality

"feature", "bugfix", and "implementation code" are terms users naturally say, but common variations are missing ("fix a bug", "write code", "add functionality", "change"). This fits anchor 3 ("Some relevant keywords but missing common variations or synonyms"), not anchor 4, whose example shows a fuller spread of natural phrases.

3 / 5

Distinctiveness Conflict Risk

"implementing any feature or bugfix" covers virtually all development work, so it overlaps with nearly every coding-related skill. It fits anchor 2 ("Very broad; high overlap risk with many similar skills") rather than anchor 1 because it is at least scoped to code implementation rather than being content-agnostic like "helps with code and documents".

2 / 5

Total

9

/

20

Passed

Validation

93%

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

Validation — 15 / 16 Passed

Validation for skill structure

CriteriaDescriptionResult

relative_links

Relative link issues: 1 missing

Warning

Total

15

/

16

Passed

Repository

perihelionhq/perihelion-platform-context

Path

plugins/canonical-workflow/skills/build/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.