Problem
Original text (user chat, /idd-issue, 2026-05-07):
「接著我在想的是,有些流程我覺得需要仰賴 ralph-loop,可能要內建,不然中間會停下來」
issue-driven-dev 已有多個流程事實上仰賴 ralph-loop,但 plugin.json 沒宣告 dependency、README 也沒列出,使用者不裝 ralph-loop 跑這些流程會「中間停下來」(unattended 模式失去 driver、--loop flag 直接無法用)。
grep 確認以下硬依賴:
| Skill / Mode |
ralph-loop 角色 |
不裝會發生什麼 |
idd-verify --loop |
直接驅動驗證-修復迴圈(skill SKILL.md line 81 + 628) |
--loop flag 完全無作用 |
idd-all (PR, unattended) (v2.40.0+ default) |
外圈 driver:verify 完發現 blocking findings → 自動觸發下一輪 implement → verify |
sub-skill 抑制 AskUserQuestion 後沒人續跑,流程半路停滯;v2.40.0 description 多次提及「/loop friendly」「v2.40.0 既有 caller(如 /loop)的 default 行為」(idd-all SKILL.md line 29, 80, 187, 190) |
idd-all unattended 自動修復 max 2 round |
bootstrap task verify_loop 預期被 /loop 重新 invoke 才能跑滿 round |
1 輪後就停,不像 attended 有 user 續推 |
目前狀態:
plugins/issue-driven-dev/.claude-plugin/plugin.json 沒有 dependencies field(看起來 Claude Code plugin schema 也沒原生 inter-plugin dependency 機制)
- 頂層
README.md 0 hits for "ralph-loop" / "loop"
plugins/issue-driven-dev/README.md 只在 line 69/100 提到自己內部「TDD loop」/「looped sequentially」,沒提外部 ralph-loop plugin
- skill 內部沒 fail-fast 偵測 — 跑
idd-verify --loop 但沒裝 ralph-loop 應該明確報錯,目前不確定行為(可能 silent no-op / 可能 obscure error)
Type
feature + documentation(雙面)
Expected
三層改善(用戶選了全部三項 scope):
Layer 1: README docs gap(同 #26 套路)
兩份 README 加 "Required dependencies for unattended / loop modes" 段落:
| Mode |
Required plugin |
Install 指令 |
idd-verify --loop |
ralph-loop |
claude plugin install ralph-loop@<marketplace> |
idd-all unattended (PR mode default) |
ralph-loop |
同上 |
idd-all direct-commit + attended |
(none) |
n/a — user 在 keyboard |
Single-skill calls (idd-issue / idd-diagnose / idd-implement / idd-verify / idd-close 不帶 flag) |
(none) |
n/a |
Layer 2: Skill 內部 auto-detect + fail-fast 提示
idd-verify Step 0 / idd-all Phase 0.5 在進 unattended path 前:
# Pseudo
if mode == "unattended" || flag == "--loop"; then
if ! command -v ralph-loop &>/dev/null && ! check_ralph_loop_skill_present; then
echo "✗ unattended / --loop mode 需要 ralph-loop plugin"
echo " Install: claude plugin install ralph-loop@<marketplace>"
echo " 或改跑 attended: /idd-all #N --no-pr"
exit 1
fi
fi
涵蓋 idd-verify --loop 和 idd-all (PR, unattended)default。
Layer 3:「內建」依賴宣告(探索性 — 可能受限於 Claude Code plugin 系統能力)
考慮以下選項(diagnose phase 評估可行性):
(a) plugin.json 加 dependencies / requires field — 即使 Claude Code 目前不消費此 field,寫了至少有 forward compat + 自我文件
(b) Marketplace dependencies 機制 — 在 .claude-plugin/marketplace.json 標 issue-driven-dev requires ralph-loop for unattended,讓未來 marketplace tooling 可以掃
(c) Bundle install hint — README install 指令改成:
# Recommended (full features incl. unattended):
claude plugin install issue-driven-dev@issue-driven-development
claude plugin install ralph-loop@<marketplace>
# Minimal (attended-only):
claude plugin install issue-driven-dev@issue-driven-development
(d) idd-all session-start hook — 第一次跑 unattended 時 echo warning「ralph-loop not detected, --no-pr fallback」
這層需要 diagnose 確認 Claude Code plugin 有哪些 native 機制可用,可能 spawn 出 sister issue。
Actual
- README 隻字不提 ralph-loop
- plugin.json description 多次描述「
/loop friendly」「/loop 既有 caller」但沒任何 install / dependency 標註
- skill 內部沒 detect logic — 直接呼叫如果失敗,error 訊息不會引導使用者
- 使用者只能從 SKILL.md 內文 grep 才能發現「噢原來要裝 ralph-loop」
Impact
Related
Scope confirmation (per /idd-issue clarification)
Priority: P2
Linked-Context Siblings Filed (v2.48.0+ #529)
(none — primary concern already split across 3 explicit Layers within this issue;related #26 / #27 cross-linked above)
Current Status
Phase: closed
Last updated: 2026-05-07 by idd-close
Resolution
Critical catches by 6-AI verify
- F1 (P0, Codex):
plugin.json dependencies field validate-fail → reverted entirely
- F2 (P1, Devils-Advocate NEW): Phase 0.6 BRANCH bug → unwind logic added
- F3 (P1, logic+security+Codex consensus): HOME-with-spaces glob → bash array + nullglob
- F4 (P2): bypass silent → stderr warning
- F5 (P3): version mismatch → bumped
PR
Follow-ups (carried)
Problem
issue-driven-dev已有多個流程事實上仰賴 ralph-loop,但 plugin.json 沒宣告 dependency、README 也沒列出,使用者不裝 ralph-loop 跑這些流程會「中間停下來」(unattended 模式失去 driver、--loopflag 直接無法用)。grep確認以下硬依賴:idd-verify --loop--loopflag 完全無作用idd-all (PR, unattended)(v2.40.0+ default)AskUserQuestion後沒人續跑,流程半路停滯;v2.40.0 description 多次提及「/loopfriendly」「v2.40.0 既有 caller(如/loop)的 default 行為」(idd-all SKILL.md line 29, 80, 187, 190)idd-all unattended自動修復 max 2 roundverify_loop預期被/loop重新 invoke 才能跑滿 round目前狀態:
plugins/issue-driven-dev/.claude-plugin/plugin.json沒有dependenciesfield(看起來 Claude Code plugin schema 也沒原生 inter-plugin dependency 機制)README.md0 hits for "ralph-loop" / "loop"plugins/issue-driven-dev/README.md只在 line 69/100 提到自己內部「TDD loop」/「looped sequentially」,沒提外部 ralph-loop pluginidd-verify --loop但沒裝 ralph-loop 應該明確報錯,目前不確定行為(可能 silent no-op / 可能 obscure error)Type
feature + documentation(雙面)
Expected
三層改善(用戶選了全部三項 scope):
Layer 1: README docs gap(同 #26 套路)
兩份 README 加 "Required dependencies for unattended / loop modes" 段落:
idd-verify --loopralph-loopclaude plugin install ralph-loop@<marketplace>idd-allunattended (PR mode default)ralph-loopidd-alldirect-commit + attendedidd-issue/idd-diagnose/idd-implement/idd-verify/idd-close不帶 flag)Layer 2: Skill 內部 auto-detect + fail-fast 提示
idd-verifyStep 0 /idd-allPhase 0.5 在進 unattended path 前:涵蓋
idd-verify --loop和idd-all(PR, unattended)default。Layer 3:「內建」依賴宣告(探索性 — 可能受限於 Claude Code plugin 系統能力)
考慮以下選項(diagnose phase 評估可行性):
(a) plugin.json 加
dependencies/requiresfield — 即使 Claude Code 目前不消費此 field,寫了至少有 forward compat + 自我文件(b) Marketplace
dependencies機制 — 在.claude-plugin/marketplace.json標issue-driven-devrequiresralph-loopfor unattended,讓未來 marketplace tooling 可以掃(c) Bundle install hint — README install 指令改成:
(d) idd-all session-start hook — 第一次跑 unattended 時 echo warning「ralph-loop not detected, --no-pr fallback」
這層需要 diagnose 確認 Claude Code plugin 有哪些 native 機制可用,可能 spawn 出 sister issue。
Actual
/loopfriendly」「/loop既有 caller」但沒任何 install / dependency 標註Impact
issue-driven-dev,以為「裝完就完整」,跑/idd-all結果 unattended 流程半路停 → 誤以為 IDD 有 bug/loop無聲卡死比.docx讀不到還難 debug/loop friendly是 v2.40.0 賣點,但實際/loop來自外部 plugin,使用者不知道Related
Scope confirmation (per /idd-issue clarification)
README.md+plugins/issue-driven-dev/README.md)idd-verifyStep 0 +idd-allPhase 0.5)Priority: P2
Linked-Context Siblings Filed (v2.48.0+ #529)
(none — primary concern already split across 3 explicit Layers within this issue;related #26 / #27 cross-linked above)
Current Status
Phase: closed
Last updated: 2026-05-07 by idd-close
Resolution
6aec214Critical catches by 6-AI verify
plugin.jsondependencies field validate-fail → reverted entirelyPR
Follow-ups (carried)