@harness-engineering/cli 1.25.4 → 1.25.5

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.
Files changed (115) hide show
  1. package/dist/agents/skills/claude-code/enforce-architecture/SKILL.md +12 -0
  2. package/dist/agents/skills/claude-code/harness-api-design/SKILL.md +12 -0
  3. package/dist/agents/skills/claude-code/harness-architecture-advisor/SKILL.md +12 -0
  4. package/dist/agents/skills/claude-code/harness-auth/SKILL.md +12 -0
  5. package/dist/agents/skills/claude-code/harness-code-review/SKILL.md +30 -6
  6. package/dist/agents/skills/claude-code/harness-database/SKILL.md +12 -0
  7. package/dist/agents/skills/claude-code/harness-debugging/SKILL.md +38 -6
  8. package/dist/agents/skills/claude-code/harness-deployment/SKILL.md +12 -0
  9. package/dist/agents/skills/claude-code/harness-execution/SKILL.md +30 -6
  10. package/dist/agents/skills/claude-code/harness-planning/SKILL.md +20 -9
  11. package/dist/agents/skills/claude-code/harness-pre-commit-review/SKILL.md +59 -6
  12. package/dist/agents/skills/claude-code/harness-refactoring/SKILL.md +28 -7
  13. package/dist/agents/skills/claude-code/harness-security-scan/SKILL.md +12 -0
  14. package/dist/agents/skills/claude-code/harness-skill-authoring/SKILL.md +43 -8
  15. package/dist/agents/skills/claude-code/harness-soundness-review/SKILL.md +59 -7
  16. package/dist/agents/skills/claude-code/harness-tdd/SKILL.md +21 -0
  17. package/dist/agents/skills/claude-code/harness-verification/SKILL.md +31 -6
  18. package/dist/agents/skills/codex/enforce-architecture/SKILL.md +12 -0
  19. package/dist/agents/skills/codex/harness-api-design/SKILL.md +12 -0
  20. package/dist/agents/skills/codex/harness-architecture-advisor/SKILL.md +12 -0
  21. package/dist/agents/skills/codex/harness-auth/SKILL.md +12 -0
  22. package/dist/agents/skills/codex/harness-code-review/SKILL.md +30 -6
  23. package/dist/agents/skills/codex/harness-database/SKILL.md +12 -0
  24. package/dist/agents/skills/codex/harness-debugging/SKILL.md +38 -6
  25. package/dist/agents/skills/codex/harness-deployment/SKILL.md +12 -0
  26. package/dist/agents/skills/codex/harness-execution/SKILL.md +30 -6
  27. package/dist/agents/skills/codex/harness-planning/SKILL.md +20 -9
  28. package/dist/agents/skills/codex/harness-pre-commit-review/SKILL.md +59 -6
  29. package/dist/agents/skills/codex/harness-refactoring/SKILL.md +28 -7
  30. package/dist/agents/skills/codex/harness-security-scan/SKILL.md +12 -0
  31. package/dist/agents/skills/codex/harness-skill-authoring/SKILL.md +43 -8
  32. package/dist/agents/skills/codex/harness-soundness-review/SKILL.md +59 -7
  33. package/dist/agents/skills/codex/harness-tdd/SKILL.md +21 -0
  34. package/dist/agents/skills/codex/harness-verification/SKILL.md +31 -6
  35. package/dist/agents/skills/cursor/enforce-architecture/SKILL.md +12 -0
  36. package/dist/agents/skills/cursor/harness-api-design/SKILL.md +12 -0
  37. package/dist/agents/skills/cursor/harness-architecture-advisor/SKILL.md +12 -0
  38. package/dist/agents/skills/cursor/harness-auth/SKILL.md +12 -0
  39. package/dist/agents/skills/cursor/harness-code-review/SKILL.md +30 -6
  40. package/dist/agents/skills/cursor/harness-database/SKILL.md +12 -0
  41. package/dist/agents/skills/cursor/harness-debugging/SKILL.md +38 -6
  42. package/dist/agents/skills/cursor/harness-deployment/SKILL.md +12 -0
  43. package/dist/agents/skills/cursor/harness-execution/SKILL.md +30 -6
  44. package/dist/agents/skills/cursor/harness-planning/SKILL.md +20 -9
  45. package/dist/agents/skills/cursor/harness-pre-commit-review/SKILL.md +59 -6
  46. package/dist/agents/skills/cursor/harness-refactoring/SKILL.md +28 -7
  47. package/dist/agents/skills/cursor/harness-security-scan/SKILL.md +12 -0
  48. package/dist/agents/skills/cursor/harness-skill-authoring/SKILL.md +43 -8
  49. package/dist/agents/skills/cursor/harness-soundness-review/SKILL.md +59 -7
  50. package/dist/agents/skills/cursor/harness-tdd/SKILL.md +21 -0
  51. package/dist/agents/skills/cursor/harness-verification/SKILL.md +31 -6
  52. package/dist/agents/skills/gemini-cli/enforce-architecture/SKILL.md +12 -0
  53. package/dist/agents/skills/gemini-cli/harness-api-design/SKILL.md +12 -0
  54. package/dist/agents/skills/gemini-cli/harness-architecture-advisor/SKILL.md +12 -0
  55. package/dist/agents/skills/gemini-cli/harness-auth/SKILL.md +12 -0
  56. package/dist/agents/skills/gemini-cli/harness-code-review/SKILL.md +30 -6
  57. package/dist/agents/skills/gemini-cli/harness-database/SKILL.md +12 -0
  58. package/dist/agents/skills/gemini-cli/harness-debugging/SKILL.md +38 -6
  59. package/dist/agents/skills/gemini-cli/harness-deployment/SKILL.md +12 -0
  60. package/dist/agents/skills/gemini-cli/harness-execution/SKILL.md +30 -6
  61. package/dist/agents/skills/gemini-cli/harness-planning/SKILL.md +20 -9
  62. package/dist/agents/skills/gemini-cli/harness-pre-commit-review/SKILL.md +59 -6
  63. package/dist/agents/skills/gemini-cli/harness-refactoring/SKILL.md +28 -7
  64. package/dist/agents/skills/gemini-cli/harness-security-scan/SKILL.md +12 -0
  65. package/dist/agents/skills/gemini-cli/harness-skill-authoring/SKILL.md +43 -8
  66. package/dist/agents/skills/gemini-cli/harness-soundness-review/SKILL.md +59 -7
  67. package/dist/agents/skills/gemini-cli/harness-tdd/SKILL.md +21 -0
  68. package/dist/agents/skills/gemini-cli/harness-verification/SKILL.md +31 -6
  69. package/dist/{agents-md-MCUM4SIZ.js → agents-md-COWXFHR5.js} +2 -2
  70. package/dist/{architecture-HNIO6AUX.js → architecture-EYPG4ZMC.js} +3 -3
  71. package/dist/{assess-project-6MV5TNY3.js → assess-project-JQPEVJIA.js} +1 -1
  72. package/dist/bin/harness-mcp.js +13 -13
  73. package/dist/bin/harness.js +23 -112
  74. package/dist/{check-phase-gate-VCBQHQAC.js → check-phase-gate-AJRMDGYW.js} +3 -3
  75. package/dist/{chunk-6VZQJ5CX.js → chunk-24ZGGCIW.js} +1 -1
  76. package/dist/{chunk-GEEYCQDS.js → chunk-2OIPQMU5.js} +5 -5
  77. package/dist/{chunk-2KZAXESR.js → chunk-2OM5TA56.js} +205 -55
  78. package/dist/{chunk-FES2YEQU.js → chunk-2TFT7XRX.js} +3 -3
  79. package/dist/{chunk-AT74HEQM.js → chunk-2X336Q7J.js} +1 -1
  80. package/dist/{chunk-BUYW3SA2.js → chunk-2X42NMPD.js} +68 -68
  81. package/dist/{chunk-WIQA4BSH.js → chunk-5R2LFUU3.js} +1 -1
  82. package/dist/{chunk-FIQL2HND.js → chunk-BVRWLK5U.js} +2 -2
  83. package/dist/{chunk-F23H3U5U.js → chunk-HWLHJSJQ.js} +2 -2
  84. package/dist/{chunk-CXJTVICF.js → chunk-JD4FGVHH.js} +2 -2
  85. package/dist/{chunk-FSNPBT74.js → chunk-KDHZAL4B.js} +1 -1
  86. package/dist/{chunk-MI6MA6OP.js → chunk-KHMKAC6E.js} +71 -32
  87. package/dist/{chunk-UQZBZINS.js → chunk-KVK3KAFQ.js} +6 -6
  88. package/dist/{chunk-P7PANON5.js → chunk-KWQTMJ3B.js} +1 -1
  89. package/dist/{chunk-XTITAVUR.js → chunk-KXUCIAM4.js} +1 -1
  90. package/dist/{chunk-TYV4EUAD.js → chunk-PVRKHUTA.js} +6 -6
  91. package/dist/{chunk-YTP2UDPV.js → chunk-Q6ZEUMOF.js} +3 -3
  92. package/dist/{chunk-UV3BZMGT.js → chunk-UB6NZNJJ.js} +2 -2
  93. package/dist/{chunk-47N6R2F4.js → chunk-UI6NWJJK.js} +1 -1
  94. package/dist/{chunk-EHRZMOQ2.js → chunk-WN6YIQ66.js} +1 -1
  95. package/dist/{chunk-M55DGGF3.js → chunk-YFIALHGI.js} +3 -3
  96. package/dist/{chunk-5BQ5BOJL.js → chunk-ZYYVDA5K.js} +1 -1
  97. package/dist/{ci-workflow-RTM7VVTD.js → ci-workflow-35KBJC2U.js} +2 -2
  98. package/dist/{dist-WCSJHQPK.js → dist-UMONICND.js} +15 -1
  99. package/dist/{docs-UBOGGHTY.js → docs-T5J2AJH6.js} +3 -3
  100. package/dist/{engine-MJJAP5CH.js → engine-KWHV2LUX.js} +2 -2
  101. package/dist/{entropy-EMSXF2PX.js → entropy-GEBHWBPR.js} +2 -2
  102. package/dist/{feedback-ZLUX72HD.js → feedback-I4QPE3RI.js} +1 -1
  103. package/dist/{generate-agent-definitions-AWLPJ27C.js → generate-agent-definitions-3XNR77ET.js} +3 -3
  104. package/dist/hooks/telemetry-reporter.js +22 -1
  105. package/dist/index.d.ts +5 -5
  106. package/dist/index.js +22 -22
  107. package/dist/{loader-JVSJZSWZ.js → loader-MN2CZXPG.js} +2 -2
  108. package/dist/{mcp-JZ7YB7TD.js → mcp-XSU77BZY.js} +13 -13
  109. package/dist/{performance-7AGWJUY4.js → performance-7I5MCEFP.js} +3 -3
  110. package/dist/{review-pipeline-ZWVQJTJX.js → review-pipeline-PWPKJXSN.js} +2 -2
  111. package/dist/{runtime-D6YUQPP2.js → runtime-ZYEFJSGS.js} +2 -2
  112. package/dist/{security-JLZUAQYT.js → security-OVTGS7DL.js} +1 -1
  113. package/dist/{validate-TIIHRPMA.js → validate-ACIP5BUO.js} +3 -3
  114. package/dist/{validate-cross-check-ZOWFA3DB.js → validate-cross-check-OWITNCHN.js} +2 -2
  115. package/package.json +5 -5
