Agent skill

Test Driven Development

by taracodlabs in taracodlabs/aiden

Write software using the RED-GREEN-REFACTOR cycle for reliable, well-tested code

Apache-2.0Auto-check passedTesting & QA

Install Test Driven Development

skills CLI
$ npx skills add taracodlabs/aiden --skill test-driven-development -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install taracodlabs/aiden test-driven-development --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/taracodlabs/aiden.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/test-driven-development .claude/skills/test-driven-development && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
test-driven-development
GitHub stars
849
Token cost
~1.1k tokens
SKILL.md length
319 words
Files
2
Skills in repo
63
Repo updated
First seen
Licence
Apache-2.0

At a glance

Write software using the RED-GREEN-REFACTOR cycle for reliable, well-tested code

  • Works in 3 steps: RED — Write a failing test first → GREEN — Minimal implementation to pass → REFACTOR — Improve code quality
  • Tasks that involve Test-driven development
  • SKILL.md covers When to Use, How to Use, Examples and Cautions
  • Calls pytest

What it does

Test Driven Development is an agent skill from taracodlabs/aiden. Write software using the RED-GREEN-REFACTOR cycle for reliable, well-tested code

Its SKILL.md is about 1.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `skill.json`).

It sits in Testing & QA, covering Test-driven development and Unit testing. The repository describes itself as: Aiden — an autonomous AI agent and work engine built solo. It can operate your browser, terminal, files, apps, APIs, skills and tools, remember context, recover from failures… The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Test-driven development
  • Tasks that involve Unit testing

Example prompts

  • “/test-driven-development”

Requirements

  • Python 3

Workflow steps

3 steps, taken from the step headings in SKILL.md.

  1. RED — Write a failing test first
  2. GREEN — Minimal implementation to pass
  3. REFACTOR — Improve code quality

What it can do on your machine

Read from SKILL.md and the folder at commit 3704204. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • pytest

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Test Driven Development loads about 1.1k tokens when it runs. Until then it costs about 26 tokens; SKILL.md has 319 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~26
When it runs · the whole SKILL.md, loaded when a task matches
~1.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from taracodlabs/aiden at commit 3704204, republished under its Apache-2.0 licence (© taracodlabs). 319 words, ~1,139 tokens.

Download SKILL.mdSave it as .claude/skills/test-driven-development/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
test-driven-development
description
Write software using the RED-GREEN-REFACTOR cycle for reliable, well-tested code
category
developer
version
1.0.0
origin
aiden
license
Apache-2.0
tags
tdd, testing, red-green-refactor, unit-tests, pytest, jest, vitest, quality, development

Test-Driven Development (TDD)

Use the RED-GREEN-REFACTOR cycle to write reliable, well-tested software. Write tests first, then write the minimal code to pass them, then clean up.

When to Use

  • User wants to implement a new function or module correctly
  • User wants to ensure edge cases are handled before they become bugs
  • User is refactoring and wants a safety net
  • User wants tests for business-critical logic
  • User wants to document behavior through executable tests

How to Use

The TDD cycle
RED    → Write a failing test for the behavior you want
GREEN  → Write the minimum code to make the test pass
REFACTOR → Clean up the code without breaking tests
Repeat for each small behavior increment
Phase 1: RED — Write a failing test first

Write the test before the implementation. It must fail to prove the test works.

python
# test_calculator.py — write this BEFORE calculator.py
import pytest
from calculator import add

def test_add_two_positive_numbers():
  assert add(2, 3) == 5

def test_add_negative_number():
  assert add(-1, 5) == 4

def test_add_floats():
  assert abs(add(0.1, 0.2) - 0.3) < 1e-9

Run the tests — they should fail with ModuleNotFoundError or ImportError:

powershell
pytest test_calculator.py -v
# Expected: FAILED (module not found)
Phase 2: GREEN — Minimal implementation to pass

Write only enough code to make the tests pass — nothing more.

python
# calculator.py
def add(a, b):
  return a + b
powershell
pytest test_calculator.py -v
# Expected: 3 PASSED
Phase 3: REFACTOR — Improve code quality

Clean up implementation and tests while keeping all tests green.

python
# calculator.py — add type hints and docstring
def add(a: float, b: float) -> float:
  """Return the sum of a and b."""
  return a + b
