@iloom/cli 0.9.2 → 0.10.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 +159 -40
- package/dist/{BranchNamingService-K6XNWQ6C.js → BranchNamingService-ECJHBB67.js} +2 -2
- package/dist/ClaudeContextManager-QXX6ZFST.js +14 -0
- package/dist/ClaudeService-NJNK2SUH.js +13 -0
- package/dist/{GitHubService-TGWJN4V4.js → GitHubService-MEHKHUQP.js} +4 -4
- package/dist/IssueTrackerFactory-NG53YX5S.js +14 -0
- package/dist/{LoomLauncher-73NXL2CL.js → LoomLauncher-L64HHS3T.js} +9 -9
- package/dist/{MetadataManager-W3C54UYT.js → MetadataManager-5QZSTKNN.js} +2 -2
- package/dist/{ProjectCapabilityDetector-N5L7T4IY.js → ProjectCapabilityDetector-5KSYUTBJ.js} +3 -3
- package/dist/{PromptTemplateManager-36YLQRHP.js → PromptTemplateManager-DULSVRRE.js} +2 -2
- package/dist/README.md +159 -40
- package/dist/{SettingsManager-AW3JTJHD.js → SettingsManager-BQDQA3FK.js} +4 -2
- package/dist/agents/iloom-artifact-reviewer.md +11 -0
- package/dist/agents/iloom-code-reviewer.md +14 -0
- package/dist/agents/iloom-issue-analyze-and-plan.md +55 -12
- package/dist/agents/iloom-issue-analyzer.md +49 -6
- package/dist/agents/iloom-issue-complexity-evaluator.md +47 -6
- package/dist/agents/iloom-issue-enhancer.md +86 -7
- package/dist/agents/iloom-issue-implementer.md +48 -7
- package/dist/agents/iloom-issue-planner.md +115 -62
- package/dist/{build-THZI572G.js → build-5GO3XW26.js} +9 -9
- package/dist/{chunk-NUACL52E.js → chunk-3D7WQM7I.js} +2 -2
- package/dist/chunk-4232AHNQ.js +35 -0
- package/dist/chunk-4232AHNQ.js.map +1 -0
- package/dist/{chunk-QN47QVBX.js → chunk-4WJNIR5O.js} +1 -1
- package/dist/chunk-4WJNIR5O.js.map +1 -0
- package/dist/{chunk-A7NJF73J.js → chunk-5MWV33NN.js} +4 -4
- package/dist/{chunk-3I4ONZRT.js → chunk-6EU6TCF6.js} +10 -10
- package/dist/chunk-6EU6TCF6.js.map +1 -0
- package/dist/{chunk-CWRI4JC3.js → chunk-FB47TIJG.js} +29 -11
- package/dist/chunk-FB47TIJG.js.map +1 -0
- package/dist/chunk-HEXKPKCK.js +1396 -0
- package/dist/chunk-HEXKPKCK.js.map +1 -0
- package/dist/{chunk-KAYXR544.js → chunk-J5S7DFYC.js} +2 -2
- package/dist/{chunk-ULSWCPQG.js → chunk-JO2LZ6EQ.js} +476 -5
- package/dist/chunk-JO2LZ6EQ.js.map +1 -0
- package/dist/{chunk-KBEIQP4G.js → chunk-KB64WNBZ.js} +43 -3
- package/dist/chunk-KB64WNBZ.js.map +1 -0
- package/dist/{chunk-OFDN5NKS.js → chunk-KXDRI47U.js} +69 -12
- package/dist/chunk-KXDRI47U.js.map +1 -0
- package/dist/{chunk-R4YWBGY6.js → chunk-LXLMMXXY.js} +54 -14
- package/dist/chunk-LXLMMXXY.js.map +1 -0
- package/dist/{chunk-AR5QKYNE.js → chunk-MNHZB4Z2.js} +4 -4
- package/dist/{chunk-TL72BGP6.js → chunk-MORRVYPT.js} +2 -2
- package/dist/{chunk-KJTVU3HZ.js → chunk-NRSWLOAZ.js} +8 -8
- package/dist/chunk-NRSWLOAZ.js.map +1 -0
- package/dist/{chunk-FO5GGFOV.js → chunk-ONQYPICO.js} +13 -5
- package/dist/chunk-ONQYPICO.js.map +1 -0
- package/dist/{chunk-7ZEHSSUP.js → chunk-P4O6EH46.js} +4 -4
- package/dist/chunk-QZWEJVWV.js +207 -0
- package/dist/chunk-QZWEJVWV.js.map +1 -0
- package/dist/chunk-RSYT7MVI.js +202 -0
- package/dist/chunk-RSYT7MVI.js.map +1 -0
- package/dist/{chunk-Z2TWEXR7.js → chunk-RYWFS37M.js} +6 -6
- package/dist/chunk-RYWFS37M.js.map +1 -0
- package/dist/{chunk-B7U6OKUR.js → chunk-SF2P22EE.js} +11 -3
- package/dist/chunk-SF2P22EE.js.map +1 -0
- package/dist/{chunk-6IIL5M2L.js → chunk-SN3SQCFK.js} +10 -8
- package/dist/{chunk-6IIL5M2L.js.map → chunk-SN3SQCFK.js.map} +1 -1
- package/dist/{chunk-SOSQILHO.js → chunk-UD3WJDIV.js} +92 -82
- package/dist/chunk-UD3WJDIV.js.map +1 -0
- package/dist/{chunk-KXGQYLFZ.js → chunk-UKBAJ2QQ.js} +61 -7
- package/dist/chunk-UKBAJ2QQ.js.map +1 -0
- package/dist/{chunk-W6DP5RVR.js → chunk-UVD4CZKS.js} +3 -3
- package/dist/chunk-UWGVCXRF.js +207 -0
- package/dist/chunk-UWGVCXRF.js.map +1 -0
- package/dist/{chunk-NWMORW3U.js → chunk-VECNX6VX.js} +2 -2
- package/dist/{chunk-4CO6KG5S.js → chunk-VG45TUYK.js} +53 -7
- package/dist/{chunk-4CO6KG5S.js.map → chunk-VG45TUYK.js.map} +1 -1
- package/dist/{chunk-TC7APDKU.js → chunk-VGGST52X.js} +2 -2
- package/dist/{chunk-4LKGCFGG.js → chunk-WWKOVDWC.js} +2 -2
- package/dist/{chunk-YKFCCV6S.js → chunk-WY4QBK43.js} +7 -7
- package/dist/chunk-WY4QBK43.js.map +1 -0
- package/dist/chunk-Y4YZTHZE.js +73 -0
- package/dist/chunk-Y4YZTHZE.js.map +1 -0
- package/dist/{chunk-VOGGLPG5.js → chunk-YQ57ORTV.js} +14 -1
- package/dist/chunk-YQ57ORTV.js.map +1 -0
- package/dist/{chunk-RI2YL6TK.js → chunk-YYAKPQBT.js} +65 -18
- package/dist/chunk-YYAKPQBT.js.map +1 -0
- package/dist/{chunk-IZIYLYPK.js → chunk-ZEWU5PZK.js} +2 -2
- package/dist/{chunk-VPTAX5TR.js → chunk-ZHPNZC75.js} +12 -12
- package/dist/chunk-ZHPNZC75.js.map +1 -0
- package/dist/{chunk-DGG2VY7B.js → chunk-ZW2LKWWE.js} +9 -9
- package/dist/chunk-ZW2LKWWE.js.map +1 -0
- package/dist/{claude-TP2QO3BU.js → claude-P3NQR6IJ.js} +2 -2
- package/dist/{cleanup-PJRIFFU4.js → cleanup-6UCPVMFG.js} +81 -32
- package/dist/cleanup-6UCPVMFG.js.map +1 -0
- package/dist/cli.js +638 -349
- package/dist/cli.js.map +1 -1
- package/dist/{commit-IVP3M4HG.js → commit-L3EPY5QG.js} +21 -20
- package/dist/commit-L3EPY5QG.js.map +1 -0
- package/dist/{compile-R2J65HBQ.js → compile-ZS4HYRX5.js} +9 -9
- package/dist/{contribute-VDZXHK5Y.js → contribute-ORDDQGSL.js} +14 -6
- package/dist/contribute-ORDDQGSL.js.map +1 -0
- package/dist/{dev-server-7F622OEO.js → dev-server-FYZ2AQIH.js} +29 -15
- package/dist/dev-server-FYZ2AQIH.js.map +1 -0
- package/dist/{feedback-E7VET7CL.js → feedback-TMBXSCM5.js} +15 -15
- package/dist/{git-2QDQ2X2S.js → git-ET64COO3.js} +4 -4
- package/dist/hooks/iloom-hook.js +15 -0
- package/dist/ignite-CGOV3TD4.js +1393 -0
- package/dist/ignite-CGOV3TD4.js.map +1 -0
- package/dist/index.d.ts +382 -53
- package/dist/index.js +1167 -36
- package/dist/index.js.map +1 -1
- package/dist/{init-676DHF6R.js → init-GFQ5W7GK.js} +57 -21
- package/dist/init-GFQ5W7GK.js.map +1 -0
- package/dist/{issues-PJSOLOBJ.js → issues-T4ZZSPEG.js} +61 -20
- package/dist/issues-T4ZZSPEG.js.map +1 -0
- package/dist/{lint-CJM7BAIM.js → lint-6TQXDZ3T.js} +9 -9
- package/dist/mcp/issue-management-server.js +2471 -256
- package/dist/mcp/issue-management-server.js.map +1 -1
- package/dist/mcp/recap-server.js +144 -21
- package/dist/mcp/recap-server.js.map +1 -1
- package/dist/{neon-helpers-VVFFTLXE.js → neon-helpers-CQN2PB4S.js} +3 -3
- package/dist/neon-helpers-CQN2PB4S.js.map +1 -0
- package/dist/{open-544H7JF5.js → open-5QZGXQRF.js} +15 -15
- package/dist/open-5QZGXQRF.js.map +1 -0
- package/dist/{plan-Q7ELXDLC.js → plan-U7ZQWLFY.js} +41 -25
- package/dist/plan-U7ZQWLFY.js.map +1 -0
- package/dist/{projects-LH362JZQ.js → projects-2UOXFLNZ.js} +4 -4
- package/dist/prompts/CLAUDE.md +62 -0
- package/dist/prompts/init-prompt.txt +347 -26
- package/dist/prompts/issue-prompt.txt +427 -54
- package/dist/prompts/plan-prompt.txt +97 -16
- package/dist/prompts/pr-prompt.txt +44 -1
- package/dist/prompts/regular-prompt.txt +42 -1
- package/dist/prompts/session-summary-prompt.txt +14 -0
- package/dist/prompts/swarm-orchestrator-prompt.txt +437 -0
- package/dist/{rebase-YND35CIE.js → rebase-DWIB77KV.js} +10 -10
- package/dist/{recap-3W7COH7D.js → recap-MX63HAKV.js} +47 -19
- package/dist/recap-MX63HAKV.js.map +1 -0
- package/dist/{run-QUXJKDQQ.js → run-O3TFNQFC.js} +15 -15
- package/dist/run-O3TFNQFC.js.map +1 -0
- package/dist/schema/package-iloom.schema.json +58 -0
- package/dist/schema/settings.schema.json +115 -15
- package/dist/{shell-QGECBLST.js → shell-G6VC2CYR.js} +14 -7
- package/dist/shell-G6VC2CYR.js.map +1 -0
- package/dist/{summary-G2T4452H.js → summary-FWHAX55O.js} +27 -25
- package/dist/summary-FWHAX55O.js.map +1 -0
- package/dist/{test-EA5NQFDC.js → test-F7JNJZYP.js} +9 -9
- package/dist/{test-git-M7LSLEFL.js → test-git-BTAOIUE2.js} +4 -4
- package/dist/test-jira-CHYNV33F.js +96 -0
- package/dist/test-jira-CHYNV33F.js.map +1 -0
- package/dist/{test-prefix-64NAAUON.js → test-prefix-Q6TFSU6F.js} +4 -4
- package/dist/{test-webserver-OK6Z5FJM.js → test-webserver-EONCG7E7.js} +6 -6
- package/dist/{vscode-AR5NNXXI.js → vscode-VA5X4P25.js} +7 -7
- package/package.json +5 -1
- package/dist/ClaudeContextManager-HR5JQKAI.js +0 -14
- package/dist/ClaudeService-TK7FMC2X.js +0 -13
- package/dist/chunk-3I4ONZRT.js.map +0 -1
- package/dist/chunk-B7U6OKUR.js.map +0 -1
- package/dist/chunk-CWRI4JC3.js.map +0 -1
- package/dist/chunk-DGG2VY7B.js.map +0 -1
- package/dist/chunk-FJDRTVJX.js +0 -520
- package/dist/chunk-FJDRTVJX.js.map +0 -1
- package/dist/chunk-FO5GGFOV.js.map +0 -1
- package/dist/chunk-KBEIQP4G.js.map +0 -1
- package/dist/chunk-KJTVU3HZ.js.map +0 -1
- package/dist/chunk-KXGQYLFZ.js.map +0 -1
- package/dist/chunk-OFDN5NKS.js.map +0 -1
- package/dist/chunk-QN47QVBX.js.map +0 -1
- package/dist/chunk-R4YWBGY6.js.map +0 -1
- package/dist/chunk-RI2YL6TK.js.map +0 -1
- package/dist/chunk-SOSQILHO.js.map +0 -1
- package/dist/chunk-ULSWCPQG.js.map +0 -1
- package/dist/chunk-VOGGLPG5.js.map +0 -1
- package/dist/chunk-VPTAX5TR.js.map +0 -1
- package/dist/chunk-WHI5KEOX.js +0 -121
- package/dist/chunk-WHI5KEOX.js.map +0 -1
- package/dist/chunk-YKFCCV6S.js.map +0 -1
- package/dist/chunk-Z2TWEXR7.js.map +0 -1
- package/dist/cleanup-PJRIFFU4.js.map +0 -1
- package/dist/commit-IVP3M4HG.js.map +0 -1
- package/dist/contribute-VDZXHK5Y.js.map +0 -1
- package/dist/dev-server-7F622OEO.js.map +0 -1
- package/dist/ignite-IW35CDBD.js +0 -784
- package/dist/ignite-IW35CDBD.js.map +0 -1
- package/dist/init-676DHF6R.js.map +0 -1
- package/dist/issues-PJSOLOBJ.js.map +0 -1
- package/dist/open-544H7JF5.js.map +0 -1
- package/dist/plan-Q7ELXDLC.js.map +0 -1
- package/dist/recap-3W7COH7D.js.map +0 -1
- package/dist/run-QUXJKDQQ.js.map +0 -1
- package/dist/shell-QGECBLST.js.map +0 -1
- package/dist/summary-G2T4452H.js.map +0 -1
- /package/dist/{BranchNamingService-K6XNWQ6C.js.map → BranchNamingService-ECJHBB67.js.map} +0 -0
- /package/dist/{ClaudeContextManager-HR5JQKAI.js.map → ClaudeContextManager-QXX6ZFST.js.map} +0 -0
- /package/dist/{ClaudeService-TK7FMC2X.js.map → ClaudeService-NJNK2SUH.js.map} +0 -0
- /package/dist/{GitHubService-TGWJN4V4.js.map → GitHubService-MEHKHUQP.js.map} +0 -0
- /package/dist/{MetadataManager-W3C54UYT.js.map → IssueTrackerFactory-NG53YX5S.js.map} +0 -0
- /package/dist/{LoomLauncher-73NXL2CL.js.map → LoomLauncher-L64HHS3T.js.map} +0 -0
- /package/dist/{ProjectCapabilityDetector-N5L7T4IY.js.map → MetadataManager-5QZSTKNN.js.map} +0 -0
- /package/dist/{PromptTemplateManager-36YLQRHP.js.map → ProjectCapabilityDetector-5KSYUTBJ.js.map} +0 -0
- /package/dist/{SettingsManager-AW3JTJHD.js.map → PromptTemplateManager-DULSVRRE.js.map} +0 -0
- /package/dist/{claude-TP2QO3BU.js.map → SettingsManager-BQDQA3FK.js.map} +0 -0
- /package/dist/{build-THZI572G.js.map → build-5GO3XW26.js.map} +0 -0
- /package/dist/{chunk-NUACL52E.js.map → chunk-3D7WQM7I.js.map} +0 -0
- /package/dist/{chunk-A7NJF73J.js.map → chunk-5MWV33NN.js.map} +0 -0
- /package/dist/{chunk-KAYXR544.js.map → chunk-J5S7DFYC.js.map} +0 -0
- /package/dist/{chunk-AR5QKYNE.js.map → chunk-MNHZB4Z2.js.map} +0 -0
- /package/dist/{chunk-TL72BGP6.js.map → chunk-MORRVYPT.js.map} +0 -0
- /package/dist/{chunk-7ZEHSSUP.js.map → chunk-P4O6EH46.js.map} +0 -0
- /package/dist/{chunk-W6DP5RVR.js.map → chunk-UVD4CZKS.js.map} +0 -0
- /package/dist/{chunk-NWMORW3U.js.map → chunk-VECNX6VX.js.map} +0 -0
- /package/dist/{chunk-TC7APDKU.js.map → chunk-VGGST52X.js.map} +0 -0
- /package/dist/{chunk-4LKGCFGG.js.map → chunk-WWKOVDWC.js.map} +0 -0
- /package/dist/{chunk-IZIYLYPK.js.map → chunk-ZEWU5PZK.js.map} +0 -0
- /package/dist/{git-2QDQ2X2S.js.map → claude-P3NQR6IJ.js.map} +0 -0
- /package/dist/{compile-R2J65HBQ.js.map → compile-ZS4HYRX5.js.map} +0 -0
- /package/dist/{feedback-E7VET7CL.js.map → feedback-TMBXSCM5.js.map} +0 -0
- /package/dist/{neon-helpers-VVFFTLXE.js.map → git-ET64COO3.js.map} +0 -0
- /package/dist/{lint-CJM7BAIM.js.map → lint-6TQXDZ3T.js.map} +0 -0
- /package/dist/{projects-LH362JZQ.js.map → projects-2UOXFLNZ.js.map} +0 -0
- /package/dist/{rebase-YND35CIE.js.map → rebase-DWIB77KV.js.map} +0 -0
- /package/dist/{test-EA5NQFDC.js.map → test-F7JNJZYP.js.map} +0 -0
- /package/dist/{test-git-M7LSLEFL.js.map → test-git-BTAOIUE2.js.map} +0 -0
- /package/dist/{test-prefix-64NAAUON.js.map → test-prefix-Q6TFSU6F.js.map} +0 -0
- /package/dist/{test-webserver-OK6Z5FJM.js.map → test-webserver-EONCG7E7.js.map} +0 -0
- /package/dist/{vscode-AR5NNXXI.js.map → vscode-VA5X4P25.js.map} +0 -0
package/dist/index.d.ts
CHANGED
|
@@ -270,16 +270,45 @@ declare const IloomSettingsSchema: z.ZodObject<{
|
|
|
270
270
|
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
271
271
|
providers: z.ZodOptional<z.ZodRecord<z.ZodEnum<["claude", "gemini", "codex"]>, z.ZodString>>;
|
|
272
272
|
review: z.ZodOptional<z.ZodBoolean>;
|
|
273
|
+
} & {
|
|
274
|
+
agents: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
|
|
275
|
+
model: z.ZodOptional<z.ZodEnum<["sonnet", "opus", "haiku"]>>;
|
|
276
|
+
enabled: z.ZodOptional<z.ZodBoolean>;
|
|
277
|
+
providers: z.ZodOptional<z.ZodRecord<z.ZodEnum<["claude", "gemini", "codex"]>, z.ZodString>>;
|
|
278
|
+
review: z.ZodOptional<z.ZodBoolean>;
|
|
279
|
+
}, "strip", z.ZodTypeAny, {
|
|
280
|
+
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
281
|
+
enabled?: boolean | undefined;
|
|
282
|
+
providers?: Partial<Record<"claude" | "gemini" | "codex", string>> | undefined;
|
|
283
|
+
review?: boolean | undefined;
|
|
284
|
+
}, {
|
|
285
|
+
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
286
|
+
enabled?: boolean | undefined;
|
|
287
|
+
providers?: Partial<Record<"claude" | "gemini" | "codex", string>> | undefined;
|
|
288
|
+
review?: boolean | undefined;
|
|
289
|
+
}>>>;
|
|
273
290
|
}, "strip", z.ZodTypeAny, {
|
|
274
291
|
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
275
292
|
enabled?: boolean | undefined;
|
|
276
293
|
providers?: Partial<Record<"claude" | "gemini" | "codex", string>> | undefined;
|
|
277
294
|
review?: boolean | undefined;
|
|
295
|
+
agents?: Record<string, {
|
|
296
|
+
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
297
|
+
enabled?: boolean | undefined;
|
|
298
|
+
providers?: Partial<Record<"claude" | "gemini" | "codex", string>> | undefined;
|
|
299
|
+
review?: boolean | undefined;
|
|
300
|
+
}> | undefined;
|
|
278
301
|
}, {
|
|
279
302
|
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
280
303
|
enabled?: boolean | undefined;
|
|
281
304
|
providers?: Partial<Record<"claude" | "gemini" | "codex", string>> | undefined;
|
|
282
305
|
review?: boolean | undefined;
|
|
306
|
+
agents?: Record<string, {
|
|
307
|
+
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
308
|
+
enabled?: boolean | undefined;
|
|
309
|
+
providers?: Partial<Record<"claude" | "gemini" | "codex", string>> | undefined;
|
|
310
|
+
review?: boolean | undefined;
|
|
311
|
+
}> | undefined;
|
|
283
312
|
}>>>>;
|
|
284
313
|
spin: z.ZodOptional<z.ZodObject<{
|
|
285
314
|
model: z.ZodDefault<z.ZodEnum<["sonnet", "opus", "haiku"]>>;
|
|
@@ -309,7 +338,6 @@ declare const IloomSettingsSchema: z.ZodObject<{
|
|
|
309
338
|
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
310
339
|
}>>;
|
|
311
340
|
capabilities: z.ZodOptional<z.ZodObject<{
|
|
312
|
-
capabilities: z.ZodOptional<z.ZodArray<z.ZodEnum<["cli", "web"]>, "many">>;
|
|
313
341
|
web: z.ZodOptional<z.ZodObject<{
|
|
314
342
|
basePort: z.ZodOptional<z.ZodNumber>;
|
|
315
343
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -331,7 +359,6 @@ declare const IloomSettingsSchema: z.ZodObject<{
|
|
|
331
359
|
database?: {
|
|
332
360
|
databaseUrlEnvVarName: string;
|
|
333
361
|
} | undefined;
|
|
334
|
-
capabilities?: ("cli" | "web")[] | undefined;
|
|
335
362
|
}, {
|
|
336
363
|
web?: {
|
|
337
364
|
basePort?: number | undefined;
|
|
@@ -339,7 +366,6 @@ declare const IloomSettingsSchema: z.ZodObject<{
|
|
|
339
366
|
database?: {
|
|
340
367
|
databaseUrlEnvVarName?: string | undefined;
|
|
341
368
|
} | undefined;
|
|
342
|
-
capabilities?: ("cli" | "web")[] | undefined;
|
|
343
369
|
}>>;
|
|
344
370
|
databaseProviders: z.ZodOptional<z.ZodObject<{
|
|
345
371
|
neon: z.ZodOptional<z.ZodObject<{
|
|
@@ -364,7 +390,7 @@ declare const IloomSettingsSchema: z.ZodObject<{
|
|
|
364
390
|
} | undefined;
|
|
365
391
|
}>>;
|
|
366
392
|
issueManagement: z.ZodOptional<z.ZodObject<{
|
|
367
|
-
provider: z.ZodDefault<z.ZodOptional<z.ZodEnum<["github", "linear"]>>>;
|
|
393
|
+
provider: z.ZodDefault<z.ZodOptional<z.ZodEnum<["github", "linear", "jira"]>>>;
|
|
368
394
|
github: z.ZodOptional<z.ZodObject<{
|
|
369
395
|
remote: z.ZodString;
|
|
370
396
|
}, "strip", z.ZodTypeAny, {
|
|
@@ -385,8 +411,39 @@ declare const IloomSettingsSchema: z.ZodObject<{
|
|
|
385
411
|
branchFormat?: string | undefined;
|
|
386
412
|
apiToken?: string | undefined;
|
|
387
413
|
}>>;
|
|
414
|
+
jira: z.ZodOptional<z.ZodObject<{
|
|
415
|
+
host: z.ZodString;
|
|
416
|
+
username: z.ZodString;
|
|
417
|
+
apiToken: z.ZodOptional<z.ZodString>;
|
|
418
|
+
projectKey: z.ZodString;
|
|
419
|
+
boardId: z.ZodOptional<z.ZodString>;
|
|
420
|
+
transitionMappings: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
421
|
+
defaultIssueType: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
422
|
+
defaultSubtaskType: z.ZodDefault<z.ZodOptional<z.ZodString>>;
|
|
423
|
+
doneStatuses: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
|
|
424
|
+
}, "strip", z.ZodTypeAny, {
|
|
425
|
+
host: string;
|
|
426
|
+
username: string;
|
|
427
|
+
projectKey: string;
|
|
428
|
+
defaultIssueType: string;
|
|
429
|
+
defaultSubtaskType: string;
|
|
430
|
+
doneStatuses: string[];
|
|
431
|
+
apiToken?: string | undefined;
|
|
432
|
+
boardId?: string | undefined;
|
|
433
|
+
transitionMappings?: Record<string, string> | undefined;
|
|
434
|
+
}, {
|
|
435
|
+
host: string;
|
|
436
|
+
username: string;
|
|
437
|
+
projectKey: string;
|
|
438
|
+
apiToken?: string | undefined;
|
|
439
|
+
boardId?: string | undefined;
|
|
440
|
+
transitionMappings?: Record<string, string> | undefined;
|
|
441
|
+
defaultIssueType?: string | undefined;
|
|
442
|
+
defaultSubtaskType?: string | undefined;
|
|
443
|
+
doneStatuses?: string[] | undefined;
|
|
444
|
+
}>>;
|
|
388
445
|
}, "strip", z.ZodTypeAny, {
|
|
389
|
-
provider: "github" | "linear";
|
|
446
|
+
provider: "github" | "linear" | "jira";
|
|
390
447
|
github?: {
|
|
391
448
|
remote: string;
|
|
392
449
|
} | undefined;
|
|
@@ -395,6 +452,17 @@ declare const IloomSettingsSchema: z.ZodObject<{
|
|
|
395
452
|
branchFormat?: string | undefined;
|
|
396
453
|
apiToken?: string | undefined;
|
|
397
454
|
} | undefined;
|
|
455
|
+
jira?: {
|
|
456
|
+
host: string;
|
|
457
|
+
username: string;
|
|
458
|
+
projectKey: string;
|
|
459
|
+
defaultIssueType: string;
|
|
460
|
+
defaultSubtaskType: string;
|
|
461
|
+
doneStatuses: string[];
|
|
462
|
+
apiToken?: string | undefined;
|
|
463
|
+
boardId?: string | undefined;
|
|
464
|
+
transitionMappings?: Record<string, string> | undefined;
|
|
465
|
+
} | undefined;
|
|
398
466
|
}, {
|
|
399
467
|
github?: {
|
|
400
468
|
remote: string;
|
|
@@ -404,20 +472,34 @@ declare const IloomSettingsSchema: z.ZodObject<{
|
|
|
404
472
|
branchFormat?: string | undefined;
|
|
405
473
|
apiToken?: string | undefined;
|
|
406
474
|
} | undefined;
|
|
407
|
-
|
|
475
|
+
jira?: {
|
|
476
|
+
host: string;
|
|
477
|
+
username: string;
|
|
478
|
+
projectKey: string;
|
|
479
|
+
apiToken?: string | undefined;
|
|
480
|
+
boardId?: string | undefined;
|
|
481
|
+
transitionMappings?: Record<string, string> | undefined;
|
|
482
|
+
defaultIssueType?: string | undefined;
|
|
483
|
+
defaultSubtaskType?: string | undefined;
|
|
484
|
+
doneStatuses?: string[] | undefined;
|
|
485
|
+
} | undefined;
|
|
486
|
+
provider?: "github" | "linear" | "jira" | undefined;
|
|
408
487
|
}>>;
|
|
409
488
|
mergeBehavior: z.ZodOptional<z.ZodObject<{
|
|
410
489
|
mode: z.ZodDefault<z.ZodEnum<["local", "github-pr", "github-draft-pr"]>>;
|
|
411
490
|
remote: z.ZodOptional<z.ZodString>;
|
|
412
491
|
autoCommitPush: z.ZodOptional<z.ZodBoolean>;
|
|
492
|
+
openBrowserOnFinish: z.ZodDefault<z.ZodBoolean>;
|
|
413
493
|
}, "strip", z.ZodTypeAny, {
|
|
414
494
|
mode: "local" | "github-pr" | "github-draft-pr";
|
|
495
|
+
openBrowserOnFinish: boolean;
|
|
415
496
|
remote?: string | undefined;
|
|
416
497
|
autoCommitPush?: boolean | undefined;
|
|
417
498
|
}, {
|
|
418
499
|
remote?: string | undefined;
|
|
419
500
|
mode?: "local" | "github-pr" | "github-draft-pr" | undefined;
|
|
420
501
|
autoCommitPush?: boolean | undefined;
|
|
502
|
+
openBrowserOnFinish?: boolean | undefined;
|
|
421
503
|
}>>;
|
|
422
504
|
ide: z.ZodOptional<z.ZodObject<{
|
|
423
505
|
type: z.ZodDefault<z.ZodEnum<["vscode", "cursor", "webstorm", "sublime", "intellij", "windsurf", "antigravity"]>>;
|
|
@@ -450,20 +532,23 @@ declare const IloomSettingsSchema: z.ZodObject<{
|
|
|
450
532
|
git: {
|
|
451
533
|
commitTimeout: number;
|
|
452
534
|
};
|
|
535
|
+
agents?: Record<string, {
|
|
536
|
+
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
537
|
+
enabled?: boolean | undefined;
|
|
538
|
+
providers?: Partial<Record<"claude" | "gemini" | "codex", string>> | undefined;
|
|
539
|
+
review?: boolean | undefined;
|
|
540
|
+
agents?: Record<string, {
|
|
541
|
+
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
542
|
+
enabled?: boolean | undefined;
|
|
543
|
+
providers?: Partial<Record<"claude" | "gemini" | "codex", string>> | undefined;
|
|
544
|
+
review?: boolean | undefined;
|
|
545
|
+
}> | undefined;
|
|
546
|
+
}> | null | undefined;
|
|
453
547
|
plan?: {
|
|
454
548
|
model: "opus" | "sonnet" | "haiku";
|
|
455
549
|
planner: "claude" | "gemini" | "codex";
|
|
456
550
|
reviewer: "claude" | "gemini" | "codex" | "none";
|
|
457
551
|
} | undefined;
|
|
458
|
-
capabilities?: {
|
|
459
|
-
web?: {
|
|
460
|
-
basePort?: number | undefined;
|
|
461
|
-
} | undefined;
|
|
462
|
-
database?: {
|
|
463
|
-
databaseUrlEnvVarName: string;
|
|
464
|
-
} | undefined;
|
|
465
|
-
capabilities?: ("cli" | "web")[] | undefined;
|
|
466
|
-
} | undefined;
|
|
467
552
|
mainBranch?: string | undefined;
|
|
468
553
|
worktreePrefix?: string | undefined;
|
|
469
554
|
protectedBranches?: string[] | undefined;
|
|
@@ -497,18 +582,20 @@ declare const IloomSettingsSchema: z.ZodObject<{
|
|
|
497
582
|
noVerify?: boolean | undefined;
|
|
498
583
|
} | undefined;
|
|
499
584
|
} | undefined;
|
|
500
|
-
agents?: Record<string, {
|
|
501
|
-
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
502
|
-
enabled?: boolean | undefined;
|
|
503
|
-
providers?: Partial<Record<"claude" | "gemini" | "codex", string>> | undefined;
|
|
504
|
-
review?: boolean | undefined;
|
|
505
|
-
}> | null | undefined;
|
|
506
585
|
spin?: {
|
|
507
586
|
model: "opus" | "sonnet" | "haiku";
|
|
508
587
|
} | undefined;
|
|
509
588
|
summary?: {
|
|
510
589
|
model: "opus" | "sonnet" | "haiku";
|
|
511
590
|
} | undefined;
|
|
591
|
+
capabilities?: {
|
|
592
|
+
web?: {
|
|
593
|
+
basePort?: number | undefined;
|
|
594
|
+
} | undefined;
|
|
595
|
+
database?: {
|
|
596
|
+
databaseUrlEnvVarName: string;
|
|
597
|
+
} | undefined;
|
|
598
|
+
} | undefined;
|
|
512
599
|
databaseProviders?: {
|
|
513
600
|
neon?: {
|
|
514
601
|
projectId: string;
|
|
@@ -516,7 +603,7 @@ declare const IloomSettingsSchema: z.ZodObject<{
|
|
|
516
603
|
} | undefined;
|
|
517
604
|
} | undefined;
|
|
518
605
|
issueManagement?: {
|
|
519
|
-
provider: "github" | "linear";
|
|
606
|
+
provider: "github" | "linear" | "jira";
|
|
520
607
|
github?: {
|
|
521
608
|
remote: string;
|
|
522
609
|
} | undefined;
|
|
@@ -525,9 +612,21 @@ declare const IloomSettingsSchema: z.ZodObject<{
|
|
|
525
612
|
branchFormat?: string | undefined;
|
|
526
613
|
apiToken?: string | undefined;
|
|
527
614
|
} | undefined;
|
|
615
|
+
jira?: {
|
|
616
|
+
host: string;
|
|
617
|
+
username: string;
|
|
618
|
+
projectKey: string;
|
|
619
|
+
defaultIssueType: string;
|
|
620
|
+
defaultSubtaskType: string;
|
|
621
|
+
doneStatuses: string[];
|
|
622
|
+
apiToken?: string | undefined;
|
|
623
|
+
boardId?: string | undefined;
|
|
624
|
+
transitionMappings?: Record<string, string> | undefined;
|
|
625
|
+
} | undefined;
|
|
528
626
|
} | undefined;
|
|
529
627
|
mergeBehavior?: {
|
|
530
628
|
mode: "local" | "github-pr" | "github-draft-pr";
|
|
629
|
+
openBrowserOnFinish: boolean;
|
|
531
630
|
remote?: string | undefined;
|
|
532
631
|
autoCommitPush?: boolean | undefined;
|
|
533
632
|
} | undefined;
|
|
@@ -539,20 +638,23 @@ declare const IloomSettingsSchema: z.ZodObject<{
|
|
|
539
638
|
vscode: boolean;
|
|
540
639
|
} | undefined;
|
|
541
640
|
}, {
|
|
641
|
+
agents?: Record<string, {
|
|
642
|
+
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
643
|
+
enabled?: boolean | undefined;
|
|
644
|
+
providers?: Partial<Record<"claude" | "gemini" | "codex", string>> | undefined;
|
|
645
|
+
review?: boolean | undefined;
|
|
646
|
+
agents?: Record<string, {
|
|
647
|
+
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
648
|
+
enabled?: boolean | undefined;
|
|
649
|
+
providers?: Partial<Record<"claude" | "gemini" | "codex", string>> | undefined;
|
|
650
|
+
review?: boolean | undefined;
|
|
651
|
+
}> | undefined;
|
|
652
|
+
}> | null | undefined;
|
|
542
653
|
plan?: {
|
|
543
654
|
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
544
655
|
planner?: "claude" | "gemini" | "codex" | undefined;
|
|
545
656
|
reviewer?: "claude" | "gemini" | "codex" | "none" | undefined;
|
|
546
657
|
} | undefined;
|
|
547
|
-
capabilities?: {
|
|
548
|
-
web?: {
|
|
549
|
-
basePort?: number | undefined;
|
|
550
|
-
} | undefined;
|
|
551
|
-
database?: {
|
|
552
|
-
databaseUrlEnvVarName?: string | undefined;
|
|
553
|
-
} | undefined;
|
|
554
|
-
capabilities?: ("cli" | "web")[] | undefined;
|
|
555
|
-
} | undefined;
|
|
556
658
|
mainBranch?: string | undefined;
|
|
557
659
|
sourceEnvOnStart?: boolean | undefined;
|
|
558
660
|
worktreePrefix?: string | undefined;
|
|
@@ -587,18 +689,20 @@ declare const IloomSettingsSchema: z.ZodObject<{
|
|
|
587
689
|
generateSummary?: boolean | undefined;
|
|
588
690
|
} | undefined;
|
|
589
691
|
} | undefined;
|
|
590
|
-
agents?: Record<string, {
|
|
591
|
-
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
592
|
-
enabled?: boolean | undefined;
|
|
593
|
-
providers?: Partial<Record<"claude" | "gemini" | "codex", string>> | undefined;
|
|
594
|
-
review?: boolean | undefined;
|
|
595
|
-
}> | null | undefined;
|
|
596
692
|
spin?: {
|
|
597
693
|
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
598
694
|
} | undefined;
|
|
599
695
|
summary?: {
|
|
600
696
|
model?: "opus" | "sonnet" | "haiku" | undefined;
|
|
601
697
|
} | undefined;
|
|
698
|
+
capabilities?: {
|
|
699
|
+
web?: {
|
|
700
|
+
basePort?: number | undefined;
|
|
701
|
+
} | undefined;
|
|
702
|
+
database?: {
|
|
703
|
+
databaseUrlEnvVarName?: string | undefined;
|
|
704
|
+
} | undefined;
|
|
705
|
+
} | undefined;
|
|
602
706
|
databaseProviders?: {
|
|
603
707
|
neon?: {
|
|
604
708
|
projectId: string;
|
|
@@ -614,12 +718,24 @@ declare const IloomSettingsSchema: z.ZodObject<{
|
|
|
614
718
|
branchFormat?: string | undefined;
|
|
615
719
|
apiToken?: string | undefined;
|
|
616
720
|
} | undefined;
|
|
617
|
-
|
|
721
|
+
jira?: {
|
|
722
|
+
host: string;
|
|
723
|
+
username: string;
|
|
724
|
+
projectKey: string;
|
|
725
|
+
apiToken?: string | undefined;
|
|
726
|
+
boardId?: string | undefined;
|
|
727
|
+
transitionMappings?: Record<string, string> | undefined;
|
|
728
|
+
defaultIssueType?: string | undefined;
|
|
729
|
+
defaultSubtaskType?: string | undefined;
|
|
730
|
+
doneStatuses?: string[] | undefined;
|
|
731
|
+
} | undefined;
|
|
732
|
+
provider?: "github" | "linear" | "jira" | undefined;
|
|
618
733
|
} | undefined;
|
|
619
734
|
mergeBehavior?: {
|
|
620
735
|
remote?: string | undefined;
|
|
621
736
|
mode?: "local" | "github-pr" | "github-draft-pr" | undefined;
|
|
622
737
|
autoCommitPush?: boolean | undefined;
|
|
738
|
+
openBrowserOnFinish?: boolean | undefined;
|
|
623
739
|
} | undefined;
|
|
624
740
|
ide?: {
|
|
625
741
|
type?: "vscode" | "cursor" | "webstorm" | "sublime" | "intellij" | "windsurf" | "antigravity" | undefined;
|
|
@@ -914,6 +1030,13 @@ interface ResourceCleanupOptions {
|
|
|
914
1030
|
checkMergeSafety?: boolean;
|
|
915
1031
|
/** Check if branch exists on remote before allowing cleanup (useful for GitHub-PR mode) */
|
|
916
1032
|
checkRemoteBranch?: boolean;
|
|
1033
|
+
/** Pre-resolved worktree to clean up (skips the search step) */
|
|
1034
|
+
worktree?: {
|
|
1035
|
+
path: string;
|
|
1036
|
+
branch: string;
|
|
1037
|
+
};
|
|
1038
|
+
/** Archive metadata instead of deleting (preserves loom in il list --finished) */
|
|
1039
|
+
archive?: boolean;
|
|
917
1040
|
}
|
|
918
1041
|
/**
|
|
919
1042
|
* Result of a cleanup operation
|
|
@@ -1054,7 +1177,7 @@ interface Loom {
|
|
|
1054
1177
|
id: string;
|
|
1055
1178
|
path: string;
|
|
1056
1179
|
branch: string;
|
|
1057
|
-
type: 'issue' | 'pr' | 'branch';
|
|
1180
|
+
type: 'issue' | 'pr' | 'branch' | 'epic';
|
|
1058
1181
|
identifier: string | number;
|
|
1059
1182
|
port: number;
|
|
1060
1183
|
databaseBranch?: string;
|
|
@@ -1072,12 +1195,12 @@ interface Loom {
|
|
|
1072
1195
|
cliSymlinks?: string[];
|
|
1073
1196
|
}
|
|
1074
1197
|
interface CreateLoomInput {
|
|
1075
|
-
type: 'issue' | 'pr' | 'branch';
|
|
1198
|
+
type: 'issue' | 'pr' | 'branch' | 'epic';
|
|
1076
1199
|
identifier: string | number;
|
|
1077
1200
|
originalInput: string;
|
|
1078
1201
|
baseBranch?: string;
|
|
1079
1202
|
parentLoom?: {
|
|
1080
|
-
type: 'issue' | 'pr' | 'branch';
|
|
1203
|
+
type: 'issue' | 'pr' | 'branch' | 'epic';
|
|
1081
1204
|
identifier: string | number;
|
|
1082
1205
|
branchName: string;
|
|
1083
1206
|
worktreePath: string;
|
|
@@ -1095,12 +1218,20 @@ interface CreateLoomInput {
|
|
|
1095
1218
|
setArguments?: string[];
|
|
1096
1219
|
executablePath?: string;
|
|
1097
1220
|
sourceEnvOnStart?: boolean;
|
|
1221
|
+
childIssueNumbers?: string[];
|
|
1222
|
+
childIssues?: Array<{
|
|
1223
|
+
number: string;
|
|
1224
|
+
title: string;
|
|
1225
|
+
body: string;
|
|
1226
|
+
url: string;
|
|
1227
|
+
}>;
|
|
1228
|
+
dependencyMap?: Record<string, string[]>;
|
|
1098
1229
|
};
|
|
1099
1230
|
}
|
|
1100
1231
|
type LaunchMode = 'editor' | 'terminal' | 'both';
|
|
1101
1232
|
interface LoomSummary {
|
|
1102
1233
|
id: string;
|
|
1103
|
-
type: 'issue' | 'pr' | 'branch';
|
|
1234
|
+
type: 'issue' | 'pr' | 'branch' | 'epic';
|
|
1104
1235
|
identifier: string | number;
|
|
1105
1236
|
title?: string;
|
|
1106
1237
|
branch: string;
|
|
@@ -1125,6 +1256,98 @@ interface ProcessInfo {
|
|
|
1125
1256
|
isDevServer: boolean;
|
|
1126
1257
|
}
|
|
1127
1258
|
|
|
1259
|
+
interface TelemetryConfig {
|
|
1260
|
+
enabled: boolean;
|
|
1261
|
+
disclosed_at?: string;
|
|
1262
|
+
last_version?: string;
|
|
1263
|
+
}
|
|
1264
|
+
interface CliInstalledProperties {
|
|
1265
|
+
version: string;
|
|
1266
|
+
os: string;
|
|
1267
|
+
node_version: string;
|
|
1268
|
+
}
|
|
1269
|
+
interface CliUpgradedProperties {
|
|
1270
|
+
version: string;
|
|
1271
|
+
previous_version: string;
|
|
1272
|
+
os: string;
|
|
1273
|
+
}
|
|
1274
|
+
interface LoomCreatedProperties {
|
|
1275
|
+
source_type: 'issue' | 'pr' | 'branch' | 'freeform';
|
|
1276
|
+
tracker: string;
|
|
1277
|
+
is_child_loom: boolean;
|
|
1278
|
+
one_shot_mode: 'default' | 'skip-reviews' | 'yolo';
|
|
1279
|
+
}
|
|
1280
|
+
interface LoomFinishedProperties {
|
|
1281
|
+
merge_behavior: 'local' | 'github-pr' | 'github-draft-pr';
|
|
1282
|
+
duration_minutes: number;
|
|
1283
|
+
}
|
|
1284
|
+
interface LoomAbandonedProperties {
|
|
1285
|
+
duration_minutes: number;
|
|
1286
|
+
phase_reached: string;
|
|
1287
|
+
}
|
|
1288
|
+
interface EpicPlannedProperties {
|
|
1289
|
+
child_count: number;
|
|
1290
|
+
tracker: string;
|
|
1291
|
+
}
|
|
1292
|
+
interface SwarmStartedProperties {
|
|
1293
|
+
child_count: number;
|
|
1294
|
+
tracker: string;
|
|
1295
|
+
}
|
|
1296
|
+
interface SwarmChildCompletedProperties {
|
|
1297
|
+
success: boolean;
|
|
1298
|
+
duration_minutes: number;
|
|
1299
|
+
}
|
|
1300
|
+
interface SwarmCompletedProperties {
|
|
1301
|
+
total_children: number;
|
|
1302
|
+
succeeded: number;
|
|
1303
|
+
failed: number;
|
|
1304
|
+
duration_minutes: number;
|
|
1305
|
+
}
|
|
1306
|
+
interface DemoStartedProperties {
|
|
1307
|
+
path: string;
|
|
1308
|
+
}
|
|
1309
|
+
interface DemoCompletedProperties {
|
|
1310
|
+
path: string;
|
|
1311
|
+
converted_to_real_project: boolean;
|
|
1312
|
+
}
|
|
1313
|
+
interface ContributeStartedProperties {
|
|
1314
|
+
tracker: string;
|
|
1315
|
+
}
|
|
1316
|
+
interface SessionStartedProperties {
|
|
1317
|
+
has_neon: boolean;
|
|
1318
|
+
language: string;
|
|
1319
|
+
}
|
|
1320
|
+
interface ErrorOccurredProperties {
|
|
1321
|
+
error_type: string;
|
|
1322
|
+
command: string;
|
|
1323
|
+
phase: string;
|
|
1324
|
+
}
|
|
1325
|
+
interface InitStartedProperties {
|
|
1326
|
+
mode: 'accept-defaults' | 'guided' | 'guided-custom-prompt';
|
|
1327
|
+
}
|
|
1328
|
+
interface InitCompletedProperties {
|
|
1329
|
+
mode: 'accept-defaults' | 'guided' | 'guided-custom-prompt';
|
|
1330
|
+
}
|
|
1331
|
+
interface TelemetryEventMap {
|
|
1332
|
+
'cli.installed': CliInstalledProperties;
|
|
1333
|
+
'cli.upgraded': CliUpgradedProperties;
|
|
1334
|
+
'loom.created': LoomCreatedProperties;
|
|
1335
|
+
'loom.finished': LoomFinishedProperties;
|
|
1336
|
+
'loom.abandoned': LoomAbandonedProperties;
|
|
1337
|
+
'epic.planned': EpicPlannedProperties;
|
|
1338
|
+
'swarm.started': SwarmStartedProperties;
|
|
1339
|
+
'swarm.child_completed': SwarmChildCompletedProperties;
|
|
1340
|
+
'swarm.completed': SwarmCompletedProperties;
|
|
1341
|
+
'demo.started': DemoStartedProperties;
|
|
1342
|
+
'demo.completed': DemoCompletedProperties;
|
|
1343
|
+
'contribute.started': ContributeStartedProperties;
|
|
1344
|
+
'session.started': SessionStartedProperties;
|
|
1345
|
+
'error.occurred': ErrorOccurredProperties;
|
|
1346
|
+
'init.started': InitStartedProperties;
|
|
1347
|
+
'init.completed': InitCompletedProperties;
|
|
1348
|
+
}
|
|
1349
|
+
type TelemetryEventName = keyof TelemetryEventMap;
|
|
1350
|
+
|
|
1128
1351
|
interface Workspace {
|
|
1129
1352
|
id: string;
|
|
1130
1353
|
path: string;
|
|
@@ -1243,6 +1466,7 @@ interface StartOptions {
|
|
|
1243
1466
|
devServer?: boolean;
|
|
1244
1467
|
terminal?: boolean;
|
|
1245
1468
|
childLoom?: boolean;
|
|
1469
|
+
epic?: boolean;
|
|
1246
1470
|
oneShot?: OneShotMode;
|
|
1247
1471
|
body?: string;
|
|
1248
1472
|
json?: boolean;
|
|
@@ -1266,6 +1490,8 @@ interface FinishOptions {
|
|
|
1266
1490
|
noBrowser?: boolean;
|
|
1267
1491
|
cleanup?: boolean;
|
|
1268
1492
|
json?: boolean;
|
|
1493
|
+
skipToPr?: boolean;
|
|
1494
|
+
review?: boolean;
|
|
1269
1495
|
}
|
|
1270
1496
|
/**
|
|
1271
1497
|
* Options for the cleanup command
|
|
@@ -1286,6 +1512,8 @@ interface CleanupOptions {
|
|
|
1286
1512
|
json?: boolean;
|
|
1287
1513
|
/** Wait specified milliseconds before cleanup execution */
|
|
1288
1514
|
defer?: number;
|
|
1515
|
+
/** Archive metadata instead of deleting (preserves loom in il list --finished) */
|
|
1516
|
+
archive?: boolean;
|
|
1289
1517
|
}
|
|
1290
1518
|
interface ListOptions {
|
|
1291
1519
|
json?: boolean;
|
|
@@ -1308,14 +1536,15 @@ interface StartResult {
|
|
|
1308
1536
|
path: string;
|
|
1309
1537
|
branch: string;
|
|
1310
1538
|
port?: number;
|
|
1311
|
-
type: 'issue' | 'pr' | 'branch';
|
|
1539
|
+
type: 'issue' | 'pr' | 'branch' | 'epic';
|
|
1312
1540
|
identifier: string | number;
|
|
1313
1541
|
title?: string;
|
|
1314
1542
|
capabilities?: string[];
|
|
1543
|
+
childIssueNumbers?: string[];
|
|
1315
1544
|
}
|
|
1316
1545
|
interface FinishResult {
|
|
1317
1546
|
success: boolean;
|
|
1318
|
-
type: 'issue' | 'pr' | 'branch';
|
|
1547
|
+
type: 'issue' | 'pr' | 'branch' | 'epic';
|
|
1319
1548
|
identifier: string | number;
|
|
1320
1549
|
/** Whether this was a dry-run operation */
|
|
1321
1550
|
dryRun?: boolean;
|
|
@@ -1333,7 +1562,7 @@ interface SummaryResult {
|
|
|
1333
1562
|
sessionId: string;
|
|
1334
1563
|
issueNumber?: string | number;
|
|
1335
1564
|
branchName: string;
|
|
1336
|
-
loomType: 'issue' | 'pr' | 'branch';
|
|
1565
|
+
loomType: 'issue' | 'pr' | 'branch' | 'epic';
|
|
1337
1566
|
}
|
|
1338
1567
|
interface MockOptions {
|
|
1339
1568
|
scenario: 'empty' | 'existing' | 'conflicts' | 'error';
|
|
@@ -1433,10 +1662,18 @@ interface IssueTracker {
|
|
|
1433
1662
|
url: string;
|
|
1434
1663
|
}>;
|
|
1435
1664
|
getIssueUrl(identifier: string | number, repo?: string): Promise<string>;
|
|
1665
|
+
getChildIssues(parentIdentifier: string, repo?: string): Promise<Array<{
|
|
1666
|
+
id: string;
|
|
1667
|
+
title: string;
|
|
1668
|
+
url: string;
|
|
1669
|
+
state: string;
|
|
1670
|
+
}>>;
|
|
1436
1671
|
fetchPR?(identifier: string | number, repo?: string): Promise<PullRequest>;
|
|
1437
1672
|
isValidPR?(identifier: string | number, repo?: string): Promise<PullRequest | false>;
|
|
1438
1673
|
validatePRState?(pr: PullRequest): Promise<void>;
|
|
1439
1674
|
moveIssueToInProgress?(identifier: string | number): Promise<void>;
|
|
1675
|
+
moveIssueToReadyForReview?(identifier: string | number): Promise<void>;
|
|
1676
|
+
normalizeIdentifier(identifier: string | number): string;
|
|
1440
1677
|
extractContext(entity: Issue | PullRequest): string;
|
|
1441
1678
|
}
|
|
1442
1679
|
|
|
@@ -1466,15 +1703,23 @@ declare class GitHubService implements IssueTracker {
|
|
|
1466
1703
|
url: string;
|
|
1467
1704
|
}>;
|
|
1468
1705
|
getIssueUrl(issueNumber: number, repo?: string): Promise<string>;
|
|
1706
|
+
getChildIssues(parentIdentifier: string, repo?: string): Promise<Array<{
|
|
1707
|
+
id: string;
|
|
1708
|
+
title: string;
|
|
1709
|
+
url: string;
|
|
1710
|
+
state: string;
|
|
1711
|
+
}>>;
|
|
1469
1712
|
moveIssueToInProgress(issueNumber: number): Promise<void>;
|
|
1713
|
+
moveIssueToReadyForReview(issueNumber: number): Promise<void>;
|
|
1470
1714
|
private updateIssueStatusInProject;
|
|
1715
|
+
normalizeIdentifier(identifier: string | number): string;
|
|
1471
1716
|
extractContext(entity: Issue | PullRequest): string;
|
|
1472
1717
|
private mapGitHubIssueToIssue;
|
|
1473
1718
|
private mapGitHubPRToPullRequest;
|
|
1474
1719
|
private promptUserConfirmation;
|
|
1475
1720
|
}
|
|
1476
1721
|
|
|
1477
|
-
type IssueTrackerProviderType = 'github' | 'linear';
|
|
1722
|
+
type IssueTrackerProviderType = 'github' | 'linear' | 'jira';
|
|
1478
1723
|
/**
|
|
1479
1724
|
* Factory for creating IssueTracker instances based on settings
|
|
1480
1725
|
* Provides a single point of provider instantiation
|
|
@@ -1649,6 +1894,7 @@ interface TemplateVariables {
|
|
|
1649
1894
|
AUTO_COMMIT_PUSH?: boolean;
|
|
1650
1895
|
STANDARD_ISSUE_MODE?: boolean;
|
|
1651
1896
|
STANDARD_BRANCH_MODE?: boolean;
|
|
1897
|
+
DIRECT_PROMPT_MODE?: boolean;
|
|
1652
1898
|
IS_VSCODE_MODE?: boolean;
|
|
1653
1899
|
HAS_PACKAGE_JSON?: boolean;
|
|
1654
1900
|
NO_PACKAGE_JSON?: boolean;
|
|
@@ -1689,6 +1935,15 @@ interface TemplateVariables {
|
|
|
1689
1935
|
USE_CODEX_REVIEWER?: boolean;
|
|
1690
1936
|
HAS_REVIEWER?: boolean;
|
|
1691
1937
|
GIT_REMOTE?: string;
|
|
1938
|
+
EPIC_ISSUE_NUMBER?: string | number;
|
|
1939
|
+
EPIC_WORKTREE_PATH?: string;
|
|
1940
|
+
EPIC_METADATA_PATH?: string;
|
|
1941
|
+
CHILD_ISSUES?: string;
|
|
1942
|
+
DEPENDENCY_MAP?: string;
|
|
1943
|
+
SWARM_MODE?: boolean;
|
|
1944
|
+
SWARM_AGENT_METADATA?: string;
|
|
1945
|
+
NO_CLEANUP?: boolean;
|
|
1946
|
+
ISSUE_PREFIX?: string;
|
|
1692
1947
|
}
|
|
1693
1948
|
declare class PromptTemplateManager {
|
|
1694
1949
|
private templateDir;
|
|
@@ -1696,7 +1951,7 @@ declare class PromptTemplateManager {
|
|
|
1696
1951
|
/**
|
|
1697
1952
|
* Load a template file by name
|
|
1698
1953
|
*/
|
|
1699
|
-
loadTemplate(templateName: 'issue' | 'pr' | 'regular' | 'init' | 'session-summary' | 'plan'): Promise<string>;
|
|
1954
|
+
loadTemplate(templateName: 'issue' | 'pr' | 'regular' | 'init' | 'session-summary' | 'plan' | 'swarm-orchestrator'): Promise<string>;
|
|
1700
1955
|
/**
|
|
1701
1956
|
* Substitute variables in a template string using Handlebars
|
|
1702
1957
|
*/
|
|
@@ -1704,7 +1959,7 @@ declare class PromptTemplateManager {
|
|
|
1704
1959
|
/**
|
|
1705
1960
|
* Get a fully processed prompt for a workflow type
|
|
1706
1961
|
*/
|
|
1707
|
-
getPrompt(type: 'issue' | 'pr' | 'regular' | 'init' | 'session-summary' | 'plan', variables: TemplateVariables): Promise<string>;
|
|
1962
|
+
getPrompt(type: 'issue' | 'pr' | 'regular' | 'init' | 'session-summary' | 'plan' | 'swarm-orchestrator', variables: TemplateVariables): Promise<string>;
|
|
1708
1963
|
}
|
|
1709
1964
|
|
|
1710
1965
|
interface ClaudeWorkflowOptions {
|
|
@@ -1764,6 +2019,48 @@ declare class ClaudeContextManager {
|
|
|
1764
2019
|
launchWithContext(context: ClaudeContext, headless?: boolean): Promise<string | void>;
|
|
1765
2020
|
}
|
|
1766
2021
|
|
|
2022
|
+
type SwarmState = 'pending' | 'in_progress' | 'code_review' | 'done' | 'failed';
|
|
2023
|
+
/**
|
|
2024
|
+
* Schema for metadata JSON file
|
|
2025
|
+
* Stored in ~/.config/iloom-ai/looms/
|
|
2026
|
+
*/
|
|
2027
|
+
interface MetadataFile {
|
|
2028
|
+
description: string;
|
|
2029
|
+
created_at?: string;
|
|
2030
|
+
version: number;
|
|
2031
|
+
branchName?: string;
|
|
2032
|
+
worktreePath?: string;
|
|
2033
|
+
issueType?: 'branch' | 'issue' | 'pr' | 'epic';
|
|
2034
|
+
issueKey?: string;
|
|
2035
|
+
issue_numbers?: string[];
|
|
2036
|
+
pr_numbers?: string[];
|
|
2037
|
+
issueTracker?: string;
|
|
2038
|
+
colorHex?: string;
|
|
2039
|
+
sessionId?: string;
|
|
2040
|
+
projectPath?: string;
|
|
2041
|
+
issueUrls?: Record<string, string>;
|
|
2042
|
+
prUrls?: Record<string, string>;
|
|
2043
|
+
draftPrNumber?: number;
|
|
2044
|
+
oneShot?: OneShotMode;
|
|
2045
|
+
capabilities?: ProjectCapability[];
|
|
2046
|
+
state?: SwarmState;
|
|
2047
|
+
childIssueNumbers?: string[];
|
|
2048
|
+
parentLoom?: {
|
|
2049
|
+
type: 'issue' | 'pr' | 'branch' | 'epic';
|
|
2050
|
+
identifier: string | number;
|
|
2051
|
+
branchName: string;
|
|
2052
|
+
worktreePath: string;
|
|
2053
|
+
databaseBranch?: string;
|
|
2054
|
+
};
|
|
2055
|
+
childIssues?: Array<{
|
|
2056
|
+
number: string;
|
|
2057
|
+
title: string;
|
|
2058
|
+
body: string;
|
|
2059
|
+
url: string;
|
|
2060
|
+
}>;
|
|
2061
|
+
dependencyMap?: Record<string, string[]>;
|
|
2062
|
+
mcpConfigPath?: string;
|
|
2063
|
+
}
|
|
1767
2064
|
/**
|
|
1768
2065
|
* Input for writing metadata (all fields except version and created_at)
|
|
1769
2066
|
* Note: issueTracker is required because every loom should have an associated
|
|
@@ -1773,7 +2070,8 @@ interface WriteMetadataInput {
|
|
|
1773
2070
|
description: string;
|
|
1774
2071
|
branchName: string;
|
|
1775
2072
|
worktreePath: string;
|
|
1776
|
-
issueType: 'branch' | 'issue' | 'pr';
|
|
2073
|
+
issueType: 'branch' | 'issue' | 'pr' | 'epic';
|
|
2074
|
+
issueKey?: string;
|
|
1777
2075
|
issue_numbers: string[];
|
|
1778
2076
|
pr_numbers: string[];
|
|
1779
2077
|
issueTracker: string;
|
|
@@ -1785,13 +2083,23 @@ interface WriteMetadataInput {
|
|
|
1785
2083
|
draftPrNumber?: number;
|
|
1786
2084
|
oneShot?: OneShotMode;
|
|
1787
2085
|
capabilities: ProjectCapability[];
|
|
2086
|
+
state?: SwarmState;
|
|
2087
|
+
childIssueNumbers?: string[];
|
|
1788
2088
|
parentLoom?: {
|
|
1789
|
-
type: 'issue' | 'pr' | 'branch';
|
|
2089
|
+
type: 'issue' | 'pr' | 'branch' | 'epic';
|
|
1790
2090
|
identifier: string | number;
|
|
1791
2091
|
branchName: string;
|
|
1792
2092
|
worktreePath: string;
|
|
1793
2093
|
databaseBranch?: string;
|
|
1794
2094
|
};
|
|
2095
|
+
childIssues?: Array<{
|
|
2096
|
+
number: string;
|
|
2097
|
+
title: string;
|
|
2098
|
+
body: string;
|
|
2099
|
+
url: string;
|
|
2100
|
+
}>;
|
|
2101
|
+
dependencyMap?: Record<string, string[]>;
|
|
2102
|
+
mcpConfigPath?: string;
|
|
1795
2103
|
}
|
|
1796
2104
|
/**
|
|
1797
2105
|
* Result of reading metadata for a worktree
|
|
@@ -1803,7 +2111,8 @@ interface LoomMetadata {
|
|
|
1803
2111
|
created_at: string | null;
|
|
1804
2112
|
branchName: string | null;
|
|
1805
2113
|
worktreePath: string | null;
|
|
1806
|
-
issueType: 'branch' | 'issue' | 'pr' | null;
|
|
2114
|
+
issueType: 'branch' | 'issue' | 'pr' | 'epic' | null;
|
|
2115
|
+
issueKey: string | null;
|
|
1807
2116
|
issue_numbers: string[];
|
|
1808
2117
|
pr_numbers: string[];
|
|
1809
2118
|
issueTracker: string | null;
|
|
@@ -1815,13 +2124,23 @@ interface LoomMetadata {
|
|
|
1815
2124
|
draftPrNumber: number | null;
|
|
1816
2125
|
oneShot: OneShotMode | null;
|
|
1817
2126
|
capabilities: ProjectCapability[];
|
|
2127
|
+
state: SwarmState | null;
|
|
2128
|
+
childIssueNumbers: string[];
|
|
1818
2129
|
parentLoom: {
|
|
1819
|
-
type: 'issue' | 'pr' | 'branch';
|
|
2130
|
+
type: 'issue' | 'pr' | 'branch' | 'epic';
|
|
1820
2131
|
identifier: string | number;
|
|
1821
2132
|
branchName: string;
|
|
1822
2133
|
worktreePath: string;
|
|
1823
2134
|
databaseBranch?: string;
|
|
1824
2135
|
} | null;
|
|
2136
|
+
childIssues: Array<{
|
|
2137
|
+
number: string;
|
|
2138
|
+
title: string;
|
|
2139
|
+
body: string;
|
|
2140
|
+
url: string;
|
|
2141
|
+
}>;
|
|
2142
|
+
dependencyMap: Record<string, string[]>;
|
|
2143
|
+
mcpConfigPath: string | null;
|
|
1825
2144
|
}
|
|
1826
2145
|
/**
|
|
1827
2146
|
* MetadataManager: Manage loom metadata persistence
|
|
@@ -1889,6 +2208,16 @@ declare class MetadataManager {
|
|
|
1889
2208
|
* @returns Array of LoomMetadata objects from all stored files
|
|
1890
2209
|
*/
|
|
1891
2210
|
listAllMetadata(): Promise<LoomMetadata[]>;
|
|
2211
|
+
/**
|
|
2212
|
+
* Update existing metadata for a worktree by merging new fields
|
|
2213
|
+
*
|
|
2214
|
+
* Reads the existing metadata file, merges the provided updates,
|
|
2215
|
+
* and writes back. Only provided fields are overwritten.
|
|
2216
|
+
*
|
|
2217
|
+
* @param worktreePath - Absolute path to the worktree
|
|
2218
|
+
* @param updates - Partial metadata fields to merge
|
|
2219
|
+
*/
|
|
2220
|
+
updateMetadata(worktreePath: string, updates: Partial<MetadataFile>): Promise<void>;
|
|
1892
2221
|
/**
|
|
1893
2222
|
* Delete metadata for a worktree (spec section 3.3)
|
|
1894
2223
|
*
|
|
@@ -2403,4 +2732,4 @@ declare class TableFormatter {
|
|
|
2403
2732
|
static previewFormatting(headers: string[], options?: TableFormatterOptions): string;
|
|
2404
2733
|
}
|
|
2405
2734
|
|
|
2406
|
-
export { type AddIssueOptions, type AddIssueResult, type BatchCleanupResult, type BranchCleanupTarget, type BranchDeleteOptions, type BranchGenerationOptions, type BranchNameStrategy, type Capability, type ClaudeContext, ClaudeContextManager, type CleanupOptions, type CleanupResult, type ColorData, type CommitOptions, type Config, type CreateLoomInput, type DatabaseDeletionResult, DatabaseManager, type DatabaseProvider, type EnhanceOptions, type EnhanceResult, type EnvFileOptions, type EnvOperationResult, type EnvVariable, EnvironmentManager, type FeedbackOptions, type FinishOptions, type FinishResult, GitCommandError, GitHubService, type GitStatus, type GitWorktree, GitWorktreeManager, type InstallationMethod, type Issue, type IssueTracker, IssueTrackerFactory, type IssueTrackerInputDetection, type IssueTrackerProviderType, type LaunchMode, LinearMarkupConverter, type ListOptions, type Logger, type LoggerOptions, type Loom, type LoomSummary, type MergeOptions, type MergeResult, type MockOptions, type OneShotMode, type OperationResult, PLACEHOLDER_COMMIT_PREFIX, type PRWorktreePattern, type Platform, type PortAssignmentOptions, type ProcessInfo, type ProjectCapability, type PullRequest, type RemoteBranchStatus, type ResourceCleanupOptions, type RgbColor, type SafetyCheck, type StartOptions, type StartResult, type SummaryResult, TableFormatter, type TableFormatterOptions, type TableGenerationOptions, type UpdateCheckCache, type UpdateCheckResult, UserAbortedCommitError, type ValidationOptions, type ValidationResult, type ValidationStepResult, type Workspace, type WorkspaceInput, WorkspaceManager, type WorkspaceSummary, type Worktree, type WorktreeCleanupOptions, type WorktreeCreateOptions, type WorktreeListOptions, type WorktreeOperationResult, type WorktreeStatus, type WorktreeValidation, branchExists, checkRemoteBranchStatus, createLogger, createStderrLogger, ensureRepositoryHasCommits, executeGitCommand, extractIssueNumber, extractPRNumber, fetchOrigin, findAllBranchesForIssue, findMainWorktreePath, findMainWorktreePathWithSettings, findPlaceholderCommitSha, findWorktreeForBranch, generateWorktreePath, getCurrentBranch, getDefaultBranch, getMergeTargetBranch, getRepoRoot, getThemeMode, getWorktreeRoot, hasUncommittedChanges, isBranchMergedIntoMain, isEmptyRepository, isFileGitignored, isFileTrackedByGit, isPRBranch, isPlaceholderCommit, isRemoteBranchUpToDate, isValidGitRepo, isWorktreePath, logger, parseWorktreeList, pushBranchToRemote, removePlaceholderCommitFromHead, removePlaceholderCommitFromHistory, setThemeMode };
|
|
2735
|
+
export { type AddIssueOptions, type AddIssueResult, type BatchCleanupResult, type BranchCleanupTarget, type BranchDeleteOptions, type BranchGenerationOptions, type BranchNameStrategy, type Capability, type ClaudeContext, ClaudeContextManager, type CleanupOptions, type CleanupResult, type CliInstalledProperties, type CliUpgradedProperties, type ColorData, type CommitOptions, type Config, type ContributeStartedProperties, type CreateLoomInput, type DatabaseDeletionResult, DatabaseManager, type DatabaseProvider, type DemoCompletedProperties, type DemoStartedProperties, type EnhanceOptions, type EnhanceResult, type EnvFileOptions, type EnvOperationResult, type EnvVariable, EnvironmentManager, type EpicPlannedProperties, type ErrorOccurredProperties, type FeedbackOptions, type FinishOptions, type FinishResult, GitCommandError, GitHubService, type GitStatus, type GitWorktree, GitWorktreeManager, type InitCompletedProperties, type InitStartedProperties, type InstallationMethod, type Issue, type IssueTracker, IssueTrackerFactory, type IssueTrackerInputDetection, type IssueTrackerProviderType, type LaunchMode, LinearMarkupConverter, type ListOptions, type Logger, type LoggerOptions, type Loom, type LoomAbandonedProperties, type LoomCreatedProperties, type LoomFinishedProperties, type LoomSummary, type MergeOptions, type MergeResult, type MockOptions, type OneShotMode, type OperationResult, PLACEHOLDER_COMMIT_PREFIX, type PRWorktreePattern, type Platform, type PortAssignmentOptions, type ProcessInfo, type ProjectCapability, type PullRequest, type RemoteBranchStatus, type ResourceCleanupOptions, type RgbColor, type SafetyCheck, type SessionStartedProperties, type StartOptions, type StartResult, type SummaryResult, type SwarmChildCompletedProperties, type SwarmCompletedProperties, type SwarmStartedProperties, TableFormatter, type TableFormatterOptions, type TableGenerationOptions, type TelemetryConfig, type TelemetryEventMap, type TelemetryEventName, type UpdateCheckCache, type UpdateCheckResult, UserAbortedCommitError, type ValidationOptions, type ValidationResult, type ValidationStepResult, type Workspace, type WorkspaceInput, WorkspaceManager, type WorkspaceSummary, type Worktree, type WorktreeCleanupOptions, type WorktreeCreateOptions, type WorktreeListOptions, type WorktreeOperationResult, type WorktreeStatus, type WorktreeValidation, branchExists, checkRemoteBranchStatus, createLogger, createStderrLogger, ensureRepositoryHasCommits, executeGitCommand, extractIssueNumber, extractPRNumber, fetchOrigin, findAllBranchesForIssue, findMainWorktreePath, findMainWorktreePathWithSettings, findPlaceholderCommitSha, findWorktreeForBranch, generateWorktreePath, getCurrentBranch, getDefaultBranch, getMergeTargetBranch, getRepoRoot, getThemeMode, getWorktreeRoot, hasUncommittedChanges, isBranchMergedIntoMain, isEmptyRepository, isFileGitignored, isFileTrackedByGit, isPRBranch, isPlaceholderCommit, isRemoteBranchUpToDate, isValidGitRepo, isWorktreePath, logger, parseWorktreeList, pushBranchToRemote, removePlaceholderCommitFromHead, removePlaceholderCommitFromHistory, setThemeMode };
|