@iloom/cli 0.10.1 → 0.11.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +1 -1
- package/README.md +4 -2
- package/dist/{BranchNamingService-25KSZAEM.js → BranchNamingService-XBCO747L.js} +4 -4
- package/dist/ClaudeContextManager-SXDCWDJA.js +14 -0
- package/dist/ClaudeService-6E6MCGJE.js +13 -0
- package/dist/GitHubService-2R5GQG4K.js +12 -0
- package/dist/IssueTrackerFactory-XN6MQ4UN.js +14 -0
- package/dist/{LoomLauncher-TDLZSYG2.js → LoomLauncher-5AZU2F5I.js} +15 -12
- package/dist/LoomLauncher-5AZU2F5I.js.map +1 -0
- package/dist/MetadataManager-CMQQTFLQ.js +10 -0
- package/dist/ProjectCapabilityDetector-IC6NAFGY.js +11 -0
- package/dist/{PromptTemplateManager-YOE2SIPG.js → PromptTemplateManager-T5VTLJP3.js} +3 -3
- package/dist/README.md +4 -2
- package/dist/{SettingsManager-FNKCOZMQ.js → SettingsManager-WQ5NSGAH.js} +3 -3
- package/dist/SettingsMigrationManager-S6J7OHUH.js +10 -0
- package/dist/agents/iloom-code-reviewer.md +50 -8
- package/dist/agents/iloom-issue-analyze-and-plan.md +10 -0
- package/dist/agents/iloom-issue-analyzer.md +13 -0
- package/dist/agents/iloom-issue-complexity-evaluator.md +8 -1
- package/dist/agents/iloom-issue-enhancer.md +8 -1
- package/dist/agents/iloom-issue-planner.md +5 -0
- package/dist/build-OLS6J5KZ.js +27 -0
- package/dist/{chunk-WWKOVDWC.js → chunk-3GTUXW26.js} +3 -3
- package/dist/{chunk-4FGEGQW4.js → chunk-3RXYOBME.js} +5 -5
- package/dist/{chunk-HEXKPKCK.js → chunk-5LTID2AF.js} +6 -6
- package/dist/{chunk-G5V75JD5.js → chunk-5PNZBH6V.js} +2 -2
- package/dist/{chunk-SKSYYBCU.js → chunk-5UFGO4ZT.js} +24 -3
- package/dist/{chunk-SKSYYBCU.js.map → chunk-5UFGO4ZT.js.map} +1 -1
- package/dist/{chunk-E6KOWMKA.js → chunk-6YVJVUR4.js} +3 -3
- package/dist/{chunk-RJ3VBUFK.js → chunk-7FIXNAUO.js} +36 -7
- package/dist/chunk-7FIXNAUO.js.map +1 -0
- package/dist/{chunk-QVLPWNE3.js → chunk-7NFCGKZT.js} +3 -3
- package/dist/{chunk-433MOLAU.js → chunk-7OCGBJLR.js} +2 -2
- package/dist/{chunk-KVHIAWVT.js → chunk-ABVMUNCD.js} +8 -8
- package/dist/{chunk-7JDMYTFZ.js → chunk-CV47VCMQ.js} +2 -2
- package/dist/{chunk-7VHJNVLF.js → chunk-ET6A2JR4.js} +8 -6
- package/dist/chunk-ET6A2JR4.js.map +1 -0
- package/dist/{chunk-MORRVYPT.js → chunk-G2MNSPA4.js} +2 -2
- package/dist/{chunk-RSYT7MVI.js → chunk-GMDSYLI6.js} +36 -3
- package/dist/chunk-GMDSYLI6.js.map +1 -0
- package/dist/{chunk-VT4PDUYT.js → chunk-H2SSF24U.js} +284 -209
- package/dist/chunk-H2SSF24U.js.map +1 -0
- package/dist/{chunk-LLHXQS3C.js → chunk-HLDY5S4C.js} +3 -3
- package/dist/{chunk-BYUMEDDD.js → chunk-IDCE26KD.js} +3 -3
- package/dist/{chunk-OTGH2HRS.js → chunk-IR74O2F6.js} +221 -88
- package/dist/chunk-IR74O2F6.js.map +1 -0
- package/dist/{chunk-O7VL5N6S.js → chunk-K7R5QY6C.js} +2 -2
- package/dist/{chunk-S7PZA6IV.js → chunk-KQFIGI37.js} +5 -5
- package/dist/{chunk-I5T677EA.js → chunk-LE2NOUTN.js} +3 -3
- package/dist/{chunk-KXDRI47U.js → chunk-LHDD4JHC.js} +6 -6
- package/dist/{chunk-5FJWO4IT.js → chunk-LL6TOX3G.js} +9 -9
- package/dist/{chunk-YQ57ORTV.js → chunk-NCPZYQ4B.js} +2 -2
- package/dist/{chunk-EWJFUFPT.js → chunk-NDSGJZI2.js} +2 -2
- package/dist/{chunk-VG45TUYK.js → chunk-NH3QZYE5.js} +2 -2
- package/dist/{chunk-KKV5WH5M.js → chunk-NN5RYWXA.js} +7 -7
- package/dist/chunk-NOMQ5RFG.js +118 -0
- package/dist/chunk-NOMQ5RFG.js.map +1 -0
- package/dist/{chunk-KIK2ZFAL.js → chunk-QNHZM5ZV.js} +3 -3
- package/dist/{chunk-EVPZFV3K.js → chunk-QR4FU53I.js} +8 -8
- package/dist/{chunk-FXDYIV3K.js → chunk-QVAA5KHK.js} +2 -2
- package/dist/{chunk-NGJZ4TOU.js → chunk-RBYTXYGD.js} +2 -2
- package/dist/{chunk-SWSJWA2S.js → chunk-RMLADZRY.js} +12 -9
- package/dist/chunk-RMLADZRY.js.map +1 -0
- package/dist/{chunk-CVCTIDDK.js → chunk-RVI6C2H5.js} +5 -5
- package/dist/{chunk-Q7POFB5Q.js → chunk-SQYHPBFP.js} +2 -2
- package/dist/{chunk-GRISNU6G.js → chunk-TEJAGQX2.js} +64 -40
- package/dist/chunk-TEJAGQX2.js.map +1 -0
- package/dist/{chunk-QZWEJVWV.js → chunk-TZNNJLGT.js} +6 -6
- package/dist/{chunk-63QWFWH3.js → chunk-UDCI3QTS.js} +2 -2
- package/dist/{chunk-UKBAJ2QQ.js → chunk-UHIBKD73.js} +7 -7
- package/dist/{chunk-WXIM2WS7.js → chunk-V4STTBQD.js} +10 -10
- package/dist/{chunk-P4O6EH46.js → chunk-VMZG66UV.js} +5 -5
- package/dist/{chunk-C6HNNJIV.js → chunk-VNYWBHKR.js} +34 -4
- package/dist/chunk-VNYWBHKR.js.map +1 -0
- package/dist/{chunk-5RPBYK5Q.js → chunk-VUUN3KE4.js} +10 -10
- package/dist/chunk-VUUN3KE4.js.map +1 -0
- package/dist/{chunk-UUEW5KWB.js → chunk-WG4MLJ6J.js} +15 -10
- package/dist/chunk-WG4MLJ6J.js.map +1 -0
- package/dist/{chunk-ZNMPGMHY.js → chunk-XFQGI2E3.js} +66 -43
- package/dist/chunk-XFQGI2E3.js.map +1 -0
- package/dist/{chunk-LUKXJSRI.js → chunk-XXFSOVL3.js} +4 -4
- package/dist/{chunk-UR5DGNUO.js → chunk-Y3RX7LZT.js} +11 -8
- package/dist/chunk-Y3RX7LZT.js.map +1 -0
- package/dist/{chunk-KB64WNBZ.js → chunk-YRCEOQPX.js} +4 -2
- package/dist/chunk-YRCEOQPX.js.map +1 -0
- package/dist/{chunk-6MLEBAYZ.js → chunk-ZAXRQLK3.js} +2 -2
- package/dist/{claude-7GGEWVEM.js → claude-ONQTDWV3.js} +4 -4
- package/dist/{cleanup-6PVAC4NI.js → cleanup-YOM6PQCN.js} +35 -34
- package/dist/{cleanup-6PVAC4NI.js.map → cleanup-YOM6PQCN.js.map} +1 -1
- package/dist/cli.js +235 -147
- package/dist/cli.js.map +1 -1
- package/dist/{color-4TJ4P5EY.js → color-VQD52LOI.js} +3 -3
- package/dist/{commit-FZR5XDQG.js → commit-DC2Q5CDY.js} +15 -15
- package/dist/{compile-7ALJHZ4N.js → compile-4NCQECKE.js} +11 -11
- package/dist/{contribute-5GKLK3BQ.js → contribute-M5UWXCAV.js} +12 -12
- package/dist/darwin-5BHWRJ7D.js +10 -0
- package/dist/{dev-server-7SMIB7OF.js → dev-server-CYRP6M73.js} +19 -19
- package/dist/{feedback-G2GJFN2F.js → feedback-BMAZGKRW.js} +16 -16
- package/dist/{git-GTLKAZRJ.js → git-BXUD6CL5.js} +6 -6
- package/dist/ignite-IO4LXVXJ.js +35 -0
- package/dist/index.d.ts +39 -65
- package/dist/index.js +637 -110
- package/dist/index.js.map +1 -1
- package/dist/{init-32YOKXRL.js → init-CI43GJHV.js} +17 -17
- package/dist/{init-32YOKXRL.js.map → init-CI43GJHV.js.map} +1 -1
- package/dist/install-deps-SRTM5U7D.js +43 -0
- package/dist/install-deps-SRTM5U7D.js.map +1 -0
- package/dist/{installation-detector-MMFWLJYN.js → installation-detector-HF6QN7KP.js} +3 -3
- package/dist/{issues-4UUAQ5K6.js → issues-DMRQJH7E.js} +15 -15
- package/dist/lint-BSWRMGPZ.js +27 -0
- package/dist/linux-RYLOP2LY.js +103 -0
- package/dist/linux-RYLOP2LY.js.map +1 -0
- package/dist/mcp/chunk-PIIRD4LO.js +373 -0
- package/dist/mcp/chunk-PIIRD4LO.js.map +1 -0
- package/dist/mcp/darwin-3JFFE3W2.js +10 -0
- package/dist/mcp/issue-management-server.js +23 -127
- package/dist/mcp/issue-management-server.js.map +1 -1
- package/dist/mcp/linux-JBVS4R3A.js +103 -0
- package/dist/mcp/linux-JBVS4R3A.js.map +1 -0
- package/dist/mcp/tmux-RYBLEHUZ.js +156 -0
- package/dist/mcp/tmux-RYBLEHUZ.js.map +1 -0
- package/dist/mcp/wsl-4QZIQLLE.js +78 -0
- package/dist/mcp/wsl-4QZIQLLE.js.map +1 -0
- package/dist/neon-helpers-HWIYRKOW.js +11 -0
- package/dist/{open-FXWW3VI4.js → open-2Y7GSUTJ.js} +19 -19
- package/dist/{plan-RQ5FPIGF.js → plan-SWFPLNJE.js} +47 -46
- package/dist/{plan-RQ5FPIGF.js.map → plan-SWFPLNJE.js.map} +1 -1
- package/dist/{projects-2UOXFLNZ.js → projects-IUSUXD5D.js} +6 -6
- package/dist/{prompt-ONNPSNKM.js → prompt-7LZB4PAT.js} +3 -3
- package/dist/prompts/init-prompt.txt +56 -107
- package/dist/prompts/issue-prompt.txt +57 -11
- package/dist/prompts/pr-prompt.txt +154 -4
- package/dist/prompts/regular-prompt.txt +20 -3
- package/dist/prompts/swarm-orchestrator-prompt.txt +134 -14
- package/dist/{rebase-6NVLX5V7.js → rebase-S6OHAOOF.js} +12 -12
- package/dist/{recap-OMBOKJST.js → recap-GGVCG5VH.js} +9 -9
- package/dist/{remote-IJAMOEAP.js → remote-MZTFHHTU.js} +3 -3
- package/dist/remote-MZTFHHTU.js.map +1 -0
- package/dist/{run-BBXLRIZB.js → run-ST3FR75O.js} +19 -19
- package/dist/schema/settings.schema.json +8 -49
- package/dist/{shell-RF7LTND5.js → shell-W4SBQPTE.js} +8 -8
- package/dist/{summary-WTQZ7XG2.js → summary-P2JCIIJO.js} +17 -17
- package/dist/test-6JH4FE2X.js +27 -0
- package/dist/{test-git-XM4TM65W.js → test-git-2KFFAQ6B.js} +6 -6
- package/dist/{test-jira-LDTOYFSD.js → test-jira-FKDKG6CD.js} +8 -8
- package/dist/{test-prefix-GBO37XCN.js → test-prefix-GP2DAX37.js} +11 -11
- package/dist/test-prefix-GP2DAX37.js.map +1 -0
- package/dist/{test-tabs-D3POYOJ5.js → test-tabs-YDWMWTVA.js} +3 -3
- package/dist/{test-webserver-NZ3JTVLL.js → test-webserver-QI3QQFZ3.js} +8 -8
- package/dist/tmux-7ZTA3BDI.js +156 -0
- package/dist/tmux-7ZTA3BDI.js.map +1 -0
- package/dist/{update-HJKDYA3F.js → update-XLW7R7FL.js} +4 -4
- package/dist/{update-notifier-LBAUOOLM.js → update-notifier-EYLAXZAA.js} +3 -3
- package/dist/update-notifier-EYLAXZAA.js.map +1 -0
- package/dist/{vscode-6XUGHJKL.js → vscode-TOGE5N67.js} +13 -13
- package/dist/{vscode-announcement-EQ2SKK3T.js → vscode-announcement-NIX7O2MG.js} +3 -3
- package/dist/wsl-Y4GUTOQ7.js +78 -0
- package/dist/wsl-Y4GUTOQ7.js.map +1 -0
- package/package.json +4 -2
- package/dist/ClaudeContextManager-66GR4BGM.js +0 -14
- package/dist/ClaudeService-7KM5NA5Z.js +0 -13
- package/dist/GitHubService-MEHKHUQP.js +0 -12
- package/dist/IssueTrackerFactory-NG53YX5S.js +0 -14
- package/dist/LoomLauncher-TDLZSYG2.js.map +0 -1
- package/dist/MetadataManager-5QZSTKNN.js +0 -10
- package/dist/ProjectCapabilityDetector-5KSYUTBJ.js +0 -11
- package/dist/SettingsMigrationManager-LEBMJP3B.js +0 -10
- package/dist/build-VHGEMXBA.js +0 -27
- package/dist/chunk-5RPBYK5Q.js.map +0 -1
- package/dist/chunk-7VHJNVLF.js.map +0 -1
- package/dist/chunk-C6HNNJIV.js.map +0 -1
- package/dist/chunk-GRISNU6G.js.map +0 -1
- package/dist/chunk-KB64WNBZ.js.map +0 -1
- package/dist/chunk-OTGH2HRS.js.map +0 -1
- package/dist/chunk-RJ3VBUFK.js.map +0 -1
- package/dist/chunk-RSYT7MVI.js.map +0 -1
- package/dist/chunk-SWSJWA2S.js.map +0 -1
- package/dist/chunk-UR5DGNUO.js.map +0 -1
- package/dist/chunk-UUEW5KWB.js.map +0 -1
- package/dist/chunk-VT4PDUYT.js.map +0 -1
- package/dist/chunk-ZNMPGMHY.js.map +0 -1
- package/dist/ignite-H2O5Y5A2.js +0 -34
- package/dist/lint-AAN2NZWG.js +0 -27
- package/dist/neon-helpers-CQN2PB4S.js +0 -11
- package/dist/test-SGO6I5Z7.js +0 -27
- package/dist/test-prefix-GBO37XCN.js.map +0 -1
- /package/dist/{BranchNamingService-25KSZAEM.js.map → BranchNamingService-XBCO747L.js.map} +0 -0
- /package/dist/{ClaudeContextManager-66GR4BGM.js.map → ClaudeContextManager-SXDCWDJA.js.map} +0 -0
- /package/dist/{ClaudeService-7KM5NA5Z.js.map → ClaudeService-6E6MCGJE.js.map} +0 -0
- /package/dist/{GitHubService-MEHKHUQP.js.map → GitHubService-2R5GQG4K.js.map} +0 -0
- /package/dist/{IssueTrackerFactory-NG53YX5S.js.map → IssueTrackerFactory-XN6MQ4UN.js.map} +0 -0
- /package/dist/{MetadataManager-5QZSTKNN.js.map → MetadataManager-CMQQTFLQ.js.map} +0 -0
- /package/dist/{ProjectCapabilityDetector-5KSYUTBJ.js.map → ProjectCapabilityDetector-IC6NAFGY.js.map} +0 -0
- /package/dist/{PromptTemplateManager-YOE2SIPG.js.map → PromptTemplateManager-T5VTLJP3.js.map} +0 -0
- /package/dist/{SettingsManager-FNKCOZMQ.js.map → SettingsManager-WQ5NSGAH.js.map} +0 -0
- /package/dist/{SettingsMigrationManager-LEBMJP3B.js.map → SettingsMigrationManager-S6J7OHUH.js.map} +0 -0
- /package/dist/{build-VHGEMXBA.js.map → build-OLS6J5KZ.js.map} +0 -0
- /package/dist/{chunk-WWKOVDWC.js.map → chunk-3GTUXW26.js.map} +0 -0
- /package/dist/{chunk-4FGEGQW4.js.map → chunk-3RXYOBME.js.map} +0 -0
- /package/dist/{chunk-HEXKPKCK.js.map → chunk-5LTID2AF.js.map} +0 -0
- /package/dist/{chunk-G5V75JD5.js.map → chunk-5PNZBH6V.js.map} +0 -0
- /package/dist/{chunk-E6KOWMKA.js.map → chunk-6YVJVUR4.js.map} +0 -0
- /package/dist/{chunk-QVLPWNE3.js.map → chunk-7NFCGKZT.js.map} +0 -0
- /package/dist/{chunk-433MOLAU.js.map → chunk-7OCGBJLR.js.map} +0 -0
- /package/dist/{chunk-KVHIAWVT.js.map → chunk-ABVMUNCD.js.map} +0 -0
- /package/dist/{chunk-7JDMYTFZ.js.map → chunk-CV47VCMQ.js.map} +0 -0
- /package/dist/{chunk-MORRVYPT.js.map → chunk-G2MNSPA4.js.map} +0 -0
- /package/dist/{chunk-LLHXQS3C.js.map → chunk-HLDY5S4C.js.map} +0 -0
- /package/dist/{chunk-BYUMEDDD.js.map → chunk-IDCE26KD.js.map} +0 -0
- /package/dist/{chunk-O7VL5N6S.js.map → chunk-K7R5QY6C.js.map} +0 -0
- /package/dist/{chunk-S7PZA6IV.js.map → chunk-KQFIGI37.js.map} +0 -0
- /package/dist/{chunk-I5T677EA.js.map → chunk-LE2NOUTN.js.map} +0 -0
- /package/dist/{chunk-KXDRI47U.js.map → chunk-LHDD4JHC.js.map} +0 -0
- /package/dist/{chunk-5FJWO4IT.js.map → chunk-LL6TOX3G.js.map} +0 -0
- /package/dist/{chunk-YQ57ORTV.js.map → chunk-NCPZYQ4B.js.map} +0 -0
- /package/dist/{chunk-EWJFUFPT.js.map → chunk-NDSGJZI2.js.map} +0 -0
- /package/dist/{chunk-VG45TUYK.js.map → chunk-NH3QZYE5.js.map} +0 -0
- /package/dist/{chunk-KKV5WH5M.js.map → chunk-NN5RYWXA.js.map} +0 -0
- /package/dist/{chunk-KIK2ZFAL.js.map → chunk-QNHZM5ZV.js.map} +0 -0
- /package/dist/{chunk-EVPZFV3K.js.map → chunk-QR4FU53I.js.map} +0 -0
- /package/dist/{chunk-FXDYIV3K.js.map → chunk-QVAA5KHK.js.map} +0 -0
- /package/dist/{chunk-NGJZ4TOU.js.map → chunk-RBYTXYGD.js.map} +0 -0
- /package/dist/{chunk-CVCTIDDK.js.map → chunk-RVI6C2H5.js.map} +0 -0
- /package/dist/{chunk-Q7POFB5Q.js.map → chunk-SQYHPBFP.js.map} +0 -0
- /package/dist/{chunk-QZWEJVWV.js.map → chunk-TZNNJLGT.js.map} +0 -0
- /package/dist/{chunk-63QWFWH3.js.map → chunk-UDCI3QTS.js.map} +0 -0
- /package/dist/{chunk-UKBAJ2QQ.js.map → chunk-UHIBKD73.js.map} +0 -0
- /package/dist/{chunk-WXIM2WS7.js.map → chunk-V4STTBQD.js.map} +0 -0
- /package/dist/{chunk-P4O6EH46.js.map → chunk-VMZG66UV.js.map} +0 -0
- /package/dist/{chunk-LUKXJSRI.js.map → chunk-XXFSOVL3.js.map} +0 -0
- /package/dist/{chunk-6MLEBAYZ.js.map → chunk-ZAXRQLK3.js.map} +0 -0
- /package/dist/{claude-7GGEWVEM.js.map → claude-ONQTDWV3.js.map} +0 -0
- /package/dist/{color-4TJ4P5EY.js.map → color-VQD52LOI.js.map} +0 -0
- /package/dist/{commit-FZR5XDQG.js.map → commit-DC2Q5CDY.js.map} +0 -0
- /package/dist/{compile-7ALJHZ4N.js.map → compile-4NCQECKE.js.map} +0 -0
- /package/dist/{contribute-5GKLK3BQ.js.map → contribute-M5UWXCAV.js.map} +0 -0
- /package/dist/{git-GTLKAZRJ.js.map → darwin-5BHWRJ7D.js.map} +0 -0
- /package/dist/{dev-server-7SMIB7OF.js.map → dev-server-CYRP6M73.js.map} +0 -0
- /package/dist/{feedback-G2GJFN2F.js.map → feedback-BMAZGKRW.js.map} +0 -0
- /package/dist/{ignite-H2O5Y5A2.js.map → git-BXUD6CL5.js.map} +0 -0
- /package/dist/{installation-detector-MMFWLJYN.js.map → ignite-IO4LXVXJ.js.map} +0 -0
- /package/dist/{neon-helpers-CQN2PB4S.js.map → installation-detector-HF6QN7KP.js.map} +0 -0
- /package/dist/{issues-4UUAQ5K6.js.map → issues-DMRQJH7E.js.map} +0 -0
- /package/dist/{lint-AAN2NZWG.js.map → lint-BSWRMGPZ.js.map} +0 -0
- /package/dist/{prompt-ONNPSNKM.js.map → mcp/darwin-3JFFE3W2.js.map} +0 -0
- /package/dist/{remote-IJAMOEAP.js.map → neon-helpers-HWIYRKOW.js.map} +0 -0
- /package/dist/{open-FXWW3VI4.js.map → open-2Y7GSUTJ.js.map} +0 -0
- /package/dist/{projects-2UOXFLNZ.js.map → projects-IUSUXD5D.js.map} +0 -0
- /package/dist/{update-notifier-LBAUOOLM.js.map → prompt-7LZB4PAT.js.map} +0 -0
- /package/dist/{rebase-6NVLX5V7.js.map → rebase-S6OHAOOF.js.map} +0 -0
- /package/dist/{recap-OMBOKJST.js.map → recap-GGVCG5VH.js.map} +0 -0
- /package/dist/{run-BBXLRIZB.js.map → run-ST3FR75O.js.map} +0 -0
- /package/dist/{shell-RF7LTND5.js.map → shell-W4SBQPTE.js.map} +0 -0
- /package/dist/{summary-WTQZ7XG2.js.map → summary-P2JCIIJO.js.map} +0 -0
- /package/dist/{test-SGO6I5Z7.js.map → test-6JH4FE2X.js.map} +0 -0
- /package/dist/{test-git-XM4TM65W.js.map → test-git-2KFFAQ6B.js.map} +0 -0
- /package/dist/{test-jira-LDTOYFSD.js.map → test-jira-FKDKG6CD.js.map} +0 -0
- /package/dist/{test-tabs-D3POYOJ5.js.map → test-tabs-YDWMWTVA.js.map} +0 -0
- /package/dist/{test-webserver-NZ3JTVLL.js.map → test-webserver-QI3QQFZ3.js.map} +0 -0
- /package/dist/{update-HJKDYA3F.js.map → update-XLW7R7FL.js.map} +0 -0
- /package/dist/{vscode-6XUGHJKL.js.map → vscode-TOGE5N67.js.map} +0 -0
- /package/dist/{vscode-announcement-EQ2SKK3T.js.map → vscode-announcement-NIX7O2MG.js.map} +0 -0
|
@@ -79,8 +79,9 @@ Use these Recap MCP tools:
|
|
|
79
79
|
- Complexity classifications
|
|
80
80
|
- Status updates ("implementation complete", "tests pass")
|
|
81
81
|
- Anything about your own workflow process
|
|
82
|
+
- Meta-knowledge about the agent orchestration layer (iloom, MCP servers, worktree mechanics, prompt rendering, etc.) unless the tooling was a direct cause of a problem under investigation
|
|
82
83
|
|
|
83
|
-
**Self-check before adding:** If your entry mentions "enhancement", "complexity evaluation", "SIMPLE/COMPLEX", "word count", "skipping", or "phase"
|
|
84
|
+
**Self-check before adding:** If your entry mentions "enhancement", "complexity evaluation", "SIMPLE/COMPLEX", "word count", "skipping", or "phase" — it's process noise. Don't add it. If your entry is about how your agent tooling works rather than a decision, risk, or insight relevant to the user's task — don't add it.
|
|
84
85
|
|
|
85
86
|
{{#if SWARM_MODE}}
|
|
86
87
|
**Swarm Mode Recap**: When calling recap tools directly (not via sub-agents), you MUST pass `worktreePath: "{{WORKTREE_PATH}}"` on every recap call (`add_entry`, `add_artifact`, `set_complexity`, `set_loom_state`, `get_recap`). Without it, entries default to the epic's recap file instead of this child's recap. Sub-agents spawned via `claude -p` with `--mcp-config` have their own MCP server and do NOT need worktreePath.
|
|
@@ -377,15 +378,26 @@ In swarm mode, phase agents are NOT invoked via @agent syntax (sub-agents cannot
|
|
|
377
378
|
**MCP Config:** Read the file `.claude/iloom-swarm-mcp-config-path` in your worktree. This file contains the absolute path to your per-loom MCP config file. Use this path with `--mcp-config <path>` in all `claude -p` commands.
|
|
378
379
|
|
|
379
380
|
**Command template:**
|
|
381
|
+
|
|
382
|
+
Each `claude -p` call redirects its stream-json output to a temp file, then the result is extracted from that file. This keeps the worker's context window lean -- it only sees the extracted result text, not the full agent narrative.
|
|
383
|
+
|
|
380
384
|
```bash
|
|
381
|
-
|
|
382
|
-
|
|
385
|
+
PHASE_OUTPUT_FILE=$(mktemp /tmp/iloom-phase-XXXXXX)
|
|
386
|
+
env -u CLAUDECODE \
|
|
387
|
+
ENABLE_TOOL_SEARCH=auto:30 \
|
|
388
|
+
CLAUDE_CODE_DISABLE_FILE_CHECKPOINTING=1 \
|
|
389
|
+
CLAUDE_CODE_DISABLE_AUTO_MEMORY=1 \
|
|
390
|
+
CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1 \
|
|
391
|
+
CLAUDE_CODE_EFFORT_LEVEL=medium \
|
|
392
|
+
claude -p \
|
|
393
|
+
--system-prompt-file {{EPIC_WORKTREE_PATH}}/.claude/agents/<agent-file>.md \
|
|
383
394
|
--mcp-config <path-from-.claude/iloom-swarm-mcp-config-path> \
|
|
384
395
|
--model <model-from-metadata> \
|
|
385
396
|
--permission-mode bypassPermissions \
|
|
386
|
-
--output-format
|
|
397
|
+
--output-format stream-json \
|
|
398
|
+
--verbose \
|
|
387
399
|
--max-turns 50 \
|
|
388
|
-
"<prompt for the phase>"
|
|
400
|
+
"<prompt for the phase>" > "$PHASE_OUTPUT_FILE" 2>"${PHASE_OUTPUT_FILE}.stderr"
|
|
389
401
|
```
|
|
390
402
|
|
|
391
403
|
**Bash tool timeout:** When invoking the command above via the Bash tool, you MUST set the `timeout` parameter to `{{SWARM_SUB_AGENT_TIMEOUT_MS}}` (milliseconds). This prevents sub-agent invocations from hanging indefinitely.
|
|
@@ -403,8 +415,15 @@ For each agent, use:
|
|
|
403
415
|
- `--allowedTools` from the `tools` array in the metadata above (comma-separated, only if the `tools` field exists)
|
|
404
416
|
- The agent file is at `{{EPIC_WORKTREE_PATH}}/.claude/agents/<agent-key>.md` where `<agent-key>` matches the key in the JSON above
|
|
405
417
|
|
|
406
|
-
**Output parsing:**
|
|
407
|
-
|
|
418
|
+
**Output parsing (stream-json temp file):**
|
|
419
|
+
|
|
420
|
+
The `--output-format stream-json` produces newline-delimited JSON (JSONL) in the temp file. Each line is a JSON object. The last line with `"type":"result"` contains the agent's final result in the `result` field. Read the temp file, extract the result text, and clean up:
|
|
421
|
+
|
|
422
|
+
```bash
|
|
423
|
+
rm -f "$PHASE_OUTPUT_FILE" "${PHASE_OUTPUT_FILE}.stderr"
|
|
424
|
+
```
|
|
425
|
+
|
|
426
|
+
You can also tail the temp file to check on the agent's progress while it's running. Do NOT read the full temp file into your context — only extract the final result text.
|
|
408
427
|
|
|
409
428
|
**Working directory:**
|
|
410
429
|
Each `claude -p` process inherits the current working directory. Ensure you are in the child worktree before invoking phase agents.
|
|
@@ -415,6 +434,7 @@ Each `claude -p` process inherits the current working directory. Ensure you are
|
|
|
415
434
|
- The agent `.md` files are pre-rendered and available at the paths above
|
|
416
435
|
- Always include `env -u CLAUDECODE` prefix -- this is mandatory
|
|
417
436
|
- The `.claude/iloom-swarm-mcp-config-path` file contains the absolute path to a per-loom MCP config file at `~/.config/iloom-ai/mcp-configs/`
|
|
437
|
+
- Output is redirected to a temp file to keep your context window lean -- never pipe the full stream into your context
|
|
418
438
|
|
|
419
439
|
**Todo List:**
|
|
420
440
|
1. Initialize: cd to worktree, read `.claude/iloom-swarm-mcp-config-path` for MCP config path, set state to `in_progress` (pass `worktreePath: "<your-worktree-path>"` to target your own metadata, not the epic's), read issue
|
|
@@ -423,11 +443,16 @@ Each `claude -p` process inherits the current working directory. Ensure you are
|
|
|
423
443
|
{{#if ARTIFACT_REVIEW_ENABLED}}{{#if ENHANCER_REVIEW_ENABLED}}
|
|
424
444
|
3a. Run artifact review on enhancement output via headless claude -p process (artifact reviewer agent)
|
|
425
445
|
{{/if}}{{/if}}
|
|
446
|
+
{{#if COMPLEXITY_OVERRIDE}}
|
|
447
|
+
4. Complexity has been overridden to {{COMPLEXITY_OVERRIDE}}. Skip complexity evaluation and proceed directly to routing.
|
|
448
|
+
5. Route to appropriate workflow based on overridden complexity: {{COMPLEXITY_OVERRIDE}}
|
|
449
|
+
{{else}}
|
|
426
450
|
4. Run complexity evaluation via headless claude -p process (complexity evaluator agent). After completion, call `mcp__recap__add_artifact` with the complexity evaluation comment URL and `worktreePath: "<your-worktree-path>"`.
|
|
427
451
|
{{#if ARTIFACT_REVIEW_ENABLED}}{{#if COMPLEXITY_REVIEW_ENABLED}}
|
|
428
452
|
4a. Run artifact review on complexity evaluation output via headless claude -p process (artifact reviewer agent)
|
|
429
453
|
{{/if}}{{/if}}
|
|
430
454
|
5. Route based on complexity (TRIVIAL skips to implementation, SIMPLE uses combined analyze-and-plan, COMPLEX uses separate analysis then planning)
|
|
455
|
+
{{/if}}
|
|
431
456
|
6. Run analysis/planning based on route via headless claude -p process (appropriate agent). After completion, call `mcp__recap__add_artifact` with each comment URL created by the agent and `worktreePath: "<your-worktree-path>"`.
|
|
432
457
|
{{#if ARTIFACT_REVIEW_ENABLED}}{{#if ANALYZER_REVIEW_ENABLED}}
|
|
433
458
|
6a. If COMPLEX: Run artifact review on analysis output via headless claude -p process (artifact reviewer agent)
|
|
@@ -444,7 +469,7 @@ Each `claude -p` process inherits the current working directory. Ensure you are
|
|
|
444
469
|
{{/if}}{{/if}}
|
|
445
470
|
8. Set state to `code_review` (pass `worktreePath: "<your-worktree-path>"`), run code review via headless claude -p process (code reviewer agent)
|
|
446
471
|
9. If critical/high issues found, auto-fix and optionally re-review
|
|
447
|
-
10. Stage and commit all changes: `git add -A && git commit -m "
|
|
472
|
+
10. Stage and commit all changes: `git add -A && git commit -m "feat(issue-<issue-number>): [descriptive summary of changes]"` — the commit message must summarize what was implemented (not just "fixes #NNN")
|
|
448
473
|
11. Set state to `done` (pass `worktreePath: "<your-worktree-path>"`), report structured result to orchestrator
|
|
449
474
|
{{else}}
|
|
450
475
|
You are orchestrating a set of agents through a development process, with human review at each step. This is referred to as the "iloom workflow".
|
|
@@ -460,6 +485,10 @@ You are orchestrating a set of agents through a development process, with human
|
|
|
460
485
|
3. Extract issue link that includes comment id from agent output (if enhancement was needed), display to user
|
|
461
486
|
4. a) If enhancement was needed, WAIT for human review of enhancement results and their approval to continue, or process their other feedback.
|
|
462
487
|
b) If enhancement was NOT needed, let the user know and move to the next step.
|
|
488
|
+
{{#if COMPLEXITY_OVERRIDE}}
|
|
489
|
+
5. Complexity has been overridden to {{COMPLEXITY_OVERRIDE}} via CLI flag. Skip complexity evaluation and proceed directly to routing.
|
|
490
|
+
6. Route to appropriate workflow based on overridden complexity: {{COMPLEXITY_OVERRIDE}}
|
|
491
|
+
{{else}}
|
|
463
492
|
5. Run complexity evaluation for {{ISSUE_NUMBER}} using @agent-iloom-issue-complexity-evaluator
|
|
464
493
|
{{#if ARTIFACT_REVIEW_ENABLED}}{{#if COMPLEXITY_REVIEW_ENABLED}}
|
|
465
494
|
5a. Run artifact review on complexity evaluation output using @agent-iloom-artifact-reviewer
|
|
@@ -467,6 +496,7 @@ You are orchestrating a set of agents through a development process, with human
|
|
|
467
496
|
6. Extract issue link that includes comment id from agent output, display complexity assessment to user
|
|
468
497
|
7. WAIT for human confirmation of complexity classification before proceeding to next phase
|
|
469
498
|
8. Route to appropriate workflow based on confirmed complexity (TRIVIAL, SIMPLE, or COMPLEX)
|
|
499
|
+
{{/if}}
|
|
470
500
|
9. If SIMPLE: Run combined analysis and planning for {{ISSUE_NUMBER}} using @agent-iloom-issue-analyze-and-plan
|
|
471
501
|
{{#if ARTIFACT_REVIEW_ENABLED}}{{#if ANALYZE_AND_PLAN_REVIEW_ENABLED}}
|
|
472
502
|
9a. If SIMPLE: Run artifact review on combined analysis and plan output using @agent-iloom-artifact-reviewer
|
|
@@ -524,12 +554,17 @@ For the Enhancement Decision specifically: you check whether an existing comment
|
|
|
524
554
|
- If skipping, log: "Issue #ISSUE_NUMBER is already thorough ([word count] words with clear structure), skipping enhancement"
|
|
525
555
|
|
|
526
556
|
**Complexity Evaluation Decision:**
|
|
557
|
+
{{#if COMPLEXITY_OVERRIDE}}
|
|
558
|
+
- Decision: SKIP_COMPLEXITY_EVAL (complexity overridden to {{COMPLEXITY_OVERRIDE}} via CLI flag)
|
|
559
|
+
- Log: "Complexity overridden to {{COMPLEXITY_OVERRIDE}} via CLI flag, skipping complexity evaluation"
|
|
560
|
+
{{else}}
|
|
527
561
|
- Search ALL comments for existing complexity evaluation. Consider "already evaluated" if ANY comment has:
|
|
528
562
|
* Header containing "Complexity Assessment" or "Complexity Evaluation"
|
|
529
563
|
* Section with "**Classification**: [TRIVIAL / SIMPLE / COMPLEX]"
|
|
530
564
|
* Metrics section with estimated files, LOC, breaking changes, DB migrations, and risk level
|
|
531
565
|
- Decision: NEEDS_COMPLEXITY_EVAL or SKIP_COMPLEXITY_EVAL
|
|
532
566
|
- If skipping, log: "Issue #ISSUE_NUMBER already has complexity evaluation by @[author] from [date] showing [TRIVIAL/SIMPLE/COMPLEX] classification, skipping evaluation"
|
|
567
|
+
{{/if}}
|
|
533
568
|
|
|
534
569
|
**Analysis Decision:**
|
|
535
570
|
- Search ALL comments for existing analysis. Consider "already analyzed" if ANY comment has ALL:
|
|
@@ -678,6 +713,16 @@ If workflow plan determined SKIP_ENHANCEMENT:
|
|
|
678
713
|
|
|
679
714
|
**STEP 1.5 - Complexity Evaluation Phase:**
|
|
680
715
|
|
|
716
|
+
{{#if COMPLEXITY_OVERRIDE}}
|
|
717
|
+
The complexity has been overridden to **{{COMPLEXITY_OVERRIDE}}** via CLI flag. Skip complexity evaluation entirely.
|
|
718
|
+
1. Set confirmed complexity to {{COMPLEXITY_OVERRIDE}}
|
|
719
|
+
{{#if SWARM_MODE}}
|
|
720
|
+
2. Log: "Complexity overridden to {{COMPLEXITY_OVERRIDE}} via CLI flag, skipping complexity evaluation"
|
|
721
|
+
{{else}}
|
|
722
|
+
2. Display to user: "Complexity overridden to {{COMPLEXITY_OVERRIDE}} via CLI flag, skipping complexity evaluation"
|
|
723
|
+
{{/if}}
|
|
724
|
+
3. Proceed directly to ROUTING DECISION POINT with complexity = {{COMPLEXITY_OVERRIDE}}
|
|
725
|
+
{{else}}
|
|
681
726
|
Only execute if workflow plan determined NEEDS_COMPLEXITY_EVAL:
|
|
682
727
|
{{#if SWARM_MODE}}
|
|
683
728
|
1. Execute complexity evaluator agent via headless `claude -p` (see "Invoking Phase Agents" above) with prompt: "Evaluate complexity for issue #ISSUE_NUMBER. Before making assumptions, scan ALL issue comments for previously asked questions and their answers. When creating question tables, fill in your own assumed answers."
|
|
@@ -787,6 +832,7 @@ If workflow plan determined SKIP_COMPLEXITY_EVAL:
|
|
|
787
832
|
If complexity found: "Previous evaluation classified this as [TRIVIAL/SIMPLE/COMPLEX]. Proceeding with [TRIVIAL/SIMPLE/COMPLEX] workflow."
|
|
788
833
|
If not found: "No complexity classification found - defaulting to COMPLEX workflow."
|
|
789
834
|
4. Proceed to ROUTING DECISION POINT with extracted complexity (no confirmation needed)
|
|
835
|
+
{{/if}}
|
|
790
836
|
|
|
791
837
|
**STEP 2 - Analysis Phase (COMPLEX workflow only):**
|
|
792
838
|
|
|
@@ -1252,7 +1298,7 @@ If workflow plan determined SKIP_IMPLEMENTATION:
|
|
|
1252
1298
|
|
|
1253
1299
|
## STEP 5 - Review Phase
|
|
1254
1300
|
|
|
1255
|
-
This section is about reviewing
|
|
1301
|
+
This section is about reviewing code changes for quality, security, and compliance issues.
|
|
1256
1302
|
|
|
1257
1303
|
{{#if SWARM_MODE}}
|
|
1258
1304
|
**State transition**: Before running review, call `recap.set_loom_state('code_review')` with `worktreePath: "<your-worktree-path>"`.
|
|
@@ -1281,7 +1327,7 @@ This section is about reviewing uncommitted code changes for quality, security,
|
|
|
1281
1327
|
- Execute: @agent-iloom-code-reviewer with prompt "Run code review."
|
|
1282
1328
|
- **IMPORTANT**: Must run in foreground (not as background Task) to access MCP tools
|
|
1283
1329
|
- **DO NOT** pass extra context (file lists, issue details, etc.) - the agent knows what to do
|
|
1284
|
-
- The reviewer will analyze
|
|
1330
|
+
- The reviewer will analyze code changes and report findings
|
|
1285
1331
|
|
|
1286
1332
|
**When issues are found:**
|
|
1287
1333
|
- Ask the user: "Issues found. Do you want to proceed anyway, or address these first?"
|
|
@@ -1377,7 +1423,7 @@ This is NOT optional - if the reviewer requests Claude Local Review, it must be
|
|
|
1377
1423
|
---
|
|
1378
1424
|
|
|
1379
1425
|
{{#if SWARM_MODE}}
|
|
1380
|
-
**MANDATORY CHECKPOINT: You MUST complete the code review before committing. After review, stage and commit all changes with `git add -A && git commit -m "
|
|
1426
|
+
**MANDATORY CHECKPOINT: You MUST complete the code review before committing. After review, stage and commit all changes with `git add -A && git commit -m "feat(issue-<issue-number>): [descriptive summary]"` (using your issue number from invocation arguments). The commit message MUST describe what was implemented — do NOT use generic "fixes #NNN" messages. Then set state to `done` and report results.**
|
|
1381
1427
|
{{else}}
|
|
1382
1428
|
{{#if DRAFT_PR_MODE}}
|
|
1383
1429
|
{{#if AUTO_COMMIT_PUSH}}
|
|
@@ -46,10 +46,13 @@ Use these Recap MCP tools:
|
|
|
46
46
|
- `recap.add_artifact` - After creating/updating comments, issues, or PRs, log them with type, primaryUrl, and description. Duplicates with the same primaryUrl will be replaced.
|
|
47
47
|
|
|
48
48
|
**NEVER log:**
|
|
49
|
+
- What phases you skipped
|
|
50
|
+
- Complexity classifications
|
|
49
51
|
- Status updates ("PR reviewed", "tests pass")
|
|
50
52
|
- Anything about your own workflow process
|
|
53
|
+
- Meta-knowledge about the agent orchestration layer (iloom, MCP servers, worktree mechanics, prompt rendering, etc.) unless the tooling was a direct cause of a problem under investigation
|
|
51
54
|
|
|
52
|
-
**Self-check before adding:** If your entry is about
|
|
55
|
+
**Self-check before adding:** If your entry mentions "enhancement", "complexity evaluation", "SIMPLE/COMPLEX", "word count", "skipping", or "phase" — it's process noise. Don't add it. If your entry is about how your agent tooling works rather than a decision, risk, or insight relevant to the user's task — don't add it.
|
|
53
56
|
|
|
54
57
|
---
|
|
55
58
|
|
|
@@ -113,7 +116,62 @@ When working with libraries, frameworks, or APIs that you need documentation for
|
|
|
113
116
|
- Working with unfamiliar APIs
|
|
114
117
|
- When you need current documentation that may have changed since your training data
|
|
115
118
|
|
|
116
|
-
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
## Addressing PR Review Feedback
|
|
122
|
+
|
|
123
|
+
After reading the PR, check for unresolved inline review comments using `mcp__issue_management__get_review_comments`. If there are unresolved review threads:
|
|
124
|
+
|
|
125
|
+
{{#if ONE_SHOT_MODE}}
|
|
126
|
+
Evaluate unresolved review comments using the same severity framework as the code review agent, then address automatically where appropriate:
|
|
127
|
+
|
|
128
|
+
1. **Assess each comment** by severity and risk:
|
|
129
|
+
- **Must fix**: Bugs, security issues, correctness problems, clear code quality issues — address these automatically
|
|
130
|
+
- **Nice to have**: Style preferences, optional improvements — address if low-effort, skip if subjective
|
|
131
|
+
- **Complex/ambiguous**: Architectural concerns, large refactors, unclear intent, or requests that could lead to scope creep — do NOT attempt; note them in the summary
|
|
132
|
+
2. **Summarize**: Post a PR comment summarizing all feedback, grouped by what was addressed vs deferred. For deferred items, explain why.
|
|
133
|
+
3. **Address must-fix items and low-effort nice-to-haves**: For each:
|
|
134
|
+
a. Make the code change
|
|
135
|
+
b. Reply to the review thread explaining what was changed:
|
|
136
|
+
```bash
|
|
137
|
+
gh api \
|
|
138
|
+
--method POST \
|
|
139
|
+
-H "Accept: application/vnd.github+json" \
|
|
140
|
+
/repos/{owner}/{repo}/pulls/{{PR_NUMBER}}/comments \
|
|
141
|
+
--input - <<'EOF'
|
|
142
|
+
{
|
|
143
|
+
"body": "Fixed — [brief explanation of the change made]",
|
|
144
|
+
"in_reply_to": REVIEW_COMMENT_ID
|
|
145
|
+
}
|
|
146
|
+
EOF
|
|
147
|
+
```
|
|
148
|
+
4. **Commit and push** changes after addressing comments
|
|
149
|
+
5. Proceed to code review (see "Code Review" section below)
|
|
150
|
+
{{else}}
|
|
151
|
+
Present a summary of unresolved review feedback to the user:
|
|
152
|
+
|
|
153
|
+
1. **Summarize feedback**: Group unresolved comments by file/topic. For each, show:
|
|
154
|
+
- File and line
|
|
155
|
+
- Reviewer's comment (abbreviated if long)
|
|
156
|
+
- Your assessment of what needs to change
|
|
157
|
+
2. **Ask the user** how they'd like to proceed:
|
|
158
|
+
- "Address all comments" — work through them systematically
|
|
159
|
+
- "Address specific comments" — let the user pick which ones
|
|
160
|
+
- "Skip for now" — move on to other work
|
|
161
|
+
3. **For each comment being addressed**:
|
|
162
|
+
a. Make the code change
|
|
163
|
+
b. Reply to the review thread explaining the fix (using `gh api` as shown above)
|
|
164
|
+
4. After addressing comments, offer to run code review
|
|
165
|
+
{{/if}}
|
|
166
|
+
|
|
167
|
+
If there are no unresolved review comments:
|
|
168
|
+
{{#if ONE_SHOT_MODE}}
|
|
169
|
+
- Check the PR description and linked issue for remaining work. If there's work to do, proceed with it. Otherwise, run code review.
|
|
170
|
+
{{else}}
|
|
171
|
+
- Let the user know the PR has no unresolved feedback, and wait for guidance on what to work on next.
|
|
172
|
+
{{/if}}
|
|
173
|
+
|
|
174
|
+
---
|
|
117
175
|
|
|
118
176
|
Remember to:
|
|
119
177
|
- Follow the project's coding conventions and patterns
|
|
@@ -230,7 +288,7 @@ When workflow agents complete their tasks and produce artifacts, check if artifa
|
|
|
230
288
|
|
|
231
289
|
## Code Review
|
|
232
290
|
|
|
233
|
-
Review
|
|
291
|
+
Review code changes for quality, security, and compliance issues. After reviewing, post findings as a proper GitHub PR review with inline comments.
|
|
234
292
|
|
|
235
293
|
{{#if REVIEW_ENABLED}}
|
|
236
294
|
**Auto-Run Mode**: After addressing PR feedback or making code changes, review automatically executes. No manual trigger needed.
|
|
@@ -244,6 +302,7 @@ Review uncommitted code changes for quality, security, and compliance issues.
|
|
|
244
302
|
- Ask the user: "Critical issues found. Do you want to proceed anyway, or address these first?"
|
|
245
303
|
- Wait for user response before continuing
|
|
246
304
|
{{/if}}
|
|
305
|
+
4. **Post findings as a GitHub PR review** (see "Posting Review Findings" below)
|
|
247
306
|
{{/if}}
|
|
248
307
|
|
|
249
308
|
{{#unless ONE_SHOT_MODE}}
|
|
@@ -251,7 +310,8 @@ Review uncommitted code changes for quality, security, and compliance issues.
|
|
|
251
310
|
- Execute: @agent-iloom-code-reviewer with prompt "Run code review."
|
|
252
311
|
- **IMPORTANT**: Must run in foreground (not as background Task) to access MCP tools
|
|
253
312
|
- **DO NOT** pass extra context (file lists, issue details, etc.) - the agent knows what to do
|
|
254
|
-
- The reviewer will analyze
|
|
313
|
+
- The reviewer will analyze code changes and report findings
|
|
314
|
+
- After review completes, **post findings as a GitHub PR review** (see below)
|
|
255
315
|
{{/unless}}
|
|
256
316
|
|
|
257
317
|
**MANDATORY Claude Local Review**: If the reviewer returns "Instructions for Orchestrator: Claude Local Review", you MUST execute those instructions:
|
|
@@ -260,11 +320,101 @@ Review uncommitted code changes for quality, security, and compliance issues.
|
|
|
260
320
|
3. Collect results from all agents
|
|
261
321
|
4. Present unified report as specified
|
|
262
322
|
5. If critical issues found, ask user before proceeding
|
|
323
|
+
6. **Post findings as a GitHub PR review** (see below)
|
|
263
324
|
|
|
264
325
|
This is NOT optional - if the reviewer requests Claude Local Review, it must be performed before continuing.
|
|
265
326
|
|
|
266
327
|
---
|
|
267
328
|
|
|
329
|
+
## Posting Review Findings to GitHub
|
|
330
|
+
|
|
331
|
+
After code review completes and produces findings, **you MUST post them as a GitHub PR review with inline comments**. This applies to all review paths (auto-run, manual, and Claude Local Review).
|
|
332
|
+
|
|
333
|
+
### Step 1: Map Findings to Inline Comments
|
|
334
|
+
|
|
335
|
+
The code reviewer produces findings in `[FILE:LINE] (Score: XX) Description` format. Map each finding to a review comment object:
|
|
336
|
+
- `path`: The file path from the finding (relative to repo root)
|
|
337
|
+
- `line`: The line number from the finding
|
|
338
|
+
- `body`: The finding description, including severity, score, and recommendation
|
|
339
|
+
|
|
340
|
+
**Only include findings for lines that are part of the PR diff.** Use `gh pr diff {{PR_NUMBER}}` to check which lines are changed. Skip findings on unchanged lines — GitHub rejects review comments on lines outside the diff.
|
|
341
|
+
|
|
342
|
+
### Step 2: Submit Batched Review
|
|
343
|
+
|
|
344
|
+
Submit all findings as a single review using `gh api` with `--input` and a heredoc:
|
|
345
|
+
|
|
346
|
+
```bash
|
|
347
|
+
gh api \
|
|
348
|
+
--method POST \
|
|
349
|
+
-H "Accept: application/vnd.github+json" \
|
|
350
|
+
/repos/{owner}/{repo}/pulls/{{PR_NUMBER}}/reviews \
|
|
351
|
+
--input - <<'EOF'
|
|
352
|
+
{
|
|
353
|
+
"body": "## Code Review Summary\n\n[Summary of findings from unified report]",
|
|
354
|
+
"event": "EVENT_VALUE",
|
|
355
|
+
"comments": [
|
|
356
|
+
{
|
|
357
|
+
"path": "src/example.ts",
|
|
358
|
+
"line": 42,
|
|
359
|
+
"body": "**[Bug]** (Score: 95) Issue description\nRecommendation: ..."
|
|
360
|
+
},
|
|
361
|
+
{
|
|
362
|
+
"path": "src/other.ts",
|
|
363
|
+
"line": 15,
|
|
364
|
+
"body": "**[Warning]** (Score: 85) Issue description\nRecommendation: ..."
|
|
365
|
+
}
|
|
366
|
+
]
|
|
367
|
+
}
|
|
368
|
+
EOF
|
|
369
|
+
```
|
|
370
|
+
|
|
371
|
+
If the review is clean (no inline findings), submit a summary-only review with an empty `comments` array.
|
|
372
|
+
|
|
373
|
+
**Valid `event` values:** `APPROVE`, `REQUEST_CHANGES`, `COMMENT`
|
|
374
|
+
|
|
375
|
+
### Step 3: Choose Verdict
|
|
376
|
+
|
|
377
|
+
{{#if ONE_SHOT_MODE}}
|
|
378
|
+
Choose the verdict automatically based on the code reviewer's severity categories:
|
|
379
|
+
- **`REQUEST_CHANGES`**: If any Critical (95-100) or Warning (80-94) findings exist
|
|
380
|
+
- **`COMMENT`**: If only Suggestions (below 80) exist
|
|
381
|
+
- **`APPROVE`**: If no issues are found (clean review)
|
|
382
|
+
|
|
383
|
+
Submit the review automatically without asking.
|
|
384
|
+
{{else}}
|
|
385
|
+
Present the review findings summary and the reviewer's recommended verdict to the user. Ask which verdict to submit:
|
|
386
|
+
- **`APPROVE`** -- No issues found
|
|
387
|
+
- **`REQUEST_CHANGES`** -- Critical or Warning-level findings that should be addressed
|
|
388
|
+
- **`COMMENT`** -- Only suggestions, no blocking issues
|
|
389
|
+
|
|
390
|
+
Wait for user confirmation before submitting the review.
|
|
391
|
+
{{/if}}
|
|
392
|
+
|
|
393
|
+
---
|
|
394
|
+
|
|
395
|
+
### One-off Review Comments (Ad-hoc)
|
|
396
|
+
|
|
397
|
+
For individual findings discovered during conversation (outside the batched review flow), post them as standalone review comments:
|
|
398
|
+
|
|
399
|
+
```bash
|
|
400
|
+
gh api \
|
|
401
|
+
--method POST \
|
|
402
|
+
-H "Accept: application/vnd.github+json" \
|
|
403
|
+
/repos/{owner}/{repo}/pulls/{{PR_NUMBER}}/comments \
|
|
404
|
+
--input - <<'EOF'
|
|
405
|
+
{
|
|
406
|
+
"body": "Issue description and recommendation",
|
|
407
|
+
"commit_id": "HEAD_COMMIT_SHA",
|
|
408
|
+
"path": "src/example.ts",
|
|
409
|
+
"line": 42
|
|
410
|
+
}
|
|
411
|
+
EOF
|
|
412
|
+
```
|
|
413
|
+
|
|
414
|
+
Get the latest commit SHA with: `gh pr view {{PR_NUMBER}} --json headRefOid -q '.headRefOid'`
|
|
415
|
+
|
|
416
|
+
---
|
|
417
|
+
|
|
268
418
|
## Wrapping Up Instructions
|
|
269
419
|
|
|
270
420
|
When the user says they're done or ready to wrap up, provide these instructions:
|
|
@@ -50,8 +50,9 @@ Use these Recap MCP tools:
|
|
|
50
50
|
- Complexity classifications
|
|
51
51
|
- Status updates ("implementation complete", "tests pass")
|
|
52
52
|
- Anything about your own workflow process
|
|
53
|
+
- Meta-knowledge about the agent orchestration layer (iloom, MCP servers, worktree mechanics, prompt rendering, etc.) unless the tooling was a direct cause of a problem under investigation
|
|
53
54
|
|
|
54
|
-
**Self-check before adding:** If your entry mentions "enhancement", "complexity evaluation", "SIMPLE/COMPLEX", "word count", "skipping", or "phase"
|
|
55
|
+
**Self-check before adding:** If your entry mentions "enhancement", "complexity evaluation", "SIMPLE/COMPLEX", "word count", "skipping", or "phase" — it's process noise. Don't add it. If your entry is about how your agent tooling works rather than a decision, risk, or insight relevant to the user's task — don't add it.
|
|
55
56
|
|
|
56
57
|
---
|
|
57
58
|
|
|
@@ -204,6 +205,10 @@ You are orchestrating a set of agents through a development process, with human
|
|
|
204
205
|
{{/if}}{{/if}}
|
|
205
206
|
3. Display enhanced specification to user
|
|
206
207
|
4. WAIT for human confirmation of enhanced specification before proceeding
|
|
208
|
+
{{#if COMPLEXITY_OVERRIDE}}
|
|
209
|
+
5. Complexity has been overridden to {{COMPLEXITY_OVERRIDE}} via CLI flag. Skip complexity evaluation and proceed directly to routing.
|
|
210
|
+
6. Route to appropriate workflow based on overridden complexity: {{COMPLEXITY_OVERRIDE}}
|
|
211
|
+
{{else}}
|
|
207
212
|
5. Run complexity evaluation using @agent-iloom-issue-complexity-evaluator (adapted for branch mode)
|
|
208
213
|
{{#if ARTIFACT_REVIEW_ENABLED}}{{#if COMPLEXITY_REVIEW_ENABLED}}
|
|
209
214
|
5a. Run artifact review on complexity evaluation output using @agent-iloom-artifact-reviewer
|
|
@@ -211,6 +216,7 @@ You are orchestrating a set of agents through a development process, with human
|
|
|
211
216
|
6. Display complexity assessment to user
|
|
212
217
|
7. WAIT for human confirmation of complexity classification before proceeding to next phase
|
|
213
218
|
8. Route to appropriate workflow based on confirmed complexity (TRIVIAL, SIMPLE or COMPLEX)
|
|
219
|
+
{{/if}}
|
|
214
220
|
9. If TRIVIAL: Skip to implementation directly (no analysis or planning needed)
|
|
215
221
|
10. If SIMPLE: Run combined analysis and planning using @agent-iloom-issue-analyze-and-plan
|
|
216
222
|
{{#if ARTIFACT_REVIEW_ENABLED}}{{#if ANALYZE_AND_PLAN_REVIEW_ENABLED}}
|
|
@@ -329,7 +335,11 @@ You are orchestrating a set of agents through a development process, with human
|
|
|
329
335
|
4. Use AskUserQuestion tool with a single question:
|
|
330
336
|
- Question: "Enhancement complete. Does this specification accurately capture your requirements?"
|
|
331
337
|
- Options:
|
|
338
|
+
{{#if COMPLEXITY_OVERRIDE}}
|
|
339
|
+
- "Yes, proceed" (default)
|
|
340
|
+
{{else}}
|
|
332
341
|
- "Yes, proceed to complexity evaluation" (default)
|
|
342
|
+
{{/if}}
|
|
333
343
|
- "No, I have corrections or additions"
|
|
334
344
|
- "Exit workflow"
|
|
335
345
|
- multiSelect: false
|
|
@@ -342,6 +352,12 @@ You are orchestrating a set of agents through a development process, with human
|
|
|
342
352
|
|
|
343
353
|
**STEP 2 - Complexity Evaluation Phase:**
|
|
344
354
|
|
|
355
|
+
{{#if COMPLEXITY_OVERRIDE}}
|
|
356
|
+
The complexity has been overridden to **{{COMPLEXITY_OVERRIDE}}** via CLI flag. Skip complexity evaluation entirely.
|
|
357
|
+
1. Set confirmed complexity to {{COMPLEXITY_OVERRIDE}}
|
|
358
|
+
2. Display to user: "Complexity overridden to {{COMPLEXITY_OVERRIDE}} via CLI flag, skipping complexity evaluation"
|
|
359
|
+
3. Proceed directly to ROUTING DECISION POINT with complexity = {{COMPLEXITY_OVERRIDE}}
|
|
360
|
+
{{else}}
|
|
345
361
|
1. Execute: @agent-iloom-issue-complexity-evaluator with the following context:
|
|
346
362
|
- **IMPORTANT**: This is branch mode - there is NO GitHub issue to fetch
|
|
347
363
|
- Provide the enhanced specification directly to the agent: "This is branch mode - analyze complexity based on the following enhanced specification instead of fetching from GitHub: [ENHANCED_SPECIFICATION]"
|
|
@@ -424,6 +440,7 @@ You are orchestrating a set of agents through a development process, with human
|
|
|
424
440
|
- If user chooses "Exit workflow": End workflow gracefully
|
|
425
441
|
6. Mark todos #7 and #8 as completed
|
|
426
442
|
7. Proceed to ROUTING DECISION POINT with confirmed complexity
|
|
443
|
+
{{/if}}
|
|
427
444
|
|
|
428
445
|
---
|
|
429
446
|
|
|
@@ -713,7 +730,7 @@ Execute combined analyze-and-plan agent:
|
|
|
713
730
|
|
|
714
731
|
## STEP 5.5 - Review Phase
|
|
715
732
|
|
|
716
|
-
This section is about reviewing
|
|
733
|
+
This section is about reviewing code changes for quality, security, and compliance issues.
|
|
717
734
|
|
|
718
735
|
{{#if REVIEW_ENABLED}}
|
|
719
736
|
**Auto-Run Mode**: Review automatically executes after implementation completes. No manual trigger needed.
|
|
@@ -734,7 +751,7 @@ This section is about reviewing uncommitted code changes for quality, security,
|
|
|
734
751
|
- Execute: @agent-iloom-code-reviewer with prompt "Run code review."
|
|
735
752
|
- **IMPORTANT**: Must run in foreground (not as background Task) to access MCP tools
|
|
736
753
|
- **DO NOT** pass extra context (file lists, issue details, etc.) - the agent knows what to do
|
|
737
|
-
- The reviewer will analyze
|
|
754
|
+
- The reviewer will analyze code changes and report findings
|
|
738
755
|
|
|
739
756
|
**When issues are found:**
|
|
740
757
|
- Ask the user: "Issues found. Do you want to proceed anyway, or address these first?"
|