powershell
pytest test_calculator.py -v  # must still pass after refactor
Write tests with pytest (Python)
python
# Parametrize for multiple cases
@pytest.mark.parametrize("a,b,expected", [
  (2, 3, 5),
  (-1, 5, 4),
  (0, 0, 0),
  (1.5, 2.5, 4.0),
])
def test_add(a, b, expected):
  assert add(a, b) == expected

# Test exceptions
def test_add_rejects_string():
  with pytest.raises(TypeError):
    add("hello", 2)
Write tests with Vitest / Jest (TypeScript / JavaScript)
typescript
// calculator.test.ts
import { describe, it, expect } from 'vitest'
import { add } from './calculator'

describe('add()', () => {
  it('adds two positive numbers', () => {
    expect(add(2, 3)).toBe(5)
  })

  it('handles negative numbers', () => {
    expect(add(-1, 5)).toBe(4)
  })

  it('throws on non-number input', () => {
    expect(() => add('a' as any, 2)).toThrow()
  })
})
TDD for API endpoints
python
# test_api.py — RED first
def test_create_user_returns_201(client):
  resp = client.post("/users", json={"name": "Alice", "email": "alice@example.com"})
  assert resp.status_code == 201
  assert resp.json()["id"] is not None

def test_create_user_rejects_missing_email(client):
  resp = client.post("/users", json={"name": "Alice"})
  assert resp.status_code == 422

# Then implement the /users endpoint to make these pass

Examples

"Implement a function that validates Indian phone numbers" → RED: write tests for +91 10-digit numbers, reject 9-digit, reject letters. GREEN: implement regex. REFACTOR: add named groups, docstring.

"Add a discount calculator to the checkout module" → RED: test 10% off, 0% off, 100% off, reject negative discount. GREEN: minimal implementation. REFACTOR: extract constants, add type hints.

"I want to refactor this function but keep it working" → Write characterization tests first (tests that document current behavior), then refactor with test safety net.

Cautions

  • Never skip the RED phase — a test that was never failing might not actually test anything
  • Tests should be independent — each test must set up its own state and not depend on test order
  • Aim for one assertion per test — tests with multiple assertions are harder to diagnose when they fail
  • TDD is slower upfront but faster overall — set this expectation with the user
  • Mock external services (APIs, databases) in unit tests — test real integrations separately

© taracodlabs, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in skills/test-driven-development of taracodlabs/aiden.

  • SKILL.md
  • skill.json

Open the folder on GitHubat commit 3704204

Compare with similar skills

Test Driven Development next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Test Driven Development compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Test Driven Development this skilltaracodlabs/aiden849—~1.1kAutomated safety check: PassApache-2.0
TDD WorkflowhellangleZ/burn-in-cceverywhere-ralph11211 repos~2.4kAutomated safety check: PassNone
TDD Workflowaffaan-m/ECC274k3 repos~2kAutomated safety check: PassMIT
TDD Workflowaffaan-m/ECC274k2 repos~2kAutomated safety check: PassMIT
TDD Workflowaffaan-m/ECC274k2 repos~2.1kAutomated safety check: PassMIT
TDD Workflowaffaan-m/ECC274k1 repos~2.6kAutomated safety check: PassMIT

Similar skills

  • TDD Workflow

    hellangleZ/burn-in-cceverywhere-ralph

    A skill your agent uses when writing new features, fixing bugs, or refactoring code.

    112 GitHub starsUsed in 11 repos~2.4k tokens
    Testing & QAAuto-check passed
  • TDD Workflow

    affaan-m/ECC

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

    274k GitHub starsUsed in 3 repos~2k tokens
    Testing & QAAuto-check passed
  • TDD Workflow

    affaan-m/ECC

    新機能の作成、バグ修正、コードのリファクタリング時にこのスキルを使用します。ユニット、統合、E2Eテストを含む80%以上のカバレッジでテスト駆動開発を強制します。

    274k GitHub starsUsed in 2 repos~2k tokens
    Testing & QAAuto-check passed
  • TDD Workflow

    affaan-m/ECC

    새 기능 작성, 버그 수정 또는 코드 리팩터링 시 이 스킬을 사용하세요. An agent skill from affaan-m/ECC.

    274k GitHub starsUsed in 2 repos~2.1k tokens
    Testing & QAAuto-check passed
  • TDD Workflow

    affaan-m/ECC

    Yeni özellikler yazarken, hata düzeltirken veya kod refactor ederken bu skill'i kullanın.

    274k GitHub starsUsed in 1 repo~2.6k tokens
    Testing & QAAuto-check passed
  • Test Writer

    hamzafarooq/claude-code-starter

    Write unit tests for any function — happy path, edge cases, and error cases.

    145 GitHub stars~345 tokensUpdated 24 days ago
    Testing & QAAuto-check passed

