@moda-ai/cli 1.55.69 → 1.55.70

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,8 +1,8 @@
1
1
  import {
2
2
  buildDoctorReport
3
- } from "./cli-45m0bz7q.js";
3
+ } from "./cli-nqysef8j.js";
4
4
  import"./cli-27kkk5z4.js";
5
- import"./cli-67sp41tx.js";
5
+ import"./cli-3ce6c2rh.js";
6
6
  import"./cli-mm48br00.js";
7
7
  import {
8
8
  readHarnessSyncState
@@ -95,7 +95,7 @@ async function buildAgentContext(context) {
95
95
  const graph = readHarnessGraphIfPresent(context.cwd);
96
96
  const reportState = readHarnessReportState(context.cwd);
97
97
  const syncState = readHarnessSyncState(context.cwd);
98
- const harness = graph ? await import("./harness-zbxfgaer.js") : undefined;
98
+ const harness = graph ? await import("./harness-5a1hptjs.js") : undefined;
99
99
  const topFindings = doctor.checks.filter((check) => check.status === "fail" || check.status === "warning").slice(0, 12).map(checkToFinding);
100
100
  const evidenceRefs = [
101
101
  ...doctor.checks.map(checkToEvidenceRef),
@@ -5768,7 +5768,7 @@ async function runPromptSyncExclusive(flags, profileOptions, options) {
5768
5768
  const analyzedDefinitions = new Map;
5769
5769
  if (flags["no-analyze"] !== "true") {
5770
5770
  options.onProgress?.("Analyzing prompt sources before sync.");
5771
- const { analyzeHarnessPrompts } = await import("./harness-zbxfgaer.js");
5771
+ const { analyzeHarnessPrompts } = await import("./harness-5a1hptjs.js");
5772
5772
  const result = await analyzeHarnessPrompts({
5773
5773
  rootDir: process.cwd(),
5774
5774
  existing: established.flatMap((prompt) => prompt.sourceDefinition ? [prompt.sourceDefinition.source] : []),
@@ -5796,7 +5796,7 @@ async function runPromptSyncExclusive(flags, profileOptions, options) {
5796
5796
  const mergedSources = mergePromptSources(manifest.sources, extraSources);
5797
5797
  const manifestUpdate = stableJson(mergedSources) === stableJson(mergePromptSources(manifest.sources, [])) ? undefined : $stringify({ version: 2, prompt_paths: manifest.promptPaths, sources: mergedSources });
5798
5798
  const prompts = await discoverPrompts(extraSources);
5799
- const { checkPromptAttribution } = await import("./prompt-attribution-8qhwgssy.js");
5799
+ const { checkPromptAttribution } = await import("./prompt-attribution-j7g106ff.js");
5800
5800
  const attribution = checkPromptAttribution(process.cwd(), prompts.map((prompt) => prompt.key));
5801
5801
  const brokenAttribution = attribution.references.filter((reference) => reference.status === "missing");
5802
5802
  if (brokenAttribution.length) {
@@ -6102,7 +6102,7 @@ async function migratePromptManifest(options = {}) {
6102
6102
  let addedSources = [];
6103
6103
  let pendingSources = [];
6104
6104
  if (options.discover) {
6105
- const { analyzeHarnessPrompts } = await import("./harness-zbxfgaer.js");
6105
+ const { analyzeHarnessPrompts } = await import("./harness-5a1hptjs.js");
6106
6106
  const result = await analyzeHarnessPrompts({
6107
6107
  rootDir: root,
6108
6108
  existing: manifest.sources,
@@ -18911,7 +18911,7 @@ async function runHarnessCommand(context) {
18911
18911
  throw new CliInputError("Focused remote prompt analysis is not supported yet.", "Use local --analyst=claude|codex|cursor|local-scan, or drop --concern for a full remote report.");
18912
18912
  }
18913
18913
  if (context.flags["github-actions"] === "true") {
18914
- const { runGithubActionsAnalyze } = await import("./harness-github-actions-ed8ncma3.js");
18914
+ const { runGithubActionsAnalyze } = await import("./harness-github-actions-w4kx859d.js");
18915
18915
  const result = await runGithubActionsAnalyze(rootDir, {
18916
18916
  writeReport: (report2) => {
18917
18917
  const normalized = normalizeHarnessReport(report2);
@@ -19084,7 +19084,7 @@ async function runHarnessCommand(context) {
19084
19084
  }
19085
19085
  case "extract": {
19086
19086
  writeHumanProgress(context, "Harness extract: tracing model call sites (no LLM, no network)...");
19087
- const { extractHarness: extractHarness2, serializeExtractResult } = await import("./index-s1agk3km.js");
19087
+ const { extractHarness: extractHarness2, serializeExtractResult } = await import("./index-8s6bbn69.js");
19088
19088
  const result = extractHarness2(rootDir, { fresh: true });
19089
19089
  writeHumanProgress(context, `Harness extract: ${result.callSites.length} call sites, ${result.roles.length} traced roles across ${result.files} files (${result.programs} programs, ${result.durationMs.toLocaleString()} ms).`);
19090
19090
  context.output.writeData(serializeExtractResult(result), {
@@ -19989,6 +19989,15 @@ function mergeDeterministicArtifacts(graph, rootDir, options = {}) {
19989
19989
  }
19990
19990
  const extracted = !allowedTypes || allowedTypes.has("model_config") ? extractedModelItems(rootDir) : { artifacts: [], unknowns: [], rewritten: new Set, enabled: false };
19991
19991
  promoted = withExtractedModels(promoted, extracted, rootDir);
19992
+ if (extracted.enabled && isRecord2(graph.scan)) {
19993
+ try {
19994
+ const { literals, truncated } = collectModelLiterals(rootDir);
19995
+ const scan = graph.scan;
19996
+ scan.modelLiterals = literals;
19997
+ if (truncated)
19998
+ scan.modelLiteralsTruncated = true;
19999
+ } catch {}
20000
+ }
19992
20001
  const extractedIds = new Set(extracted.artifacts.map((artifact) => artifact.id));
19993
20002
  backfillRefutationEvidenceReasons(graph);
19994
20003
  const refuted = analystRefutations(graph);
@@ -26321,6 +26330,174 @@ function modelUnknowns(result) {
26321
26330
  };
26322
26331
  });
26323
26332
  }
26333
+ var MODEL_LITERAL_FILE = /\.(?:[cm]?[jt]sx?|svelte|vue|py|sql|toml|ya?ml|jsonc?)$/i;
26334
+ var MODEL_LITERAL_SHAPE = /^[@A-Za-z0-9][\w.:/@+-]{1,127}$/;
26335
+ var MAX_MODEL_LITERALS = 2000;
26336
+ var MODEL_LITERAL_EXCLUDED = /(?:^(?:pnpm-lock\.ya?ml|package-lock\.json|npm-shrinkwrap\.json)$|\.d\.[cm]?ts$|\.min\.[cm]?js$)/i;
26337
+ var MODEL_LITERAL_DATA_FILE = /\.(?:jsonc?|ya?ml|toml)$/i;
26338
+ var MAX_MODEL_LITERAL_BYTES = 4 * 1024 * 1024;
26339
+ var C_COMMENTS = { line: ["//"], block: [["/*", "*/"]], triple: false };
26340
+ var MARKUP_COMMENTS = { line: ["//"], block: [["/*", "*/"], ["<!--", "-->"]], triple: false };
26341
+ var HASH_COMMENTS = { line: ["#"], block: [], triple: true };
26342
+ var PYTHON_COMMENTS = { ...HASH_COMMENTS, fstrings: true };
26343
+ var SQL_COMMENTS = { line: ["--"], block: [["/*", "*/"]], triple: false };
26344
+ function commentSyntax(name) {
26345
+ const ext = name.slice(name.lastIndexOf(".") + 1).toLowerCase();
26346
+ if (ext === "svelte" || ext === "vue")
26347
+ return MARKUP_COMMENTS;
26348
+ if (ext === "py")
26349
+ return PYTHON_COMMENTS;
26350
+ if (ext === "toml" || ext === "yaml" || ext === "yml")
26351
+ return HASH_COMMENTS;
26352
+ if (ext === "sql")
26353
+ return SQL_COMMENTS;
26354
+ return C_COMMENTS;
26355
+ }
26356
+ function opensFString(text, index) {
26357
+ let start = index;
26358
+ while (start > 0 && index - start < 2 && /[A-Za-z]/.test(text[start - 1]))
26359
+ start -= 1;
26360
+ const prefix = text.slice(start, index).toLowerCase();
26361
+ return (prefix === "f" || prefix === "rf" || prefix === "fr") && (start === 0 || !/\w/.test(text[start - 1]));
26362
+ }
26363
+ function quotedLiterals(text, syntax) {
26364
+ const out = [];
26365
+ const stack = [{ kind: "code", braces: 0, fexpr: false }];
26366
+ let i = 0;
26367
+ while (i < text.length) {
26368
+ const frame = stack[stack.length - 1];
26369
+ const char = text[i];
26370
+ if (frame.kind === "string") {
26371
+ if (char === "\\") {
26372
+ i += 2;
26373
+ continue;
26374
+ }
26375
+ if (char === frame.quote || char === `
26376
+ ` && !frame.template) {
26377
+ stack.pop();
26378
+ if (char === frame.quote && !frame.interpolated)
26379
+ out.push(frame.value);
26380
+ i += 1;
26381
+ continue;
26382
+ }
26383
+ if (frame.template && text.startsWith("${", i)) {
26384
+ frame.interpolated = true;
26385
+ stack.push({ kind: "code", braces: 0, fexpr: false });
26386
+ i += 2;
26387
+ continue;
26388
+ }
26389
+ if (frame.fstring && char === "{") {
26390
+ if (text[i + 1] === "{") {
26391
+ frame.value += "{";
26392
+ i += 2;
26393
+ continue;
26394
+ }
26395
+ frame.interpolated = true;
26396
+ stack.push({ kind: "code", braces: 0, fexpr: true });
26397
+ i += 1;
26398
+ continue;
26399
+ }
26400
+ frame.value += char;
26401
+ i += 1;
26402
+ continue;
26403
+ }
26404
+ if (frame.kind === "format") {
26405
+ if (char === "{")
26406
+ stack.push({ kind: "code", braces: 0, fexpr: true });
26407
+ else if (char === "}")
26408
+ stack.pop();
26409
+ i += 1;
26410
+ continue;
26411
+ }
26412
+ if (syntax.triple && (text.startsWith('"""', i) || text.startsWith("'''", i))) {
26413
+ const end = text.indexOf(text.slice(i, i + 3), i + 3);
26414
+ i = end < 0 ? text.length : end + 3;
26415
+ continue;
26416
+ }
26417
+ const lineOpener = frame.fexpr ? undefined : syntax.line.find((opener) => text.startsWith(opener, i));
26418
+ if (lineOpener) {
26419
+ const end = text.indexOf(`
26420
+ `, i);
26421
+ i = end < 0 ? text.length : end + 1;
26422
+ continue;
26423
+ }
26424
+ const block = syntax.block.find(([open]) => text.startsWith(open, i));
26425
+ if (block) {
26426
+ const end = text.indexOf(block[1], i + block[0].length);
26427
+ i = end < 0 ? text.length : end + block[1].length;
26428
+ continue;
26429
+ }
26430
+ if (char === '"' || char === "'" || char === "`") {
26431
+ const fstring = Boolean(syntax.fstrings) && char !== "`" && opensFString(text, i);
26432
+ stack.push({ kind: "string", quote: char, template: char === "`", fstring, value: "", interpolated: false });
26433
+ } else if (char === "{" || frame.fexpr && (char === "(" || char === "[")) {
26434
+ frame.braces += 1;
26435
+ } else if (char === "}" || frame.fexpr && (char === ")" || char === "]")) {
26436
+ if (frame.braces > 0)
26437
+ frame.braces -= 1;
26438
+ else if (char === "}" && stack.length > 1)
26439
+ stack.pop();
26440
+ } else if (frame.fexpr && frame.braces === 0 && char === ":" && text[i + 1] !== "=") {
26441
+ stack[stack.length - 1] = { kind: "format" };
26442
+ }
26443
+ i += 1;
26444
+ }
26445
+ return out;
26446
+ }
26447
+ function collectModelLiterals(rootDir) {
26448
+ const found = new Set;
26449
+ let seen = 0;
26450
+ let capped = false;
26451
+ let skipped = false;
26452
+ const walk = (dir, rel2) => {
26453
+ let entries;
26454
+ try {
26455
+ entries = readdirSync7(dir, { withFileTypes: true }).sort((a, b) => a.name < b.name ? -1 : a.name > b.name ? 1 : 0);
26456
+ } catch {
26457
+ skipped = true;
26458
+ return;
26459
+ }
26460
+ for (const entry of entries) {
26461
+ if (capped)
26462
+ return;
26463
+ const childRel = rel2 ? `${rel2}/${entry.name}` : entry.name;
26464
+ if (entry.isDirectory()) {
26465
+ if (!entry.name.startsWith(".") && !SCAN_SKIPPED_DIRS.has(entry.name))
26466
+ walk(join12(dir, entry.name), childRel);
26467
+ continue;
26468
+ }
26469
+ if (!entry.isFile() || !MODEL_LITERAL_FILE.test(entry.name) || MODEL_LITERAL_EXCLUDED.test(entry.name) || isTestOnly(childRel))
26470
+ continue;
26471
+ if (seen >= MAX_SCANNED_FILES) {
26472
+ capped = true;
26473
+ return;
26474
+ }
26475
+ seen += 1;
26476
+ const absolute = join12(dir, entry.name);
26477
+ try {
26478
+ if (statSync5(absolute).size > MAX_MODEL_LITERAL_BYTES) {
26479
+ if (!MODEL_LITERAL_DATA_FILE.test(entry.name))
26480
+ skipped = true;
26481
+ continue;
26482
+ }
26483
+ const text = readFileSync14(absolute, "utf8");
26484
+ for (const literal of quotedLiterals(text, commentSyntax(entry.name))) {
26485
+ if (!MODEL_LITERAL_SHAPE.test(literal) || !isModelId(literal) || found.has(literal))
26486
+ continue;
26487
+ if (found.size >= MAX_MODEL_LITERALS) {
26488
+ capped = true;
26489
+ return;
26490
+ }
26491
+ found.add(literal);
26492
+ }
26493
+ } catch {
26494
+ skipped = true;
26495
+ }
26496
+ }
26497
+ };
26498
+ walk(resolve12(rootDir), "");
26499
+ return { literals: [...found].sort(), truncated: capped || skipped };
26500
+ }
26324
26501
 
26325
26502
  // src/harness-extract/types.ts
26326
26503
  var EXTRACT_SCHEMA_VERSION = 1;
@@ -26945,4 +27122,4 @@ function assignAgentIds(result, agentForScope) {
26945
27122
  }
26946
27123
  }
26947
27124
 
26948
- export { startRemoteAnalyze, pollRemoteAnalyzeUntilDone, isRecoverableRemoteRun, checkPromptMapping, safePromptEvidencePath, discoverHarnessPromptSources, valueChildren, selectKey, allValues, renderings, CALL_SINKS, registerCallSink, registerClassSink, isModelId, collectModels, modelArtifacts, modelUnknowns, EXTRACT_SCHEMA_VERSION, ENUMERATORS, toolNamesOf, clearExtractCache, extractHarness, extractHarnessWithContext, serializeExtractResult, runEnumerators, assignAgentIds, runHarnessCommand, writeHarnessAnalyzeResult, emitWrittenArtifacts, analyzeHarnessPrompts, isToolGroupPlaceholder, repairExternalAnalystReport, deriveRelationshipsFromGraph, deterministicArtifacts, deterministicGraphItems, mergeDeterministicArtifacts, analystRefutations, describeCodingAgentEvent, analystEventProgress, isRetryableExternalAnalystFailure, sleep, summarizeInvalidAnalystReport, isDeterministicLocalAnalyst, resolveHarnessAnalyzeConcern, resolveExternalHarnessAnalystInvocation, detectAvailableCodingAgents, codingAgentDisplayName, runCodingAgent, readOnlyClaudeExtraArgs, resolveAnalystModel, renderExternalHarnessAnalystPrompt, CONCERN_CANDIDATE_KINDS, SEED_CANDIDATE_KIND_LABELS, renderAnalystCandidateLines, renderAnalystSeedLines, truncateText, scanHarness, summarizeHarness, buildSourceSnapshot, writeHumanProgress, describeSyncIdentity, describeSyncTenantLabel, findFresherHarnessReports, writeHarnessArtifacts, assertHarnessGraphSyncQuality, graphForSync, inventoryFiles, numericEnv, numericEnvAllowZero, computeDeterministicFloor, stableId, titleFromId, promptNameFromPath };
27125
+ export { startRemoteAnalyze, pollRemoteAnalyzeUntilDone, isRecoverableRemoteRun, checkPromptMapping, safePromptEvidencePath, discoverHarnessPromptSources, valueChildren, selectKey, allValues, renderings, CALL_SINKS, registerCallSink, registerClassSink, isModelId, collectModels, modelArtifacts, modelUnknowns, collectModelLiterals, EXTRACT_SCHEMA_VERSION, ENUMERATORS, toolNamesOf, clearExtractCache, extractHarness, extractHarnessWithContext, serializeExtractResult, runEnumerators, assignAgentIds, runHarnessCommand, writeHarnessAnalyzeResult, emitWrittenArtifacts, analyzeHarnessPrompts, isToolGroupPlaceholder, repairExternalAnalystReport, deriveRelationshipsFromGraph, deterministicArtifacts, deterministicGraphItems, mergeDeterministicArtifacts, analystRefutations, describeCodingAgentEvent, analystEventProgress, isRetryableExternalAnalystFailure, sleep, summarizeInvalidAnalystReport, isDeterministicLocalAnalyst, resolveHarnessAnalyzeConcern, resolveExternalHarnessAnalystInvocation, detectAvailableCodingAgents, codingAgentDisplayName, runCodingAgent, readOnlyClaudeExtraArgs, resolveAnalystModel, renderExternalHarnessAnalystPrompt, CONCERN_CANDIDATE_KINDS, SEED_CANDIDATE_KIND_LABELS, renderAnalystCandidateLines, renderAnalystSeedLines, truncateText, scanHarness, summarizeHarness, buildSourceSnapshot, writeHumanProgress, describeSyncIdentity, describeSyncTenantLabel, findFresherHarnessReports, writeHarnessArtifacts, assertHarnessGraphSyncQuality, graphForSync, inventoryFiles, numericEnv, numericEnvAllowZero, computeDeterministicFloor, stableId, titleFromId, promptNameFromPath };
@@ -4,7 +4,7 @@ import {
4
4
  } from "./cli-27kkk5z4.js";
5
5
  import {
6
6
  inspectPromptManifest
7
- } from "./cli-67sp41tx.js";
7
+ } from "./cli-3ce6c2rh.js";
8
8
  import {
9
9
  readHarnessSyncState,
10
10
  renderDoctorHuman,
@@ -395,7 +395,7 @@ async function harnessCurrentCheck(cwd, manifestPath, manifestExists, tenantId)
395
395
  };
396
396
  }
397
397
  try {
398
- const { scanHarness } = await import("./harness-zbxfgaer.js");
398
+ const { scanHarness } = await import("./harness-5a1hptjs.js");
399
399
  const current = scanHarness({
400
400
  rootDir: cwd,
401
401
  scannerVersion: "doctor",
package/dist/cli.js CHANGED
@@ -2975,25 +2975,25 @@ function leafManifestFields(leaf, commands) {
2975
2975
  import { fileURLToPath } from "url";
2976
2976
  import { realpathSync } from "fs";
2977
2977
  async function runPromptsCommand(...args) {
2978
- return (await import("./prompts-6gv5qqp6.js")).runPromptsCommand(...args);
2978
+ return (await import("./prompts-pj7gp12y.js")).runPromptsCommand(...args);
2979
2979
  }
2980
2980
  async function runSkillsCommand(...args) {
2981
2981
  return (await import("./skills-c25dmy28.js")).runSkillsCommand(...args);
2982
2982
  }
2983
2983
  async function runHarnessCommand(...args) {
2984
- return (await import("./harness-zbxfgaer.js")).runHarnessCommand(...args);
2984
+ return (await import("./harness-5a1hptjs.js")).runHarnessCommand(...args);
2985
2985
  }
2986
2986
  async function runSyncCommand(...args) {
2987
- return (await import("./sync-q549frt7.js")).runSyncCommand(...args);
2987
+ return (await import("./sync-vqjd71hp.js")).runSyncCommand(...args);
2988
2988
  }
2989
2989
  async function runRegistryCommand(...args) {
2990
2990
  return (await import("./registry-ztn727mn.js")).runRegistryCommand(...args);
2991
2991
  }
2992
2992
  async function runDoctorCommand(...args) {
2993
- return (await import("./doctor-zzxmt09g.js")).runDoctorCommand(...args);
2993
+ return (await import("./doctor-tz8n5p21.js")).runDoctorCommand(...args);
2994
2994
  }
2995
2995
  async function runStatusCommand(...args) {
2996
- return (await import("./doctor-zzxmt09g.js")).runStatusCommand(...args);
2996
+ return (await import("./doctor-tz8n5p21.js")).runStatusCommand(...args);
2997
2997
  }
2998
2998
  async function runAuthCommand(...args) {
2999
2999
  return (await import("./profile-commands-fa2858ez.js")).runAuthCommand(...args);
@@ -3005,7 +3005,7 @@ async function runProfilesCommand(...args) {
3005
3005
  return (await import("./profile-commands-fa2858ez.js")).runProfilesCommand(...args);
3006
3006
  }
3007
3007
  async function runAgentCommand(...args) {
3008
- return (await import("./agent-grf8tb4m.js")).runAgentCommand(...args);
3008
+ return (await import("./agent-1rp2q24a.js")).runAgentCommand(...args);
3009
3009
  }
3010
3010
  async function runProductionCommand(...args) {
3011
3011
  return (await import("./production-intelligence-40teyxyv.js")).runProductionCommand(...args);
@@ -6769,7 +6769,7 @@ var commandRegistry = createCommandRegistry([
6769
6769
  resetApiRequestCountBeforeRun: true,
6770
6770
  telemetry: "result-and-error",
6771
6771
  handler: async (context) => {
6772
- const { runInit } = await import("./index-x0knnchy.js");
6772
+ const { runInit } = await import("./index-xkh4wx6r.js");
6773
6773
  if (context.outputMode === "agent-stream") {
6774
6774
  context.output.writeEvent({
6775
6775
  event: "started",
@@ -3,9 +3,9 @@ import {
3
3
  promptsDiscoveredCheck,
4
4
  runDoctorCommand,
5
5
  runStatusCommand
6
- } from "./cli-45m0bz7q.js";
6
+ } from "./cli-nqysef8j.js";
7
7
  import"./cli-27kkk5z4.js";
8
- import"./cli-67sp41tx.js";
8
+ import"./cli-3ce6c2rh.js";
9
9
  import"./cli-mm48br00.js";
10
10
  import"./cli-k0vxtzxb.js";
11
11
  import"./cli-m702wdtv.js";
@@ -46,7 +46,7 @@ import {
46
46
  writeHarnessAnalyzeResult,
47
47
  writeHarnessArtifacts,
48
48
  writeHumanProgress
49
- } from "./cli-bwzvsmwk.js";
49
+ } from "./cli-gej23gf6.js";
50
50
  import"./cli-k0vxtzxb.js";
51
51
  import"./cli-97fnztpy.js";
52
52
  import {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  buildSourceSnapshot
3
- } from "./cli-bwzvsmwk.js";
3
+ } from "./cli-gej23gf6.js";
4
4
  import"./cli-k0vxtzxb.js";
5
5
  import"./cli-97fnztpy.js";
6
6
  import"./cli-9ww72mrd.js";
@@ -5,6 +5,7 @@ import {
5
5
  allValues,
6
6
  assignAgentIds,
7
7
  clearExtractCache,
8
+ collectModelLiterals,
8
9
  collectModels,
9
10
  extractHarness,
10
11
  extractHarnessWithContext,
@@ -19,7 +20,7 @@ import {
19
20
  serializeExtractResult,
20
21
  toolNamesOf,
21
22
  valueChildren
22
- } from "./cli-bwzvsmwk.js";
23
+ } from "./cli-gej23gf6.js";
23
24
  import"./cli-k0vxtzxb.js";
24
25
  import"./cli-97fnztpy.js";
25
26
  import"./cli-9ww72mrd.js";
@@ -48,6 +49,7 @@ export {
48
49
  extractHarnessWithContext,
49
50
  extractHarness,
50
51
  collectModels,
52
+ collectModelLiterals,
51
53
  clearExtractCache,
52
54
  assignAgentIds,
53
55
  allValues,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  buildDoctorReport
3
- } from "./cli-45m0bz7q.js";
3
+ } from "./cli-nqysef8j.js";
4
4
  import {
5
5
  selectTenantAndCreateKey
6
6
  } from "./cli-rdwy3y4f.js";
@@ -20,7 +20,7 @@ import {
20
20
  import {
21
21
  initPrompts,
22
22
  runPromptSync
23
- } from "./cli-67sp41tx.js";
23
+ } from "./cli-3ce6c2rh.js";
24
24
  import {
25
25
  agentsMdProblem,
26
26
  runSkillSync
@@ -46,7 +46,7 @@ import {
46
46
  runCodingAgent,
47
47
  runHarnessCommand,
48
48
  startRemoteAnalyze
49
- } from "./cli-bwzvsmwk.js";
49
+ } from "./cli-gej23gf6.js";
50
50
  import {
51
51
  canonicalText,
52
52
  renderInitBanner,
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  inventoryFiles,
3
3
  safePromptEvidencePath
4
- } from "./cli-bwzvsmwk.js";
4
+ } from "./cli-gej23gf6.js";
5
5
  import"./cli-k0vxtzxb.js";
6
6
  import"./cli-97fnztpy.js";
7
7
  import"./cli-9ww72mrd.js";
@@ -3,7 +3,7 @@ import {
3
3
  checkPromptMapping,
4
4
  discoverHarnessPromptSources,
5
5
  safePromptEvidencePath
6
- } from "./cli-bwzvsmwk.js";
6
+ } from "./cli-gej23gf6.js";
7
7
  import"./cli-k0vxtzxb.js";
8
8
  import"./cli-97fnztpy.js";
9
9
  import"./cli-9ww72mrd.js";
@@ -9,7 +9,7 @@ import {
9
9
  runPromptSync,
10
10
  runPromptsCommand,
11
11
  writePromptSyncProgress
12
- } from "./cli-67sp41tx.js";
12
+ } from "./cli-3ce6c2rh.js";
13
13
  import {
14
14
  promptSourceHashPayload
15
15
  } from "./cli-mm48br00.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  runPromptsCommand
3
- } from "./cli-67sp41tx.js";
3
+ } from "./cli-3ce6c2rh.js";
4
4
  import {
5
5
  runSkillsCommand
6
6
  } from "./cli-p2tfx93b.js";
@@ -10,7 +10,7 @@ import"./cli-hcwdz9sd.js";
10
10
  import"./cli-mm48br00.js";
11
11
  import {
12
12
  runHarnessCommand
13
- } from "./cli-bwzvsmwk.js";
13
+ } from "./cli-gej23gf6.js";
14
14
  import"./cli-k0vxtzxb.js";
15
15
  import"./cli-97fnztpy.js";
16
16
  import"./cli-9ww72mrd.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@moda-ai/cli",
3
- "version": "1.55.69",
3
+ "version": "1.55.70",
4
4
  "description": "CLI for Moda: production monitoring and evals for AI agents.",
5
5
  "type": "module",
6
6
  "bin": {
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "schema_version": "moda.skill_index.v1",
3
- "bundled_at": "2026-10-21T06:32:22.959Z",
4
- "cli_version": "1.55.69",
3
+ "bundled_at": "2026-10-21T07:00:14.281Z",
4
+ "cli_version": "1.55.70",
5
5
  "skills": [
6
6
  {
7
7
  "id": "integration-cloudflare-think",