CtrlK
BlogDocsLog inGet started
Tessl Logo

coding-agent

Incremental development agent with TDD workflow. Use when implementing features one at a time, following test-driven development, making commits, or resuming development work.

64

Quality

77%

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 ./skills/coding-agent/SKILL.md
SKILL.md
Quality
Evals
Security

Coding Agent

Incremental development agent that implements features using test-driven development (TDD) in subsequent sessions after initialization.

Quick Start

Start a Coding Session

from scripts.coding_agent import CodingAgent

agent = CodingAgent(project_dir)
context = await agent.start_session()
print(f"Session {context.iteration} started")

Implement Next Feature

feature = await agent.select_next_feature()
result = await agent.implement_feature(feature)

if result.success:
    await agent.mark_feature_complete(feature)
    await agent.commit_work(f"Implement: {feature.description}")

Session Protocol

┌─────────────────────────────────────────────────────────────┐
│                   CODING SESSION PROTOCOL                    │
├─────────────────────────────────────────────────────────────┤
│                                                              │
│  1. RESTORE CONTEXT                                         │
│     ├─ Read claude-progress.txt (quick state)              │
│     ├─ Read feature_list.json (work remaining)             │
│     └─ Get git log (recent commits)                        │
│                                                              │
│  2. ENVIRONMENT CHECK                                       │
│     ├─ Run init.sh if needed                               │
│     ├─ Verify server running                               │
│     └─ Run smoke tests                                     │
│                                                              │
│  3. SELECT FEATURE                                          │
│     ├─ Get highest-priority incomplete feature             │
│     ├─ Read feature steps                                  │
│     └─ Plan implementation                                 │
│                                                              │
│  4. IMPLEMENT WITH TDD                                      │
│     ├─ Write failing test                                  │
│     ├─ Verify test fails                                   │
│     ├─ Implement code                                      │
│     ├─ Verify test passes                                  │
│     └─ Verify E2E (if applicable)                         │
│                                                              │
│  5. MARK COMPLETE                                           │
│     ├─ Update feature_list.json (passes: true)            │
│     └─ IMPORTANT: Features only go false → true            │
│                                                              │
│  6. COMMIT WORK                                             │
│     ├─ git add relevant files                              │
│     ├─ Descriptive commit message                          │
│     └─ Reference feature ID                                │
│                                                              │
│  7. UPDATE PROGRESS                                         │
│     ├─ Append to claude-progress.txt                       │
│     └─ List accomplishments and blockers                   │
│                                                              │
│  8. END SESSION                                             │
│     ├─ Leave code in mergeable state                       │
│     └─ Auto-continue or shutdown                           │
│                                                              │
└─────────────────────────────────────────────────────────────┘

TDD Workflow

┌─────────────────────────────────────────────────────────────┐
│                     TDD CYCLE                                │
├─────────────────────────────────────────────────────────────┤
│                                                              │
│    ┌──────────┐                                             │
│    │  1. RED  │  Write failing test                        │
│    └────┬─────┘                                             │
│         │ Test fails ✓                                      │
│         ▼                                                   │
│    ┌──────────┐                                             │
│    │ 2. GREEN │  Write minimal code to pass                │
│    └────┬─────┘                                             │
│         │ Test passes ✓                                     │
│         ▼                                                   │
│    ┌──────────┐                                             │
│    │3.REFACTOR│  Clean up without breaking tests           │
│    └────┬─────┘                                             │
│         │ All tests pass ✓                                  │
│         ▼                                                   │
│    ┌──────────┐                                             │
│    │ 4. E2E   │  Verify in browser (if needed)             │
│    └────┬─────┘                                             │
│         │ Feature works ✓                                   │
│         ▼                                                   │
│      COMMIT                                                 │
│                                                              │
└─────────────────────────────────────────────────────────────┘

Key Rules

  1. ONE FEATURE PER SESSION: Focus prevents context exhaustion
  2. TEST FIRST: Always write test before implementation
  3. VERIFY BEFORE MARKING: Feature must actually pass
  4. DESCRIPTIVE COMMITS: Reference feature ID and explain changes
  5. MERGEABLE STATE: Code should always be in working state

Commit Message Format

<type>: <description>

<body - what and why>

Feature: <feature-id>

Example:

feat: implement user signup with email validation

- Added SignupForm component with validation
- Created /api/auth/signup endpoint
- Added email verification check
- Tests: 8 passing

Feature: auth-001

Integration Points

  • autonomous-session-manager: Detects CONTINUE session
  • context-state-tracker: Provides and updates state
  • security-sandbox: Validates commands
  • progress-tracker: Tracks completion metrics

References

  • references/CODING-WORKFLOW.md - Detailed workflow
  • references/TDD-PATTERNS.md - TDD best practices
  • references/COMMIT-CONVENTIONS.md - Commit guidelines

Scripts

  • scripts/coding_agent.py - Main CodingAgent class
  • scripts/feature_selector.py - Feature prioritization
  • scripts/implementation_workflow.py - TDD implementation
  • scripts/commit_workflow.py - Git commit workflow
Repository
fernandezbaptiste/Skrillz
Last updated
First committed

Also appears in

fernandezbaptiste/Skrillz
In sync

since Sep 12, 2026

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.