CtrlK
BlogDocsLog inGet started
Tessl Logo

tdd-workflow

在编写新功能、修复错误或重构代码时使用此技能。强制执行测试驱动开发,确保单元测试、集成测试和端到端测试的覆盖率超过80%。

58

Quality

68%

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 ./docs/zh-CN/skills/tdd-workflow/SKILL.md
SKILL.md
Quality
Evals
Security

Quality

Content

56%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 body delivers genuinely actionable, executable testing guidance anchored by a clear 7-step TDD workflow, but it is overlong for a SKILL.md: coverage requirements are restated in several sections, generic best-practice lists pad the token budget, and the framework-specific patterns and mock recipes should live in reference files. Consolidating duplicates and splitting the detailed patterns out would lift both conciseness and progressive disclosure.

Suggestions

State the 80% coverage requirement once (in the core-principles or coverage section) and delete the repetitions in step 7, the coverage-verification section, and the success-metrics section.

Move the framework-specific patterns (Jest/Vitest unit, Playwright e2e, API integration, and the Supabase/Redis/OpenAI mock recipes) into a references/ file such as TEST_PATTERNS.md, keeping SKILL.md as a workflow overview with one compact example per test type.

Cut the 10-item generic best-practices list and the closing motivational line — both restate testing knowledge Claude already has and add no skill-specific value.

DimensionReasoningScore

Conciseness

The ~435-line body has noticeable padding: the 80% coverage requirement is repeated in at least four sections ("核心原则", "步骤 7", "测试覆盖率验证", "成功指标"), the 10-item "最佳实践" list restates well-known testing practices Claude already knows (one assertion per test, descriptive test names, arrange-act-assert), and the closing motivational line "测试不是可选的" is filler. This matches anchor 2 ('several unnecessary explanations or padded sections') rather than anchor 3, because the redundancy is repeated across whole sections, not just occasional loose sentences.

2 / 5

Actionability

Most guidance is executable: real commands ("npm test", "npm run test:coverage"), runnable Jest/Vitest, Playwright, and Next.js API test snippets, concrete Supabase/Redis/OpenAI mock recipes, and a copy-paste Jest coverageThresholds config. It falls short of anchor 5 because several workflow snippets are stubs ("// Test implementation", "// Implementation here") and one integration test ("handles database errors gracefully") is an empty shell.

4 / 5

Workflow Clarity

The 7-step TDD workflow (user journey → generate tests → run and expect failure → implement → run and expect pass → refactor → verify coverage) is clearly sequenced with explicit checkpoints at steps 3, 5, and 7. It is anchor 4 rather than 5 because there is no error-recovery feedback loop (e.g., what to do when tests fail after refactoring or coverage falls short) and no checklist tying the steps back to validation.

4 / 5

Progressive Disclosure

No bundle files (references/, scripts/, assets/) exist, and the skill is a single 435-line file that inlines per-framework test patterns (Jest, Playwright, API) and mock recipes that clearly belong in separate reference files — matching anchor 3 ('content that should be separate is inline'). It is not anchor 2 because the file has clear, consistently headed sections and is navigable; it is not anchor 4 because nothing at all is split out for a skill of this size.

3 / 5

Total

13

/

20

Passed

Description

80%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: it explicitly states what the skill does with a quantified coverage target and gives three concrete, natural trigger conditions. Its main weaknesses are broad trigger conditions that overlap with general development skills, and missing natural trigger terms like 'tests' that appear only in the body.

DimensionReasoningScore

Specificity

The description names the domain and concrete, quantified actions — "强制执行测试驱动开发" (enforces TDD) and "确保单元测试、集成测试和端到端测试的覆盖率超过80%" (ensures >80% coverage across unit, integration, and e2e tests). It lists several specific capabilities with a measurable threshold, matching the anchor for 'several specific actions; minor gaps', but falls short of anchor 5 because it does not enumerate the distinct TDD actions (write failing test, implement, refactor).

4 / 5

Completeness

It explicitly answers both questions: what it does ("强制执行测试驱动开发,确保…覆盖率超过80%") and when to use it ("在编写新功能、修复错误或重构代码时使用此技能"), with three concrete trigger phrases — the same structure as the anchor-5 example. It is not anchor 4 because the 'when' clause is already fully explicit rather than merely present.

5 / 5

Trigger Term Quality

Trigger phrases "编写新功能" (writing new features), "修复错误" (fixing bugs), and "重构代码" (refactoring code) are natural things a user would say when they need this skill. Coverage is good but misses common natural terms like "测试" (tests/testing), "添加API端点", and "创建新组件" that the body lists, so it fits anchor 4 rather than the comprehensive synonym coverage of anchor 5.

4 / 5

Distinctiveness Conflict Risk

TDD is a recognizable niche, but the trigger conditions (any new feature, bug fix, or refactor) are broad enough to overlap with general coding and testing skills, matching anchor 3 ('somewhat specific but could still overlap with similar skills'). It is not anchor 4 because the triggers are not tightly scoped to testing-specific requests.

3 / 5

Total

16

/

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

frontmatter_unknown_keys

Unknown frontmatter key(s) found; consider removing or moving to metadata

Warning

Total

15

/

16

Passed

Repository
affaan-m/ECC
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.