ccw-loop
๐ฏSkillfrom catlog22/claude-code-workflow
ccw-loop skill from catlog22/claude-code-workflow
Part of
catlog22/claude-code-workflow(15 items)
Installation
npm install -g claude-code-workflowpip install -e .Skill Details
Stateless iterative development loop workflow with documented progress. Supports develop, debug, and validate phases with file-based state tracking. Triggers on "ccw-loop", "dev loop", "development loop", "ๅผๅๅพช็ฏ", "่ฟญไปฃๅผๅ".
Overview
# CCW Loop - Stateless Iterative Development Workflow
ๆ ็ถๆ่ฟญไปฃๅผๅๅพช็ฏๅทฅไฝๆต๏ผๆฏๆๅผๅ (develop)ใ่ฐ่ฏ (debug)ใ้ช่ฏ (validate) ไธไธช้ถๆฎต๏ผๆฏไธช้ถๆฎต้ฝๆ็ฌ็ซ็ๆไปถ่ฎฐๅฝ่ฟๅฑใ
Arguments
| Arg | Required | Description |
|-----|----------|-------------|
| task | No | Task description (for new loop, mutually exclusive with --loop-id) |
| --loop-id | No | Existing loop ID to continue (from API or previous session) |
| --auto | No | Auto-cycle mode (develop โ debug โ validate โ complete) |
Unified Architecture (API + Skill Integration)
```
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Dashboard (UI) โ
โ [Create] [Start] [Pause] [Resume] [Stop] [View Progress] โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ loop-v2-routes.ts (Control Plane) โ
โ โ
โ State: .loop/{loopId}.json (MASTER) โ
โ Tasks: .loop/{loopId}.tasks.jsonl โ
โ โ
โ /start โ Trigger ccw-loop skill with --loop-id โ
โ /pause โ Set status='paused' (skill checks before action) โ
โ /stop โ Set status='failed' (skill terminates) โ
โ /resume โ Set status='running' (skill continues) โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ
โผ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ ccw-loop Skill (Execution Plane) โ
โ โ
โ Reads/Writes: .loop/{loopId}.json (unified state) โ
โ Writes: .loop/{loopId}.progress/* (progress files) โ
โ โ
โ BEFORE each action: โ
โ โ Check status: paused/stopped โ exit gracefully โ
โ โ running โ continue with action โ
โ โ
โ Actions: init โ develop โ debug โ validate โ complete โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
```
Key Design Principles
- ็ปไธ็ถๆ: API ๅ Skill ๅ
ฑไบซ
.loop/{loopId}.json็ถๆๆไปถ - ๆงๅถไฟกๅท: Skill ๆฏไธช Action ๅๆฃๆฅ status ๅญๆฎต (paused/stopped)
- ๆไปถ้ฉฑๅจ: ๆๆ่ฟๅบฆใ็่งฃใ็ปๆ้ฝ่ฎฐๅฝๅจ
.loop/{loopId}.progress/ - ๅฏๆขๅค: ไปปไฝๆถๅๅฏไปฅ็ปง็ปญไนๅ็ๅพช็ฏ (
--loop-id) - ๅ่งฆๅ: ๆฏๆ API ่งฆๅ (
--loop-id) ๅ็ดๆฅ่ฐ็จ (task description) - Gemini ่พ ๅฉ: ไฝฟ็จ CLI ๅทฅๅ ท่ฟ่กๆทฑๅบฆๅๆๅๅ่ฎพ้ช่ฏ
Execution Modes
Mode 1: Interactive (ไบคไบๅผ)
็จๆทๆๅจ้ๆฉๆฏไธชๅจไฝ๏ผ้ๅๅคๆไปปๅกใ
```
็จๆท โ ้ๆฉๅจไฝ โ ๆง่ก โ ๆฅ็็ปๆ โ ้ๆฉไธไธๅจไฝ
```
Mode 2: Auto-Loop (่ชๅจๅพช็ฏ)
ๆ้ข่ฎพ้กบๅบ่ชๅจๆง่ก๏ผ้ๅๆ ๅๅผๅๆต็จใ
```
Develop โ Debug โ Validate โ (ๅฆๆ้ฎ้ข) โ Develop โ ...
```
Session Structure (Unified Location)
```
.loop/
โโโ {loopId}.json # ไธป็ถๆๆไปถ (API + Skill ๅ ฑไบซ)
โโโ {loopId}.tasks.jsonl # ไปปๅกๅ่กจ (API ็ฎก็)
โโโ {loopId}.progress/ # Skill ่ฟๅบฆๆไปถ
โโโ develop.md # ๅผๅ่ฟๅบฆ่ฎฐๅฝ
โโโ debug.md # ็่งฃๆผๅๆๆกฃ
โโโ validate.md # ้ช่ฏๆฅๅ
โโโ changes.log # ไปฃ็ ๅๆดๆฅๅฟ (NDJSON)
โโโ debug.log # ่ฐ่ฏๆฅๅฟ (NDJSON)
```
Directory Setup
```javascript
// loopId ๆฅๆบ:
// 1. API ่งฆๅๆถ: ไป --loop-id ๅๆฐ่ทๅ
// 2. ็ดๆฅ่ฐ็จๆถ: ็ๆๆฐ็ loop-v2-{timestamp}-{random}
const loopId = args['--loop-id'] || generateLoopId()
const loopFile = .loop/${loopId}.json
const progressDir = .loop/${loopId}.progress
// ๅๅปบ่ฟๅบฆ็ฎๅฝ
Bash(mkdir -p "${progressDir}")
```
Action Catalog
| Action | Purpose | Output Files | CLI Integration |
|--------|---------|--------------|-----------------|
| [action-init](phases/actions/action-init.md) | ๅๅงๅๅพช็ฏไผ่ฏ | meta.json, state.json | - |
| [action-develop-with-file](phases/actions/action-develop-with-file.md) | ๅผๅไปปๅกๆง่ก | progress.md, tasks.json | gemini --mode write |
| [action-debug-with-file](phases/actions/action-debug-with-file.md) | ๅ่ฎพ้ฉฑๅจ่ฐ่ฏ | understanding.md, hypotheses.json | gemini --mode analysis |
| [action-validate-with-file](phases/actions/action-validate-with-file.md) | ๆต่ฏไธ้ช่ฏ | validation.md, test-results.json | gemini --mode analysis |
| [action-complete](phases/actions/action-complete.md) | ๅฎๆๅพช็ฏ | summary.md | - |
| [action-menu](phases/actions/action-menu.md) | ๆพ็คบๆไฝ่ๅ | - | - |
Usage
```bash
# ๅฏๅจๆฐๅพช็ฏ (็ดๆฅ่ฐ็จ)
/ccw-loop "ๅฎ็ฐ็จๆท่ฎค่ฏๅ่ฝ"
# ็ปง็ปญ็ฐๆๅพช็ฏ (API ่งฆๅๆๆๅจๆขๅค)
/ccw-loop --loop-id loop-v2-20260122-abc123
# ่ชๅจๅพช็ฏๆจกๅผ
/ccw-loop --auto "ไฟฎๅค็ปๅฝbugๅนถๆทปๅ ๆต่ฏ"
# API ่งฆๅ่ชๅจๅพช็ฏ
/ccw-loop --loop-id loop-v2-20260122-abc123 --auto
```
Execution Flow
```
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ /ccw-loop [
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ โ
โ 1. Parameter Detection: โ
โ โโ IF --loop-id provided: โ
โ โ โโ Read .loop/{loopId}.json โ
โ โ โโ Validate status === 'running' โ
โ โ โโ Continue from skill_state.current_action โ
โ โโ ELSE (task description): โ
โ โโ Generate new loopId โ
โ โโ Create .loop/{loopId}.json โ
โ โโ Initialize with action-init โ
โ โ
โ 2. Orchestrator Loop: โ
โ โโ Read state from .loop/{loopId}.json โ
โ โโ Check control signals: โ
โ โ โโ status === 'paused' โ Exit (wait for resume) โ
โ โ โโ status === 'failed' โ Exit with error โ
โ โ โโ status === 'running' โ Continue โ
โ โโ Show menu / auto-select next action โ
โ โโ Execute action โ
โ โโ Update .loop/{loopId}.progress/{action}.md โ
โ โโ Update .loop/{loopId}.json (skill_state) โ
โ โโ Loop or exit based on user choice / completion โ
โ โ
โ 3. Action Execution: โ
โ โโ BEFORE: checkControlSignals() โ exit if paused/stopped โ
โ โโ Develop: Plan โ Implement โ Document progress โ
โ โโ Debug: Hypothesize โ Instrument โ Analyze โ Fix โ
โ โโ Validate: Test โ Check โ Report โ
โ โโ AFTER: Update skill_state in .loop/{loopId}.json โ
โ โ
โ 4. Termination: โ
โ โโ Control signal: paused (graceful exit, wait resume) โ
โ โโ Control signal: stopped (failed state) โ
โ โโ User exits (interactive mode) โ
โ โโ All tasks completed (status โ completed) โ
โ โโ Max iterations reached โ
โ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
```
Reference Documents
| Document | Purpose |
|----------|---------|
| [phases/orchestrator.md](phases/orchestrator.md) | ็ผๆๅจ๏ผ็ถๆ่ฏปๅ + ๅจไฝ้ๆฉ |
| [phases/state-schema.md](phases/state-schema.md) | ็ถๆ็ปๆๅฎไน |
| [specs/loop-requirements.md](specs/loop-requirements.md) | ๅพช็ฏ้ๆฑ่ง่ |
| [specs/action-catalog.md](specs/action-catalog.md) | ๅจไฝ็ฎๅฝ |
| [templates/progress-template.md](templates/progress-template.md) | ่ฟๅบฆๆๆกฃๆจกๆฟ |
| [templates/understanding-template.md](templates/understanding-template.md) | ็่งฃๆๆกฃๆจกๆฟ |
Integration with Loop Monitor (Dashboard)
ๆญค Skill ไธ CCW Dashboard ็ Loop Monitor ๅฎ็ฐ ๆงๅถๅนณ้ข + ๆง่กๅนณ้ข ๅ็ฆปๆถๆ๏ผ
Control Plane (Dashboard/API โ loop-v2-routes.ts)
- ๅๅปบๅพช็ฏ:
POST /api/loops/v2โ ๅๅปบ.loop/{loopId}.json - ๅฏๅจๆง่ก:
POST /api/loops/v2/:loopId/startโ ่งฆๅ/ccw-loop --loop-id {loopId} --auto - ๆๅๆง่ก:
POST /api/loops/v2/:loopId/pauseโ ่ฎพ็ฝฎstatus='paused'(Skill ไธๆฌกๆฃๆฅๆถ้ๅบ) - ๆขๅคๆง่ก:
POST /api/loops/v2/:loopId/resumeโ ่ฎพ็ฝฎstatus='running'โ ้ๆฐ่งฆๅ Skill - ๅๆญขๆง่ก:
POST /api/loops/v2/:loopId/stopโ ่ฎพ็ฝฎstatus='failed'
Execution Plane (ccw-loop Skill)
- ่ฏปๅ็ถๆ: ไป
.loop/{loopId}.json่ฏปๅ API ่ฎพ็ฝฎ็็ถๆ - ๆฃๆฅๆงๅถ: ๆฏไธช Action ๅๆฃๆฅ
statusๅญๆฎต - ๆง่กๅจไฝ: develop โ debug โ validate โ complete
- ๆดๆฐ่ฟๅบฆ: ๅๅ
ฅ
.loop/{loopId}.progress/*.mdๅๆดๆฐskill_state - ็ถๆๅๆญฅ: Dashboard ้่ฟ่ฏปๅ
.loop/{loopId}.json่ทๅ่ฟๅบฆ
CLI Integration Points
Develop Phase
```bash
ccw cli -p "PURPOSE: Implement {task}...
TASK: โข Analyze requirements โข Write code โข Update progress
MODE: write
CONTEXT: @progress.md @tasks.json
EXPECTED: Implementation + updated progress.md
" --tool gemini --mode write --rule development-implement-feature
```
Debug Phase
```bash
ccw cli -p "PURPOSE: Generate debugging hypotheses...
TASK: โข Analyze error โข Generate hypotheses โข Add instrumentation
MODE: analysis
CONTEXT: @understanding.md @debug.log
EXPECTED: Hypotheses + instrumentation plan
" --tool gemini --mode analysis --rule analysis-diagnose-bug-root-cause
```
Validate Phase
```bash
ccw cli -p "PURPOSE: Validate implementation...
TASK: โข Run tests โข Check coverage โข Verify requirements
MODE: analysis
CONTEXT: @validation.md @test-results.json
EXPECTED: Validation report
" --tool gemini --mode analysis --rule analysis-review-code-quality
```
Error Handling
| Situation | Action |
|-----------|--------|
| Session not found | Create new session |
| State file corrupted | Rebuild from file contents |
| CLI tool fails | Fallback to manual analysis |
| Tests fail | Loop back to develop/debug |
| >10 iterations | Warn user, suggest break |
Post-Completion Expansion
ๅฎๆๅ่ฏข้ฎ็จๆทๆฏๅฆๆฉๅฑไธบ issue (test/enhance/refactor/doc)๏ผ้ไธญ้กน่ฐ็จ /issue:new "{summary} - {dimension}"
More from this repository10
project-analyze skill from catlog22/claude-code-workflow
review-code skill from catlog22/claude-code-workflow
copyright-docs skill from catlog22/claude-code-workflow
prompt enhancer skill from catlog22/claude-code-workflow
skill-generator skill from catlog22/claude-code-workflow
text-formatter skill from catlog22/claude-code-workflow
software-manual skill from catlog22/claude-code-workflow
skill-tuning skill from catlog22/claude-code-workflow
parallel dev cycle skill from catlog22/claude-code-workflow
issue-manage skill from catlog22/claude-code-workflow