| name | autonomous-loops |
| description | Patterns and architectures for autonomous Claude Code loops â from simple sequential pipelines to RFC-driven multi-agent DAG systems. |
| origin | ECC |
Autonomous Loops Skill
äºææ§ã«é¢ããæ³šæïŒv1.8.0ïŒ: autonomous-loops ã¯1ãªãªãŒã¹åä¿æãããŸãã
æ£èŠã®ã¹ãã«å㯠continuous-agent-loop ã«ãªããŸãããæ°ããã«ãŒãã¬ã€ãã³ã¹ã¯
ãã¡ãã§äœæããŠãã ãããæ¢åã®ã¯ãŒã¯ãããŒãå£ããªãããããã®ã¹ãã«ã¯åŒãç¶ã
å©çšå¯èœã§ãã
Claude Code ãèªåŸçã«ã«ãŒãã§å®è¡ããããã®ãã¿ãŒã³ãã¢ãŒããã¯ãã£ããªãã¡ã¬ã³ã¹å®è£
ã§ããã·ã³ãã«ãª claude -p ãã€ãã©ã€ã³ãããRFC é§åã®ãã«ããšãŒãžã§ã³ã DAG ãªãŒã±ã¹ãã¬ãŒã·ã§ã³ãŸã§ãã«ããŒããŸãã
䜿çšã¿ã€ãã³ã°
- 人éã®ä»å
¥ãªãã«åäœããèªåŸçãªéçºã¯ãŒã¯ãããŒãã»ããã¢ããããå Žå
- åé¡ã«é©ããã«ãŒãã¢ãŒããã¯ãã£ã®éžæïŒã·ã³ãã« vs è€éïŒ
- CI/CD ã¹ã¿ã€ã«ã®ç¶ç¶çéçºãã€ãã©ã€ã³ã®æ§ç¯
- ããŒãžèª¿æŽä»ãã®äžŠåãšãŒãžã§ã³ãã®å®è¡
- ã«ãŒãã®ã€ãã¬ãŒã·ã§ã³éã§ã®ã³ã³ããã¹ãæ°žç¶åã®å®è£
- èªåŸã¯ãŒã¯ãããŒãžã®å質ã²ãŒããšã¯ãªãŒã³ã¢ãããã¹ã®è¿œå
Loop Pattern Spectrum
æãã·ã³ãã«ãªãã®ããæãé«åºŠãªãã®ãŸã§:
1. Sequential Pipeline (claude -p)
æãã·ã³ãã«ãªã«ãŒãã§ãã æ¥åžžã®éçºããã³ã€ã³ã¿ã©ã¯ãã£ã㪠claude -p ã³ãŒã«ã®ã·ãŒã±ã³ã¹ã«åè§£ããŸããåã³ãŒã«ã¯æç¢ºãªããã³ãããæã€éäžããã¹ãããã§ãã
Core Insight
ãã®ãããªã«ãŒããæ§ç¯ã§ããªããªããã€ã³ã¿ã©ã¯ãã£ãã¢ãŒãã§ã LLM ã«ã³ãŒããä¿®æ£ãããããšããã§ããªããšããããšã§ãã
claude -p ãã©ã°ã¯ããã³ããä»ãã§ãã³ã€ã³ã¿ã©ã¯ãã£ãã« Claude Code ãå®è¡ããå®äºæã«çµäºããŸããã³ãŒã«ããã§ã€ã³ããŠãã€ãã©ã€ã³ãæ§ç¯ããŸã:
#!/bin/bash
set -e
claude -p "Read the spec in docs/auth-spec.md. Implement OAuth2 login in src/auth/. Write tests first (TDD). Do NOT create any new documentation files."
claude -p "Review all files changed by the previous commit. Remove any unnecessary type tests, overly defensive checks, or testing of language features (e.g., testing that TypeScript generics work). Keep real business logic tests. Run the test suite after cleanup."
claude -p "Run the full build, lint, type check, and test suite. Fix any failures. Do not add new features."
claude -p "Create a conventional commit for all staged changes. Use 'feat: add OAuth2 login flow' as the message."
äž»èŠãªèšèšåå
- åã¹ãããã¯ç¬ç« â
claude -p ã³ãŒã«ããšã«æ°ããã³ã³ããã¹ããŠã£ã³ããŠãéå§ããããããã¹ãããéã§ã³ã³ããã¹ãã®æŒæŽ©ããããŸããã
- é åºãéèŠ â ã¹ãããã¯é 次å®è¡ãããŸããåã¹ãããã¯åã®ã¹ããããæ®ãããã¡ã€ã«ã·ã¹ãã ã®ç¶æ
ã«åºã¥ããŠåäœããŸãã
- åŠå®çãªæç€ºã¯å±éº â ãåã·ã¹ãã ããã¹ãããªãã§ããšã¯èšããªãã§ãã ããã代ããã«ãå¥ã®ã¯ãªãŒã³ã¢ããã¹ãããã远å ããŠãã ããïŒDe-Sloppify Pattern ãåç
§ïŒã
- çµäºã³ãŒãã®äŒæ¬ â
set -e ã«ããã倱ææã«ãã€ãã©ã€ã³ã忢ããŸãã
ããªãšãŒã·ã§ã³
ã¢ãã«ã«ãŒãã£ã³ã°ä»ã:
claude -p --model opus "Analyze the codebase architecture and write a plan for adding caching..."
claude -p "Implement the caching layer according to the plan in docs/caching-plan.md..."
claude -p --model opus "Review all changes for security issues, race conditions, and edge cases..."
ç°å¢ã³ã³ããã¹ãä»ã:
echo "Focus areas: auth module, API rate limiting" > .claude-context.md
claude -p "Read .claude-context.md for priorities. Work through them in order."
rm .claude-context.md
--allowedTools å¶éä»ã:
claude -p --allowedTools "Read,Grep,Glob" "Audit this codebase for security vulnerabilities..."
claude -p --allowedTools "Read,Write,Edit,Bash" "Implement the fixes from security-audit.md..."
2. NanoClaw REPL
ECC çµã¿èŸŒã¿ã®æ°žç¶ã«ãŒãã§ãã å®å
šãªäŒè©±å±¥æŽä»ãã§ claude -p ãåæçã«åŒã³åºãã»ãã·ã§ã³å¯Ÿå¿ REPL ã§ãã
node scripts/claw.js
CLAW_SESSION=my-project CLAW_SKILLS=tdd-workflow,security-review node scripts/claw.js
ä»çµã¿
~/.claude/claw/{session}.md ããäŒè©±å±¥æŽãèªã¿èŸŒã¿ãŸã
- åãŠãŒã¶ãŒã¡ãã»ãŒãžã¯å®å
šãªå±¥æŽãã³ã³ããã¹ããšããŠ
claude -p ã«éä¿¡ãããŸã
- ã¬ã¹ãã³ã¹ã¯ã»ãã·ã§ã³ãã¡ã€ã«ã«è¿œèšãããŸãïŒMarkdown ãããŒã¿ããŒã¹ãšããŠå©çšïŒ
- ã»ãã·ã§ã³ã¯åèµ·ååŸãæ°žç¶åãããŸã
NanoClaw vs Sequential Pipeline ã®äœ¿ãåã
| ãŠãŒã¹ã±ãŒã¹ | NanoClaw | Sequential Pipeline |
|---|
| ã€ã³ã¿ã©ã¯ãã£ããªæ¢çŽ¢ | ã¯ã | ããã |
| ã¹ã¯ãªããåãããèªåå | ããã | ã¯ã |
| ã»ãã·ã§ã³æ°žç¶å | çµã¿èŸŒã¿ | æå |
| ã³ã³ããã¹ãèç© | ã¿ãŒã³ããšã«å¢å | åã¹ãããã§æ°èŠ |
| CI/CD çµ±å | äžåã | æé© |
詳现㯠/claw ã³ãã³ãã®ããã¥ã¡ã³ããåç
§ããŠãã ããã
3. Infinite Agentic Loop
2ã€ã®ããã³ãããããªãã·ã¹ãã ã§ã仿§é§åã®çæã®ããã«äžŠåãµããšãŒãžã§ã³ãã調æŽããŸããdisler ãéçºïŒcredit: @dislerïŒã
ã¢ãŒããã¯ãã£: Two-Prompt System
PROMPT 1 (Orchestrator) PROMPT 2 (Sub-Agents)
âââââââââââââââââââââââ ââââââââââââââââââââââââ
â 仿§ãã¡ã€ã«ãããŒã¹ â â ãã«ã³ã³ããã¹ããåä¿¡ â
â åºåãã£ã¬ã¯ããªãã¹ãã£ã³ â deploys â å²ãåœãŠçªå·ãèªã¿åã â
â ã€ãã¬ãŒã·ã§ã³ãèšç» ââââââââââââââ 仿§ã«æ£ç¢ºã«åŸã â
â ã¯ãªãšã€ãã£ããªæ¹åãå²åœâ N agents â ãŠããŒã¯ãªåºåãçæ â
â ãŠã§ãŒãã管ç â â åºåãã£ã¬ã¯ããªã«ä¿å â
âââââââââââââââââââââââ ââââââââââââââââââââââââ
ãã¿ãŒã³
- 仿§åæ â ãªãŒã±ã¹ãã¬ãŒã¿ãŒãäœãçæããããå®çŸ©ãã仿§ãã¡ã€ã«ïŒMarkdownïŒãèªã¿åããŸã
- ãã£ã¬ã¯ããªåµå¯ â æ¢åã®åºåãã¹ãã£ã³ããŠæå€§ã®ã€ãã¬ãŒã·ã§ã³çªå·ãèŠã€ããŸã
- 䞊åããã〠â N åã®ãµããšãŒãžã§ã³ããèµ·åããããããã«ä»¥äžãä»äž:
- å®å
šãªä»æ§
- ãŠããŒã¯ãªã¯ãªãšã€ãã£ãã®æ¹åæ§
- ç¹å®ã®ã€ãã¬ãŒã·ã§ã³çªå·ïŒç«¶åãªãïŒ
- æ¢åã€ãã¬ãŒã·ã§ã³ã®ã¹ãããã·ã§ããïŒãŠããŒã¯æ§ã®ç¢ºä¿ã®ããïŒ
- ãŠã§ãŒã管ç â ç¡éã¢ãŒãã§ã¯ãã³ã³ããã¹ããå°œãããŸã§3-5ãšãŒãžã§ã³ãã®ãŠã§ãŒãããããã€
å®è£
via Claude Code Commands
.claude/commands/infinite.md ãäœæ:
Parse the following arguments from $ARGUMENTS:
1. spec_file â path to the specification markdown
2. output_dir â where iterations are saved
3. count â integer 1-N or "infinite"
PHASE 1: Read and deeply understand the specification.
PHASE 2: List output_dir, find highest iteration number. Start at N+1.
PHASE 3: Plan creative directions â each agent gets a DIFFERENT theme/approach.
PHASE 4: Deploy sub-agents in parallel (Task tool). Each receives:
- Full spec text
- Current directory snapshot
- Their assigned iteration number
- Their unique creative direction
PHASE 5 (infinite mode): Loop in waves of 3-5 until context is low.
åŒã³åºã:
/project:infinite specs/component-spec.md src/ 5
/project:infinite specs/component-spec.md src/ infinite
ãããæŠç¥
| ã«ãŠã³ã | æŠç¥ |
|---|
| 1-5 | å
šãšãŒãžã§ã³ããåæå®è¡ |
| 6-20 | 5åãã€ã®ããã |
| infinite | 3-5ã®ãŠã§ãŒããæ®µéçã«æŽç·ŽåºŠãåäž |
éèŠãªæŽå¯: å²ãåœãŠã«ãããŠããŒã¯æ§
ãšãŒãžã§ã³ãèªèº«ã«å·®å¥åãä»»ããªãã§ãã ããããªãŒã±ã¹ãã¬ãŒã¿ãŒãåãšãŒãžã§ã³ãã«ç¹å®ã®ã¯ãªãšã€ãã£ãã®æ¹åæ§ãšã€ãã¬ãŒã·ã§ã³çªå·ã å²ãåœãŠ ãŸããããã«ããã䞊åãšãŒãžã§ã³ãéã§ã³ã³ã»ããã®éè€ã鲿¢ãããŸãã
4. Continuous Claude PR Loop
æ¬çªå質ã®ã·ã§ã«ã¹ã¯ãªãã ã§ãClaude Code ãç¶ç¶ã«ãŒãã§å®è¡ããPR ãäœæããCI ãåŸ
ã¡ãèªåçã«ããŒãžããŸããAnandChowdhary ãäœæïŒcredit: @AnandChowdharyïŒã
Core Loop
âââââââââââââââââââââââââââââââââââââââââââââââââââââââ
â CONTINUOUS CLAUDE ITERATION â
â â
â 1. ãã©ã³ããäœæ (continuous-claude/iteration-N) â
â 2. æ¡åŒµããã³ããä»ãã§ claude -p ãå®è¡ â
â 3. (ãªãã·ã§ã³) ã¬ãã¥ãŒãã¹ â å¥ã® claude -p â
â 4. 倿Žãã³ãããïŒclaude ãã¡ãã»ãŒãžãçæïŒ â
â 5. ããã·ã¥ïŒPR äœæ (gh pr create) â
â 6. CI ãã§ãã¯ãåŸ
æ©ïŒgh pr checks ãããŒãªã³ã°ïŒ â
â 7. CI 倱æïŒâ èªåä¿®æ£ãã¹ (claude -p) â
â 8. PR ãããŒãž (squash/merge/rebase) â
â 9. main ã«æ»ã â ç¹°ãè¿ã â
â â
â å¶é: --max-runs N | --max-cost $X â
â --max-duration 2h | completion signal â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââ
ã€ã³ã¹ããŒã«
èŠå: ã³ãŒãã確èªããäžã§ããªããžããªãã continuous-claude ãã€ã³ã¹ããŒã«ããŠãã ãããå€éšã¹ã¯ãªãããçŽæ¥ bash ã«ãã€ãããªãã§ãã ããã
äœ¿ãæ¹
continuous-claude --prompt "Add unit tests for all untested functions" --max-runs 10
continuous-claude --prompt "Fix all linter errors" --max-cost 5.00
continuous-claude --prompt "Improve test coverage" --max-duration 8h
continuous-claude \
--prompt "Add authentication feature" \
--max-runs 10 \
--review-prompt "Run npm test && npm run lint, fix any failures"
continuous-claude --prompt "Add tests" --max-runs 5 --worktree tests-worker &
continuous-claude --prompt "Refactor code" --max-runs 5 --worktree refactor-worker &
wait
ã€ãã¬ãŒã·ã§ã³éã®ã³ã³ããã¹ã: SHARED_TASK_NOTES.md
éèŠãªã€ãããŒã·ã§ã³: SHARED_TASK_NOTES.md ãã¡ã€ã«ãã€ãã¬ãŒã·ã§ã³éã§æ°žç¶åãããŸã:
## Progress
- [x] Added tests for auth module (iteration 1)
- [x] Fixed edge case in token refresh (iteration 2)
- [ ] Still need: rate limiting tests, error boundary tests
## Next Steps
- Focus on rate limiting module next
- The mock setup in tests/helpers.ts can be reused
Claude ã¯ã€ãã¬ãŒã·ã§ã³éå§æã«ãã®ãã¡ã€ã«ãèªã¿åããã€ãã¬ãŒã·ã§ã³çµäºæã«æŽæ°ããŸããããã«ãããç¬ç«ãã claude -p åŒã³åºãéã®ã³ã³ããã¹ãã®ã£ãããæ©æž¡ããããŸãã
CI 倱æããã®å埩
PR ãã§ãã¯ã倱æããå ŽåãContinuous Claude ã¯èªåçã«ä»¥äžãè¡ããŸã:
gh run list çµç±ã§å€±æããã©ã³ ID ãååŸ
- CI ä¿®æ£ã³ã³ããã¹ãä»ãã§æ°ãã
claude -p ãèµ·å
- Claude ã
gh run view çµç±ã§ãã°ã確èªããã³ãŒããä¿®æ£ãã³ããããããã·ã¥
- ãã§ãã¯ãååŸ
æ©ïŒæå€§
--ci-retry-max åã®è©Šè¡ïŒ
Completion Signal
Claude ã¯ãå®äºããããžãã¯ãã¬ãŒãºã®åºåã§ã·ã°ãã«ã§ããŸã:
continuous-claude \
--prompt "Fix all bugs in the issue tracker" \
--completion-signal "CONTINUOUS_CLAUDE_PROJECT_COMPLETE" \
--completion-threshold 3
3åé£ç¶ã§å®äºã·ã°ãã«ãéä¿¡ãããšã«ãŒãã忢ããå®äºããäœæ¥ã«å¯Ÿããç¡é§ãªå®è¡ãé²ããŸãã
äž»èŠãªèšå®
| ãã©ã° | ç®ç |
|---|
--max-runs N | N åã®æåã€ãã¬ãŒã·ã§ã³åŸã«åæ¢ |
--max-cost $X | $X ã®æ¯åºåŸã«åæ¢ |
--max-duration 2h | çµéæéåŸã«åæ¢ |
--merge-strategy squash | squashãmergeããŸã㯠rebase |
--worktree <name> | git worktree çµç±ã®äžŠåå®è¡ |
--disable-commits | ãã©ã€ã©ã³ã¢ãŒãïŒgit æäœãªãïŒ |
--review-prompt "..." | ã€ãã¬ãŒã·ã§ã³ããšã«ã¬ãã¥ãŒãã¹ã远å |
--ci-retry-max N | CI 倱æã®èªåä¿®æ£ïŒããã©ã«ã: 1ïŒ |
5. The De-Sloppify Pattern
ä»»æã®ã«ãŒãã®ã¢ããªã³ãã¿ãŒã³ã§ãã Implementer ã¹ãããã®åŸã«å°çšã®ã¯ãªãŒã³ã¢ãã/ãªãã¡ã¯ã¿ãªã³ã°ã¹ãããã远å ããŸãã
åé¡
LLM ã« TDD ã§å®è£
ãäŸé Œãããšãããã¹ããæžãããæåéãã«è§£éããããŸã:
- TypeScript ã®åã·ã¹ãã ãåäœããããšãæ€èšŒãããã¹ãïŒ
typeof x === 'string' ã®ãã¹ãïŒ
- åã·ã¹ãã ãæ¢ã«ä¿èšŒããŠãããã®ã«å¯Ÿããé床ã«é²åŸ¡çãªã©ã³ã¿ã€ã ãã§ãã¯
- ããžãã¹ããžãã¯ã§ã¯ãªããã¬ãŒã ã¯ãŒã¯ã®åäœããã¹ã
- å®éã®ã³ãŒããææ§ã«ããéå°ãªãšã©ãŒãã³ããªã³ã°
ãªãåŠå®çãªæç€ºã§ã¯ãã¡ãïŒ
Implementer ããã³ããã«ãåã·ã¹ãã ããã¹ãããªãã§ãããäžèŠãªãã§ãã¯ã远å ããªãã§ãã远å ãããšãäžæµã«åœ±é¿ãåºãŸã:
- ã¢ãã«ããã¹ãŠã®ãã¹ãã«å¯ŸããŠæ¶æ¥µçã«ãªã
- æ£åœãªãšããžã±ãŒã¹ãã¹ããã¹ããããã
- å質ãäºæž¬äžèœã«äœäžãã
解決ç: å¥ã®ãã¹
Implementer ãå¶çŽãã代ããã«ã培åºçã«äœæ¥ãããŸãããã®åŸãéäžããã¯ãªãŒã³ã¢ãããšãŒãžã§ã³ãã远å ããŸã:
claude -p "Implement the feature with full TDD. Be thorough with tests."
claude -p "Review all changes in the working tree. Remove:
- Tests that verify language/framework behavior rather than business logic
- Redundant type checks that the type system already enforces
- Over-defensive error handling for impossible states
- Console.log statements
- Commented-out code
Keep all business logic tests. Run the test suite after cleanup to ensure nothing breaks."
ã«ãŒãã³ã³ããã¹ãã§ã®äœ¿çš
for feature in "${features[@]}"; do
claude -p "Implement $feature with TDD."
claude -p "Cleanup pass: review changes, remove test/code slop, run tests."
claude -p "Run build + lint + tests. Fix any failures."
claude -p "Commit with message: feat: add $feature"
done
éèŠãªæŽå¯
äžæµã®å質ã«åœ±é¿ãäžããåŠå®çãªæç€ºã远å ãã代ããã«ãå¥ã® de-sloppify ãã¹ã远å ããŠãã ãããéäžãã2ã€ã®ãšãŒãžã§ã³ãã¯ãå¶çŽããã1ã€ã®ãšãŒãžã§ã³ããããåªããŠããŸãã
6. Ralphinho / RFC-Driven DAG Orchestration
æãé«åºŠãªãã¿ãŒã³ã§ãã RFC é§åã®ãã«ããšãŒãžã§ã³ããã€ãã©ã€ã³ã§ã仿§ãäŸåé¢ä¿ DAG ã«åè§£ããåãŠããããéå±€çãªå質ãã€ãã©ã€ã³ãéããŠå®è¡ãããšãŒãžã§ã³ãé§åã®ããŒãžãã¥ãŒãä»ããŠã©ã³ãã£ã³ã°ããŸããenitrat ãäœæïŒcredit: @enitratïŒã
ã¢ãŒããã¯ã㣠Overview
RFC/PRD Document
â
âŒ
DECOMPOSITION (AI)
RFC ãã¯ãŒã¯ãŠããããšäŸåé¢ä¿ DAG ã«åè§£
â
âŒ
ââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
â RALPH LOOP (æå€§3ãã¹) â
â â
â å DAG ã¬ã€ã€ãŒã«ã€ããŠïŒäŸåé¢ä¿é ã«é次ïŒ: â
â â
â âââ Quality PipelinesïŒãŠãããããšã«äžŠåïŒâââââââââ â
â â åãŠãããã¯ç¬èªã® worktree å
: â â
â â Research â Plan â Implement â Test â Review â â
â â ïŒæ·±åºŠã¯è€é床ãã£ã¢ã«ããå€åïŒ â â
â ââââââââââââââââââââââââââââââââââââââââââââââââââ â
â â
â âââ Merge Queue ââââââââââââââââââââââââââââââââââ â
â â main ã«ãªããŒã¹ â ãã¹ãå®è¡ â ã©ã³ããŸãã¯è¿œæŸâ â
â â 远æŸããããŠãããã¯ã³ã³ããªã¯ãã³ã³ããã¹ãä»ãã§â â
â â åæå
¥ â â
â ââââââââââââââââââââââââââââââââââââââââââââââââââ â
â â
ââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
RFC åè§£
AI ã RFC ãèªã¿åããã¯ãŒã¯ãŠããããçæããŸã:
interface WorkUnit {
id: string;
name: string;
rfcSections: string[];
description: string;
deps: string[];
acceptance: string[];
tier: "trivial" | "small" | "medium" | "large";
}
åè§£ã«ãŒã«:
- å°æ°ã®åéæ§ã®ãããŠããããåªå
ïŒããŒãžãªã¹ã¯ã®æå°åïŒ
- ãŠãããéã®ãã¡ã€ã«éè€ãæå°åïŒã³ã³ããªã¯ãåé¿ïŒ
- ãã¹ãã¯å®è£
ãšäžç·ã«ä¿æïŒãX ãå®è£
ããšãX ããã¹ãããåé¢ããªãïŒ
- å®éã®ã³ãŒãäŸåé¢ä¿ãããå Žåã®ã¿äŸåé¢ä¿ãèšå®
äŸåé¢ä¿ DAG ãå®è¡é åºã決å®ããŸã:
Layer 0: [unit-a, unit-b] â äŸåé¢ä¿ãªãã䞊åå®è¡
Layer 1: [unit-c] â unit-a ã«äŸå
Layer 2: [unit-d, unit-e] â unit-c ã«äŸå
è€é床ãã£ã¢
ç°ãªããã£ã¢ã«ç°ãªããã€ãã©ã€ã³æ·±åºŠãé©çšãããŸã:
| ãã£ã¢ | ãã€ãã©ã€ã³ã¹ããŒãž |
|---|
| trivial | implement â test |
| small | implement â test â code-review |
| medium | research â plan â implement â test â PRD-review + code-review â review-fix |
| large | research â plan â implement â test â PRD-review + code-review â review-fix â final-review |
ããã«ãããã·ã³ãã«ãªå€æŽã«å¯Ÿããé«ã³ã¹ããªæäœãé²ãã€ã€ãã¢ãŒããã¯ãã£ã®å€æŽã«ã¯åŸ¹åºçãªç²Ÿæ»ãè¡ãããŸãã
ç¬ç«ããã³ã³ããã¹ããŠã£ã³ããŠïŒèè
ãã€ã¢ã¹ã®æé€ïŒ
åã¹ããŒãžã¯ç¬èªã®ãšãŒãžã§ã³ãããã»ã¹ãšç¬èªã®ã³ã³ããã¹ããŠã£ã³ããŠã§å®è¡ãããŸã:
| ã¹ããŒãž | ã¢ãã« | ç®ç |
|---|
| Research | Sonnet | ã³ãŒãããŒã¹ïŒRFC ãèªã¿åããã³ã³ããã¹ãããã¥ã¡ã³ããçæ |
| Plan | Opus | å®è£
ã¹ããããèšèš |
| Implement | Codex | ãã©ã³ã«åŸã£ãŠã³ãŒããæžã |
| Test | Sonnet | ãã«ãïŒãã¹ãã¹ã€ãŒããå®è¡ |
| PRD Review | Sonnet | 仿§æºæ ãã§ã㯠|
| Code Review | Opus | å質ïŒã»ãã¥ãªãã£ãã§ã㯠|
| Review Fix | Codex | ã¬ãã¥ãŒææãžã®å¯Ÿå¿ |
| Final Review | Opus | å質ã²ãŒãïŒlarge ãã£ã¢ã®ã¿ïŒ |
éèŠãªèšèš: ã¬ãã¥ãŒã¢ãŒãã¬ãã¥ãŒããã³ãŒããæžããããšã¯ãããŸãããããã«ããèè
ãã€ã¢ã¹ãæé€ãããŸããããã¯ã»ã«ãã¬ãã¥ãŒã§èŠéãããåé¡ã®æãäžè¬çãªåå ã§ãã
远æŸä»ãããŒãžãã¥ãŒ
å質ãã€ãã©ã€ã³å®äºåŸããŠãããã¯ããŒãžãã¥ãŒã«å
¥ããŸã:
Unit branch
â
ââ main ã«ãªããŒã¹
â ââ ã³ã³ããªã¯ãïŒâ 远æŸïŒã³ã³ããªã¯ãã³ã³ããã¹ãããã£ããã£ïŒ
â
ââ ãã«ãïŒãã¹ãå®è¡
â ââ 倱æïŒâ 远æŸïŒãã¹ãåºåããã£ããã£ïŒ
â
ââ ãã¹ â main ã fast-forwardãããã·ã¥ããã©ã³ãåé€
ãã¡ã€ã«éè€ã®ã€ã³ããªãžã§ã³ã¹:
- éè€ã®ãªããŠãããã¯ææ©çã«äžŠåã§ã©ã³ãã£ã³ã°
- éè€ã®ãããŠãããã¯1ã€ãã€ãæ¯åãªããŒã¹ããªããã©ã³ãã£ã³ã°
远æŸããã®å埩:
è¿œæŸæãå®å
šãªã³ã³ããã¹ãïŒã³ã³ããªã¯ããã¡ã€ã«ãdiffããã¹ãåºåïŒããã£ããã£ãããæ¬¡ã® Ralph ãã¹ã§å®è£
è
ã«ãã£ãŒãããã¯ãããŸã:
## MERGE CONFLICT â RESOLVE BEFORE NEXT LANDING
ããªãã®åã®å®è£
ã¯ãå
ã«ã©ã³ãã£ã³ã°ããå¥ã®ãŠããããšã³ã³ããªã¯ãããŸããã
以äžã®ã³ã³ããªã¯ãããŠãããã¡ã€ã«/è¡ãåé¿ããããã倿Žãåæ§ç¯ããŠãã ããã
{full eviction context with diffs}
ã¹ããŒãžéã®ããŒã¿ãããŒ
research.contextFilePath âââââââââââââââââââ plan
plan.implementationSteps âââââââââââââââââââ implement
implement.{filesCreated, whatWasDone} ââââââ test, reviews
test.failingSummary ââââââââââââââââââââââââ reviews, implement (next pass)
reviews.{feedback, issues} âââââââââââââââââ review-fix â implement (next pass)
final-review.reasoning âââââââââââââââââââââ implement (next pass)
evictionContext ââââââââââââââââââââââââââââ implement (after merge conflict)
Worktree ã«ããéé¢
ãã¹ãŠã®ãŠãããã¯éé¢ããã worktree ã§å®è¡ãããŸãïŒgit ã§ã¯ãªã jj/Jujutsu ã䜿çšïŒ:
/tmp/workflow-wt-{unit-id}/
åããŠãããã®ãã€ãã©ã€ã³ã¹ããŒãžã¯ worktree ã å
±æ ããresearch â plan â implement â test â review ã«ããã£ãŠç¶æ
ïŒã³ã³ããã¹ããã¡ã€ã«ããã©ã³ãã¡ã€ã«ãã³ãŒã倿ŽïŒãä¿æããŸãã
äž»èŠãªèšèšåå
- 決å®è«çãªå®è¡ â äºåã®åè§£ã«ããäžŠåæ§ãšé åºã確å®
- ã¬ãã¬ããžãã€ã³ãã§ã®äººéã¬ãã¥ãŒ â äœæ¥èšç»ãå¯äžæå€§ã®ã¬ãã¬ããžãšãªãä»å
¥ãã€ã³ã
- é¢å¿ã®åé¢ â åã¹ããŒãžã¯å¥ã®ã³ã³ããã¹ããŠã£ã³ããŠã§å¥ã®ãšãŒãžã§ã³ããšããŠå®è¡
- ã³ã³ããã¹ãä»ãã®ã³ã³ããªã¯ãå埩 â å®å
šãªè¿œæŸã³ã³ããã¹ãã«ãããç²ç®çãªãªãã©ã€ã§ã¯ãªãã€ã³ããªãžã§ã³ããªåå®è¡ãå¯èœ
- ãã£ã¢é§åã®æ·±åºŠ â äºçްãªå€æŽã¯ research/review ãã¹ããããå€§èŠæš¡ãªå€æŽã¯æå€§ã®ç²Ÿæ»
- åéå¯èœãªã¯ãŒã¯ãã㌠â å®å
šãªç¶æ
ã SQLite ã«æ°žç¶åãä»»æã®ãã€ã³ãããåéå¯èœ
䜿çšã¿ã€ãã³ã° Ralphinho vs Simpler Patterns
| ã·ã°ãã« | Ralphinho ãäœ¿çš | ã·ã³ãã«ãªãã¿ãŒã³ãäœ¿çš |
|---|
| è€æ°ã®çžäºäŸåããã¯ãŒã¯ãŠããã | ã¯ã | ããã |
| 䞊åå®è£
ãå¿
èŠ | ã¯ã | ããã |
| ããŒãžã³ã³ããªã¯ãã®å¯èœæ§ | ã¯ã | ãããïŒé次ã§ååïŒ |
| åäžãã¡ã€ã«ã®å€æŽ | ããã | ã¯ãïŒsequential pipelineïŒ |
| è€æ°æ¥ã®ãããžã§ã¯ã | ã¯ã | å Žåã«ããïŒcontinuous-claudeïŒ |
| 仿§/RFC ãæ¢ã«æžãããŠãã | ã¯ã | å Žåã«ãã |
| 1ã€ã®ããšã«å¯ŸããçŽ æ©ãã€ãã¬ãŒã·ã§ã³ | ããã | ã¯ãïŒNanoClaw ãŸãã¯ãã€ãã©ã€ã³ïŒ |
é©åãªãã¿ãŒã³ã®éžæ
æ±ºå® Matrix
ã¿ã¹ã¯ã¯åäžã®éäžãã倿ŽãïŒ
ââ ã¯ã â Sequential Pipeline ãŸã㯠NanoClaw
ââ ããã â æžããã仿§/RFC ããããïŒ
ââ ã¯ã â 䞊åå®è£
ãå¿
èŠãïŒ
â ââ ã¯ã â RalphinhoïŒDAG ãªãŒã±ã¹ãã¬ãŒã·ã§ã³ïŒ
â ââ ããã â Continuous ClaudeïŒå埩 PR ã«ãŒãïŒ
ââ ããã â åããã®ã®ããªãšãŒã·ã§ã³ã倿°å¿
èŠãïŒ
ââ ã¯ã â Infinite Agentic LoopïŒä»æ§é§åã®çæïŒ
ââ ããã â Sequential Pipeline + de-sloppify
ãã¿ãŒã³ã®çµã¿åãã
ãããã®ãã¿ãŒã³ã¯ããŸãçµã¿åãããããŸã:
-
Sequential Pipeline + De-Sloppify â æãäžè¬çãªçµã¿åããã§ãããã¹ãŠã®å®è£
ã¹ãããã«ã¯ãªãŒã³ã¢ãããã¹ãä»ããŸãã
-
Continuous Claude + De-Sloppify â åã€ãã¬ãŒã·ã§ã³ã« de-sloppify ãã£ã¬ã¯ãã£ãä»ãã® --review-prompt ã远å ããŸãã
-
ä»»æã®ã«ãŒã + Verification â ã³ãããåã®ã²ãŒããšã㊠ECC ã® /verify ã³ãã³ããŸã㯠verification-loop ã¹ãã«ã䜿çšããŸãã
-
Ralphinho ã®ãã£ã¢ã¢ãããŒããã·ã³ãã«ãªã«ãŒãã§ â sequential pipeline ã§ããã·ã³ãã«ãªã¿ã¹ã¯ã Haiku ã«ãè€éãªã¿ã¹ã¯ã Opus ã«ã«ãŒãã£ã³ã°ã§ããŸã:
claude -p --model haiku "Fix the import ordering in src/utils.ts"
claude -p --model opus "Refactor the auth module to use the strategy pattern"
ã¢ã³ããã¿ãŒã³
ããããééã
-
çµäºæ¡ä»¶ã®ãªãç¡éã«ãŒã â åžžã« max-runsãmax-costãmax-durationããŸã㯠completion signal ãèšå®ããŠãã ããã
-
ã€ãã¬ãŒã·ã§ã³éã®ã³ã³ããã¹ãæ©æž¡ããªã â å claude -p ã³ãŒã«ã¯æ°èŠã§å§ãŸããŸããSHARED_TASK_NOTES.md ããã¡ã€ã«ã·ã¹ãã ã®ç¶æ
ã䜿ã£ãŠã³ã³ããã¹ããæ©æž¡ãããŠãã ããã
-
åã倱æã®ãªãã©ã€ â ã€ãã¬ãŒã·ã§ã³ã倱æããå Žåãåã«ãªãã©ã€ããªãã§ãã ããããšã©ãŒã³ã³ããã¹ãããã£ããã£ããŠæ¬¡ã®è©Šè¡ã«ãã£ãŒãããŠãã ããã
-
ã¯ãªãŒã³ã¢ãããã¹ã®ä»£ããã«åŠå®çãªæç€º â ãX ãããªãã§ããšèšããªãã§ãã ãããX ãé€å»ããå¥ã®ãã¹ã远å ããŠãã ããã
-
ãã¹ãŠã®ãšãŒãžã§ã³ãã1ã€ã®ã³ã³ããã¹ããŠã£ã³ããŠã« â è€éãªã¯ãŒã¯ãããŒã§ã¯ãé¢å¿ãç°ãªããšãŒãžã§ã³ãããã»ã¹ã«åé¢ããŠãã ãããã¬ãã¥ãŒã¢ãŒã¯èè
ã§ãã£ãŠã¯ãªããŸããã
-
䞊åäœæ¥ã§ã®ãã¡ã€ã«éè€ã®ç¡èŠ â 2ã€ã®äžŠåãšãŒãžã§ã³ããåããã¡ã€ã«ãç·šéããå¯èœæ§ãããå ŽåãããŒãžæŠç¥ïŒé次ã©ã³ãã£ã³ã°ããªããŒã¹ããŸãã¯ã³ã³ããªã¯ã解決ïŒãå¿
èŠã§ãã
References
| ãããžã§ã¯ã | äœè
| ãªã³ã¯ |
|---|
| Ralphinho | enitrat | credit: @enitrat |
| Infinite Agentic Loop | disler | credit: @disler |
| Continuous Claude | AnandChowdhary | credit: @AnandChowdhary |
| NanoClaw | ECC | ãã®ãªããžããªã® /claw ã³ãã³ã |
| Verification Loop | ECC | ãã®ãªããžããªã® skills/verification-loop/ |