@@ -5,41 +5,41 @@ import {
5
5
  handleCreateSelfReview,
6
6
  handleRequestPeerReview,
7
7
  requestPeerReviewDefinition
8
- } from "./chunk-FES2YEQU.js";
8
+ } from "./chunk-2TFT7XRX.js";
9
9
  import {
10
10
  getSecurityTrendsDefinition,
11
11
  handleGetSecurityTrends,
12
12
  handleRunSecurityScan,
13
13
  runSecurityScanDefinition
14
- } from "./chunk-UV3BZMGT.js";
14
+ } from "./chunk-UB6NZNJJ.js";
15
15
  import {
16
16
  handleRunCodeReview,
17
17
  runCodeReviewDefinition,
18
18
  sortFindingsBySeverity
19
- } from "./chunk-F23H3U5U.js";
19
+ } from "./chunk-HWLHJSJQ.js";
20
20
  import {
21
21
  assessProjectDefinition,
22
22
  handleAssessProject
23
- } from "./chunk-UQZBZINS.js";
23
+ } from "./chunk-KVK3KAFQ.js";
24
24
  import {
25
25
  handleValidateProject,
26
26
  validateToolDefinition
27
- } from "./chunk-YTP2UDPV.js";
27
+ } from "./chunk-Q6ZEUMOF.js";
28
28
  import {
29
29
  checkDependenciesDefinition,
30
30
  handleCheckDependencies
31
- } from "./chunk-CXJTVICF.js";
31
+ } from "./chunk-JD4FGVHH.js";
32
32
  import {
33
33
  resolveProjectConfig
34
- } from "./chunk-47N6R2F4.js";
34
+ } from "./chunk-UI6NWJJK.js";
35
35
  import {
36
36
  checkDocsDefinition,
37
37
  handleCheckDocs
38
- } from "./chunk-GEEYCQDS.js";
38
+ } from "./chunk-2OIPQMU5.js";
39
39
  import {
40
40
  detectEntropyDefinition,
41
41
  handleDetectEntropy
42
- } from "./chunk-M55DGGF3.js";
42
+ } from "./chunk-YFIALHGI.js";
43
43
  import {
44
44
  checkPerformanceDefinition,
45
45
  getCriticalPathsDefinition,
@@ -49,7 +49,7 @@ import {
49
49
  handleGetPerfBaselines,
50
50
  handleUpdatePerfBaselines,
51
51
  updatePerfBaselinesDefinition
52
- } from "./chunk-TYV4EUAD.js";
52
+ } from "./chunk-PVRKHUTA.js";
53
53
  import {
54
54
  resultToMcpResponse
55
55
  } from "./chunk-EPUKTTJZ.js";
