tdd-discipline
Test-Driven Development methodology. Use when implementing features or fixing bugs. Write the test first, watch it fail, write minimal code to pass, then refactor. Prevents untested code from shipping.
Install
mkdir -p .claude/skills/tdd-discipline && curl -L -o skill.zip "https://mcp.directory/api/skills/download/8197" && unzip -o skill.zip -d .claude/skills/tdd-discipline && rm skill.zipInstalls to .claude/skills/tdd-discipline
About this skill
TDD Discipline
핵심 사이클
RED → GREEN → REFACTOR → 반복
RED: 실패하는 테스트 작성
- 하나의 동작만 테스트
- 명확한 이름 ("rejects empty email" ✅, "test1" ❌)
- 실제 코드 사용 (mock 최소화)
검증: 실패 확인 (필수! 건너뛰기 금지)
npm test path/to/test.test.ts
- 테스트가 실패하는가? (에러가 아닌 실패)
- 실패 메시지가 예상대로인가?
- 기능 미구현 때문에 실패하는가? (오타 아닌지 확인)
GREEN: 최소한의 코드
- 테스트를 통과하는 가장 간단한 코드
- 기능 추가 금지, 리팩토링 금지
- YAGNI (You Ain't Gonna Need It)
REFACTOR: 정리
- 중복 제거, 이름 개선, 헬퍼 추출
- 테스트는 계속 GREEN 유지
- 동작 추가 금지
위반 시 규칙
테스트 전에 코드 작성했으면? → 삭제. 처음부터.
- "참고용으로 남기자" ❌
- "테스트 쓰면서 적용하자" ❌
- "보지도 말자" ✅
적용 시점
항상:
- 새 기능 구현
- 버그 수정 (버그 재현 테스트 먼저!)
- 동작 변경
예외 (주인님 판단):
- 일회성 프로토타입
- 설정 파일
- 생성된 코드
흔한 합리화
| 핑계 | 현실 |
|---|---|
| "너무 간단해서 테스트 불필요" | 간단한 코드도 깨짐. 테스트 30초 |
| "나중에 테스트 쓸게" | 나중 = 즉시 통과 = 아무것도 증명 못함 |
| "TDD가 느려" | TDD가 디버깅보다 빠름 |
| "수동으로 테스트했어" | 수동 = 기록 없음, 재실행 불가 |
| "X시간 작업 삭제가 아까워" | 매몰비용. 검증 안 된 코드가 진짜 낭비 |
버그 수정 시 TDD
- 버그 재현하는 테스트 작성
- RED 확인 (테스트가 버그를 잡는지)
- 수정 코드 작성
- GREEN 확인
- 회귀 테스트로 영구 보존
More by openclaw
View all skills by openclaw →You might also like
flutter-development
aj-geddes
Build beautiful cross-platform mobile apps with Flutter and Dart. Covers widgets, state management with Provider/BLoC, navigation, API integration, and material design.
drawio-diagrams-enhanced
jgtolentino
Create professional draw.io (diagrams.net) diagrams in XML format (.drawio files) with integrated PMP/PMBOK methodologies, extensive visual asset libraries, and industry-standard professional templates. Use this skill when users ask to create flowcharts, swimlane diagrams, cross-functional flowcharts, org charts, network diagrams, UML diagrams, BPMN, project management diagrams (WBS, Gantt, PERT, RACI), risk matrices, stakeholder maps, or any other visual diagram in draw.io format. This skill includes access to custom shape libraries for icons, clipart, and professional symbols.
ui-ux-pro-max
nextlevelbuilder
"UI/UX design intelligence. 50 styles, 21 palettes, 50 font pairings, 20 charts, 8 stacks (React, Next.js, Vue, Svelte, SwiftUI, React Native, Flutter, Tailwind). Actions: plan, build, create, design, implement, review, fix, improve, optimize, enhance, refactor, check UI/UX code. Projects: website, landing page, dashboard, admin panel, e-commerce, SaaS, portfolio, blog, mobile app, .html, .tsx, .vue, .svelte. Elements: button, modal, navbar, sidebar, card, table, form, chart. Styles: glassmorphism, claymorphism, minimalism, brutalism, neumorphism, bento grid, dark mode, responsive, skeuomorphism, flat design. Topics: color palette, accessibility, animation, layout, typography, font pairing, spacing, hover, shadow, gradient."
godot
bfollington
This skill should be used when working on Godot Engine projects. It provides specialized knowledge of Godot's file formats (.gd, .tscn, .tres), architecture patterns (component-based, signal-driven, resource-based), common pitfalls, validation tools, code templates, and CLI workflows. The `godot` command is available for running the game, validating scripts, importing resources, and exporting builds. Use this skill for tasks involving Godot game development, debugging scene/resource files, implementing game systems, or creating new Godot components.
nano-banana-pro
garg-aayush
Generate and edit images using Google's Nano Banana Pro (Gemini 3 Pro Image) API. Use when the user asks to generate, create, edit, modify, change, alter, or update images. Also use when user references an existing image file and asks to modify it in any way (e.g., "modify this image", "change the background", "replace X with Y"). Supports both text-to-image generation and image-to-image editing with configurable resolution (1K default, 2K, or 4K for high resolution). DO NOT read the image file first - use this skill directly with the --input-image parameter.
fastapi-templates
wshobson
Create production-ready FastAPI projects with async patterns, dependency injection, and comprehensive error handling. Use when building new FastAPI applications or setting up backend API projects.
Related MCP Servers
Browse all serversUnlock seamless Figma to code: streamline Figma to HTML with Framelink MCP Server for fast, accurate design-to-code work
Enhance productivity with customizable audio notifications in your development environment. Ideal for game dev softwares
Reduce errors when generating code with up-to-date Bitrix24 REST API methods — streamline development, improve reliabili
Boost productivity with Task Master: an AI-powered tool for project management and agile development workflows, integrat
Optimize your codebase for AI with Repomix—transform, compress, and secure repos for easier analysis with modern AI tool
Uno Platform — Documentation and prompts for building cross-platform .NET apps with a single codebase. Get guides, sampl
Stay ahead of the MCP ecosystem
Get weekly updates on new skills and servers.