More from taracodlabs/aiden

All 63 skills in this repo
  • Google Flights Search

    taracodlabs/aiden

    Searches Google Flights for prices, schedules and availability through browser automation with URL-based queries, and stops short of booking.

    849 GitHub stars~1.5k tokensUpdated 24 days ago
    Auto-check passed
  • OpenAI Codex CLI Bridge

    taracodlabs/aiden

    Delegates code generation, editing and explanation tasks to the OpenAI Codex CLI, with commands for interactive, auto-edit, question-only and model-specific runs.

    849 GitHub starsUsed in 1 repo~826 tokens
    Auto-check passed
  • Google Hotels Search

    taracodlabs/aiden

    Searches Google Hotels through the agent-browser tool for prices, ratings, amenities and availability, building a search URL from the location and dates and reporting a results table.

    849 GitHub stars~1.5k tokensUpdated 24 days ago
    Auto-check passed
  • Generates dark-themed architecture, component, data-flow and network diagrams as self-contained HTML and SVG files that open in any browser.

    849 GitHub stars~1.3k tokensUpdated 24 days ago
    Auto-check passed
  • Aggregates holdings across Zerodha, Upstox and Angel One and normalizes order parameters into one format, with confirmation required before any routing.

    849 GitHub stars~1.1k tokensUpdated 24 days ago
    Auto-check passed
  • arXiv Paper Search

    taracodlabs/aiden

    Searches arXiv by keyword, category, author or paper ID through its public API and downloads PDFs, with no API key needed.

    849 GitHub stars~1k tokensUpdated 24 days ago
    Auto-check passed

Categories

Questions about Test Driven Development

What does Test Driven Development do?

Write software using the RED-GREEN-REFACTOR cycle for reliable, well-tested code. Test Driven Development is an agent skill from taracodlabs/aiden.

When should I use Test Driven Development?

Test Driven Development fits situations like: tasks that involve Test-driven development; tasks that involve Unit testing.

How do I install Test Driven Development in Claude Code?

Run `npx skills add taracodlabs/aiden --skill test-driven-development -a claude-code`. Or copy the skill folder (skills/test-driven-development in taracodlabs/aiden) into .claude/skills/test-driven-development in your project. Claude Code loads it when a task matches its description.

How do I install Test Driven Development in Codex?

Run `npx skills add taracodlabs/aiden --skill test-driven-development -a codex`. Or copy the skill folder (skills/test-driven-development in taracodlabs/aiden) into .agents/skills/test-driven-development in your project. Codex loads it when a task matches its description.

Can I use Test Driven Development in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add taracodlabs/aiden --skill test-driven-development -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/test-driven-development, .gemini/skills/test-driven-development, .github/skills/test-driven-development and .opencode/skills/test-driven-development in your project.

What does Test Driven Development need to run?

Going by SKILL.md and its folder, Test Driven Development needs the command-line tools its instructions call (pytest). Our summary lists: Python 3.

Does Test Driven Development access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Test Driven Development safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Test Driven Development use?

Test Driven Development is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Test Driven Development use?

About 1.1k tokens (SKILL.md is roughly 4.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Test Driven Development?

Skills that share tags, products or a category with Test Driven Development: TDD Workflow (hellangleZ/burn-in-cceverywhere-ralph, 112 stars), TDD Workflow (affaan-m/ECC, 274k stars), TDD Workflow (affaan-m/ECC, 274k stars) and TDD Workflow (affaan-m/ECC, 274k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Test Driven Development?

taracodlabs (a GitHub organization) maintains it in taracodlabs/aiden, which has 849 GitHub stars. The repository holds 63 skills in this directory. The repository was last updated on September 13, 2026.

Source: taracodlabs/aiden on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.