@@ -58,7 +58,7 @@ import {
58
58
  } from "./chunk-W6Y7ZW3Y.js";
59
59
  import {
60
60
  resolveConfig
61
- } from "./chunk-WIQA4BSH.js";
61
+ } from "./chunk-5R2LFUU3.js";
62
62
  import {
63
63
  GENERATED_HEADER_CLAUDE,
64
64
  GENERATED_HEADER_CODEX,
@@ -98,7 +98,7 @@ import {
98
98
  scanForInjection,
99
99
  serializeEnvelope,
100
100
  writeTaint
101
- } from "./chunk-MI6MA6OP.js";
101
+ } from "./chunk-KHMKAC6E.js";
102
102
  import {
103
103
  Err,
104
104
  Ok
@@ -695,7 +695,7 @@ ${skippedMsg}`
695
695
  async function handleInitProject(input) {
696
696
  const i = input;
697
697
  try {
698
- const { TemplateEngine } = await import("./engine-MJJAP5CH.js");
698
+ const { TemplateEngine } = await import("./engine-KWHV2LUX.js");
699
699
  const engine = new TemplateEngine(resolveTemplatesDir());
700
700
  const safePath = sanitizePath(i.path);
701
701
  const detected = tryDetectFramework(engine, safePath, i);
@@ -717,7 +717,7 @@ var listPersonasDefinition = {
717
717
  inputSchema: { type: "object", properties: {} }
718
718
  };
719
719
  async function handleListPersonas() {
720
- const { listPersonas } = await import("./loader-JVSJZSWZ.js");
720
+ const { listPersonas } = await import("./loader-MN2CZXPG.js");
721
721
  const result = listPersonas(resolvePersonasDir());
722
722
  return resultToMcpResponse(result);
723
723
  }
@@ -741,10 +741,10 @@ async function handleGeneratePersonaArtifacts(input) {
741
741
  if (!/^[a-z0-9][a-z0-9._-]*$/i.test(input.name)) {
742
742
  return resultToMcpResponse(Err(new Error(`Invalid persona name: ${input.name}`)));
743
743
  }
744
- const { loadPersona } = await import("./loader-JVSJZSWZ.js");
745
- const { generateRuntime } = await import("./runtime-D6YUQPP2.js");
746
- const { generateAgentsMd } = await import("./agents-md-MCUM4SIZ.js");
747
- const { generateCIWorkflow } = await import("./ci-workflow-RTM7VVTD.js");
744
+ const { loadPersona } = await import("./loader-MN2CZXPG.js");
745
+ const { generateRuntime } = await import("./runtime-ZYEFJSGS.js");
746
+ const { generateAgentsMd } = await import("./agents-md-COWXFHR5.js");
747
+ const { generateCIWorkflow } = await import("./ci-workflow-35KBJC2U.js");
748
748
  const personasDir = resolvePersonasDir();
749
749
  const filePath = path3.join(personasDir, `${input.name}.yaml`);
750
750
  if (!filePath.startsWith(personasDir)) {
@@ -799,7 +799,7 @@ async function handleRunPersona(input) {
799
799
  if (!/^[a-z0-9][a-z0-9._-]*$/i.test(input.persona)) {
800
800
  return resultToMcpResponse(Err(new Error(`Invalid persona name: ${input.persona}`)));
801
801
  }
802
- const { loadPersona } = await import("./loader-JVSJZSWZ.js");
802
+ const { loadPersona } = await import("./loader-MN2CZXPG.js");
803
803
  const { runPersona } = await import("./runner-AAEF2TXY.js");
804
804
  const { executeSkill } = await import("./skill-executor-MOCUIAYS.js");
805
805
  const personasDir = resolvePersonasDir();
@@ -1593,7 +1593,7 @@ async function autoSyncRoadmap(projectPath) {
1593
1593
  try {
1594
1594
  const roadmapFile = path11.join(projectPath, "docs", "roadmap.md");
1595
1595
  if (!fs10.existsSync(roadmapFile)) return;
1596
- const { parseRoadmap, serializeRoadmap, syncRoadmap, applySyncChanges } = await import("./dist-WCSJHQPK.js");
1596
+ const { parseRoadmap, serializeRoadmap, syncRoadmap, applySyncChanges } = await import("./dist-UMONICND.js");
1597
1597
  const raw = fs10.readFileSync(roadmapFile, "utf-8");
1598
1598
  const parseResult = parseRoadmap(raw);
1599
1599
  if (!parseResult.ok) return;
@@ -1623,7 +1623,7 @@ async function triggerExternalSync(projectPath, roadmapFile) {
1623
1623
  console.warn("[roadmap-sync] GITHUB_TOKEN not found \u2014 external sync skipped");
1624
1624
  return;
1625
1625
  }
1626
- const { fullSync, GitHubIssuesSyncAdapter } = await import("./dist-WCSJHQPK.js");
1626
+ const { fullSync, GitHubIssuesSyncAdapter } = await import("./dist-UMONICND.js");
1627
1627
  const adapter = new GitHubIssuesSyncAdapter({
1628
1628
  token,
1629
1629
  config: trackerConfig
@@ -1720,12 +1720,12 @@ var manageStateDefinition = {
1720
1720
  }
1721
1721
  };
1722
1722
  async function handleShow(projectPath, input) {
1723
- const { loadState } = await import("./dist-WCSJHQPK.js");
1723
+ const { loadState } = await import("./dist-UMONICND.js");
1724
1724
  return resultToMcpResponse(await loadState(projectPath, input.stream, input.session));
1725
1725
  }
1726
1726
  async function handleLearn(projectPath, input) {
1727
1727
  if (!input.learning) return mcpError("Error: learning is required for learn action");
1728
- const { appendLearning } = await import("./dist-WCSJHQPK.js");
1728
+ const { appendLearning } = await import("./dist-UMONICND.js");
1729
1729
  const result = await appendLearning(
1730
1730
  projectPath,
1731
1731
  input.learning,
@@ -1740,7 +1740,7 @@ async function handleLearn(projectPath, input) {
1740
1740
  async function handleFailure(projectPath, input) {
1741
1741
  if (!input.description) return mcpError("Error: description is required for failure action");
1742
1742
  if (!input.failureType) return mcpError("Error: failureType is required for failure action");
1743
- const { appendFailure } = await import("./dist-WCSJHQPK.js");
1743
+ const { appendFailure } = await import("./dist-UMONICND.js");
1744
1744
  const result = await appendFailure(
1745
1745
  projectPath,
1746
1746
  input.description,
@@ -1753,24 +1753,24 @@ async function handleFailure(projectPath, input) {
1753
1753
  return resultToMcpResponse(Ok({ recorded: true }));
1754
1754
  }
1755
1755
  async function handleArchive(projectPath, input) {
1756
- const { archiveFailures } = await import("./dist-WCSJHQPK.js");
1756
+ const { archiveFailures } = await import("./dist-UMONICND.js");
1757
1757
  const result = await archiveFailures(projectPath, input.stream, input.session);
1758
1758
  if (!result.ok) return resultToMcpResponse(result);
1759
1759
  return resultToMcpResponse(Ok({ archived: true }));
1760
1760
  }
1761
1761
  async function handleReset(projectPath, input) {
1762
- const { saveState, DEFAULT_STATE } = await import("./dist-WCSJHQPK.js");
1762
+ const { saveState, DEFAULT_STATE } = await import("./dist-UMONICND.js");
1763
1763
  const result = await saveState(projectPath, { ...DEFAULT_STATE }, input.stream, input.session);
1764
1764
  if (!result.ok) return resultToMcpResponse(result);
1765
1765
  return resultToMcpResponse(Ok({ reset: true }));
1766
1766
  }
1767
1767
  async function handleGate(projectPath, _input) {
1768
- const { runMechanicalGate } = await import("./dist-WCSJHQPK.js");
1768
+ const { runMechanicalGate } = await import("./dist-UMONICND.js");
1769
1769
  return resultToMcpResponse(await runMechanicalGate(projectPath));
1770
1770
  }
1771
1771
  async function handleSaveHandoff(projectPath, input) {
1772
1772
  if (!input.handoff) return mcpError("Error: handoff is required for save-handoff action");
1773
- const { saveHandoff } = await import("./dist-WCSJHQPK.js");
1773
+ const { saveHandoff } = await import("./dist-UMONICND.js");
1774
1774
  const result = await saveHandoff(
1775
1775
  projectPath,
1776
1776
  input.handoff,
@@ -1782,7 +1782,7 @@ async function handleSaveHandoff(projectPath, input) {
1782
1782
  return resultToMcpResponse(Ok({ saved: true }));
1783
1783
  }
1784
1784
  async function handleLoadHandoff(projectPath, input) {
1785
- const { loadHandoff } = await import("./dist-WCSJHQPK.js");
1785
+ const { loadHandoff } = await import("./dist-UMONICND.js");
1786
1786
  return resultToMcpResponse(await loadHandoff(projectPath, input.stream, input.session));
1787
1787
  }
1788
1788
  async function handleAppendEntry(projectPath, input) {
@@ -1790,7 +1790,7 @@ async function handleAppendEntry(projectPath, input) {
1790
1790
  if (!input.authorSkill) return mcpError("Error: authorSkill is required for append_entry action");
1791
1791
  if (!input.content) return mcpError("Error: content is required for append_entry action");
1792
1792
  if (input.session) {
1793
- const { appendSessionEntry } = await import("./dist-WCSJHQPK.js");
1793
+ const { appendSessionEntry } = await import("./dist-UMONICND.js");
1794
1794
  const result = await appendSessionEntry(
1795
1795
  projectPath,
1796
1796
  input.session,
@@ -1803,7 +1803,7 @@ async function handleAppendEntry(projectPath, input) {
1803
1803
  if (input.section !== "decisions") {
1804
1804
  return mcpError("Error: session is required for non-decisions sections");
1805
1805
  }
1806
- const { loadState, saveState } = await import("./dist-WCSJHQPK.js");
1806
+ const { loadState, saveState } = await import("./dist-UMONICND.js");
1807
1807
  const lr = await loadState(projectPath, input.stream);
1808
1808
  if (!lr.ok) return resultToMcpResponse(lr);
1809
1809
  lr.value.decisions.push({
@@ -1821,7 +1821,7 @@ async function handleUpdateEntryStatus(projectPath, input) {
1821
1821
  if (!input.entryId) return mcpError("Error: entryId is required for update_entry_status action");
1822
1822
  if (!input.newStatus)
1823
1823
  return mcpError("Error: newStatus is required for update_entry_status action");
1824
- const { updateSessionEntryStatus } = await import("./dist-WCSJHQPK.js");
1824
+ const { updateSessionEntryStatus } = await import("./dist-UMONICND.js");
1825
1825
  const result = await updateSessionEntryStatus(
1826
1826
  projectPath,
1827
1827
  input.session,
@@ -1834,7 +1834,7 @@ async function handleUpdateEntryStatus(projectPath, input) {
1834
1834
  async function handleReadSection(projectPath, input) {
1835
1835
  if (!input.session) return mcpError("Error: session is required for read_section action");
1836
1836
  if (!input.section) return mcpError("Error: section is required for read_section action");
1837
- const { readSessionSection } = await import("./dist-WCSJHQPK.js");
1837
+ const { readSessionSection } = await import("./dist-UMONICND.js");
1838
1838
  const result = await readSessionSection(
1839
1839
  projectPath,
1840
1840
  input.session,
@@ -1844,13 +1844,13 @@ async function handleReadSection(projectPath, input) {
1844
1844
  }
1845
1845
  async function handleReadSections(projectPath, input) {
1846
1846
  if (!input.session) return mcpError("Error: session is required for read_sections action");
1847
- const { readSessionSections } = await import("./dist-WCSJHQPK.js");
1847
+ const { readSessionSections } = await import("./dist-UMONICND.js");
1848
1848
  const result = await readSessionSections(projectPath, input.session);
1849
1849
  return resultToMcpResponse(result);
1850
1850
  }
1851
1851
  async function handleArchiveSession(projectPath, input) {
1852
1852
  if (!input.session) return mcpError("Error: session is required for archive_session action");
1853
- const { archiveSession } = await import("./dist-WCSJHQPK.js");
1853
+ const { archiveSession } = await import("./dist-UMONICND.js");
1854
1854
  const result = await archiveSession(projectPath, input.session);
1855
1855
  if (!result.ok) return resultToMcpResponse(result);
1856
1856
  await autoSyncRoadmap(projectPath);
@@ -1914,7 +1914,7 @@ var listStreamsDefinition = {
1914
1914
  };
1915
1915
  async function handleListStreams(input) {
1916
1916
  try {
1917
- const { listStreams, loadStreamIndex } = await import("./dist-WCSJHQPK.js");
1917
+ const { listStreams, loadStreamIndex } = await import("./dist-UMONICND.js");
1918
1918
  const projectPath = sanitizePath(input.path);
1919
1919
  const indexResult = await loadStreamIndex(projectPath);
1920
1920
  const streamsResult = await listStreams(projectPath);
@@ -1952,7 +1952,7 @@ var checkPhaseGateDefinition = {
1952
1952
  };
1953
1953
  async function handleCheckPhaseGate(input) {
1954
1954
  try {
1955
- const { runCheckPhaseGate } = await import("./check-phase-gate-VCBQHQAC.js");
1955
+ const { runCheckPhaseGate } = await import("./check-phase-gate-AJRMDGYW.js");
1956
1956
  const result = await runCheckPhaseGate({ cwd: sanitizePath(input.path) });
1957
1957
  if (result.ok) {
1958
1958
  return { content: [{ type: "text", text: JSON.stringify(result.value) }] };
@@ -2008,7 +2008,7 @@ async function handleValidateCrossCheck(input) {
2008
2008
  };
2009
2009
  }
2010
2010
  try {
2011
- const { runCrossCheck } = await import("./validate-cross-check-ZOWFA3DB.js");
2011
+ const { runCrossCheck } = await import("./validate-cross-check-OWITNCHN.js");
2012
2012
  const specsDir = path12.resolve(projectPath, input.specsDir ?? "docs/specs");
2013
2013
  if (!specsDir.startsWith(projectPath)) {
2014
2014
  return {
@@ -2475,7 +2475,7 @@ function resolveSkillSources(opts) {
2475
2475
  addSource(communityDir, "community");
2476
2476
  const globalCommunityDir = resolveGlobalCommunitySkillsDir();
2477
2477
  addSource(globalCommunityDir, "community");
2478
- if (opts.includeGlobal || sources.length === 0) {
2478
+ if (opts.includeGlobal || opts.global || sources.length === 0) {
2479
2479
  const globalDir = resolveGlobalSkillsDir();
2480
2480
  addSource(globalDir, "global");
2481
2481
  }
@@ -2731,7 +2731,7 @@ async function handleGenerateSlashCommands(input) {
2731
2731
  // src/mcp/resources/state.ts
2732
2732
  async function getStateResource(projectRoot) {
2733
2733
  try {
2734
- const { loadState, migrateToStreams } = await import("./dist-WCSJHQPK.js");
2734
+ const { loadState, migrateToStreams } = await import("./dist-UMONICND.js");
2735
2735
  await migrateToStreams(projectRoot);
2736
2736
  const result = await loadState(projectRoot);
2737
2737
  if (result.ok) {
@@ -3739,7 +3739,7 @@ var generateAgentDefinitionsDefinition = {
3739
3739
  }
3740
3740
  };
3741
3741
  async function handleGenerateAgentDefinitions(input) {
3742
- const { generateAgentDefinitions } = await import("./generate-agent-definitions-AWLPJ27C.js");
3742
+ const { generateAgentDefinitions } = await import("./generate-agent-definitions-3XNR77ET.js");
3743
3743
  const platforms = input.platform === "all" || !input.platform ? ["claude-code", "gemini-cli"] : [input.platform];
3744
3744
  const results = generateAgentDefinitions({
3745
3745
  platforms: [...platforms],
@@ -4067,7 +4067,7 @@ function shouldTriggerExternalSync(input, response) {
4067
4067
  }
4068
4068
  async function handleManageRoadmap(input) {
4069
4069
  try {
4070
- const { parseRoadmap, serializeRoadmap, syncRoadmap, applySyncChanges, assignFeature } = await import("./dist-WCSJHQPK.js");
4070
+ const { parseRoadmap, serializeRoadmap, syncRoadmap, applySyncChanges, assignFeature } = await import("./dist-UMONICND.js");
4071
4071
  const { Ok: Ok2 } = await import("./dist-3EWNRFFQ.js");
4072
4072
  const projectPath = sanitizePath(input.path);
4073
4073
  const deps = {
@@ -4502,7 +4502,7 @@ async function handleTransition(validInput, projectPath, id) {
4502
4502
  const transition = transitionResult.data;
4503
4503
  const prompt = renderTransition(transition);
4504
4504
  try {
4505
- const { saveHandoff } = await import("./dist-WCSJHQPK.js");
4505
+ const { saveHandoff } = await import("./dist-UMONICND.js");
4506
4506
  await saveHandoff(
4507
4507
  projectPath,
4508
4508
  {
@@ -4570,7 +4570,7 @@ async function handleEmitInteraction(input) {
4570
4570
  }
4571
4571
  async function recordInteraction(projectPath, id, type, decision, stream) {
4572
4572
  try {
4573
- const { loadState, saveState } = await import("./dist-WCSJHQPK.js");
4573
+ const { loadState, saveState } = await import("./dist-UMONICND.js");
4574
4574
  const stateResult = await loadState(projectPath, stream);
4575
4575
  if (stateResult.ok) {
4576
4576
  const state = stateResult.value;
@@ -4717,10 +4717,10 @@ async function handleGatherContext(input) {
4717
4717
  input.include ?? ["state", "learnings", "handoff", "graph", "validation"]
4718
4718
  );
4719
4719
  const errors = [];
4720
- const statePromise = includeSet.has("state") ? import("./dist-WCSJHQPK.js").then(
4720
+ const statePromise = includeSet.has("state") ? import("./dist-UMONICND.js").then(
4721
4721
  (core) => core.loadState(projectPath, void 0, input.session)
4722
4722
  ) : Promise.resolve(null);
4723
- const learningsPromise = includeSet.has("learnings") ? import("./dist-WCSJHQPK.js").then(
4723
+ const learningsPromise = includeSet.has("learnings") ? import("./dist-UMONICND.js").then(
4724
4724
  (core) => core.loadBudgetedLearnings(projectPath, {
4725
4725
  intent: input.intent,
4726
4726
  tokenBudget: input.learningsBudget ?? 1e3,
@@ -4729,7 +4729,7 @@ async function handleGatherContext(input) {
4729
4729
  ...input.depth !== void 0 && { depth: input.depth }
4730
4730
  })
4731
4731
  ) : Promise.resolve(null);
4732
- const handoffPromise = includeSet.has("handoff") ? import("./dist-WCSJHQPK.js").then(
4732
+ const handoffPromise = includeSet.has("handoff") ? import("./dist-UMONICND.js").then(
4733
4733
  (core) => core.loadHandoff(projectPath, void 0, input.session)
4734
4734
  ) : Promise.resolve(null);
4735
4735
  const graphPromise = includeSet.has("graph") ? (async () => {
@@ -4773,11 +4773,11 @@ async function handleGatherContext(input) {
4773
4773
  context: contextBlocks
4774
4774
  };
4775
4775
  })() : Promise.resolve(null);
4776
- const sessionsPromise = includeSet.has("sessions") && input.session ? import("./dist-WCSJHQPK.js").then(
4776
+ const sessionsPromise = includeSet.has("sessions") && input.session ? import("./dist-UMONICND.js").then(
4777
4777
  (core) => core.readSessionSections(projectPath, input.session)
4778
4778
  ) : Promise.resolve(null);
4779
4779
  const shouldIncludeEvents = input.includeEvents !== void 0 ? input.includeEvents : includeSet.has("events") || !!input.session && !input.include;
4780
- const eventsPromise = shouldIncludeEvents ? import("./dist-WCSJHQPK.js").then(async (core) => {
4780
+ const eventsPromise = shouldIncludeEvents ? import("./dist-UMONICND.js").then(async (core) => {
4781
4781
  const result = await core.loadEvents(projectPath, {
4782
4782
  session: input.session
4783
4783
  });
@@ -4785,7 +4785,7 @@ async function handleGatherContext(input) {
4785
4785
  return core.formatEventTimeline(result.value);
4786
4786
  }) : Promise.resolve(null);
4787
4787
  const validationPromise = includeSet.has("validation") ? (async () => {
4788
- const { handleValidateProject: handleValidateProject2 } = await import("./validate-TIIHRPMA.js");
4788
+ const { handleValidateProject: handleValidateProject2 } = await import("./validate-ACIP5BUO.js");
4789
4789
  const result = await handleValidateProject2({ path: projectPath });
4790
4790
  const first = result.content[0];
4791
4791
  return first ? JSON.parse(first.text) : null;
@@ -4879,7 +4879,7 @@ async function handleGatherContext(input) {
4879
4879
  };
4880
4880
  if (input.session) {
4881
4881
  try {
4882
- const core = await import("./dist-WCSJHQPK.js");
4882
+ const core = await import("./dist-UMONICND.js");
4883
4883
  core.updateSessionIndex(
4884
4884
  projectPath,
4885
4885
  input.session,
@@ -5031,7 +5031,7 @@ async function handleReviewChanges(input) {
5031
5031
  }
5032
5032
  }
5033
5033
  async function runQuickReview(projectPath, diff, diffLines, downgraded, offset, limit) {
5034
- const { handleAnalyzeDiff: handleAnalyzeDiff2 } = await import("./feedback-ZLUX72HD.js");
5034
+ const { handleAnalyzeDiff: handleAnalyzeDiff2 } = await import("./feedback-I4QPE3RI.js");
5035
5035
  const result = await handleAnalyzeDiff2({ diff, path: projectPath });
5036
5036
  const firstContent = result.content[0];
5037
5037
  if (!firstContent) throw new Error("Empty analyze_diff response");
@@ -5066,7 +5066,7 @@ function extractFileCount(diffParsed) {
5066
5066
  return files?.length ?? 0;
5067
5067
  }
5068
5068
  async function runStandardReview(projectPath, diff, diffLines, downgraded, offset, limit) {
5069
- const { handleAnalyzeDiff: handleAnalyzeDiff2, handleCreateSelfReview: handleCreateSelfReview2 } = await import("./feedback-ZLUX72HD.js");
5069
+ const { handleAnalyzeDiff: handleAnalyzeDiff2, handleCreateSelfReview: handleCreateSelfReview2 } = await import("./feedback-I4QPE3RI.js");
5070
5070
  const [diffResult, reviewResult] = await Promise.all([
5071
5071
  handleAnalyzeDiff2({ diff, path: projectPath }),
5072
5072
  handleCreateSelfReview2({ path: projectPath, diff })
@@ -5101,7 +5101,7 @@ async function runStandardReview(projectPath, diff, diffLines, downgraded, offse
5101
5101
  };
5102
5102
  }
5103
5103
  async function runDeepReview(projectPath, diff, diffLines, _downgraded, offset, limit) {
5104
- const { handleRunCodeReview: handleRunCodeReview2 } = await import("./review-pipeline-ZWVQJTJX.js");
5104
+ const { handleRunCodeReview: handleRunCodeReview2 } = await import("./review-pipeline-PWPKJXSN.js");
5105
5105
  const result = await handleRunCodeReview2({
5106
5106
  path: projectPath,
5107
5107
  diff,
@@ -5395,7 +5395,7 @@ async function handleDetectStaleConstraints(input) {
5395
5395
  ]
5396
5396
  };
5397
5397
  }
5398
- const { detectStaleConstraints } = await import("./dist-WCSJHQPK.js");
5398
+ const { detectStaleConstraints } = await import("./dist-UMONICND.js");
5399
5399
  const result = detectStaleConstraints(
5400
5400
  store,
5401
5401
  windowDays,
@@ -5515,10 +5515,10 @@ function countCriticalFindings(securityData) {
5515
5515
  return findings.filter((f) => f.severity === "error").length;
5516
5516
  }
5517
5517
  async function runHealthChecks(projectPath) {
5518
- const { handleAssessProject: handleAssessProject2 } = await import("./assess-project-6MV5TNY3.js");
5519
- const { handleCheckDependencies: handleCheckDependencies2 } = await import("./architecture-HNIO6AUX.js");
5520
- const { handleDetectEntropy: handleDetectEntropy2 } = await import("./entropy-EMSXF2PX.js");
5521
- const { handleRunSecurityScan: handleRunSecurityScan2 } = await import("./security-JLZUAQYT.js");
5518
+ const { handleAssessProject: handleAssessProject2 } = await import("./assess-project-JQPEVJIA.js");
5519
+ const { handleCheckDependencies: handleCheckDependencies2 } = await import("./architecture-EYPG4ZMC.js");
5520
+ const { handleDetectEntropy: handleDetectEntropy2 } = await import("./entropy-GEBHWBPR.js");
5521
+ const { handleRunSecurityScan: handleRunSecurityScan2 } = await import("./security-OVTGS7DL.js");
5522
5522
  const [assessResult, depsResult, entropyResult, securityResult] = await Promise.all([
5523
5523
  handleAssessProject2({
5524
5524
  path: projectPath,
@@ -6315,7 +6315,7 @@ async function handleGetDecayTrends(input) {
6315
6315
  };
6316
6316
  }
6317
6317
  try {
6318
- const core = await import("./dist-WCSJHQPK.js");
6318
+ const core = await import("./dist-UMONICND.js");
6319
6319
  const { TimelineManager } = core;
6320
6320
  const manager = new TimelineManager(projectPath);
6321
6321
  const timeline = manager.load();
@@ -6450,7 +6450,7 @@ async function handleCodeOutline(input) {
6450
6450
  };
6451
6451
  }
6452
6452
  try {
6453
- const { getOutline, formatOutline, EXTENSION_MAP } = await import("./dist-WCSJHQPK.js");
6453
+ const { getOutline, formatOutline, EXTENSION_MAP } = await import("./dist-UMONICND.js");
6454
6454
  const { stat } = await import("fs/promises");
6455
6455
  const stats = await stat(targetPath).catch(() => null);
6456
6456
  if (stats?.isFile()) {
@@ -6469,7 +6469,7 @@ async function handleCodeOutline(input) {
6469
6469
  })
6470
6470
  );
6471
6471
  fileStats.sort((a, b) => b.mtimeMs - a.mtimeMs);
6472
- const { paginate: paginate2 } = await import("./dist-WCSJHQPK.js");
6472
+ const { paginate: paginate2 } = await import("./dist-UMONICND.js");
6473
6473
  const paged = paginate2(fileStats, input.offset ?? 0, input.limit ?? 30);
6474
6474
  const results = [];
6475
6475
  for (const entry of paged.items) {
@@ -6542,7 +6542,7 @@ async function handleCodeSearch(input) {
6542
6542
  };
6543
6543
  }
6544
6544
  try {
6545
- const { searchSymbols } = await import("./dist-WCSJHQPK.js");
6545
+ const { searchSymbols } = await import("./dist-UMONICND.js");
6546
6546
  const result = await searchSymbols(input.query, directory, input.glob);
6547
6547
  const lines = [`Search: "${result.query}" \u2014 ${result.matches.length} matches`];
6548
6548
  for (const match of result.matches) {
@@ -6611,7 +6611,7 @@ async function handleCodeUnfold(input) {
6611
6611
  }
6612
6612
  try {
6613
6613
  if (input.symbol) {
6614
- const { unfoldSymbol } = await import("./dist-WCSJHQPK.js");
6614
+ const { unfoldSymbol } = await import("./dist-UMONICND.js");
6615
6615
  const result = await unfoldSymbol(filePath, input.symbol);
6616
6616
  const header = result.warning ? `${result.file}:${result.startLine}-${result.endLine} ${result.warning}
6617
6617
  ` : `${result.file}:${result.startLine}-${result.endLine}
@@ -6619,7 +6619,7 @@ async function handleCodeUnfold(input) {
6619
6619
  return { content: [{ type: "text", text: header + result.content }] };
6620
6620
  }
6621
6621
  if (input.startLine != null && input.endLine != null) {
6622
- const { unfoldRange } = await import("./dist-WCSJHQPK.js");
6622
+ const { unfoldRange } = await import("./dist-UMONICND.js");
6623
6623
  const result = await unfoldRange(filePath, input.startLine, input.endLine);
6624
6624
  const header = `${result.file}:${result.startLine}-${result.endLine}
6625
6625
  `;
@@ -6804,7 +6804,7 @@ async function handlePredictFailures(input) {
6804
6804
  };
6805
6805
  }
6806
6806
  try {
6807
- const core = await import("./dist-WCSJHQPK.js");
6807
+ const core = await import("./dist-UMONICND.js");
6808
6808
  const { TimelineManager, PredictionEngine, SpecImpactEstimator } = core;
6809
6809
  const manager = new TimelineManager(projectPath);
6810
6810
  const includeRoadmap = input.includeRoadmap !== false;
@@ -7220,7 +7220,7 @@ async function handleDetectConstraintEmergence(input) {
7220
7220
  }
7221
7221
  const nodePath = await import("path");
7222
7222
  const historyPath = nodePath.resolve(projectPath, ".harness/arch/violation-history.json");
7223
- const { ViolationHistoryManager, detectEmergentConstraints } = await import("./dist-WCSJHQPK.js");
7223
+ const { ViolationHistoryManager, detectEmergentConstraints } = await import("./dist-UMONICND.js");
7224
7224
  const manager = new ViolationHistoryManager(historyPath);
7225
7225
  const history = manager.load();
7226
7226
  const options = { windowWeeks, minOccurrences };
@@ -7462,7 +7462,7 @@ async function appendUpdateNotification(result, resolvedRoot) {
7462
7462
  shouldRunCheck,
7463
7463
  readCheckState,
7464
7464
  spawnBackgroundCheck
7465
- } = await import("./dist-WCSJHQPK.js");
7465
+ } = await import("./dist-UMONICND.js");
7466
7466
  const { CLI_VERSION } = await import("./version-CUI434OP.js");
7467
7467
  const configInterval = readConfigInterval(resolvedRoot);
7468
7468
  const DEFAULT_INTERVAL = 864e5;
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  ArchConfigSchema,
3
3
  init_dist
4
- } from "./chunk-MI6MA6OP.js";
4
+ } from "./chunk-KHMKAC6E.js";
5
5
  import {
6
6
  Err,
7
7
  Ok
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  resolveConfig
3
- } from "./chunk-WIQA4BSH.js";
3
+ } from "./chunk-5R2LFUU3.js";
4
4
  import {
5
5
  init_dist
6
- } from "./chunk-MI6MA6OP.js";
6
+ } from "./chunk-KHMKAC6E.js";
7
7
  import {
8
8
  Ok
9
9
  } from "./chunk-RL4VMEXL.js";
