@iloom/cli 0.7.0 → 0.7.2
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/dist/{ProjectCapabilityDetector-UZYW32SY.js → ProjectCapabilityDetector-IA56AUE6.js} +3 -3
- package/dist/agents/iloom-framework-detector.md +78 -9
- package/dist/{build-O2EJHDEW.js → build-HQ5HGA3T.js} +4 -4
- package/dist/{chunk-3CDWFEGL.js → chunk-7GLZVDPQ.js} +2 -2
- package/dist/{chunk-GV5X6XUE.js → chunk-AFRICMSW.js} +3 -3
- package/dist/{chunk-LQBLDI47.js → chunk-DAOS6EC3.js} +4 -4
- package/dist/{chunk-Z6BO53V7.js → chunk-ELJKYFSH.js} +3 -3
- package/dist/{chunk-5F6IWWRS.js → chunk-EWJFUFPT.js} +2 -2
- package/dist/chunk-EWJFUFPT.js.map +1 -0
- package/dist/{chunk-B2UO6EYE.js → chunk-NGJZ4TOU.js} +21 -3
- package/dist/{chunk-B2UO6EYE.js.map → chunk-NGJZ4TOU.js.map} +1 -1
- package/dist/{chunk-S7YMZQUD.js → chunk-QQFBMCAH.js} +26 -3
- package/dist/chunk-QQFBMCAH.js.map +1 -0
- package/dist/{chunk-LLWX3PCW.js → chunk-RD7I2Q2F.js} +2 -2
- package/dist/{chunk-ITN64ENQ.js → chunk-XPKN3QWY.js} +24 -6
- package/dist/chunk-XPKN3QWY.js.map +1 -0
- package/dist/{chunk-NTIZLX42.js → chunk-YQNSZKKT.js} +3 -3
- package/dist/{cleanup-ZPOMRSNN.js → cleanup-77U5ATYI.js} +5 -5
- package/dist/cli.js +43 -22
- package/dist/cli.js.map +1 -1
- package/dist/{commit-6S2RIA2K.js → commit-ONRXU67O.js} +4 -4
- package/dist/{compile-LRMAADUT.js → compile-CT7IR7O2.js} +4 -4
- package/dist/{dev-server-GREJUEKW.js → dev-server-UKAPBGUR.js} +5 -5
- package/dist/{feedback-G7G5QCY4.js → feedback-K3A4QUSG.js} +3 -3
- package/dist/{installation-detector-VXZOCL6P.js → installation-detector-MMFWLJYN.js} +2 -2
- package/dist/{lint-OFVN7FT6.js → lint-HAVU4U34.js} +4 -4
- package/dist/{open-MCWQAPSZ.js → open-QI63XQ4F.js} +5 -5
- package/dist/{projects-PQOTWUII.js → projects-TWY4RT2Z.js} +3 -3
- package/dist/prompts/init-prompt.txt +57 -0
- package/dist/{rebase-RKQED567.js → rebase-QYCRF7JG.js} +5 -5
- package/dist/{run-CCG24PBC.js → run-YDVYORT2.js} +5 -5
- package/dist/{test-QZDOEUIO.js → test-75WAA6DU.js} +4 -4
- package/dist/{update-5NOHT4SG.js → update-HJKDYA3F.js} +3 -3
- package/dist/{update-notifier-ARA5SPUW.js → update-notifier-LBAUOOLM.js} +2 -2
- package/package.json +1 -1
- package/dist/chunk-5F6IWWRS.js.map +0 -1
- package/dist/chunk-ITN64ENQ.js.map +0 -1
- package/dist/chunk-S7YMZQUD.js.map +0 -1
- /package/dist/{ProjectCapabilityDetector-UZYW32SY.js.map → ProjectCapabilityDetector-IA56AUE6.js.map} +0 -0
- /package/dist/{build-O2EJHDEW.js.map → build-HQ5HGA3T.js.map} +0 -0
- /package/dist/{chunk-3CDWFEGL.js.map → chunk-7GLZVDPQ.js.map} +0 -0
- /package/dist/{chunk-GV5X6XUE.js.map → chunk-AFRICMSW.js.map} +0 -0
- /package/dist/{chunk-LQBLDI47.js.map → chunk-DAOS6EC3.js.map} +0 -0
- /package/dist/{chunk-Z6BO53V7.js.map → chunk-ELJKYFSH.js.map} +0 -0
- /package/dist/{chunk-LLWX3PCW.js.map → chunk-RD7I2Q2F.js.map} +0 -0
- /package/dist/{chunk-NTIZLX42.js.map → chunk-YQNSZKKT.js.map} +0 -0
- /package/dist/{cleanup-ZPOMRSNN.js.map → cleanup-77U5ATYI.js.map} +0 -0
- /package/dist/{commit-6S2RIA2K.js.map → commit-ONRXU67O.js.map} +0 -0
- /package/dist/{compile-LRMAADUT.js.map → compile-CT7IR7O2.js.map} +0 -0
- /package/dist/{dev-server-GREJUEKW.js.map → dev-server-UKAPBGUR.js.map} +0 -0
- /package/dist/{feedback-G7G5QCY4.js.map → feedback-K3A4QUSG.js.map} +0 -0
- /package/dist/{installation-detector-VXZOCL6P.js.map → installation-detector-MMFWLJYN.js.map} +0 -0
- /package/dist/{lint-OFVN7FT6.js.map → lint-HAVU4U34.js.map} +0 -0
- /package/dist/{open-MCWQAPSZ.js.map → open-QI63XQ4F.js.map} +0 -0
- /package/dist/{projects-PQOTWUII.js.map → projects-TWY4RT2Z.js.map} +0 -0
- /package/dist/{rebase-RKQED567.js.map → rebase-QYCRF7JG.js.map} +0 -0
- /package/dist/{run-CCG24PBC.js.map → run-YDVYORT2.js.map} +0 -0
- /package/dist/{test-QZDOEUIO.js.map → test-75WAA6DU.js.map} +0 -0
- /package/dist/{update-5NOHT4SG.js.map → update-HJKDYA3F.js.map} +0 -0
- /package/dist/{update-notifier-ARA5SPUW.js.map → update-notifier-LBAUOOLM.js.map} +0 -0
package/dist/cli.js
CHANGED
|
@@ -9,11 +9,11 @@ import {
|
|
|
9
9
|
EnvironmentManager,
|
|
10
10
|
LoomManager,
|
|
11
11
|
ResourceCleanup
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-QQFBMCAH.js";
|
|
13
13
|
import {
|
|
14
14
|
BuildRunner,
|
|
15
15
|
MergeManager
|
|
16
|
-
} from "./chunk-
|
|
16
|
+
} from "./chunk-DAOS6EC3.js";
|
|
17
17
|
import {
|
|
18
18
|
IssueTrackerFactory,
|
|
19
19
|
generateIssueManagementMcpConfig
|
|
@@ -41,7 +41,7 @@ import {
|
|
|
41
41
|
} from "./chunk-HVQNVRAF.js";
|
|
42
42
|
import {
|
|
43
43
|
ProjectCapabilityDetector
|
|
44
|
-
} from "./chunk-
|
|
44
|
+
} from "./chunk-7GLZVDPQ.js";
|
|
45
45
|
import {
|
|
46
46
|
AgentManager
|
|
47
47
|
} from "./chunk-N7FVXZNI.js";
|
|
@@ -49,14 +49,14 @@ import {
|
|
|
49
49
|
CommitManager,
|
|
50
50
|
UserAbortedCommitError,
|
|
51
51
|
ValidationRunner
|
|
52
|
-
} from "./chunk-
|
|
52
|
+
} from "./chunk-YQNSZKKT.js";
|
|
53
53
|
import {
|
|
54
54
|
installDependencies
|
|
55
|
-
} from "./chunk-
|
|
55
|
+
} from "./chunk-RD7I2Q2F.js";
|
|
56
56
|
import {
|
|
57
57
|
GitWorktreeManager
|
|
58
58
|
} from "./chunk-UDRZY65Y.js";
|
|
59
|
-
import "./chunk-
|
|
59
|
+
import "./chunk-XPKN3QWY.js";
|
|
60
60
|
import {
|
|
61
61
|
PRManager
|
|
62
62
|
} from "./chunk-EPPPDVHD.js";
|
|
@@ -2073,6 +2073,26 @@ var migrations = [
|
|
|
2073
2073
|
const newContent = content + separator + "\n# Added by iloom CLI\n" + pattern + "\n";
|
|
2074
2074
|
await fs.writeFile(globalIgnorePath, newContent, "utf-8");
|
|
2075
2075
|
}
|
|
2076
|
+
},
|
|
2077
|
+
{
|
|
2078
|
+
version: "0.7.1",
|
|
2079
|
+
description: "Add global gitignore for .iloom/package.iloom.local.json",
|
|
2080
|
+
migrate: async () => {
|
|
2081
|
+
const globalIgnorePath = path4.join(os.homedir(), ".config", "git", "ignore");
|
|
2082
|
+
const pattern = "**/.iloom/package.iloom.local.json";
|
|
2083
|
+
await fs.ensureDir(path4.dirname(globalIgnorePath));
|
|
2084
|
+
let content = "";
|
|
2085
|
+
try {
|
|
2086
|
+
content = await fs.readFile(globalIgnorePath, "utf-8");
|
|
2087
|
+
} catch {
|
|
2088
|
+
}
|
|
2089
|
+
if (content.includes(pattern)) {
|
|
2090
|
+
return;
|
|
2091
|
+
}
|
|
2092
|
+
const separator = content.endsWith("\n") || content === "" ? "" : "\n";
|
|
2093
|
+
const newContent = content + separator + "\n# Added by iloom CLI\n" + pattern + "\n";
|
|
2094
|
+
await fs.writeFile(globalIgnorePath, newContent, "utf-8");
|
|
2095
|
+
}
|
|
2076
2096
|
}
|
|
2077
2097
|
];
|
|
2078
2098
|
|
|
@@ -2220,10 +2240,11 @@ program.name("iloom").description(packageJson.description).version(packageJson.v
|
|
|
2220
2240
|
process.exit(0);
|
|
2221
2241
|
}
|
|
2222
2242
|
try {
|
|
2223
|
-
const { checkAndNotifyUpdate } = await import("./update-notifier-
|
|
2224
|
-
const { detectInstallationMethod } = await import("./installation-detector-
|
|
2243
|
+
const { checkAndNotifyUpdate } = await import("./update-notifier-LBAUOOLM.js");
|
|
2244
|
+
const { detectInstallationMethod } = await import("./installation-detector-MMFWLJYN.js");
|
|
2225
2245
|
const installMethod = detectInstallationMethod(__filename);
|
|
2226
|
-
|
|
2246
|
+
const jsonMode = actionCommand.opts().json === true;
|
|
2247
|
+
await checkAndNotifyUpdate(packageJson.version, packageJson.name, installMethod, { suppressOutput: jsonMode });
|
|
2227
2248
|
} catch {
|
|
2228
2249
|
}
|
|
2229
2250
|
try {
|
|
@@ -2469,7 +2490,7 @@ program.command("add-issue").alias("a").description("Create and enhance GitHub i
|
|
|
2469
2490
|
});
|
|
2470
2491
|
program.command("feedback").alias("f").description("Submit feedback/bug report to iloom-cli repository").argument("<description>", "Feedback title (>30 chars, >2 spaces; or any non-empty text when --body provided)").option("--body <text>", "Body text for feedback (added after diagnostics)").action(async (description, options) => {
|
|
2471
2492
|
try {
|
|
2472
|
-
const { FeedbackCommand } = await import("./feedback-
|
|
2493
|
+
const { FeedbackCommand } = await import("./feedback-K3A4QUSG.js");
|
|
2473
2494
|
const command = new FeedbackCommand();
|
|
2474
2495
|
const feedbackOptions = {};
|
|
2475
2496
|
if (options.body !== void 0) {
|
|
@@ -2553,7 +2574,7 @@ program.command("finish").alias("dn").description("Merge work and cleanup worksp
|
|
|
2553
2574
|
program.command("commit").alias("c").description("Commit all uncommitted files with issue reference").option("-m, --message <text>", "Custom commit message (skip Claude generation)").option("--fixes", 'Use "Fixes #N" trailer instead of "Refs #N" (closes issue)').option("--no-review", "Skip commit message review prompt").option("--json", "Output result as JSON (implies --no-review)").option("--wip-commit", "Quick WIP commit: skip validations and pre-commit hooks").action(async (options) => {
|
|
2554
2575
|
const executeAction = async () => {
|
|
2555
2576
|
try {
|
|
2556
|
-
const { CommitCommand } = await import("./commit-
|
|
2577
|
+
const { CommitCommand } = await import("./commit-ONRXU67O.js");
|
|
2557
2578
|
const command = new CommitCommand();
|
|
2558
2579
|
const noReview = options.review === false || options.json === true;
|
|
2559
2580
|
const result = await command.execute({
|
|
@@ -2588,7 +2609,7 @@ program.command("commit").alias("c").description("Commit all uncommitted files w
|
|
|
2588
2609
|
});
|
|
2589
2610
|
program.command("rebase").description("Rebase current branch on main with Claude-assisted conflict resolution").option("-f, --force", "Skip confirmation prompts").option("-n, --dry-run", "Preview actions without executing").action(async (options) => {
|
|
2590
2611
|
try {
|
|
2591
|
-
const { RebaseCommand } = await import("./rebase-
|
|
2612
|
+
const { RebaseCommand } = await import("./rebase-QYCRF7JG.js");
|
|
2592
2613
|
const command = new RebaseCommand();
|
|
2593
2614
|
await command.execute(options);
|
|
2594
2615
|
} catch (error) {
|
|
@@ -2611,7 +2632,7 @@ program.command("spin").alias("ignite").description("Launch Claude with auto-det
|
|
|
2611
2632
|
program.command("open").description("Open workspace in browser or run CLI tool").argument("[identifier]", "Issue number, PR number, or branch name (auto-detected if omitted)").allowUnknownOption().action(async (identifier, _options, command) => {
|
|
2612
2633
|
try {
|
|
2613
2634
|
const args = (command == null ? void 0 : command.args) ? command.args.slice(identifier ? 1 : 0) : [];
|
|
2614
|
-
const { OpenCommand } = await import("./open-
|
|
2635
|
+
const { OpenCommand } = await import("./open-QI63XQ4F.js");
|
|
2615
2636
|
const cmd = new OpenCommand();
|
|
2616
2637
|
const input = identifier ? { identifier, args } : { args };
|
|
2617
2638
|
await cmd.execute(input);
|
|
@@ -2623,7 +2644,7 @@ program.command("open").description("Open workspace in browser or run CLI tool")
|
|
|
2623
2644
|
program.command("run").description("Run CLI tool or open workspace in browser").argument("[identifier]", "Issue number, PR number, or branch name (auto-detected if omitted)").allowUnknownOption().action(async (identifier, _options, command) => {
|
|
2624
2645
|
try {
|
|
2625
2646
|
const args = (command == null ? void 0 : command.args) ? command.args.slice(identifier ? 1 : 0) : [];
|
|
2626
|
-
const { RunCommand } = await import("./run-
|
|
2647
|
+
const { RunCommand } = await import("./run-YDVYORT2.js");
|
|
2627
2648
|
const cmd = new RunCommand();
|
|
2628
2649
|
const input = identifier ? { identifier, args } : { args };
|
|
2629
2650
|
await cmd.execute(input);
|
|
@@ -2634,7 +2655,7 @@ program.command("run").description("Run CLI tool or open workspace in browser").
|
|
|
2634
2655
|
});
|
|
2635
2656
|
program.command("dev-server").alias("dev").description("Start dev server for workspace (foreground)").argument("[identifier]", "Issue number, PR number, or branch name (auto-detected if omitted)").option("--json", "Output as JSON").action(async (identifier, options) => {
|
|
2636
2657
|
try {
|
|
2637
|
-
const { DevServerCommand } = await import("./dev-server-
|
|
2658
|
+
const { DevServerCommand } = await import("./dev-server-UKAPBGUR.js");
|
|
2638
2659
|
const cmd = new DevServerCommand();
|
|
2639
2660
|
await cmd.execute({ identifier, json: options == null ? void 0 : options.json });
|
|
2640
2661
|
} catch (error) {
|
|
@@ -2654,7 +2675,7 @@ program.command("shell").alias("terminal").description("Open interactive shell w
|
|
|
2654
2675
|
});
|
|
2655
2676
|
program.command("build").description("Run the build script").argument("[identifier]", "Issue number, PR number, or branch name (auto-detected if omitted)").action(async (identifier) => {
|
|
2656
2677
|
try {
|
|
2657
|
-
const { BuildCommand } = await import("./build-
|
|
2678
|
+
const { BuildCommand } = await import("./build-HQ5HGA3T.js");
|
|
2658
2679
|
const cmd = new BuildCommand();
|
|
2659
2680
|
await cmd.execute(identifier ? { identifier } : {});
|
|
2660
2681
|
} catch (error) {
|
|
@@ -2664,7 +2685,7 @@ program.command("build").description("Run the build script").argument("[identifi
|
|
|
2664
2685
|
});
|
|
2665
2686
|
program.command("lint").description("Run the lint script").argument("[identifier]", "Issue number, PR number, or branch name (auto-detected if omitted)").action(async (identifier) => {
|
|
2666
2687
|
try {
|
|
2667
|
-
const { LintCommand } = await import("./lint-
|
|
2688
|
+
const { LintCommand } = await import("./lint-HAVU4U34.js");
|
|
2668
2689
|
const cmd = new LintCommand();
|
|
2669
2690
|
await cmd.execute(identifier ? { identifier } : {});
|
|
2670
2691
|
} catch (error) {
|
|
@@ -2674,7 +2695,7 @@ program.command("lint").description("Run the lint script").argument("[identifier
|
|
|
2674
2695
|
});
|
|
2675
2696
|
program.command("test").description("Run the test script").argument("[identifier]", "Issue number, PR number, or branch name (auto-detected if omitted)").action(async (identifier) => {
|
|
2676
2697
|
try {
|
|
2677
|
-
const { TestCommand } = await import("./test-
|
|
2698
|
+
const { TestCommand } = await import("./test-75WAA6DU.js");
|
|
2678
2699
|
const cmd = new TestCommand();
|
|
2679
2700
|
await cmd.execute(identifier ? { identifier } : {});
|
|
2680
2701
|
} catch (error) {
|
|
@@ -2684,7 +2705,7 @@ program.command("test").description("Run the test script").argument("[identifier
|
|
|
2684
2705
|
});
|
|
2685
2706
|
program.command("compile").alias("typecheck").description("Run the compile or typecheck script (prefers compile if both exist)").argument("[identifier]", "Issue number, PR number, or branch name (auto-detected if omitted)").action(async (identifier) => {
|
|
2686
2707
|
try {
|
|
2687
|
-
const { CompileCommand } = await import("./compile-
|
|
2708
|
+
const { CompileCommand } = await import("./compile-CT7IR7O2.js");
|
|
2688
2709
|
const cmd = new CompileCommand();
|
|
2689
2710
|
await cmd.execute(identifier ? { identifier } : {});
|
|
2690
2711
|
} catch (error) {
|
|
@@ -2695,7 +2716,7 @@ program.command("compile").alias("typecheck").description("Run the compile or ty
|
|
|
2695
2716
|
program.command("cleanup").alias("remove").alias("clean").description("Remove workspaces").argument("[identifier]", "Branch name or issue number to cleanup (auto-detected)").option("-l, --list", "List all worktrees").option("-a, --all", "Remove all worktrees (interactive confirmation)").option("-i, --issue <number>", "Cleanup by issue number", parseInt).option("-f, --force", "Skip confirmations and force removal").option("--dry-run", "Show what would be done without doing it").option("--json", "Output result as JSON").option("--defer <ms>", "Wait specified milliseconds before cleanup", parseInt).action(async (identifier, options) => {
|
|
2696
2717
|
const executeAction = async () => {
|
|
2697
2718
|
try {
|
|
2698
|
-
const { CleanupCommand } = await import("./cleanup-
|
|
2719
|
+
const { CleanupCommand } = await import("./cleanup-77U5ATYI.js");
|
|
2699
2720
|
const command = new CleanupCommand();
|
|
2700
2721
|
const input = {
|
|
2701
2722
|
options: options ?? {}
|
|
@@ -2918,7 +2939,7 @@ program.command("list").description("Show active workspaces").option("--json", "
|
|
|
2918
2939
|
});
|
|
2919
2940
|
program.command("projects").description("List configured iloom projects").option("--json", "Output as JSON (default behavior)").action(async (options) => {
|
|
2920
2941
|
try {
|
|
2921
|
-
const { ProjectsCommand } = await import("./projects-
|
|
2942
|
+
const { ProjectsCommand } = await import("./projects-TWY4RT2Z.js");
|
|
2922
2943
|
const command = new ProjectsCommand();
|
|
2923
2944
|
const result = await command.execute(options);
|
|
2924
2945
|
console.log(JSON.stringify(result, null, 2));
|
|
@@ -2951,7 +2972,7 @@ program.command("contribute").description("Set up local development environment
|
|
|
2951
2972
|
});
|
|
2952
2973
|
program.command("update").description("Update iloom-cli to the latest version").option("--dry-run", "Show what would be done without actually updating").action(async (options) => {
|
|
2953
2974
|
try {
|
|
2954
|
-
const { UpdateCommand } = await import("./update-
|
|
2975
|
+
const { UpdateCommand } = await import("./update-HJKDYA3F.js");
|
|
2955
2976
|
const command = new UpdateCommand();
|
|
2956
2977
|
await command.execute(options);
|
|
2957
2978
|
} catch (error) {
|