codeloop 0.1.26 → 0.1.28

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.
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AAoFA,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CAubnD"}
1
+ {"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"AA2JA,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CA+enD"}
@@ -1,9 +1,10 @@
1
- import { existsSync, readFileSync } from "fs";
1
+ import { existsSync, readFileSync, readdirSync } from "fs";
2
2
  import { execFileSync } from "node:child_process";
3
3
  import { join } from "path";
4
4
  import { homedir, platform } from "os";
5
5
  import chalk from "chalk";
6
6
  import { BACKEND_URL } from "@codelooptech/shared";
7
+ import { detectProject } from "../utils/detect-project.js";
7
8
  import { GLOBAL_CLAUDE_MEMORY_BEGIN, GLOBAL_CLAUDE_MEMORY_END, } from "../templates/global-rules.js";
8
9
  import { scanTierBEvidence, summariseCoverage } from "../lib/tier-b-evidence.js";
9
10
  import { summariseStripeHealth } from "../lib/stripe-doctor.js";
@@ -24,6 +25,72 @@ function commandAvailable(cmd, args = ["--version"]) {
24
25
  return { ok: false, output: err instanceof Error ? err.message : String(err) };
25
26
  }
26
27
  }
28
+ /**
29
+ * On Windows, when winget installs ffmpeg / Playwright / etc., it adds
30
+ * the binaries to a folder under `%LOCALAPPDATA%\Microsoft\WinGet\Links`
31
+ * and updates the user PATH in the registry. The current PowerShell
32
+ * session does NOT see that PATH update — it has env vars cached from
33
+ * when the process started — so `where ffmpeg` keeps returning "not
34
+ * found" until the user opens a fresh shell from outside Cursor.
35
+ *
36
+ * Probe known winget install locations directly so the doctor can report
37
+ * "installed but not on this shell's PATH" instead of a false negative.
38
+ */
39
+ function findOnWindowsKnownPaths(binary) {
40
+ if (process.platform !== "win32")
41
+ return null;
42
+ const exe = binary.toLowerCase().endsWith(".exe") ? binary : `${binary}.exe`;
43
+ const localAppData = process.env.LOCALAPPDATA;
44
+ const programFiles = process.env.PROGRAMFILES;
45
+ const programFiles86 = process.env["PROGRAMFILES(X86)"];
46
+ const directProbes = [];
47
+ if (localAppData) {
48
+ directProbes.push(join(localAppData, "Microsoft", "WinGet", "Links", exe));
49
+ }
50
+ if (programFiles) {
51
+ directProbes.push(join(programFiles, "ffmpeg", "bin", exe));
52
+ }
53
+ if (programFiles86) {
54
+ directProbes.push(join(programFiles86, "ffmpeg", "bin", exe));
55
+ }
56
+ for (const p of directProbes) {
57
+ if (existsSync(p)) {
58
+ return {
59
+ path: p,
60
+ explanation: "installed but not on this shell's PATH yet. Open a NEW PowerShell window from outside Cursor (Win+R → powershell) and re-run the command, or sign out and back in to refresh the user PATH.",
61
+ };
62
+ }
63
+ }
64
+ // Glob-ish probe: %LOCALAPPDATA%\Microsoft\WinGet\Packages\Gyan.FFmpeg.*\ffmpeg-*\bin\ffmpeg.exe
65
+ if (binary.toLowerCase() === "ffmpeg" && localAppData) {
66
+ const packages = join(localAppData, "Microsoft", "WinGet", "Packages");
67
+ try {
68
+ for (const pkgDir of readdirSync(packages)) {
69
+ if (!pkgDir.toLowerCase().startsWith("gyan.ffmpeg"))
70
+ continue;
71
+ const pkgPath = join(packages, pkgDir);
72
+ try {
73
+ for (const sub of readdirSync(pkgPath)) {
74
+ const candidate = join(pkgPath, sub, "bin", exe);
75
+ if (existsSync(candidate)) {
76
+ return {
77
+ path: candidate,
78
+ explanation: "installed at the winget package path but not on this shell's PATH yet. Open a NEW PowerShell window from outside Cursor (Win+R → powershell) and re-run, or sign out and back in.",
79
+ };
80
+ }
81
+ }
82
+ }
83
+ catch {
84
+ /* unreadable subdir */
85
+ }
86
+ }
87
+ }
88
+ catch {
89
+ /* packages dir doesn't exist */
90
+ }
91
+ }
92
+ return null;
93
+ }
27
94
  async function backendReachable(url) {
28
95
  try {
29
96
  const controller = new AbortController();
@@ -99,12 +166,31 @@ export async function doctorCommand() {
99
166
  ? `Found: ${[cursorProjectRules, claudeProjectRules].filter(existsSync).map((p) => p.replace(cwd + "/", "")).join(", ")}`
100
167
  : "No .cursor/rules/core.mdc or CLAUDE.md found", "Run: npx codeloop init"));
101
168
  // ── Runtime Tooling (cross-OS) ──────────────────────────────────
169
+ // Detect project type so we can scope warnings about Playwright /
170
+ // adb / xcrun appropriately. A .NET-only repo doesn't need Playwright;
171
+ // a Flutter mobile app doesn't need Playwright either.
172
+ const project = detectProject(cwd);
102
173
  const ffmpeg = commandAvailable("ffmpeg", ["-version"]);
103
- results.push(check("ffmpeg (video capture)", ffmpeg.ok, ffmpeg.ok ? ffmpeg.output : "Not found on PATH", os === "darwin"
104
- ? "brew install ffmpeg"
105
- : os === "linux"
106
- ? "sudo apt-get install -y ffmpeg # or: sudo dnf install ffmpeg"
107
- : "winget install -e --id Gyan.FFmpeg # or: choco install ffmpeg"));
174
+ if (ffmpeg.ok) {
175
+ results.push(check("ffmpeg (video capture)", true, ffmpeg.output));
176
+ }
177
+ else {
178
+ // On Windows, winget may have already installed ffmpeg but the
179
+ // current shell doesn't see it because env vars are cached
180
+ // per-process. Probe known install locations so the doctor reports
181
+ // the truth instead of a false negative.
182
+ const onDisk = findOnWindowsKnownPaths("ffmpeg");
183
+ if (onDisk) {
184
+ results.push(check("ffmpeg (video capture)", true, `Found at ${onDisk.path} — ${onDisk.explanation}`));
185
+ }
186
+ else {
187
+ results.push(check("ffmpeg (video capture)", false, "Not found on PATH", os === "darwin"
188
+ ? "brew install ffmpeg"
189
+ : os === "linux"
190
+ ? "sudo apt-get install -y ffmpeg # or: sudo dnf install ffmpeg"
191
+ : "winget install -e --id Gyan.FFmpeg # or: choco install ffmpeg"));
192
+ }
193
+ }
108
194
  if (os === "darwin") {
109
195
  const xcrun = commandAvailable("xcrun", ["--version"]);
110
196
  results.push(check("xcrun (iOS Simulator + CLI tools)", xcrun.ok, xcrun.ok ? xcrun.output : "Not found", "xcode-select --install # then accept the Xcode license: sudo xcodebuild -license accept"));
@@ -129,22 +215,38 @@ export async function doctorCommand() {
129
215
  commandAvailable("powershell", ["-NoProfile", "-Command", "$PSVersionTable.PSVersion"]).ok;
130
216
  results.push(check("PowerShell (Windows automation)", powershell, powershell ? "Available" : "Not found", "Install PowerShell 7+ from https://aka.ms/powershell — required for window/keystroke automation."));
131
217
  }
132
- // adb (Android) — optional, only flag if Android tooling is intended
133
- const adb = commandAvailable("adb", ["version"]);
134
- results.push(check("adb (Android emulator support)", adb.ok, adb.ok ? adb.output : "Not found (only required for Android targets)", "Install Android platform-tools: https://developer.android.com/tools/releases/platform-tools", true));
135
- // Playwright runtime (browser auto-install)
136
- let playwrightOk = false;
137
- let playwrightDetail = "Not installed";
138
- try {
139
- const requireFn = (await import("node:module")).createRequire(import.meta.url);
140
- const pkg = requireFn("playwright/package.json");
141
- playwrightOk = true;
142
- playwrightDetail = `playwright@${pkg.version ?? "unknown"}`;
218
+ // adb (Android) — only check when the project actually targets Android.
219
+ // For .NET / web / Flutter-iOS repos, adb is irrelevant noise.
220
+ const isAndroidProject = project.type === "mobile" ||
221
+ project.frameworks.some((f) => f.toLowerCase().includes("android"));
222
+ if (isAndroidProject) {
223
+ const adb = commandAvailable("adb", ["version"]);
224
+ results.push(check("adb (Android emulator support)", adb.ok, adb.ok ? adb.output : "Not found", "Install Android platform-tools: https://developer.android.com/tools/releases/platform-tools"));
143
225
  }
144
- catch {
145
- /* playwright is optional */
226
+ else {
227
+ results.push(check("adb (Android emulator support)", true, `Skipped — project type is "${project.type}" (only required for Android targets)`));
228
+ }
229
+ // Playwright runtime — only check when the project looks like a web
230
+ // project. For a .NET / Flutter / mobile / unknown repo, Playwright is
231
+ // unnecessary and should not block doctor.
232
+ const isWebProject = project.type === "web";
233
+ if (isWebProject) {
234
+ let playwrightOk = false;
235
+ let playwrightDetail = "Not installed";
236
+ try {
237
+ const requireFn = (await import("node:module")).createRequire(import.meta.url);
238
+ const pkg = requireFn("playwright/package.json");
239
+ playwrightOk = true;
240
+ playwrightDetail = `playwright@${pkg.version ?? "unknown"}`;
241
+ }
242
+ catch {
243
+ /* playwright is optional even for web projects (e.g. Cypress users) */
244
+ }
245
+ results.push(check("Playwright (web E2E + browser interactions)", playwrightOk, playwrightDetail, "npm install -D playwright && npx playwright install chromium", true));
246
+ }
247
+ else {
248
+ results.push(check("Playwright (web E2E + browser interactions)", true, `Skipped — project type is "${project.type}" (only needed for web projects)`));
146
249
  }
147
- results.push(check("Playwright (web E2E + browser interactions)", playwrightOk, playwrightDetail, "npm install -D playwright && npx playwright install chromium # for web projects", true));
148
250
  // ── Backend Reachability ────────────────────────────────────────
149
251
  const backend = await backendReachable(BACKEND_URL);
150
252
  results.push(check(`Backend API reachable (${BACKEND_URL})`, backend.ok, backend.detail, "Check your network or set CODELOOP_BACKEND_URL if you self-host. Offline use is supported but billing/usage will sync later.", true));
@@ -1 +1 @@
1
- {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../src/commands/doctor.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  export declare function initCommand(options?: {
2
2
  global?: boolean;
3
3
  skipGlobal?: boolean;
4
+ installRuntime?: boolean;
4
5
  key?: string;
5
6
  yes?: boolean;
6
7
  }): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAsBA,wBAAsB,WAAW,CAAC,OAAO,CAAC,EAAE;IAC1C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,GAAG,OAAO,CAAC,IAAI,CAAC,CAmJhB"}
1
+ {"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAuBA,wBAAsB,WAAW,CAAC,OAAO,CAAC,EAAE;IAC1C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,GAAG,CAAC,EAAE,OAAO,CAAC;CACf,GAAG,OAAO,CAAC,IAAI,CAAC,CAoKhB"}
@@ -19,6 +19,7 @@ import { SPEC_TEMPLATE, ACCEPTANCE_TEMPLATE, UX_CHECKLIST_TEMPLATE } from "../te
19
19
  import { PROMPT_LOOP, PROMPT_VERIFY, PROMPT_REVIEW } from "../templates/claude-prompts.js";
20
20
  import { password as passwordPrompt } from "@inquirer/prompts";
21
21
  import { browserAuth } from "./auth.js";
22
+ import { installRuntimeTools, printRuntimeReport } from "../utils/runtime-installer.js";
22
23
  export async function initCommand(options) {
23
24
  if (options?.global) {
24
25
  return initGlobal(options);
@@ -120,7 +121,23 @@ export async function initCommand(options) {
120
121
  printInfo("Global activation already configured — no changes needed.");
121
122
  }
122
123
  }
123
- // 10. Summary
124
+ // 10. Runtime tools (ffmpeg, Playwright) — best-effort install via the
125
+ // platform-native package manager (winget / choco / brew / apt). All
126
+ // failures are non-fatal; the report is surfaced in the summary so
127
+ // the user can hand-run anything that was skipped.
128
+ const runtimeEnabled = options?.installRuntime !== false &&
129
+ process.env.CODELOOP_SKIP_RUNTIME !== "1";
130
+ let runtimeReports = [];
131
+ if (runtimeEnabled) {
132
+ printInfo("\nChecking runtime tools (ffmpeg, Playwright)…");
133
+ runtimeReports = await installRuntimeTools({
134
+ cwd,
135
+ projectType: project.type,
136
+ enabled: true,
137
+ });
138
+ printRuntimeReport(runtimeReports);
139
+ }
140
+ // 11. Summary
124
141
  console.log("\n" + chalk.bold(" CodeLoop initialized!\n"));
125
142
  if (apiKey) {
126
143
  printSuccess("API key configured");
@@ -138,19 +155,29 @@ export async function initCommand(options) {
138
155
  * Print the prominent post-init banner that walks the user through the ONE
139
156
  * remaining manual step on Cursor: flipping the MCP toggle. Cursor does not
140
157
  * expose a JSON / API way to flip that toggle (it's a security consent
141
- * prompt), so we make it as obvious as possible and provide a deeplink.
158
+ * prompt), and it does NOT have a documented deeplink to the Tools & MCPs
159
+ * sub-page (cursor://settings opens the generic VS Code settings panel),
160
+ * so we give a deterministic keyboard breadcrumb instead.
142
161
  */
143
162
  function printCursorActivationBanner() {
163
+ const isMac = process.platform === "darwin";
164
+ const cmdKey = isMac ? "Cmd" : "Ctrl";
144
165
  console.log("");
145
166
  console.log(chalk.bold.cyan(" ▸ Last step in Cursor (one click):"));
146
- console.log(" Open " +
147
- chalk.cyan("Cursor Settings Tools & MCPs") +
148
- " and toggle " +
167
+ console.log(" 1. Open Cursor (or focus the existing window).");
168
+ console.log(` 2. Press ${chalk.cyan(`${cmdKey}+Shift+J`)} to open ` +
169
+ chalk.cyan("Cursor Settings") +
170
+ " (the Cursor-native one, not VS Code Settings).");
171
+ console.log(` 3. Click ` +
172
+ chalk.cyan("Tools & MCP") +
173
+ " in the left sidebar.");
174
+ console.log(` 4. Toggle the ` +
149
175
  chalk.green("codeloop") +
150
- " ON.");
151
- console.log(" Or open the Settings page directly: " +
152
- chalk.underline("cursor://settings"));
153
- console.log(chalk.dim(" (Cursor requires a manual click to enable any MCP server — security consent.)"));
176
+ ` row to ` +
177
+ chalk.green("ON") +
178
+ ` and approve the consent prompt.`);
179
+ console.log("");
180
+ console.log(chalk.dim(" (Cursor requires a manual click to enable any MCP server — security consent.\n There is no JSON or CLI way to flip this toggle.)"));
154
181
  console.log("");
155
182
  console.log(chalk.dim(" Reload the IDE window if MCP tools don't appear immediately.\n"));
156
183
  }
@@ -1 +1 @@
1
- {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -16,11 +16,18 @@ import { installCursorExtensionCommand } from "./commands/install-cursor-extensi
16
16
  import { dashboardCommand } from "./commands/dashboard.js";
17
17
  import { baselineApproveCommand, baselineStatusCommand } from "./commands/baseline.js";
18
18
  import { verifyCommand, gateCommand } from "./commands/verify.js";
19
+ import { checkForUpdate, printVersionNotice } from "./utils/version-check.js";
19
20
  const program = new Command();
21
+ const CURRENT_VERSION = readPackageVersion();
20
22
  program
21
23
  .name("codeloop")
22
24
  .description("CodeLoop — automated verification for AI coding agents")
23
- .version(readPackageVersion());
25
+ .version(CURRENT_VERSION);
26
+ // Fire-and-forget version probe (cached, capped at 1.5s). Result is
27
+ // printed by printVersionNotice() at process exit so the command's own
28
+ // output isn't disrupted.
29
+ void checkForUpdate(CURRENT_VERSION);
30
+ process.on("beforeExit", () => printVersionNotice());
24
31
  program
25
32
  .command("signup")
26
33
  .description("Create a new CodeLoop account and get an API key")
@@ -41,6 +48,7 @@ program
41
48
  .description("Initialize CodeLoop in the current project (creates config, MCP registration, rules)")
42
49
  .option("-g, --global", "Install CodeLoop MCP server globally for all workspaces (Cursor + Claude Code)")
43
50
  .option("--skip-global", "Initialize the project only — skip the always-on global install")
51
+ .option("--no-install-runtime", "Skip auto-install of runtime tools (ffmpeg, Playwright)")
44
52
  .option("-k, --key <api-key>", "Provide API key directly (skips browser auth)")
45
53
  .option("-y, --yes", "Accept all defaults, no interactive prompts (for AI agents)")
46
54
  .action((options) => initCommand(options));
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  export interface ProjectInfo {
2
- type: "flutter" | "web" | "mobile" | "unknown";
2
+ type: "flutter" | "web" | "mobile" | "dotnet" | "xcode" | "unknown";
3
3
  frameworks: string[];
4
4
  }
5
5
  export declare function detectProject(cwd?: string): ProjectInfo;
@@ -1 +1 @@
1
- {"version":3,"file":"detect-project.d.ts","sourceRoot":"","sources":["../../src/utils/detect-project.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC/C,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,wBAAgB,aAAa,CAAC,GAAG,GAAE,MAAsB,GAAG,WAAW,CAmDtE"}
1
+ {"version":3,"file":"detect-project.d.ts","sourceRoot":"","sources":["../../src/utils/detect-project.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,SAAS,GAAG,KAAK,GAAG,QAAQ,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,CAAC;IACpE,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,wBAAgB,aAAa,CAAC,GAAG,GAAE,MAAsB,GAAG,WAAW,CAmEtE"}
@@ -1,4 +1,4 @@
1
- import { existsSync, readFileSync } from "fs";
1
+ import { existsSync, readFileSync, readdirSync } from "fs";
2
2
  import { join } from "path";
3
3
  export function detectProject(cwd = process.cwd()) {
4
4
  const frameworks = [];
@@ -36,6 +36,20 @@ export function detectProject(cwd = process.cwd()) {
36
36
  // Invalid package.json
37
37
  }
38
38
  }
39
+ // .NET (.sln / .csproj) — needs to be checked before generic mobile so
40
+ // that Windows .NET / WPF / WinUI projects are correctly classified and
41
+ // the doctor doesn't flag dotnet-only repos for Playwright / adb /
42
+ // CocoaPods misses.
43
+ if (hasFileWithExt(cwd, ".sln") || hasFileWithExt(cwd, ".csproj")) {
44
+ frameworks.push(".NET");
45
+ return { type: "dotnet", frameworks };
46
+ }
47
+ // Xcode (.xcodeproj / .xcworkspace) — macOS-only; classify before the
48
+ // generic Podfile/Gradle branch.
49
+ if (hasFileWithExt(cwd, ".xcodeproj") || hasFileWithExt(cwd, ".xcworkspace")) {
50
+ frameworks.push("Xcode");
51
+ return { type: "xcode", frameworks };
52
+ }
39
53
  if (existsSync(join(cwd, "Podfile")) ||
40
54
  existsSync(join(cwd, "build.gradle")) ||
41
55
  existsSync(join(cwd, "build.gradle.kts"))) {
@@ -48,4 +62,12 @@ export function detectProject(cwd = process.cwd()) {
48
62
  }
49
63
  return { type: "unknown", frameworks };
50
64
  }
65
+ function hasFileWithExt(dir, ext) {
66
+ try {
67
+ return readdirSync(dir).some((f) => f.toLowerCase().endsWith(ext.toLowerCase()));
68
+ }
69
+ catch {
70
+ return false;
71
+ }
72
+ }
51
73
  //# sourceMappingURL=detect-project.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"detect-project.js","sourceRoot":"","sources":["../../src/utils/detect-project.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAO5B,MAAM,UAAU,aAAa,CAAC,MAAc,OAAO,CAAC,GAAG,EAAE;IACvD,MAAM,UAAU,GAAa,EAAE,CAAC;IAEhC,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC;QAC1C,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC3B,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;IACzC,CAAC;IAED,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;IAC1C,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC;YACvD,MAAM,OAAO,GAAG;gBACd,GAAG,GAAG,CAAC,YAAY;gBACnB,GAAG,GAAG,CAAC,eAAe;aACvB,CAAC;YAEF,IAAI,OAAO,CAAC,MAAM,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YAChD,IAAI,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YACnE,IAAI,OAAO,CAAC,KAAK,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YAC3C,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,OAAO,CAAC,eAAe,CAAC;gBAC/C,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC5B,IAAI,OAAO,CAAC,eAAe,CAAC;gBAAE,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;YACzD,IAAI,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;gBAC5B,UAAU,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;gBAChC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;YACxC,CAAC;YAED,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1B,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC;YACrC,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,uBAAuB;QACzB,CAAC;IACH,CAAC;IAED,IACE,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAChC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;QACrC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC,EACzC,CAAC;QACD,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;YAAE,UAAU,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACzE,IACE,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YACrC,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,kBAAkB,CAAC,CAAC;YAEzC,UAAU,CAAC,IAAI,CAAC,kBAAkB,CAAC,CAAC;QACtC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC;IACxC,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,UAAU,EAAE,CAAC;AACzC,CAAC"}
1
+ {"version":3,"file":"detect-project.js","sourceRoot":"","sources":["../../src/utils/detect-project.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,30 @@
1
+ export type ToolStatus = "already_installed" | "installed" | "skipped" | "failed";
2
+ export interface InstallReport {
3
+ tool: string;
4
+ status: ToolStatus;
5
+ message: string;
6
+ manualCommand?: string;
7
+ }
8
+ /**
9
+ * Best-effort attempt to install runtime tools the verify loop relies on:
10
+ * - ffmpeg (video capture, screenshot diffing)
11
+ * - Playwright (web E2E + browser interactions, only when the project
12
+ * looks like a web project)
13
+ * - adb is intentionally left to the user — installing the Android
14
+ * platform-tools is a multi-GB SDK and is rarely wanted unconditionally.
15
+ *
16
+ * All failures are NON-FATAL — if winget isn't available, or sudo is
17
+ * required, the function captures the manual command and returns. The
18
+ * caller surfaces a summary so the user knows exactly what (if anything)
19
+ * still needs hand-running.
20
+ */
21
+ export declare function installRuntimeTools(opts: {
22
+ cwd: string;
23
+ projectType: string;
24
+ enabled: boolean;
25
+ }): Promise<InstallReport[]>;
26
+ /**
27
+ * Pretty-print a runtime install report for the post-init banner.
28
+ */
29
+ export declare function printRuntimeReport(reports: InstallReport[]): void;
30
+ //# sourceMappingURL=runtime-installer.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-installer.d.ts","sourceRoot":"","sources":["../../src/utils/runtime-installer.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,UAAU,GAAG,mBAAmB,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;AAElF,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,GAAG,EAAE,MAAM,CAAC;IACZ,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;CAClB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAiB3B;AAuPD;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,IAAI,CAuBjE"}
@@ -0,0 +1,274 @@
1
+ import { spawnSync } from "node:child_process";
2
+ import { existsSync, readFileSync } from "node:fs";
3
+ import { join } from "node:path";
4
+ import chalk from "chalk";
5
+ /**
6
+ * Best-effort attempt to install runtime tools the verify loop relies on:
7
+ * - ffmpeg (video capture, screenshot diffing)
8
+ * - Playwright (web E2E + browser interactions, only when the project
9
+ * looks like a web project)
10
+ * - adb is intentionally left to the user — installing the Android
11
+ * platform-tools is a multi-GB SDK and is rarely wanted unconditionally.
12
+ *
13
+ * All failures are NON-FATAL — if winget isn't available, or sudo is
14
+ * required, the function captures the manual command and returns. The
15
+ * caller surfaces a summary so the user knows exactly what (if anything)
16
+ * still needs hand-running.
17
+ */
18
+ export async function installRuntimeTools(opts) {
19
+ const reports = [];
20
+ if (!opts.enabled) {
21
+ return reports;
22
+ }
23
+ reports.push(await ensureFfmpeg());
24
+ // Playwright is only relevant for web projects. For everything else we
25
+ // skip silently so non-web users don't end up with an unneeded chromium
26
+ // install.
27
+ if (looksLikeWebProject(opts.cwd, opts.projectType)) {
28
+ reports.push(await ensurePlaywright(opts.cwd));
29
+ }
30
+ return reports;
31
+ }
32
+ function looksLikeWebProject(cwd, projectType) {
33
+ if (projectType === "web")
34
+ return true;
35
+ const pkgPath = join(cwd, "package.json");
36
+ if (!existsSync(pkgPath))
37
+ return false;
38
+ try {
39
+ const pkg = JSON.parse(readFileSync(pkgPath, "utf-8"));
40
+ const deps = { ...pkg.dependencies, ...pkg.devDependencies };
41
+ const webFrameworks = [
42
+ "react", "next", "vue", "nuxt", "svelte", "@sveltejs/kit",
43
+ "angular", "@angular/core", "gatsby", "remix", "astro", "vite",
44
+ "@playwright/test", "playwright",
45
+ ];
46
+ return webFrameworks.some((f) => f in deps);
47
+ }
48
+ catch {
49
+ return false;
50
+ }
51
+ }
52
+ // ---------------------------------------------------------------------------
53
+ // ffmpeg
54
+ // ---------------------------------------------------------------------------
55
+ async function ensureFfmpeg() {
56
+ if (toolOnPath("ffmpeg")) {
57
+ return {
58
+ tool: "ffmpeg",
59
+ status: "already_installed",
60
+ message: "ffmpeg already on PATH",
61
+ };
62
+ }
63
+ const platform = process.platform;
64
+ if (platform === "win32") {
65
+ if (toolOnPath("winget")) {
66
+ const r = run("winget", [
67
+ "install",
68
+ "-e",
69
+ "--id",
70
+ "Gyan.FFmpeg",
71
+ "--silent",
72
+ "--accept-package-agreements",
73
+ "--accept-source-agreements",
74
+ ]);
75
+ if (r.exit_code === 0) {
76
+ return {
77
+ tool: "ffmpeg",
78
+ status: "installed",
79
+ message: "ffmpeg installed via winget (Gyan.FFmpeg). The current shell still has the old PATH cached — open a NEW PowerShell window from outside Cursor (Win+R → powershell), or sign out and back in, before running `npx codeloop verify`. `npx codeloop doctor` will detect the install via the winget package path even before the PATH refresh.",
80
+ };
81
+ }
82
+ return {
83
+ tool: "ffmpeg",
84
+ status: "failed",
85
+ message: `winget install failed (exit ${r.exit_code}). Permission prompt declined or admin elevation needed.`,
86
+ manualCommand: "winget install -e --id Gyan.FFmpeg",
87
+ };
88
+ }
89
+ if (toolOnPath("choco")) {
90
+ const r = run("choco", ["install", "ffmpeg", "-y", "--no-progress"]);
91
+ if (r.exit_code === 0) {
92
+ return {
93
+ tool: "ffmpeg",
94
+ status: "installed",
95
+ message: "ffmpeg installed via Chocolatey. Restart your shell so PATH picks it up.",
96
+ };
97
+ }
98
+ return {
99
+ tool: "ffmpeg",
100
+ status: "failed",
101
+ message: "choco install failed. Run an admin PowerShell and retry.",
102
+ manualCommand: "choco install ffmpeg -y",
103
+ };
104
+ }
105
+ return {
106
+ tool: "ffmpeg",
107
+ status: "skipped",
108
+ message: "neither winget nor choco found on PATH. Install one or run the manual command below.",
109
+ manualCommand: "winget install -e --id Gyan.FFmpeg",
110
+ };
111
+ }
112
+ if (platform === "darwin") {
113
+ if (toolOnPath("brew")) {
114
+ const r = run("brew", ["install", "ffmpeg"]);
115
+ if (r.exit_code === 0) {
116
+ return {
117
+ tool: "ffmpeg",
118
+ status: "installed",
119
+ message: "ffmpeg installed via Homebrew.",
120
+ };
121
+ }
122
+ return {
123
+ tool: "ffmpeg",
124
+ status: "failed",
125
+ message: `brew install ffmpeg failed (exit ${r.exit_code}).`,
126
+ manualCommand: "brew install ffmpeg",
127
+ };
128
+ }
129
+ return {
130
+ tool: "ffmpeg",
131
+ status: "skipped",
132
+ message: "Homebrew not installed. Install brew or run the manual command below.",
133
+ manualCommand: "brew install ffmpeg",
134
+ };
135
+ }
136
+ // Linux
137
+ if (toolOnPath("apt-get")) {
138
+ return {
139
+ tool: "ffmpeg",
140
+ status: "skipped",
141
+ message: "apt-get install needs sudo — won't auto-elevate. Run the manual command below.",
142
+ manualCommand: "sudo apt-get update && sudo apt-get install -y ffmpeg",
143
+ };
144
+ }
145
+ if (toolOnPath("dnf")) {
146
+ return {
147
+ tool: "ffmpeg",
148
+ status: "skipped",
149
+ message: "dnf install needs sudo — won't auto-elevate. Run the manual command below.",
150
+ manualCommand: "sudo dnf install -y ffmpeg",
151
+ };
152
+ }
153
+ if (toolOnPath("pacman")) {
154
+ return {
155
+ tool: "ffmpeg",
156
+ status: "skipped",
157
+ message: "pacman -S needs sudo — won't auto-elevate. Run the manual command below.",
158
+ manualCommand: "sudo pacman -S ffmpeg",
159
+ };
160
+ }
161
+ return {
162
+ tool: "ffmpeg",
163
+ status: "skipped",
164
+ message: "No supported package manager detected. Install ffmpeg manually for your distro.",
165
+ manualCommand: "https://ffmpeg.org/download.html",
166
+ };
167
+ }
168
+ // ---------------------------------------------------------------------------
169
+ // Playwright
170
+ // ---------------------------------------------------------------------------
171
+ async function ensurePlaywright(cwd) {
172
+ // If `playwright` (or `@playwright/test`) is already a dependency,
173
+ // assume it's installed under node_modules and skip the install.
174
+ const pkgPath = join(cwd, "package.json");
175
+ if (existsSync(pkgPath)) {
176
+ try {
177
+ const pkg = JSON.parse(readFileSync(pkgPath, "utf-8"));
178
+ const deps = { ...pkg.dependencies, ...pkg.devDependencies };
179
+ if ("playwright" in deps || "@playwright/test" in deps) {
180
+ if (existsSync(join(cwd, "node_modules", "playwright")) ||
181
+ existsSync(join(cwd, "node_modules", "@playwright", "test"))) {
182
+ return {
183
+ tool: "playwright",
184
+ status: "already_installed",
185
+ message: "Playwright already declared and installed.",
186
+ };
187
+ }
188
+ }
189
+ }
190
+ catch {
191
+ /* fall through */
192
+ }
193
+ }
194
+ // We need a package.json to attach a dev-dependency. If we don't have one,
195
+ // Playwright is out of scope.
196
+ if (!existsSync(pkgPath)) {
197
+ return {
198
+ tool: "playwright",
199
+ status: "skipped",
200
+ message: "No package.json found — Playwright is only installed in Node-style projects.",
201
+ };
202
+ }
203
+ const installResult = run("npm", ["install", "-D", "playwright"], { cwd });
204
+ if (installResult.exit_code !== 0) {
205
+ return {
206
+ tool: "playwright",
207
+ status: "failed",
208
+ message: `npm install -D playwright failed (exit ${installResult.exit_code}).`,
209
+ manualCommand: "npm install -D playwright && npx playwright install chromium",
210
+ };
211
+ }
212
+ const browserResult = run("npx", ["playwright", "install", "chromium"], { cwd });
213
+ if (browserResult.exit_code !== 0) {
214
+ return {
215
+ tool: "playwright",
216
+ status: "failed",
217
+ message: `Playwright installed but browser download failed (exit ${browserResult.exit_code}).`,
218
+ manualCommand: "npx playwright install chromium",
219
+ };
220
+ }
221
+ return {
222
+ tool: "playwright",
223
+ status: "installed",
224
+ message: "Playwright + Chromium installed.",
225
+ };
226
+ }
227
+ // ---------------------------------------------------------------------------
228
+ // Helpers
229
+ // ---------------------------------------------------------------------------
230
+ function toolOnPath(tool) {
231
+ const cmd = process.platform === "win32" ? "where" : "which";
232
+ const result = spawnSync(cmd, [tool], { encoding: "utf-8" });
233
+ return result.status === 0;
234
+ }
235
+ function run(command, args, opts) {
236
+ const result = spawnSync(command, args, {
237
+ cwd: opts?.cwd,
238
+ encoding: "utf-8",
239
+ timeout: opts?.timeoutMs ?? 5 * 60 * 1000, // 5 min default
240
+ shell: process.platform === "win32",
241
+ });
242
+ return {
243
+ exit_code: result.status ?? -1,
244
+ stdout: result.stdout ?? "",
245
+ stderr: result.stderr ?? "",
246
+ };
247
+ }
248
+ /**
249
+ * Pretty-print a runtime install report for the post-init banner.
250
+ */
251
+ export function printRuntimeReport(reports) {
252
+ if (reports.length === 0)
253
+ return;
254
+ const symbol = (s) => {
255
+ switch (s) {
256
+ case "already_installed":
257
+ case "installed":
258
+ return chalk.green("✓");
259
+ case "skipped":
260
+ return chalk.yellow("!");
261
+ case "failed":
262
+ return chalk.red("✗");
263
+ }
264
+ };
265
+ console.log("");
266
+ console.log(chalk.bold(" Runtime tools:"));
267
+ for (const r of reports) {
268
+ console.log(` ${symbol(r.status)} ${chalk.bold(r.tool)} — ${r.message}`);
269
+ if (r.manualCommand && (r.status === "failed" || r.status === "skipped")) {
270
+ console.log(chalk.dim(` → ${r.manualCommand}`));
271
+ }
272
+ }
273
+ }
274
+ //# sourceMappingURL=runtime-installer.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-installer.js","sourceRoot":"","sources":["../../src/utils/runtime-installer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,13 @@
1
+ /**
2
+ * Best-effort, non-blocking newer-version probe. Hits npm at most once
3
+ * every 6 hours per machine. If the user is offline or the registry is
4
+ * unreachable the call silently no-ops.
5
+ *
6
+ * Designed to be invoked at the START of every CLI command. The notice
7
+ * is buffered and printed AFTER the command body finishes via
8
+ * `printVersionNotice()` so it doesn't push the command's structured
9
+ * output around.
10
+ */
11
+ export declare function checkForUpdate(currentVersion: string): Promise<void>;
12
+ export declare function printVersionNotice(): void;
13
+ //# sourceMappingURL=version-check.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version-check.d.ts","sourceRoot":"","sources":["../../src/utils/version-check.ts"],"names":[],"mappings":"AA8BA;;;;;;;;;GASG;AACH,wBAAsB,cAAc,CAAC,cAAc,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAqD1E;AAID,wBAAgB,kBAAkB,IAAI,IAAI,CAMzC"}
@@ -0,0 +1,131 @@
1
+ import { readFileSync, writeFileSync, mkdirSync } from "node:fs";
2
+ import { join } from "node:path";
3
+ import { homedir } from "node:os";
4
+ import chalk from "chalk";
5
+ const CACHE_TTL_MS = 6 * 60 * 60 * 1_000; // 6h
6
+ const REGISTRY_URL = "https://registry.npmjs.org/codeloop/latest";
7
+ // Cache paths are resolved lazily so that tests which override $HOME per
8
+ // test get a fresh cache directory each time, and so that this module is
9
+ // safe to import before HOME is set (e.g. inside long-running daemons).
10
+ //
11
+ // NOTE: Node's `os.homedir()` is cached after the first call (libuv
12
+ // stores the result of `uv_os_homedir`), so we prefer the live env var
13
+ // first and fall back to homedir() only when it's unset.
14
+ function userHome() {
15
+ return process.env.HOME ?? process.env.USERPROFILE ?? homedir();
16
+ }
17
+ function cacheDir() {
18
+ return join(userHome(), ".codeloop");
19
+ }
20
+ function cacheFile() {
21
+ return join(cacheDir(), "version-cache.json");
22
+ }
23
+ /**
24
+ * Best-effort, non-blocking newer-version probe. Hits npm at most once
25
+ * every 6 hours per machine. If the user is offline or the registry is
26
+ * unreachable the call silently no-ops.
27
+ *
28
+ * Designed to be invoked at the START of every CLI command. The notice
29
+ * is buffered and printed AFTER the command body finishes via
30
+ * `printVersionNotice()` so it doesn't push the command's structured
31
+ * output around.
32
+ */
33
+ export async function checkForUpdate(currentVersion) {
34
+ if (process.env.CODELOOP_SKIP_UPDATE_CHECK === "1")
35
+ return;
36
+ // Honour npm's own no-update-notifier convention.
37
+ if (process.env.NO_UPDATE_NOTIFIER === "1")
38
+ return;
39
+ // Skip in CI environments where banner spam is unwanted.
40
+ if (process.env.CI === "true")
41
+ return;
42
+ let cached = null;
43
+ try {
44
+ cached = JSON.parse(readFileSync(cacheFile(), "utf-8"));
45
+ }
46
+ catch {
47
+ /* cache miss is fine */
48
+ }
49
+ const fresh = cached && Date.now() - cached.fetched_at < CACHE_TTL_MS;
50
+ if (fresh && cached) {
51
+ pendingNotice = compareVersions(currentVersion, cached.latest);
52
+ return;
53
+ }
54
+ // Fetch from registry with a hard 1.5s ceiling so we never delay the
55
+ // CLI noticeably on a slow network.
56
+ try {
57
+ const controller = new AbortController();
58
+ const timer = setTimeout(() => controller.abort(), 1_500);
59
+ const res = await fetch(REGISTRY_URL, {
60
+ signal: controller.signal,
61
+ headers: { Accept: "application/json" },
62
+ });
63
+ clearTimeout(timer);
64
+ if (!res.ok)
65
+ return;
66
+ const json = (await res.json());
67
+ if (!json.version)
68
+ return;
69
+ try {
70
+ mkdirSync(cacheDir(), { recursive: true });
71
+ writeFileSync(cacheFile(), JSON.stringify({ fetched_at: Date.now(), latest: json.version }), "utf-8");
72
+ }
73
+ catch {
74
+ /* writing cache is best-effort */
75
+ }
76
+ pendingNotice = compareVersions(currentVersion, json.version);
77
+ }
78
+ catch {
79
+ /* offline / DNS / abort — silent */
80
+ }
81
+ }
82
+ let pendingNotice = null;
83
+ export function printVersionNotice() {
84
+ if (!pendingNotice)
85
+ return;
86
+ // Print to stderr so JSON output on stdout (e.g. `codeloop verify --json`)
87
+ // is not contaminated.
88
+ process.stderr.write(pendingNotice);
89
+ pendingNotice = null;
90
+ }
91
+ function compareVersions(current, latest) {
92
+ if (current === latest)
93
+ return null;
94
+ if (!isNewer(current, latest))
95
+ return null;
96
+ const lines = [
97
+ "",
98
+ chalk.cyan(" ┌────────────────────────────────────────────────────────┐"),
99
+ chalk.cyan(" │") +
100
+ chalk.bold.yellow(` Update available: ${current} → ${latest}`) +
101
+ " ".slice(0, Math.max(0, 36 - latest.length - current.length)) +
102
+ chalk.cyan("│"),
103
+ chalk.cyan(" │") +
104
+ chalk.dim(" Run: ") +
105
+ chalk.cyan("npx codeloop@latest <command>") +
106
+ " " +
107
+ chalk.cyan("│"),
108
+ chalk.cyan(" │") +
109
+ chalk.dim(" (one-time; clears the npx cache and pulls the new ver.)") +
110
+ " " +
111
+ chalk.cyan("│"),
112
+ chalk.cyan(" └────────────────────────────────────────────────────────┘"),
113
+ "",
114
+ ];
115
+ return lines.join("\n") + "\n";
116
+ }
117
+ function isNewer(current, latest) {
118
+ const c = current.split(".").map((n) => parseInt(n, 10));
119
+ const l = latest.split(".").map((n) => parseInt(n, 10));
120
+ const len = Math.max(c.length, l.length);
121
+ for (let i = 0; i < len; i += 1) {
122
+ const cv = c[i] ?? 0;
123
+ const lv = l[i] ?? 0;
124
+ if (lv > cv)
125
+ return true;
126
+ if (lv < cv)
127
+ return false;
128
+ }
129
+ return false;
130
+ }
131
+ //# sourceMappingURL=version-check.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version-check.js","sourceRoot":"","sources":["../../src/utils/version-check.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codeloop",
3
- "version": "0.1.26",
3
+ "version": "0.1.28",
4
4
  "description": "CLI tool for CodeLoop — automated verification for AI coding agents",
5
5
  "type": "module",
6
6
  "bin": {
@@ -53,7 +53,7 @@
53
53
  },
54
54
  "license": "MIT",
55
55
  "dependencies": {
56
- "@codelooptech/shared": "^0.1.7",
56
+ "@codelooptech/shared": "^0.1.8",
57
57
  "@inquirer/prompts": "^7.5.0",
58
58
  "chalk": "^5.4.1",
59
59
  "commander": "^13.1.0",