@@ -4,7 +4,7 @@ import {
4
4
  import {
5
5
  init_dist,
6
6
  paginate
7
- } from "./chunk-MI6MA6OP.js";
7
+ } from "./chunk-KHMKAC6E.js";
8
8
 
9
9
  // src/mcp/tools/review-pipeline.ts
10
10
  init_dist();
@@ -79,7 +79,7 @@ var runCodeReviewDefinition = {
79
79
  };
80
80
  async function handleRunCodeReview(input) {
81
81
  try {
82
- const { parseDiff, runReviewPipeline } = await import("./dist-WCSJHQPK.js");
82
+ const { parseDiff, runReviewPipeline } = await import("./dist-UMONICND.js");
83
83
  const parseResult = parseDiff(input.diff);
84
84
  if (!parseResult.ok) {
85
85
  return {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  resolveProjectConfig
3
- } from "./chunk-47N6R2F4.js";
3
+ } from "./chunk-UI6NWJJK.js";
4
4
  import {
5
5
  resultToMcpResponse
6
6
  } from "./chunk-EPUKTTJZ.js";
@@ -38,7 +38,7 @@ async function handleCheckDependencies(input) {
38
38
  const configResult = resolveProjectConfig(projectPath);
39
39
  if (!configResult.ok) return resultToMcpResponse(configResult);
40
40
  try {
41
- const { validateDependencies, TypeScriptParser } = await import("./dist-WCSJHQPK.js");
41
+ const { validateDependencies, TypeScriptParser } = await import("./dist-UMONICND.js");
42
42
  const config = configResult.value;
43
43
  const rawLayers = Array.isArray(config.layers) ? config.layers : [];
44
44
  const layers = rawLayers.map((l) => ({
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  init_dist
3
- } from "./chunk-MI6MA6OP.js";
3
+ } from "./chunk-KHMKAC6E.js";
4
4
  import {
5
5
  Err,
6
6
  Ok