mirror of
https://github.com/affaan-m/everything-claude-code.git
synced 2026-02-19 04:33:11 +08:00
Major OpenCode integration overhaul: - llms.txt: Comprehensive OpenCode documentation for LLMs (642 lines) - .opencode/plugins/ecc-hooks.ts: All Claude Code hooks translated to OpenCode's plugin system - .opencode/tools/*.ts: 3 custom tools (run-tests, check-coverage, security-audit) - .opencode/commands/*.md: All 24 commands in OpenCode format - .opencode/package.json: npm package structure for opencode-ecc - .opencode/index.ts: Main plugin entry point - Delete incorrect LIMITATIONS.md (hooks ARE supported via plugins) - Rewrite MIGRATION.md with correct hook event mapping - Update README.md OpenCode section to show full feature parity OpenCode has 20+ events vs Claude Code's 3 phases: - PreToolUse → tool.execute.before - PostToolUse → tool.execute.after - Stop → session.idle - SessionStart → session.created - SessionEnd → session.deleted - Plus: file.edited, file.watcher.updated, permission.asked, todo.updated - 12 agents: Full parity - 24 commands: Full parity (+1 from original 23) - 16 skills: Full parity - Hooks: OpenCode has MORE (20+ events vs 3 phases) - Custom Tools: 3 native OpenCode tools The OpenCode configuration can now be: 1. Used directly: cd everything-claude-code && opencode 2. Installed via npm: npm install opencode-ecc
67 lines
1.7 KiB
Markdown
67 lines
1.7 KiB
Markdown
---
|
|
description: Enforce TDD workflow with 80%+ coverage
|
|
agent: tdd-guide
|
|
subtask: true
|
|
---
|
|
|
|
# TDD Command
|
|
|
|
Implement the following using strict test-driven development: $ARGUMENTS
|
|
|
|
## TDD Cycle (MANDATORY)
|
|
|
|
```
|
|
RED → GREEN → REFACTOR → REPEAT
|
|
```
|
|
|
|
1. **RED**: Write a failing test FIRST
|
|
2. **GREEN**: Write minimal code to pass the test
|
|
3. **REFACTOR**: Improve code while keeping tests green
|
|
4. **REPEAT**: Continue until feature complete
|
|
|
|
## Your Task
|
|
|
|
### Step 1: Define Interfaces (SCAFFOLD)
|
|
- Define TypeScript interfaces for inputs/outputs
|
|
- Create function signature with `throw new Error('Not implemented')`
|
|
|
|
### Step 2: Write Failing Tests (RED)
|
|
- Write tests that exercise the interface
|
|
- Include happy path, edge cases, and error conditions
|
|
- Run tests - verify they FAIL
|
|
|
|
### Step 3: Implement Minimal Code (GREEN)
|
|
- Write just enough code to make tests pass
|
|
- No premature optimization
|
|
- Run tests - verify they PASS
|
|
|
|
### Step 4: Refactor (IMPROVE)
|
|
- Extract constants, improve naming
|
|
- Remove duplication
|
|
- Run tests - verify they still PASS
|
|
|
|
### Step 5: Check Coverage
|
|
- Target: 80% minimum
|
|
- 100% for critical business logic
|
|
- Add more tests if needed
|
|
|
|
## Coverage Requirements
|
|
|
|
| Code Type | Minimum |
|
|
|-----------|---------|
|
|
| Standard code | 80% |
|
|
| Financial calculations | 100% |
|
|
| Authentication logic | 100% |
|
|
| Security-critical code | 100% |
|
|
|
|
## Test Types to Include
|
|
|
|
- **Unit Tests**: Individual functions
|
|
- **Edge Cases**: Empty, null, max values, boundaries
|
|
- **Error Conditions**: Invalid inputs, network failures
|
|
- **Integration Tests**: API endpoints, database operations
|
|
|
|
---
|
|
|
|
**MANDATORY**: Tests must be written BEFORE implementation. Never skip the RED phase.
|