tdd-workflow
Use this skill when writing new features, fixing bugs, or refactoring code.
Skill by ysyecust
Chalk Labs
Need help deploying tdd-workflow?
Chalk Labs sets up agents like this inside real teams: connected to your tools, tested on your data, with a human in the loop where it matters.
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/ysyecust-tdd-workflow
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: testing, writing, productivity
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions: not checked yet.
What's inside
- Skill name
tdd-workflow- Description
- Use this skill when writing new features, fixing bugs, or refactoring code. Enforces test-driven development with 80%+ coverage including unit, integration, and E2E tests.
- License
- MIT
- Instructions
- 463 lines in SKILL.md · view on GitHub
Files (2)
- SKILL.md
- openai.yaml · agents/
SKILL.md (first lines)
# Test-Driven Development Workflow
This skill ensures all code development follows TDD principles with comprehensive test coverage.
## When to Activate
- Writing new features or functionality
- Fixing bugs or issues
- Refactoring existing code
- Adding API endpoints
- Creating new components
## Core Principles
### 1. Tests BEFORE Code
ALWAYS write tests first, then implement code to make tests pass.
### 2. Coverage Requirements
- Minimum 80% coverage (unit + integration + E2E)
- All edge cases covered
- Error scenarios tested
- Boundary conditions verified
### 3. Test Types
#### Unit Tests
- Individual functions and utilities
- Component logic
- Pure functions
- Helpers and utilities
#### Integration Tests
- API endpoints
- Database operations
- Service interactions
- External API calls
#### E2E Tests (Playwright)
- Critical user flows
- Complete workflows
- Browser automation
- UI interactions
## TDD Workflow Steps
### Step 0: Detect the Test Runner
Do not assume `npm test`. The commands in the steps and examples below use `<test>`, `<test-watch>`, and `<coverage>` as placeholders for the project's actual runner. Resolve them once before starting:
1. **Run the package-manager detector** (ships with ECC):
```bash
node scripts/setup-package-manager.js --detect
```
It resolves the package manager (npm / pnpm / yarn / bun) from, in order: `CLAUDE_PACKAGE_MANAGER`, `.claude/package-manager.json`, the `package.json` `packageManager` field, the lockfile, then global config.
2. **Distinguish the package manager from the test runner — they are not the same.** A project can use Bun to install dependencies yet still run Jest or Vitest. Inspect `package.json` `scripts.test` and the test files:
- `scripts.test` invokes `jest` / `vitest` -> run through the detected PM (`npm test`, `pnpm test`, `yarn test`, or `bun run test`).
- `scripts.test` is `bun test`, or test files `import { test, expect } from "bun:test"`, or there is no jest/vitest config but Bun is present -> use **Bun's native runner** (`bun test`). See [Bun Native Test Pattern](#bun-native-test-pattern-buntest) below.
Runner command matrix:
| Runner | `<test>` | `<test-watch>` | `<coverage>` | `<lint>` |
|--------|----------|----------------|--------------|----------|
| npm | `npm test` | `npm test -- --watch` | `npm run test:coverage` | `npm run lint` |
| pnpm | `pnpm test` | `pnpm test --watch` | `pnpm test:coverage` | `pnpm lint` |
| yarn | `yarn test` | `yarn test --watch` | `yarn test:coverage` | `yarn lint` |
| Bun (script runs jest/vitest) | `bun run test` | `bun run test --watch` | `bun run test:coverage` | `bun run lint` |
| Bun (native `bun:test`) | `bun test` | `bun test --watch` | `bun test --coverage` | `bun run lint` |
> `bun test` (Bun's built-in runner) is **not** the same as `bun run test` (which runs the `package.json` `test` script). Picking the wrong one is a common failure — e.g. invoking Jest through `npx`/`bun run` in an ESM-only project breaks, while `bun test` runs the suite natively. Confirm which the project expects before the RED gate, then substitute `<test>` / `<coverage>` everywhere `npm test` appears below.
### Step 1: Write User Journeys
```
As a [role], I want to [action], so that [benefit]
Example:
As a user, I want to search for markets semantically,
so that I can find relevant markets even without exact keywords.
```
### Step 2: Generate Test Cases
For each user journey, create comprehensive test cases:
```typescript
describe('Semantic Search', () => {
it('returns relevant markets for query', async () => {
// Test implementation
})
it('handles empty query gracefully', async () => {
// Test edge case
})
it('falls back to substring search when Redis unavailable', async () => {
// Test fallback behavior
})
it('sorts results by similarity score', async () => {
// Test sorting logic
})
})
```
### Step 3: Run Tests (They Should Fail)
```bash
<test>
# Tests should fail - we haven't implemented yet
```
### Step 4: Implement Code
Write minimal code to make tests pass:
```typescript
// Implementation guided by tests
export async function searchMarkets(query: string) {
// Implementation here
}From ysyecust/everything-claude-code, MIT.
More from ysyecust/everything-claude-code
- 0.581score
brand-discovery
ysyecust
Use when a brand needs to discover or articulate its identity through structured multi-session interviews.
SkillCFreshness: C★ 59Claude Code +9 - 0.576score
competitive-platform-analysis
ysyecust
Use when scoping a competitive landscape — identifying, categorising, and score-filtering a competitor set before any benchmarking begins.
SkillCFreshness: C★ 59Claude Code +9 - 0.576score
benchmark-methodology
ysyecust
Use after competitive-platform-analysis has produced a tiered competitor set.
SkillCFreshness: C★ 59Claude Code +9 - 0.576score
competitive-report-structure
ysyecust
Use after benchmark-methodology has produced scored competitor profile cards.
SkillCFreshness: C★ 59Claude Code +9 - 0.570score
everything-claude-code
ysyecust
Development conventions and patterns for everything-claude-code.
SkillCFreshness: C★ 59Claude Code +9 - 0.570score
verification-loop
ysyecust
A comprehensive verification system for Claude Code sessions.
SkillCFreshness: C★ 59Claude Code +9 - 0.501score
everything-claude-code-conventions
ysyecust
Development conventions and patterns for everything-claude-code.
SkillDFreshness: D★ 59Claude Code +9
Signals
- Stars
- 59
- Forks
- 11
- Open issues
- 3
- Last commit (this folder)
- Jun 30, 2026 (4 months ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
Same skill elsewhere
Copies of this SKILL.md published by others; search shows only one of them.
- 0.524score
tdd-workflow
vibeeval
Use this skill when writing new features, fixing bugs, or refactoring code.
SkillCFreshness: C★ 540Claude Code +9 - 0.381score
tdd-workflow
matthewhand
Use this skill when writing new features, fixing bugs, or refactoring code.
SkillAFreshness: A★ 20Claude Code +9 - 0.377score
tdd-workflow
Fmarzochi
Use this skill when writing new features, fixing bugs, or refactoring code.
SkillBFreshness: B★ 67Claude Code +9 - 0.349score
tdd-workflow
mturac
Use this skill when writing new features, fixing bugs, or refactoring code.
SkillCFreshness: C★ 83Claude Code +9 - 0.333score
tdd-workflow
fmflurry
Use this skill when writing new features, fixing bugs, or refactoring code.
SkillAFreshness: A★ 171Claude Code +9 - 0.333score
tdd-workflow
fmflurry
Use this skill when writing new features, fixing bugs, or refactoring code.
SkillAFreshness: A★ 171Claude Code +9 - 0.333score
tdd-workflow
fmflurry
Use this skill when writing new features, fixing bugs, or refactoring code.
SkillAFreshness: A★ 171Claude Code +9 - 0.312score
tdd-workflow
Shuyawa89
Use this skill when writing new features, fixing bugs, or refactoring code.
SkillBFreshness: BClaude Code +9 - 0.309score
tdd-workflow
airclear
Use this skill when writing new features, fixing bugs, or refactoring code.
SkillBFreshness: BClaude Code +9 - 0.309score
tdd-workflow
terryzwt
Use this skill when writing new features, fixing bugs, or refactoring code.
SkillBFreshness: BClaude Code +9 - 0.309score
tdd-workflow
worldsoon
Use this skill when writing new features, fixing bugs, or refactoring code.
SkillBFreshness: BClaude Code +9 - 0.300score
tdd-workflow
marshall0524
Use this skill when writing new features, fixing bugs, or refactoring code.
SkillDFreshness: D★ 41Claude Code +9
More from ysyecust
- 0.581score
brand-discovery
ysyecust
Use when a brand needs to discover or articulate its identity through structured multi-session interviews.
SkillCFreshness: C★ 59Claude Code +9 - 0.576score
competitive-platform-analysis
ysyecust
Use when scoping a competitive landscape — identifying, categorising, and score-filtering a competitor set before any benchmarking begins.
SkillCFreshness: C★ 59Claude Code +9 - 0.576score
benchmark-methodology
ysyecust
Use after competitive-platform-analysis has produced a tiered competitor set.
SkillCFreshness: C★ 59Claude Code +9 - 0.576score
competitive-report-structure
ysyecust
Use after benchmark-methodology has produced scored competitor profile cards.
SkillCFreshness: C★ 59Claude Code +9 - 0.570score
everything-claude-code
ysyecust
Development conventions and patterns for everything-claude-code.
SkillCFreshness: C★ 59Claude Code +9 - 0.570score
verification-loop
ysyecust
A comprehensive verification system for Claude Code sessions.
SkillCFreshness: C★ 59Claude Code +9
Done for you
Rather not set it up yourself?
Chalk Labs scopes, builds and runs agents for your team: the task audit, the eval harness, the integrations and the weekly ops report. Fixed scope, priced before we start.
See how we build AI agents →Read the case studies
Chalk Labs is a two-founder AI and growth studio. We build AI agents, CRMs and MVPs for Web3 and AI companies, and have shipped 50+ product and token launches.
- launches shipped
- 50+
- launches shipped
- media placements
- 500+
- media placements
- founders on every account
- 2
- founders on every account
Press we've placed: Forbes · CoinDesk · Decrypt · Cointelegraph · The Block
Rahil Jain, Co-founder, Chalk Labs. Ex-Goldman Sachs engineer. You talk to the person who builds it.
Get tdd-workflow running in your business
Tell us what you want to automate. A founder replies within one working day with a plan, not a pitch deck.
Cite this page
tdd-workflow skill. Agent Mart. https://agentmart.dev/skills/ysyecust-tdd-workflow (last updated 2026-10-24)