@iloom/cli 0.11.0 → 0.12.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 +153 -13
- package/dist/BitBucketApiClient-J2ZSCS5N.js +10 -0
- package/dist/BitBucketVCSProvider-5X64IXXW.js +12 -0
- package/dist/{BranchNamingService-XBCO747L.js → BranchNamingService-MEK2WZUD.js} +4 -4
- package/dist/ClaudeContextManager-IENAE2CP.js +14 -0
- package/dist/ClaudeService-YIJCZUUB.js +13 -0
- package/dist/GitHubService-UTAYZXL3.js +12 -0
- package/dist/IssueTrackerFactory-2OI7YIN6.js +15 -0
- package/dist/{LoomLauncher-5AZU2F5I.js → LoomLauncher-3TSFW7QP.js} +10 -10
- package/dist/MetadataManager-V4LSJ2PB.js +10 -0
- package/dist/ProjectCapabilityDetector-I4J66WKF.js +11 -0
- package/dist/{PromptTemplateManager-T5VTLJP3.js → PromptTemplateManager-I75WKXM4.js} +3 -3
- package/dist/README.md +153 -13
- package/dist/{SettingsManager-WQ5NSGAH.js → SettingsManager-BMQCAXPP.js} +13 -5
- package/dist/SettingsMigrationManager-ZPARZ5KH.js +10 -0
- package/dist/agents/iloom-code-reviewer.md +2 -1
- package/dist/agents/iloom-framework-detector.md +0 -1
- package/dist/agents/iloom-issue-analyze-and-plan.md +4 -1
- package/dist/agents/iloom-issue-analyzer.md +4 -1
- package/dist/agents/iloom-issue-complexity-evaluator.md +4 -1
- package/dist/agents/iloom-issue-enhancer.md +4 -1
- package/dist/agents/iloom-issue-implementer.md +8 -3
- package/dist/agents/iloom-issue-planner.md +4 -1
- package/dist/agents/iloom-wave-verifier.md +186 -0
- package/dist/browser-VZY7F2DF.js +10 -0
- package/dist/build-DMWSIME6.js +27 -0
- package/dist/{chunk-UHIBKD73.js → chunk-35CBWAJL.js} +13 -32
- package/dist/{chunk-UHIBKD73.js.map → chunk-35CBWAJL.js.map} +1 -1
- package/dist/{chunk-YRCEOQPX.js → chunk-4JZEQBWV.js} +4 -3
- package/dist/chunk-4JZEQBWV.js.map +1 -0
- package/dist/{chunk-ET6A2JR4.js → chunk-653XBU3L.js} +111 -18
- package/dist/chunk-653XBU3L.js.map +1 -0
- package/dist/{chunk-G2MNSPA4.js → chunk-772N5WCA.js} +2 -2
- package/dist/{chunk-WG4MLJ6J.js → chunk-7RCUWU3I.js} +2 -2
- package/dist/chunk-7RCUWU3I.js.map +1 -0
- package/dist/{chunk-NOMQ5RFG.js → chunk-7UBEHQTP.js} +2 -2
- package/dist/{chunk-7NFCGKZT.js → chunk-AQUSMNBF.js} +3 -3
- package/dist/{chunk-IDCE26KD.js → chunk-AUYSAMXV.js} +3 -3
- package/dist/chunk-AYLC633W.js +406 -0
- package/dist/chunk-AYLC633W.js.map +1 -0
- package/dist/{chunk-HLDY5S4C.js → chunk-BFF27W3S.js} +3 -3
- package/dist/{chunk-QVAA5KHK.js → chunk-BZ7KTXPB.js} +16 -8
- package/dist/chunk-BZ7KTXPB.js.map +1 -0
- package/dist/{chunk-K7R5QY6C.js → chunk-CE676WCN.js} +2 -2
- package/dist/{chunk-5UFGO4ZT.js → chunk-CQHHEW2M.js} +6 -3
- package/dist/chunk-CQHHEW2M.js.map +1 -0
- package/dist/{chunk-LHDD4JHC.js → chunk-D4Q7T5KD.js} +4 -4
- package/dist/{chunk-RBYTXYGD.js → chunk-D75KSI3V.js} +2 -2
- package/dist/{chunk-Y3RX7LZT.js → chunk-DDHWZNGL.js} +18 -12
- package/dist/chunk-DDHWZNGL.js.map +1 -0
- package/dist/{chunk-5LTID2AF.js → chunk-DMSL5BAP.js} +35 -6
- package/dist/{chunk-5LTID2AF.js.map → chunk-DMSL5BAP.js.map} +1 -1
- package/dist/{chunk-SQYHPBFP.js → chunk-EGNUOALL.js} +2 -2
- package/dist/{chunk-LL6TOX3G.js → chunk-EQIII6GI.js} +10 -10
- package/dist/chunk-EQIII6GI.js.map +1 -0
- package/dist/{chunk-ZAXRQLK3.js → chunk-FTYWGQFM.js} +2 -2
- package/dist/{chunk-LE2NOUTN.js → chunk-FV4KXBGO.js} +3 -3
- package/dist/{chunk-XFQGI2E3.js → chunk-GWJWECZB.js} +51 -45
- package/dist/chunk-GWJWECZB.js.map +1 -0
- package/dist/{chunk-QNHZM5ZV.js → chunk-HIGWKLQR.js} +3 -3
- package/dist/{chunk-VMZG66UV.js → chunk-HKEXRZMU.js} +3 -3
- package/dist/{chunk-V4STTBQD.js → chunk-IHSA7VGI.js} +9 -9
- package/dist/{chunk-TEJAGQX2.js → chunk-IS46GQRA.js} +33 -33
- package/dist/{chunk-VNYWBHKR.js → chunk-JD3K2344.js} +3 -3
- package/dist/{chunk-NCPZYQ4B.js → chunk-K3QGG4O2.js} +2 -2
- package/dist/{chunk-QR4FU53I.js → chunk-KCZSUJUR.js} +22 -12
- package/dist/chunk-KCZSUJUR.js.map +1 -0
- package/dist/{chunk-NH3QZYE5.js → chunk-KV4NU3RP.js} +2 -2
- package/dist/{chunk-NDSGJZI2.js → chunk-LOAYWTJJ.js} +2 -2
- package/dist/{chunk-ABVMUNCD.js → chunk-M3FBM4T3.js} +64 -10
- package/dist/chunk-M3FBM4T3.js.map +1 -0
- package/dist/{chunk-GMDSYLI6.js → chunk-MY2Q3FJ3.js} +2 -2
- package/dist/{chunk-CV47VCMQ.js → chunk-NPVA65KS.js} +2 -2
- package/dist/{chunk-7OCGBJLR.js → chunk-OIVFHJOA.js} +2 -2
- package/dist/{chunk-7FIXNAUO.js → chunk-OKB2NEDQ.js} +66 -43
- package/dist/chunk-OKB2NEDQ.js.map +1 -0
- package/dist/{chunk-3RXYOBME.js → chunk-OPQC4OWM.js} +5 -5
- package/dist/{chunk-3RXYOBME.js.map → chunk-OPQC4OWM.js.map} +1 -1
- package/dist/chunk-P5MXXHXQ.js +284 -0
- package/dist/chunk-P5MXXHXQ.js.map +1 -0
- package/dist/{chunk-IR74O2F6.js → chunk-PDG74IJT.js} +239 -162
- package/dist/chunk-PDG74IJT.js.map +1 -0
- package/dist/{chunk-NN5RYWXA.js → chunk-PH65MFQM.js} +6 -6
- package/dist/{chunk-TZNNJLGT.js → chunk-PMB6TYV4.js} +6 -6
- package/dist/chunk-QC65IOV3.js +304 -0
- package/dist/chunk-QC65IOV3.js.map +1 -0
- package/dist/{chunk-6YVJVUR4.js → chunk-QF2DROQR.js} +3 -3
- package/dist/{chunk-XXFSOVL3.js → chunk-QFDM23CO.js} +4 -4
- package/dist/{chunk-RMLADZRY.js → chunk-R7DGN73N.js} +5 -5
- package/dist/{chunk-5PNZBH6V.js → chunk-V5IYLWRA.js} +2 -2
- package/dist/{chunk-KQFIGI37.js → chunk-VA6CWUAE.js} +7 -7
- package/dist/{chunk-3GTUXW26.js → chunk-VIQOQ463.js} +19 -3
- package/dist/chunk-VIQOQ463.js.map +1 -0
- package/dist/{chunk-H2SSF24U.js → chunk-VRPPI6GU.js} +17 -6
- package/dist/{chunk-H2SSF24U.js.map → chunk-VRPPI6GU.js.map} +1 -1
- package/dist/{chunk-YETJNRQM.js → chunk-WEBMMJKL.js} +2 -1
- package/dist/{chunk-VUUN3KE4.js → chunk-XVCGPTEQ.js} +8 -8
- package/dist/chunk-XVCGPTEQ.js.map +1 -0
- package/dist/chunk-YWNF5755.js +696 -0
- package/dist/chunk-YWNF5755.js.map +1 -0
- package/dist/{chunk-UDCI3QTS.js → chunk-ZM2AYHMO.js} +2 -2
- package/dist/{claude-ONQTDWV3.js → claude-ACL7G4CF.js} +4 -4
- package/dist/{cleanup-YOM6PQCN.js → cleanup-RLBLNQZN.js} +37 -34
- package/dist/{cleanup-YOM6PQCN.js.map → cleanup-RLBLNQZN.js.map} +1 -1
- package/dist/cli.js +290 -141
- package/dist/cli.js.map +1 -1
- package/dist/{color-VQD52LOI.js → color-AC6F2QE7.js} +3 -3
- package/dist/{commit-DC2Q5CDY.js → commit-RILBXFWO.js} +15 -15
- package/dist/{compile-4NCQECKE.js → compile-QEL5724K.js} +11 -11
- package/dist/{contribute-M5UWXCAV.js → contribute-EHWLYOMZ.js} +11 -11
- package/dist/{contribute-M5UWXCAV.js.map → contribute-EHWLYOMZ.js.map} +1 -1
- package/dist/{mcp/darwin-3JFFE3W2.js → darwin-5K3I4FTH.js} +2 -2
- package/dist/{dev-server-CYRP6M73.js → dev-server-2WSWZXJG.js} +35 -21
- package/dist/dev-server-2WSWZXJG.js.map +1 -0
- package/dist/{feedback-BMAZGKRW.js → feedback-I6ZEHEUB.js} +17 -17
- package/dist/{git-BXUD6CL5.js → git-I3PO6FY7.js} +6 -6
- package/dist/ignite-XZFYRVRJ.js +35 -0
- package/dist/index.d.ts +200 -16
- package/dist/index.js +164 -55
- package/dist/index.js.map +1 -1
- package/dist/{init-CI43GJHV.js → init-A6WRP77L.js} +18 -18
- package/dist/{install-deps-SRTM5U7D.js → install-deps-HXP2TM7G.js} +11 -11
- package/dist/{installation-detector-HF6QN7KP.js → installation-detector-PYAZ2O6U.js} +3 -3
- package/dist/{issues-DMRQJH7E.js → issues-SUFQJY6O.js} +69 -56
- package/dist/issues-SUFQJY6O.js.map +1 -0
- package/dist/lint-FDZC77GL.js +27 -0
- package/dist/{linux-RYLOP2LY.js → linux-WUGRYCJY.js} +2 -2
- package/dist/mcp/{chunk-PIIRD4LO.js → chunk-4HZMW2V3.js} +1 -1
- package/dist/mcp/{chunk-PIIRD4LO.js.map → chunk-4HZMW2V3.js.map} +1 -1
- package/dist/{darwin-5BHWRJ7D.js → mcp/darwin-U25WIGH6.js} +2 -2
- package/dist/mcp/issue-management-server.js +900 -20
- package/dist/mcp/issue-management-server.js.map +1 -1
- package/dist/mcp/{linux-JBVS4R3A.js → linux-5BXVBGSY.js} +2 -2
- package/dist/mcp/recap-server.js +24 -22
- package/dist/mcp/recap-server.js.map +1 -1
- package/dist/mcp/{tmux-RYBLEHUZ.js → tmux-CU26ZTNM.js} +2 -2
- package/dist/mcp/{wsl-4QZIQLLE.js → wsl-KI25UDOF.js} +2 -2
- package/dist/neon-helpers-LCZAN4U4.js +11 -0
- package/dist/{open-2Y7GSUTJ.js → open-US4XACLW.js} +36 -21
- package/dist/open-US4XACLW.js.map +1 -0
- package/dist/{plan-SWFPLNJE.js → plan-PL3ZB32J.js} +47 -43
- package/dist/{plan-SWFPLNJE.js.map → plan-PL3ZB32J.js.map} +1 -1
- package/dist/{projects-IUSUXD5D.js → projects-L5AHUBGA.js} +6 -6
- package/dist/{prompt-7LZB4PAT.js → prompt-FUU5NMJQ.js} +3 -3
- package/dist/prompt-FUU5NMJQ.js.map +1 -0
- package/dist/prompts/init-prompt.txt +160 -23
- package/dist/prompts/issue-prompt.txt +93 -157
- package/dist/prompts/plan-prompt.txt +55 -0
- package/dist/prompts/swarm-orchestrator-prompt.txt +78 -21
- package/dist/{rebase-S6OHAOOF.js → rebase-JA3RW2XO.js} +12 -12
- package/dist/{recap-GGVCG5VH.js → recap-5TO42HN2.js} +9 -9
- package/dist/{remote-MZTFHHTU.js → remote-RO4LZKT2.js} +3 -3
- package/dist/remote-RO4LZKT2.js.map +1 -0
- package/dist/{run-ST3FR75O.js → run-KKCRBRLW.js} +36 -21
- package/dist/run-KKCRBRLW.js.map +1 -0
- package/dist/schema/settings.schema.json +147 -11
- package/dist/{shell-W4SBQPTE.js → shell-GAB2FCXH.js} +8 -8
- package/dist/{summary-P2JCIIJO.js → summary-P7QE3TNW.js} +21 -19
- package/dist/summary-P7QE3TNW.js.map +1 -0
- package/dist/test-6LFB5WOO.js +27 -0
- package/dist/{test-git-2KFFAQ6B.js → test-git-PYJOYSED.js} +6 -6
- package/dist/{test-jira-FKDKG6CD.js → test-jira-SM7IU5HW.js} +8 -8
- package/dist/{test-prefix-GP2DAX37.js → test-prefix-HIRZBXTM.js} +6 -6
- package/dist/{test-tabs-YDWMWTVA.js → test-tabs-NGPTFD5T.js} +2 -2
- package/dist/{test-webserver-QI3QQFZ3.js → test-webserver-43PVP2JL.js} +8 -8
- package/dist/{tmux-7ZTA3BDI.js → tmux-6LRFH3DM.js} +2 -2
- package/dist/{update-XLW7R7FL.js → update-AD3GE5C4.js} +4 -4
- package/dist/{update-notifier-EYLAXZAA.js → update-notifier-VYDTDMSJ.js} +3 -3
- package/dist/update-notifier-VYDTDMSJ.js.map +1 -0
- package/dist/{vscode-TOGE5N67.js → vscode-HXIXRZ3A.js} +12 -12
- package/dist/{vscode-announcement-NIX7O2MG.js → vscode-announcement-AL3EHORH.js} +3 -3
- package/dist/{wsl-Y4GUTOQ7.js → wsl-4VMVT2PO.js} +2 -2
- package/package.json +1 -1
- package/dist/ClaudeContextManager-SXDCWDJA.js +0 -14
- package/dist/ClaudeService-6E6MCGJE.js +0 -13
- package/dist/GitHubService-2R5GQG4K.js +0 -12
- package/dist/IssueTrackerFactory-XN6MQ4UN.js +0 -14
- package/dist/MetadataManager-CMQQTFLQ.js +0 -10
- package/dist/ProjectCapabilityDetector-IC6NAFGY.js +0 -11
- package/dist/SettingsMigrationManager-S6J7OHUH.js +0 -10
- package/dist/build-OLS6J5KZ.js +0 -27
- package/dist/chunk-3GTUXW26.js.map +0 -1
- package/dist/chunk-5UFGO4ZT.js.map +0 -1
- package/dist/chunk-7FIXNAUO.js.map +0 -1
- package/dist/chunk-ABVMUNCD.js.map +0 -1
- package/dist/chunk-ET6A2JR4.js.map +0 -1
- package/dist/chunk-IR74O2F6.js.map +0 -1
- package/dist/chunk-LL6TOX3G.js.map +0 -1
- package/dist/chunk-QR4FU53I.js.map +0 -1
- package/dist/chunk-QVAA5KHK.js.map +0 -1
- package/dist/chunk-RVI6C2H5.js +0 -220
- package/dist/chunk-RVI6C2H5.js.map +0 -1
- package/dist/chunk-VUUN3KE4.js.map +0 -1
- package/dist/chunk-WG4MLJ6J.js.map +0 -1
- package/dist/chunk-XFQGI2E3.js.map +0 -1
- package/dist/chunk-Y3RX7LZT.js.map +0 -1
- package/dist/chunk-YRCEOQPX.js.map +0 -1
- package/dist/dev-server-CYRP6M73.js.map +0 -1
- package/dist/ignite-IO4LXVXJ.js +0 -35
- package/dist/issues-DMRQJH7E.js.map +0 -1
- package/dist/lint-BSWRMGPZ.js +0 -27
- package/dist/neon-helpers-HWIYRKOW.js +0 -11
- package/dist/open-2Y7GSUTJ.js.map +0 -1
- package/dist/run-ST3FR75O.js.map +0 -1
- package/dist/summary-P2JCIIJO.js.map +0 -1
- package/dist/test-6JH4FE2X.js +0 -27
- /package/dist/{BranchNamingService-XBCO747L.js.map → BitBucketApiClient-J2ZSCS5N.js.map} +0 -0
- /package/dist/{ClaudeContextManager-SXDCWDJA.js.map → BitBucketVCSProvider-5X64IXXW.js.map} +0 -0
- /package/dist/{ClaudeService-6E6MCGJE.js.map → BranchNamingService-MEK2WZUD.js.map} +0 -0
- /package/dist/{GitHubService-2R5GQG4K.js.map → ClaudeContextManager-IENAE2CP.js.map} +0 -0
- /package/dist/{IssueTrackerFactory-XN6MQ4UN.js.map → ClaudeService-YIJCZUUB.js.map} +0 -0
- /package/dist/{MetadataManager-CMQQTFLQ.js.map → GitHubService-UTAYZXL3.js.map} +0 -0
- /package/dist/{ProjectCapabilityDetector-IC6NAFGY.js.map → IssueTrackerFactory-2OI7YIN6.js.map} +0 -0
- /package/dist/{LoomLauncher-5AZU2F5I.js.map → LoomLauncher-3TSFW7QP.js.map} +0 -0
- /package/dist/{PromptTemplateManager-T5VTLJP3.js.map → MetadataManager-V4LSJ2PB.js.map} +0 -0
- /package/dist/{SettingsManager-WQ5NSGAH.js.map → ProjectCapabilityDetector-I4J66WKF.js.map} +0 -0
- /package/dist/{SettingsMigrationManager-S6J7OHUH.js.map → PromptTemplateManager-I75WKXM4.js.map} +0 -0
- /package/dist/{claude-ONQTDWV3.js.map → SettingsManager-BMQCAXPP.js.map} +0 -0
- /package/dist/{color-VQD52LOI.js.map → SettingsMigrationManager-ZPARZ5KH.js.map} +0 -0
- /package/dist/{darwin-5BHWRJ7D.js.map → browser-VZY7F2DF.js.map} +0 -0
- /package/dist/{build-OLS6J5KZ.js.map → build-DMWSIME6.js.map} +0 -0
- /package/dist/{chunk-G2MNSPA4.js.map → chunk-772N5WCA.js.map} +0 -0
- /package/dist/{chunk-NOMQ5RFG.js.map → chunk-7UBEHQTP.js.map} +0 -0
- /package/dist/{chunk-7NFCGKZT.js.map → chunk-AQUSMNBF.js.map} +0 -0
- /package/dist/{chunk-IDCE26KD.js.map → chunk-AUYSAMXV.js.map} +0 -0
- /package/dist/{chunk-HLDY5S4C.js.map → chunk-BFF27W3S.js.map} +0 -0
- /package/dist/{chunk-K7R5QY6C.js.map → chunk-CE676WCN.js.map} +0 -0
- /package/dist/{chunk-LHDD4JHC.js.map → chunk-D4Q7T5KD.js.map} +0 -0
- /package/dist/{chunk-RBYTXYGD.js.map → chunk-D75KSI3V.js.map} +0 -0
- /package/dist/{chunk-SQYHPBFP.js.map → chunk-EGNUOALL.js.map} +0 -0
- /package/dist/{chunk-ZAXRQLK3.js.map → chunk-FTYWGQFM.js.map} +0 -0
- /package/dist/{chunk-LE2NOUTN.js.map → chunk-FV4KXBGO.js.map} +0 -0
- /package/dist/{chunk-QNHZM5ZV.js.map → chunk-HIGWKLQR.js.map} +0 -0
- /package/dist/{chunk-VMZG66UV.js.map → chunk-HKEXRZMU.js.map} +0 -0
- /package/dist/{chunk-V4STTBQD.js.map → chunk-IHSA7VGI.js.map} +0 -0
- /package/dist/{chunk-TEJAGQX2.js.map → chunk-IS46GQRA.js.map} +0 -0
- /package/dist/{chunk-VNYWBHKR.js.map → chunk-JD3K2344.js.map} +0 -0
- /package/dist/{chunk-NCPZYQ4B.js.map → chunk-K3QGG4O2.js.map} +0 -0
- /package/dist/{chunk-NH3QZYE5.js.map → chunk-KV4NU3RP.js.map} +0 -0
- /package/dist/{chunk-NDSGJZI2.js.map → chunk-LOAYWTJJ.js.map} +0 -0
- /package/dist/{chunk-GMDSYLI6.js.map → chunk-MY2Q3FJ3.js.map} +0 -0
- /package/dist/{chunk-CV47VCMQ.js.map → chunk-NPVA65KS.js.map} +0 -0
- /package/dist/{chunk-7OCGBJLR.js.map → chunk-OIVFHJOA.js.map} +0 -0
- /package/dist/{chunk-NN5RYWXA.js.map → chunk-PH65MFQM.js.map} +0 -0
- /package/dist/{chunk-TZNNJLGT.js.map → chunk-PMB6TYV4.js.map} +0 -0
- /package/dist/{chunk-6YVJVUR4.js.map → chunk-QF2DROQR.js.map} +0 -0
- /package/dist/{chunk-XXFSOVL3.js.map → chunk-QFDM23CO.js.map} +0 -0
- /package/dist/{chunk-RMLADZRY.js.map → chunk-R7DGN73N.js.map} +0 -0
- /package/dist/{chunk-5PNZBH6V.js.map → chunk-V5IYLWRA.js.map} +0 -0
- /package/dist/{chunk-KQFIGI37.js.map → chunk-VA6CWUAE.js.map} +0 -0
- /package/dist/{chunk-YETJNRQM.js.map → chunk-WEBMMJKL.js.map} +0 -0
- /package/dist/{chunk-UDCI3QTS.js.map → chunk-ZM2AYHMO.js.map} +0 -0
- /package/dist/{git-BXUD6CL5.js.map → claude-ACL7G4CF.js.map} +0 -0
- /package/dist/{ignite-IO4LXVXJ.js.map → color-AC6F2QE7.js.map} +0 -0
- /package/dist/{commit-DC2Q5CDY.js.map → commit-RILBXFWO.js.map} +0 -0
- /package/dist/{compile-4NCQECKE.js.map → compile-QEL5724K.js.map} +0 -0
- /package/dist/{installation-detector-HF6QN7KP.js.map → darwin-5K3I4FTH.js.map} +0 -0
- /package/dist/{feedback-BMAZGKRW.js.map → feedback-I6ZEHEUB.js.map} +0 -0
- /package/dist/{mcp/darwin-3JFFE3W2.js.map → git-I3PO6FY7.js.map} +0 -0
- /package/dist/{neon-helpers-HWIYRKOW.js.map → ignite-XZFYRVRJ.js.map} +0 -0
- /package/dist/{init-CI43GJHV.js.map → init-A6WRP77L.js.map} +0 -0
- /package/dist/{install-deps-SRTM5U7D.js.map → install-deps-HXP2TM7G.js.map} +0 -0
- /package/dist/{prompt-7LZB4PAT.js.map → installation-detector-PYAZ2O6U.js.map} +0 -0
- /package/dist/{lint-BSWRMGPZ.js.map → lint-FDZC77GL.js.map} +0 -0
- /package/dist/{linux-RYLOP2LY.js.map → linux-WUGRYCJY.js.map} +0 -0
- /package/dist/{remote-MZTFHHTU.js.map → mcp/darwin-U25WIGH6.js.map} +0 -0
- /package/dist/mcp/{linux-JBVS4R3A.js.map → linux-5BXVBGSY.js.map} +0 -0
- /package/dist/mcp/{tmux-RYBLEHUZ.js.map → tmux-CU26ZTNM.js.map} +0 -0
- /package/dist/mcp/{wsl-4QZIQLLE.js.map → wsl-KI25UDOF.js.map} +0 -0
- /package/dist/{update-notifier-EYLAXZAA.js.map → neon-helpers-LCZAN4U4.js.map} +0 -0
- /package/dist/{projects-IUSUXD5D.js.map → projects-L5AHUBGA.js.map} +0 -0
- /package/dist/{rebase-S6OHAOOF.js.map → rebase-JA3RW2XO.js.map} +0 -0
- /package/dist/{recap-GGVCG5VH.js.map → recap-5TO42HN2.js.map} +0 -0
- /package/dist/{shell-W4SBQPTE.js.map → shell-GAB2FCXH.js.map} +0 -0
- /package/dist/{test-6JH4FE2X.js.map → test-6LFB5WOO.js.map} +0 -0
- /package/dist/{test-git-2KFFAQ6B.js.map → test-git-PYJOYSED.js.map} +0 -0
- /package/dist/{test-jira-FKDKG6CD.js.map → test-jira-SM7IU5HW.js.map} +0 -0
- /package/dist/{test-prefix-GP2DAX37.js.map → test-prefix-HIRZBXTM.js.map} +0 -0
- /package/dist/{test-tabs-YDWMWTVA.js.map → test-tabs-NGPTFD5T.js.map} +0 -0
- /package/dist/{test-webserver-QI3QQFZ3.js.map → test-webserver-43PVP2JL.js.map} +0 -0
- /package/dist/{tmux-7ZTA3BDI.js.map → tmux-6LRFH3DM.js.map} +0 -0
- /package/dist/{update-XLW7R7FL.js.map → update-AD3GE5C4.js.map} +0 -0
- /package/dist/{vscode-TOGE5N67.js.map → vscode-HXIXRZ3A.js.map} +0 -0
- /package/dist/{vscode-announcement-NIX7O2MG.js.map → vscode-announcement-AL3EHORH.js.map} +0 -0
- /package/dist/{wsl-Y4GUTOQ7.js.map → wsl-4VMVT2PO.js.map} +0 -0
package/dist/README.md
CHANGED
|
@@ -111,9 +111,9 @@ Each loom is a fully isolated container for your work:
|
|
|
111
111
|
`ILOOM_COLOR_HEX` is useful for downstream tools that want to visually distinguish looms. For example, a Vite app can read it via `import.meta.env.VITE_ILOOM_COLOR_HEX` to tint the UI. See [Vite Integration Guide](docs/vite-iloom-color.md) for details.
|
|
112
112
|
|
|
113
113
|
* **Unique Runtime:**
|
|
114
|
-
|
|
115
|
-
* **Web Apps:** Runs on a deterministic port (e.g., base port 3000 + issue #25 = 3025).
|
|
116
|
-
|
|
114
|
+
|
|
115
|
+
* **Web Apps:** Runs on a deterministic port (e.g., base port 3000 + issue #25 = 3025). Optionally supports [Docker mode](#docker-dev-server) for frameworks that don't respect `PORT`.
|
|
116
|
+
|
|
117
117
|
* **CLI Tools:** Creates an isolated binary copy (e.g., my-tool-25). You can run issue #25's version of your CLI alongside issue #99's version without conflicts. (Fun fact: iloom was built with iloom using this feature).
|
|
118
118
|
|
|
119
119
|
* **Context Persistence:** All reasoning is stored in issue comments. This makes the "why" behind the code visible to your teammates and your future self.
|
|
@@ -344,7 +344,7 @@ Control how `il finish` handles your work. Configure in `.iloom/settings.json`:
|
|
|
344
344
|
```json
|
|
345
345
|
{
|
|
346
346
|
"mergeBehavior": {
|
|
347
|
-
"mode": "local" // "local", "
|
|
347
|
+
"mode": "local" // "local", "pr", or "draft-pr"
|
|
348
348
|
}
|
|
349
349
|
}
|
|
350
350
|
```
|
|
@@ -352,8 +352,8 @@ Control how `il finish` handles your work. Configure in `.iloom/settings.json`:
|
|
|
352
352
|
| **Mode** | **Description** |
|
|
353
353
|
|----------|-----------------|
|
|
354
354
|
| `local` | (Default) Merge directly into main branch locally. Fast-forward merge, no PR created. |
|
|
355
|
-
| `
|
|
356
|
-
| `
|
|
355
|
+
| `pr` | Push branch and create a PR on `il finish`. Worktree cleanup is optional. |
|
|
356
|
+
| `draft-pr` | Create a draft PR immediately on `il start`. On `il finish`, the PR is marked ready for review. **Recommended for contributions to forked repos.** |
|
|
357
357
|
|
|
358
358
|
### Artifact Review
|
|
359
359
|
|
|
@@ -411,8 +411,8 @@ When `il finish` or `il rebase` encounter rebase conflicts, iloom automatically
|
|
|
411
411
|
|
|
412
412
|
Note: Potentially destructive commands like `git reset` and `git checkout` are intentionally not auto-approved to prevent accidental data loss.
|
|
413
413
|
|
|
414
|
-
**When to use `
|
|
415
|
-
- **Contributing to forks:** When you
|
|
414
|
+
**When to use `draft-pr`:**
|
|
415
|
+
- **Contributing to forks:** When you are contributing to a forked repo use this mode to create the PR from your fork immediately, allowing iloom's agents to post workflow comments directly to the PR instead of writing to the upstream repo's issues (which may not be appreciated by the repo owners).
|
|
416
416
|
- CI runs on your branch during development (draft PRs trigger CI on most repos)
|
|
417
417
|
- Your team requires PRs for all changes (no direct merges to main)
|
|
418
418
|
- You want reviewers to see progress before the work is complete
|
|
@@ -430,6 +430,15 @@ iloom supports multiple issue tracking providers to fit your team's workflow.
|
|
|
430
430
|
| **Linear** | `il init` | Requires API token. Supports full read/write on Linear issues. |
|
|
431
431
|
| **Jira** | Configure in `.iloom/settings.json` | Atlassian Cloud. Requires API token. See [Jira Setup](#jira-setup) below. |
|
|
432
432
|
|
|
433
|
+
### Version Control Providers
|
|
434
|
+
|
|
435
|
+
Choose which platform hosts your pull requests and code reviews.
|
|
436
|
+
|
|
437
|
+
| **Provider** | **Setup** | **Notes** |
|
|
438
|
+
|--------------|-----------|-----------|
|
|
439
|
+
| **GitHub** | `gh auth login` | Default. Integrated with GitHub Issues. |
|
|
440
|
+
| **BitBucket** | Configure in `.iloom/settings.json` | Atlassian Cloud. Requires API token. See [BitBucket Setup](#bitbucket-setup) below. |
|
|
441
|
+
|
|
433
442
|
### Jira Setup
|
|
434
443
|
|
|
435
444
|
To use Jira as your issue tracker, add this configuration:
|
|
@@ -478,14 +487,122 @@ To use Jira as your issue tracker, add this configuration:
|
|
|
478
487
|
- `doneStatuses`: (Optional) Status names to exclude from `il issues` lists (default: `["Done"]`). Set to match your Jira workflow, e.g., `["Done", "Closed", "Verified"]`
|
|
479
488
|
- `transitionMappings`: (Optional) Map iloom states to your Jira workflow transition names
|
|
480
489
|
|
|
490
|
+
### BitBucket Setup
|
|
491
|
+
|
|
492
|
+
To use BitBucket for pull requests, add this configuration:
|
|
493
|
+
|
|
494
|
+
**.iloom/settings.json (Committed)**
|
|
495
|
+
```json
|
|
496
|
+
{
|
|
497
|
+
"versionControl": {
|
|
498
|
+
"provider": "bitbucket",
|
|
499
|
+
"bitbucket": {
|
|
500
|
+
"username": "your-bitbucket-username",
|
|
501
|
+
"workspace": "your-workspace",
|
|
502
|
+
"repoSlug": "your-repo"
|
|
503
|
+
}
|
|
504
|
+
},
|
|
505
|
+
"mergeBehavior": {
|
|
506
|
+
"mode": "bitbucket-pr"
|
|
507
|
+
}
|
|
508
|
+
}
|
|
509
|
+
```
|
|
510
|
+
|
|
511
|
+
**.iloom/settings.local.json (Gitignored - Never commit this file)**
|
|
512
|
+
```json
|
|
513
|
+
{
|
|
514
|
+
"versionControl": {
|
|
515
|
+
"bitbucket": {
|
|
516
|
+
"apiToken": "your-bitbucket-api-token"
|
|
517
|
+
}
|
|
518
|
+
}
|
|
519
|
+
}
|
|
520
|
+
```
|
|
521
|
+
|
|
522
|
+
**Generate a BitBucket API Token:**
|
|
523
|
+
1. Visit https://bitbucket.org/account/settings/app-passwords/
|
|
524
|
+
2. Click "Create API token" (Note: App passwords were deprecated September 2025)
|
|
525
|
+
3. Grant permissions: `repository:read`, `repository:write`, `pullrequest:read`, `pullrequest:write`
|
|
526
|
+
4. Copy the token to `.iloom/settings.local.json`
|
|
527
|
+
|
|
528
|
+
**Configuration Options:**
|
|
529
|
+
- `username`: Your BitBucket username
|
|
530
|
+
- `apiToken`: API token (store in settings.local.json only!)
|
|
531
|
+
- `workspace`: (Optional) BitBucket workspace, auto-detected from git remote if not provided
|
|
532
|
+
- `repoSlug`: (Optional) Repository slug, auto-detected from git remote if not provided
|
|
533
|
+
- `reviewers`: (Optional) Array of BitBucket usernames to automatically add as PR reviewers. Usernames are resolved to BitBucket account IDs at PR creation time. Unresolved usernames are logged as warnings but don't block PR creation.
|
|
534
|
+
|
|
535
|
+
**Example with Reviewers:**
|
|
536
|
+
```json
|
|
537
|
+
{
|
|
538
|
+
"versionControl": {
|
|
539
|
+
"provider": "bitbucket",
|
|
540
|
+
"bitbucket": {
|
|
541
|
+
"username": "your-bitbucket-username",
|
|
542
|
+
"reviewers": [
|
|
543
|
+
"alice.jones",
|
|
544
|
+
"bob.smith"
|
|
545
|
+
]
|
|
546
|
+
}
|
|
547
|
+
},
|
|
548
|
+
"mergeBehavior": {
|
|
549
|
+
"mode": "bitbucket-pr"
|
|
550
|
+
}
|
|
551
|
+
}
|
|
552
|
+
```
|
|
553
|
+
|
|
554
|
+
### Jira + BitBucket Together
|
|
555
|
+
|
|
556
|
+
Use Jira for issues and BitBucket for pull requests:
|
|
557
|
+
|
|
558
|
+
**.iloom/settings.json**
|
|
559
|
+
```json
|
|
560
|
+
{
|
|
561
|
+
"issueManagement": {
|
|
562
|
+
"provider": "jira",
|
|
563
|
+
"jira": {
|
|
564
|
+
"host": "https://yourcompany.atlassian.net",
|
|
565
|
+
"username": "your.email@company.com",
|
|
566
|
+
"projectKey": "PROJ"
|
|
567
|
+
}
|
|
568
|
+
},
|
|
569
|
+
"versionControl": {
|
|
570
|
+
"provider": "bitbucket",
|
|
571
|
+
"bitbucket": {
|
|
572
|
+
"username": "your-bitbucket-username"
|
|
573
|
+
}
|
|
574
|
+
},
|
|
575
|
+
"mergeBehavior": {
|
|
576
|
+
"mode": "bitbucket-pr"
|
|
577
|
+
}
|
|
578
|
+
}
|
|
579
|
+
```
|
|
580
|
+
|
|
581
|
+
**.iloom/settings.local.json**
|
|
582
|
+
```json
|
|
583
|
+
{
|
|
584
|
+
"issueManagement": {
|
|
585
|
+
"jira": {
|
|
586
|
+
"apiToken": "your-jira-api-token"
|
|
587
|
+
}
|
|
588
|
+
},
|
|
589
|
+
"versionControl": {
|
|
590
|
+
"bitbucket": {
|
|
591
|
+
"apiToken": "your-bitbucket-api-token"
|
|
592
|
+
}
|
|
593
|
+
}
|
|
594
|
+
}
|
|
595
|
+
```
|
|
596
|
+
|
|
481
597
|
|
|
482
598
|
### IDE Support
|
|
483
599
|
iloom creates isolated workspace settings for your editor. Color synchronization (visual context) only works best VS Code-based editors.
|
|
484
600
|
|
|
485
601
|
* **Supported:** VS Code, Cursor, Windsurf, Antigravity, WebStorm, IntelliJ, Sublime Text.
|
|
486
|
-
|
|
602
|
+
|
|
487
603
|
* **Config:** Set your preference via `il init` or `il start --set ide.type=cursor`.
|
|
488
604
|
|
|
605
|
+
|
|
489
606
|
### Git Operation Settings
|
|
490
607
|
|
|
491
608
|
Configure git operation timeouts for projects with long-running pre-commit hooks.
|
|
@@ -505,7 +622,6 @@ Configure git operation timeouts for projects with long-running pre-commit hooks
|
|
|
505
622
|
|
|
506
623
|
**When to increase:** If you see timeout errors during `il commit` or `il finish`, your pre-commit hooks are taking longer than the default 60 seconds. Set a higher value based on your typical hook duration.
|
|
507
624
|
|
|
508
|
-
|
|
509
625
|
Advanced Features
|
|
510
626
|
-----------------
|
|
511
627
|
|
|
@@ -551,6 +667,27 @@ iloom provides first-class support for building CLI tools. When you start a loom
|
|
|
551
667
|
> my-cli --version # Unaffected by other looms' CLIs
|
|
552
668
|
```
|
|
553
669
|
|
|
670
|
+
### Docker Dev Server
|
|
671
|
+
|
|
672
|
+
By default, iloom runs your dev server as a native process and sets the `PORT` environment variable so each loom gets its own port. If your framework ignores `PORT` (e.g., Angular CLI hardcodes its listen port), you can opt in to Docker mode instead. You provide a Dockerfile, and iloom uses Docker's `-p` flag to map the container's port to the workspace port on the host — no changes to your app required.
|
|
673
|
+
|
|
674
|
+
To enable it, create a Dockerfile that builds and runs your dev server, then set `devServer` to `"docker"` in `.iloom/settings.json`:
|
|
675
|
+
|
|
676
|
+
```json
|
|
677
|
+
{
|
|
678
|
+
"capabilities": {
|
|
679
|
+
"web": {
|
|
680
|
+
"devServer": "docker",
|
|
681
|
+
"containerPort": 4200
|
|
682
|
+
}
|
|
683
|
+
}
|
|
684
|
+
}
|
|
685
|
+
```
|
|
686
|
+
|
|
687
|
+
Then use `il dev-server`, `il open`, or `il run` as normal.
|
|
688
|
+
|
|
689
|
+
Docker Compose multi-service stacks are not yet supported — see [#332](https://github.com/iloom-ai/iloom-cli/issues/332) for the roadmap. For full configuration options and known limitations, see the [Complete Command Reference](docs/iloom-commands.md#docker-dev-server-mode).
|
|
690
|
+
|
|
554
691
|
### Epic Planning and Decomposition
|
|
555
692
|
|
|
556
693
|
The `il plan` command launches an interactive Architect session that helps you break down complex features into manageable child issues.
|
|
@@ -673,7 +810,9 @@ This is an early-stage product.
|
|
|
673
810
|
* ✅ **Runtime:** Node.js 16+, Git 2.5+.
|
|
674
811
|
|
|
675
812
|
* ✅ **AI:** Claude CLI installed. A Claude Max subscription is recommended (iloom uses your subscription).
|
|
676
|
-
|
|
813
|
+
|
|
814
|
+
* ☑️ **Docker** (optional): Only required if using [Docker dev server mode](#docker-dev-server). Docker Desktop or Docker Engine must be installed and running.
|
|
815
|
+
|
|
677
816
|
|
|
678
817
|
**Project Support:**
|
|
679
818
|
|
|
@@ -718,7 +857,7 @@ This command:
|
|
|
718
857
|
1. Forks the repository (if not already forked)
|
|
719
858
|
2. Clones your fork locally
|
|
720
859
|
3. Configures iloom for the project
|
|
721
|
-
4. Sets merge behavior to `
|
|
860
|
+
4. Sets merge behavior to `draft-pr` (creates a draft PR immediately when you start work)
|
|
722
861
|
|
|
723
862
|
The draft PR workflow is ideal for open source: as you work, iloom posts the AI's analysis, implementation plan, and progress directly to that draft PR—giving maintainers full context before the code is even ready for review.
|
|
724
863
|
|
|
@@ -726,6 +865,7 @@ Acknowledgments
|
|
|
726
865
|
----------------
|
|
727
866
|
|
|
728
867
|
- [@NoahCardoza](https://github.com/NoahCardoza) — Jira Cloud integration (PR [#588](https://github.com/iloom-ai/iloom-cli/pull/588)): JiraApiClient, JiraIssueTracker, ADF/Markdown conversion, MCP provider, sprint/mine filtering, and `il issues` Jira support.
|
|
868
|
+
- [@NoahCardoza](https://github.com/NoahCardoza) — BitBucket integration (PR [#609](https://github.com/iloom-ai/iloom-cli/pull/609)): BitBucketApiClient, BitBucketVCSProvider, PR creation/listing, reviewer resolution, repository auto-detection, and token redaction.
|
|
729
869
|
- [@TickTockBent](https://github.com/TickTockBent) — Linux, WSL, and tmux terminal support (PR [#796](https://github.com/iloom-ai/iloom-cli/pull/796)): strategy-pattern terminal backends, GUI-to-tmux fallback for headless environments, WSL detection, and cross-platform terminal launching.
|
|
730
870
|
- [@rexsilex](https://github.com/rexsilex) — Original Linux/WSL terminal support design (PR [#649](https://github.com/iloom-ai/iloom-cli/pull/649)): pioneered the strategy pattern and backend interface that inspired the final implementation.
|
|
731
871
|
|
|
@@ -740,7 +880,7 @@ License & Name
|
|
|
740
880
|
|
|
741
881
|
* ❌ You cannot resell iloom itself as a product or SaaS.
|
|
742
882
|
|
|
743
|
-
* Converts to Apache 2.0 on 2030-03-
|
|
883
|
+
* Converts to Apache 2.0 on 2030-03-10.
|
|
744
884
|
|
|
745
885
|
|
|
746
886
|
See [LICENSE](https://raw.githubusercontent.com/iloom-ai/iloom-cli/main/LICENSE) for complete terms.
|
|
@@ -5,6 +5,8 @@ import {
|
|
|
5
5
|
CapabilitiesSettingsSchema,
|
|
6
6
|
CapabilitiesSettingsSchemaNoDefaults,
|
|
7
7
|
DatabaseProvidersSettingsSchema,
|
|
8
|
+
DevServerSettingsSchema,
|
|
9
|
+
DevServerSettingsSchemaNoDefaults,
|
|
8
10
|
IloomSettingsSchema,
|
|
9
11
|
IloomSettingsSchemaNoDefaults,
|
|
10
12
|
NeonSettingsSchema,
|
|
@@ -15,15 +17,19 @@ import {
|
|
|
15
17
|
WorkflowPermissionSchema,
|
|
16
18
|
WorkflowPermissionSchemaNoDefaults,
|
|
17
19
|
WorkflowsSettingsSchema,
|
|
18
|
-
WorkflowsSettingsSchemaNoDefaults
|
|
19
|
-
|
|
20
|
-
|
|
20
|
+
WorkflowsSettingsSchemaNoDefaults,
|
|
21
|
+
mergeModeValues,
|
|
22
|
+
redactSensitiveFields
|
|
23
|
+
} from "./chunk-653XBU3L.js";
|
|
24
|
+
import "./chunk-VRPPI6GU.js";
|
|
21
25
|
export {
|
|
22
26
|
AgentSettingsSchema,
|
|
23
27
|
BaseAgentSettingsSchema,
|
|
24
28
|
CapabilitiesSettingsSchema,
|
|
25
29
|
CapabilitiesSettingsSchemaNoDefaults,
|
|
26
30
|
DatabaseProvidersSettingsSchema,
|
|
31
|
+
DevServerSettingsSchema,
|
|
32
|
+
DevServerSettingsSchemaNoDefaults,
|
|
27
33
|
IloomSettingsSchema,
|
|
28
34
|
IloomSettingsSchemaNoDefaults,
|
|
29
35
|
NeonSettingsSchema,
|
|
@@ -34,6 +40,8 @@ export {
|
|
|
34
40
|
WorkflowPermissionSchema,
|
|
35
41
|
WorkflowPermissionSchemaNoDefaults,
|
|
36
42
|
WorkflowsSettingsSchema,
|
|
37
|
-
WorkflowsSettingsSchemaNoDefaults
|
|
43
|
+
WorkflowsSettingsSchemaNoDefaults,
|
|
44
|
+
mergeModeValues,
|
|
45
|
+
redactSensitiveFields
|
|
38
46
|
};
|
|
39
|
-
//# sourceMappingURL=SettingsManager-
|
|
47
|
+
//# sourceMappingURL=SettingsManager-BMQCAXPP.js.map
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
import {
|
|
3
|
+
SettingsMigrationManager
|
|
4
|
+
} from "./chunk-AUYSAMXV.js";
|
|
5
|
+
import "./chunk-NPVA65KS.js";
|
|
6
|
+
import "./chunk-VRPPI6GU.js";
|
|
7
|
+
export {
|
|
8
|
+
SettingsMigrationManager
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=SettingsMigrationManager-ZPARZ5KH.js.map
|
|
@@ -12,10 +12,11 @@ You are an expert code reviewer. Your task is to analyze code changes and provid
|
|
|
12
12
|
|
|
13
13
|
**You are running in swarm mode as part of an autonomous workflow.**
|
|
14
14
|
|
|
15
|
-
- **State transition**: Call `recap.set_loom_state` with state `code_review` at the start of your review. Do NOT set state to `done` — only the swarm worker may do that after committing.
|
|
15
|
+
- **State transition**: Call `recap.set_loom_state` with state `code_review` and `worktreePath` (from your invocation prompt) at the start of your review. Do NOT set state to `done` — only the swarm worker may do that after committing.
|
|
16
16
|
- **No human interaction**: Do NOT ask the user about critical issues. Report all findings directly to the caller.
|
|
17
17
|
- **Concise output**: Return structured review results suitable for the orchestrator to process.
|
|
18
18
|
- **Autonomous handling**: If critical issues are found, report them but do NOT wait for user confirmation.
|
|
19
|
+
- **IMPORTANT recap routing**: You are running inline in a swarm worker's context. You MUST pass `worktreePath` on ALL recap calls (`set_loom_state`, `add_entry`, `get_recap`). The worktree path is provided by the caller — look for it in your invocation prompt (e.g., "Your worktree path is ..."). Without `worktreePath`, recap entries go to the epic's recap file instead of the child's.
|
|
19
20
|
{{/if}}
|
|
20
21
|
|
|
21
22
|
## Do NOT Review Temporal Information
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: iloom-framework-detector
|
|
3
3
|
description: Use this agent to detect a project's language and framework, then generate appropriate build/test/dev scripts for non-Node.js projects. The agent creates `.iloom/package.iloom.json` with shell commands tailored to the detected stack. Use this for Python, Rust, Ruby, Go, and other non-Node.js projects that don't have a package.json.
|
|
4
|
-
tools: Bash, Glob, Grep, Read, Write
|
|
5
4
|
color: cyan
|
|
6
5
|
model: opus
|
|
7
6
|
---
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: iloom-issue-analyze-and-plan
|
|
3
3
|
description: Combined analysis and planning agent for SIMPLE tasks. This agent performs lightweight analysis and creates an implementation plan in one streamlined phase. Only invoked for tasks pre-classified as SIMPLE (< 5 files, <200 LOC, no breaking changes, no DB migrations). Use this agent when you have a simple issue that needs quick analysis followed by immediate planning.
|
|
4
|
-
tools: Bash, Glob, Grep, Read, Edit, Write, NotebookEdit, WebFetch, TodoWrite, WebSearch, BashOutput, KillShell, SlashCommand, ListMcpResourcesTool, ReadMcpResourceTool, mcp__context7__resolve-library-id, mcp__context7__get-library-docs, mcp__figma-dev-mode-mcp-server__get_code, mcp__figma-dev-mode-mcp-server__get_variable_defs, mcp__figma-dev-mode-mcp-server__get_code_connect_map, mcp__figma-dev-mode-mcp-server__get_screenshot, mcp__figma-dev-mode-mcp-server__get_metadata, mcp__figma-dev-mode-mcp-server__add_code_connect_map, mcp__figma-dev-mode-mcp-server__create_design_system_rules, Bash(git show:*), mcp__issue_management__get_issue, mcp__issue_management__get_pr, mcp__issue_management__get_comment, mcp__issue_management__create_comment, mcp__issue_management__update_comment, mcp__issue_management__create_dependency, mcp__issue_management__get_dependencies, mcp__issue_management__remove_dependency, mcp__recap__get_recap, mcp__recap__add_entry, mcp__recap__add_artifact
|
|
5
4
|
color: teal
|
|
6
5
|
model: opus
|
|
7
6
|
---
|
|
@@ -42,6 +41,10 @@ The recap panel helps users stay oriented without reading all your output. Captu
|
|
|
42
41
|
- `recap.add_entry` - Log with appropriate type
|
|
43
42
|
- `recap.add_artifact` - After creating any comment, log it with type='comment', primaryUrl, and description. Re-calling with the same primaryUrl will update the existing entry.
|
|
44
43
|
|
|
44
|
+
{{#if SWARM_MODE}}
|
|
45
|
+
**IMPORTANT**: You are running inline in a swarm worker's context. You MUST pass `worktreePath` on ALL recap calls (`add_artifact`, `add_entry`, `set_complexity`, `set_loom_state`, `get_recap`). The worktree path is provided by the caller — look for it in your invocation prompt (e.g., "Your worktree path is ..."). Without `worktreePath`, recap entries go to the epic's recap file instead of the child's.
|
|
46
|
+
{{/if}}
|
|
47
|
+
|
|
45
48
|
**During analysis, log:**
|
|
46
49
|
- **insight**: Technical discoveries - "Config parsing happens before env vars are loaded"
|
|
47
50
|
- **risk**: Things that could go wrong - "Removing this validation will allow malformed input to reach the database"
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: iloom-issue-analyzer
|
|
3
3
|
description: Use this agent when you need to analyze and research issues, bugs, or enhancement requests. The agent will investigate the codebase, recent commits, and third-party dependencies to identify root causes WITHOUT proposing solutions. Ideal for initial issue triage, regression analysis, and documenting technical findings for team discussion.\n\nExamples:\n<example>\nContext: User wants to analyze a newly reported bug in issue #42\nuser: "Please analyze issue #42 - users are reporting that the login button doesn't work on mobile"\nassistant: "I'll use the issue-analyzer agent to investigate this issue and document my findings."\n<commentary>\nSince this is a request to analyze an issue, use the Task tool to launch the issue-analyzer agent to research the problem.\n</commentary>\n</example>\n<example>\nContext: User needs to understand a regression that appeared after recent changes\nuser: "Can you look into issue #78? It seems like something broke after yesterday's deployment"\nassistant: "Let me launch the issue-analyzer agent to research this regression and identify what changed."\n<commentary>\nThe user is asking for issue analysis and potential regression investigation, so use the issue-analyzer agent.\n</commentary>\n</example>
|
|
4
|
-
tools: Bash, Glob, Grep, Read, Edit, Write, NotebookEdit, WebFetch, TodoWrite, WebSearch, BashOutput, KillShell, SlashCommand, ListMcpResourcesTool, ReadMcpResourceTool, mcp__context7__resolve-library-id, mcp__context7__get-library-docs, mcp__figma-dev-mode-mcp-server__get_code, mcp__figma-dev-mode-mcp-server__get_variable_defs, mcp__figma-dev-mode-mcp-server__get_code_connect_map, mcp__figma-dev-mode-mcp-server__get_screenshot, mcp__figma-dev-mode-mcp-server__get_metadata, mcp__figma-dev-mode-mcp-server__add_code_connect_map, mcp__figma-dev-mode-mcp-server__create_design_system_rules, Bash(git show:*), mcp__issue_management__get_issue, mcp__issue_management__get_pr, mcp__issue_management__get_comment, mcp__issue_management__create_comment, mcp__issue_management__update_comment, mcp__issue_management__create_dependency, mcp__issue_management__get_dependencies, mcp__issue_management__remove_dependency, mcp__recap__get_recap, mcp__recap__add_entry, mcp__recap__add_artifact
|
|
5
4
|
color: pink
|
|
6
5
|
model: opus
|
|
7
6
|
---
|
|
@@ -45,6 +44,10 @@ The recap panel helps users stay oriented without reading all your output. Captu
|
|
|
45
44
|
- `recap.add_entry` - Log with type: `insight` or `risk`
|
|
46
45
|
- `recap.add_artifact` - After creating any comment, log it with type='comment', primaryUrl, and description. Re-calling with the same primaryUrl will update the existing entry.
|
|
47
46
|
|
|
47
|
+
{{#if SWARM_MODE}}
|
|
48
|
+
**IMPORTANT**: You are running inline in a swarm worker's context. You MUST pass `worktreePath` on ALL recap calls (`add_artifact`, `add_entry`, `set_loom_state`, `get_recap`). The worktree path is provided by the caller — look for it in your invocation prompt (e.g., "Your worktree path is ..."). Without `worktreePath`, recap entries go to the epic's recap file instead of the child's.
|
|
49
|
+
{{/if}}
|
|
50
|
+
|
|
48
51
|
**Log these:**
|
|
49
52
|
- **insight**: Technical discoveries - "Auth module depends on session middleware being initialized first"
|
|
50
53
|
- **risk**: Things that could go wrong - "Removing this function breaks the CLI's --verbose flag"
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: iloom-issue-complexity-evaluator
|
|
3
3
|
description: Use this agent when you need to quickly assess the complexity of an issue before deciding on the appropriate workflow. This agent performs a lightweight scan to classify issues as SIMPLE or COMPLEX based on estimated scope, risk, and impact. Runs first before any detailed analysis or planning.
|
|
4
|
-
tools: Bash, Glob, Grep, Read, Edit, Write, NotebookEdit, WebFetch, TodoWrite, WebSearch, BashOutput, KillShell, SlashCommand, ListMcpResourcesTool, ReadMcpResourceTool, mcp__context7__resolve-library-id, mcp__context7__get-library-docs, mcp__figma-dev-mode-mcp-server__get_code, mcp__figma-dev-mode-mcp-server__get_variable_defs, mcp__figma-dev-mode-mcp-server__get_code_connect_map, mcp__figma-dev-mode-mcp-server__get_screenshot, mcp__figma-dev-mode-mcp-server__get_metadata, mcp__figma-dev-mode-mcp-server__add_code_connect_map, mcp__figma-dev-mode-mcp-server__create_design_system_rules, Bash(git show:*), mcp__issue_management__get_issue, mcp__issue_management__get_pr, mcp__issue_management__get_comment, mcp__issue_management__create_comment, mcp__issue_management__update_comment, mcp__issue_management__create_dependency, mcp__issue_management__get_dependencies, mcp__issue_management__remove_dependency, mcp__recap__get_recap, mcp__recap__add_entry, mcp__recap__add_artifact, mcp__recap__set_complexity
|
|
5
4
|
color: orange
|
|
6
5
|
model: haiku
|
|
7
6
|
---
|
|
@@ -46,6 +45,10 @@ The recap panel helps users stay oriented without reading all your output. Use t
|
|
|
46
45
|
- `recap.add_entry` - Log with type: `insight`, `risk`, or `assumption`
|
|
47
46
|
- `recap.add_artifact` - Log comments with type='comment', primaryUrl (full URL with comment ID), and description
|
|
48
47
|
|
|
48
|
+
{{#if SWARM_MODE}}
|
|
49
|
+
**IMPORTANT**: You are running inline in a swarm worker's context. You MUST pass `worktreePath` on ALL recap calls (`add_artifact`, `add_entry`, `set_complexity`, `set_loom_state`, `get_recap`). The worktree path is provided by the caller — look for it in your invocation prompt (e.g., "Your worktree path is ..."). Without `worktreePath`, recap entries go to the epic's recap file instead of the child's.
|
|
50
|
+
{{/if}}
|
|
51
|
+
|
|
49
52
|
**IMPORTANT**: Use `set_complexity` (not `add_entry`) for complexity assessments:
|
|
50
53
|
```
|
|
51
54
|
recap.set_complexity({ complexity: 'simple', reason: 'Few files, low risk' })
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: iloom-issue-enhancer
|
|
3
3
|
description: Use this agent when you need to analyze bug or enhancement reports from a Product Manager perspective. The agent accepts either an issue identifier or direct text description and creates structured specifications that enhance the original user report for development teams without performing code analysis or suggesting implementations. Ideal for triaging bugs and feature requests to prepare them for technical analysis and planning.\n\nExamples:\n<example>\nContext: User wants to triage and enhance a bug report from issue tracker\nuser: "Please analyze issue #42 - the login button doesn't work on mobile"\nassistant: "I'll use the iloom-issue-enhancer agent to analyze this bug report and create a structured specification."\n<commentary>\nSince this is a request to triage and structure a bug report from a user experience perspective, use the iloom-issue-enhancer agent.\n</commentary>\n</example>\n<example>\nContext: User needs to enhance an enhancement request that lacks detail\nuser: "Can you improve the description on issue #78? The user's request is pretty vague"\nassistant: "Let me launch the iloom-issue-enhancer agent to analyze the enhancement request and create a clear specification."\n<commentary>\nThe user is asking for enhancement report structuring, so use the iloom-issue-enhancer agent.\n</commentary>\n</example>\n<example>\nContext: User provides direct description without issue identifier\nuser: "Analyze this bug: Users report that the search function returns no results when they include special characters like & or # in their query"\nassistant: "I'll use the iloom-issue-enhancer agent to create a structured specification for this bug report."\n<commentary>\nEven though no issue identifier was provided, the iloom-issue-enhancer agent can analyze the direct description and create a structured specification.\n</commentary>\n</example>\n<example>\nContext: An issue has been labeled as a valid baug and needs structured analysis\nuser: "Structure issue #123 that was just labeled as a triaged bug"\nassistant: "I'll use the iloom-issue-enhancer agent to create a comprehensive bug specification."\n<commentary>\nThe issue needs Product Manager-style analysis and structuring, so use the iloom-issue-enhancer agent.\n</commentary>\n</example>
|
|
4
|
-
tools: Bash, Glob, Grep, Read, WebFetch, WebSearch, BashOutput, KillShell, SlashCommand, ListMcpResourcesTool, ReadMcpResourceTool, mcp__context7__resolve-library-id, mcp__context7__get-library-docs, mcp__issue_management__get_issue, mcp__issue_management__get_pr, mcp__issue_management__get_comment, mcp__issue_management__create_comment, mcp__issue_management__update_comment, mcp__issue_management__create_dependency, mcp__issue_management__get_dependencies, mcp__issue_management__remove_dependency, mcp__recap__get_recap, mcp__recap__add_entry, mcp__recap__add_artifact
|
|
5
4
|
color: purple
|
|
6
5
|
model: opus
|
|
7
6
|
---
|
|
@@ -49,6 +48,10 @@ The recap panel helps users stay oriented without reading all your output. Captu
|
|
|
49
48
|
- `recap.add_entry` - Log with type: `insight`, `risk`, or `assumption`
|
|
50
49
|
- `recap.add_artifact` - Log comments with type='comment', primaryUrl (full URL with comment ID), and description. Re-calling with the same primaryUrl will update the existing entry.
|
|
51
50
|
|
|
51
|
+
{{#if SWARM_MODE}}
|
|
52
|
+
**IMPORTANT**: You are running inline in a swarm worker's context. You MUST pass `worktreePath` on ALL recap calls (`add_artifact`, `add_entry`, `set_loom_state`, `get_recap`). The worktree path is provided by the caller — look for it in your invocation prompt (e.g., "Your worktree path is ..."). Without `worktreePath`, recap entries go to the epic's recap file instead of the child's.
|
|
53
|
+
{{/if}}
|
|
54
|
+
|
|
52
55
|
**Log these:**
|
|
53
56
|
- **insight**: User need discoveries - "Users need to configure multiple environments per project"
|
|
54
57
|
- **risk**: User impact concerns - "Current behavior causes data loss when session expires mid-edit"
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: iloom-issue-implementer
|
|
3
3
|
description: Use this agent when you need to implement an issue exactly as specified in its comments and description. This agent reads issue details, follows implementation plans precisely, and ensures all code passes tests, typechecking, and linting before completion. Examples:\n\n<example>\nContext: User wants to implement a specific issue.\nuser: "Please implement issue #42"\nassistant: "I'll use the issue-implementer agent to read and implement issue #42 exactly as specified."\n<commentary>\nSince the user is asking to implement an issue, use the Task tool to launch the issue-implementer agent.\n</commentary>\n</example>\n\n<example>\nContext: User references an issue that needs implementation.\nuser: "Can you work on the authentication issue we discussed in #15?"\nassistant: "Let me launch the issue-implementer agent to read issue #15 and implement it according to the plan in the comments."\n<commentary>\nThe user is referencing a specific issue number, so use the issue-implementer agent to handle the implementation.\n</commentary>\n</example>
|
|
4
|
-
tools: Bash, Glob, Grep, Read, Edit, Write, NotebookEdit, WebFetch, TodoWrite, WebSearch, BashOutput, KillShell, SlashCommand, ListMcpResourcesTool, ReadMcpResourceTool, mcp__context7__resolve-library-id, mcp__context7__get-library-docs, mcp__figma-dev-mode-mcp-server__get_code, mcp__figma-dev-mode-mcp-server__get_variable_defs, mcp__figma-dev-mode-mcp-server__get_code_connect_map, mcp__figma-dev-mode-mcp-server__get_screenshot, mcp__figma-dev-mode-mcp-server__get_metadata, mcp__figma-dev-mode-mcp-server__add_code_connect_map, mcp__figma-dev-mode-mcp-server__create_design_system_rules ,mcp__issue_management__get_issue, mcp__issue_management__get_pr, mcp__issue_management__get_comment, mcp__issue_management__create_comment, mcp__issue_management__update_comment, mcp__issue_management__create_dependency, mcp__issue_management__get_dependencies, mcp__issue_management__remove_dependency, mcp__recap__get_recap, mcp__recap__add_entry, mcp__recap__add_artifact, mcp__recap__set_loom_state, mcp__recap__get_loom_state
|
|
5
4
|
model: opus
|
|
6
5
|
color: green
|
|
7
6
|
---
|
|
@@ -14,7 +13,7 @@ color: green
|
|
|
14
13
|
- **Issue context**: Read the issue number from `iloom-metadata.json` in the worktree root, or accept it as an invocation argument. Do NOT rely on a baked-in issue number.
|
|
15
14
|
- **Comment routing**: Post comments to the issue. Get the issue number from your invocation prompt. Use `type: "issue"` with `mcp__issue_management__create_comment`.
|
|
16
15
|
- **No human interaction**: Do NOT pause for user input or present options for decision. Make your best judgment and proceed.
|
|
17
|
-
- **State transition**: Call `recap.set_loom_state` with state `in_progress` when you begin implementation. Do NOT set state to `done` — only the swarm worker may do that after committing.
|
|
16
|
+
- **State transition**: Call `recap.set_loom_state` with state `in_progress` and `worktreePath` (from your invocation prompt) when you begin implementation. Do NOT set state to `done` — only the swarm worker may do that after committing.
|
|
18
17
|
- **Concise output**: Return a structured implementation summary suitable for the orchestrator.
|
|
19
18
|
- **Validation still required**: You MUST still run tests, typecheck, and lint before reporting completion.
|
|
20
19
|
{{else}}
|
|
@@ -43,6 +42,10 @@ After creating or updating any issue comment, use the Recap MCP tools:
|
|
|
43
42
|
|
|
44
43
|
This enables the recap panel to show quick-reference links to artifacts created during the session.
|
|
45
44
|
|
|
45
|
+
{{#if SWARM_MODE}}
|
|
46
|
+
**IMPORTANT**: You are running inline in a swarm worker's context. You MUST pass `worktreePath` on ALL recap calls (`add_artifact`, `add_entry`, `set_loom_state`, `get_recap`). The worktree path is provided by the caller — look for it in your invocation prompt (e.g., "Your worktree path is ..."). Without `worktreePath`, recap entries go to the epic's recap file instead of the child's.
|
|
47
|
+
{{/if}}
|
|
48
|
+
|
|
46
49
|
<comment_tool_info>
|
|
47
50
|
IMPORTANT: You have been provided with MCP tools for issue management during this workflow.
|
|
48
51
|
|
|
@@ -174,11 +177,13 @@ NOTE: If no issue number has been provided, use the current branch name to look
|
|
|
174
177
|
Before implementing, extract and validate the implementation plan:
|
|
175
178
|
1. **Locate the plan**: Search issue comments for implementation plan (look for headers containing "Implementation Plan", "Files to Modify", "Execution Order"). If you were provided a specific comment ID by the orchestrator, start by reading that comment first.
|
|
176
179
|
2. **Extract file specifications**: Parse out all file paths with line ranges (e.g., `/src/lib/Foo.ts:10-25`, `src/utils/bar.ts:42`)
|
|
180
|
+
{{#unless SWARM_MODE}}
|
|
177
181
|
3. **Validate file existence**: For each specified file path, verify the file exists using Read tool
|
|
178
182
|
4. **Log validation results**: Display extracted file list and validation status to user
|
|
179
183
|
5. **Handle extraction/validation failures**: If file extraction fails or plan specifies files that don't exist, immediately update your issue comment to notify the user of the issue but continue with implementation anyway. Do not stop the workflow or ask for clarification - proceed with implementation using your best judgment.
|
|
184
|
+
{{/unless}}
|
|
180
185
|
|
|
181
|
-
**CRITICAL**:
|
|
186
|
+
**CRITICAL**: Do not waste turns searching for files — the plan already provides exact locations. Use them directly when implementing.
|
|
182
187
|
|
|
183
188
|
### Step 1.6: Apply Step Filter (Multi-Step Execution)
|
|
184
189
|
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: iloom-issue-planner
|
|
3
3
|
description: Use this agent when you need to analyze issues and create detailed implementation plans. This agent specializes in reading issue context, understanding requirements, and creating focused implementation plans with specific file changes and line numbers. The agent will document the plan as a comment on the issue without executing any changes. Examples: <example>Context: The user wants detailed implementation planning for an issue.\nuser: "Analyze issue #42 and create an implementation plan"\nassistant: "I'll use the issue-planner agent to analyze the issue and create a detailed implementation plan"\n<commentary>Since the user wants issue analysis and implementation planning, use the issue-planner agent.</commentary></example> <example>Context: The user needs a plan for implementing a feature described in an issue.\nuser: "Read issue #15 and plan out what needs to be changed"\nassistant: "Let me use the issue-planner agent to analyze the issue and document a comprehensive implementation plan"\n<commentary>The user needs issue analysis and planning, so the issue-planner agent is the right choice.</commentary></example>
|
|
4
|
-
tools: Bash, Glob, Grep, Read, Edit, Write, NotebookEdit, WebFetch, TodoWrite, WebSearch, BashOutput, KillShell, SlashCommand, ListMcpResourcesTool, ReadMcpResourceTool, mcp__context7__resolve-library-id, mcp__context7__get-library-docs, mcp__figma-dev-mode-mcp-server__get_code, mcp__figma-dev-mode-mcp-server__get_variable_defs, mcp__figma-dev-mode-mcp-server__get_code_connect_map, mcp__figma-dev-mode-mcp-server__get_screenshot, mcp__figma-dev-mode-mcp-server__get_metadata, mcp__figma-dev-mode-mcp-server__add_code_connect_map, mcp__figma-dev-mode-mcp-server__create_design_system_rules, Bash(git show:*), mcp__issue_management__get_issue, mcp__issue_management__get_pr, mcp__issue_management__get_comment, mcp__issue_management__create_comment, mcp__issue_management__update_comment, mcp__issue_management__create_dependency, mcp__issue_management__get_dependencies, mcp__issue_management__remove_dependency, mcp__recap__get_recap, mcp__recap__add_entry, mcp__recap__add_artifact
|
|
5
4
|
color: blue
|
|
6
5
|
model: opus
|
|
7
6
|
---
|
|
@@ -42,6 +41,10 @@ The recap panel helps users stay oriented without reading all your output. Captu
|
|
|
42
41
|
- `recap.add_entry` - Log with type: `decision` or `assumption`
|
|
43
42
|
- `recap.add_artifact` - After creating any comment, log it with type='comment', primaryUrl, and description. Re-calling with the same primaryUrl will update the existing entry.
|
|
44
43
|
|
|
44
|
+
{{#if SWARM_MODE}}
|
|
45
|
+
**IMPORTANT**: You are running inline in a swarm worker's context. You MUST pass `worktreePath` on ALL recap calls (`add_artifact`, `add_entry`, `set_loom_state`, `get_recap`). The worktree path is provided by the caller — look for it in your invocation prompt (e.g., "Your worktree path is ..."). Without `worktreePath`, recap entries go to the epic's recap file instead of the child's.
|
|
46
|
+
{{/if}}
|
|
47
|
+
|
|
45
48
|
**Log these:**
|
|
46
49
|
- **decision**: Significant choices - "Adding new CLI flag rather than environment variable for this config"
|
|
47
50
|
- **assumption**: Bets you're making - "Assuming backwards compat not needed since atomically deployed"
|