nexus-agents 8.104.0 → 8.104.1

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.
@@ -12,7 +12,7 @@ import {
12
12
  NODE_ENGINE_RANGE,
13
13
  VERSION,
14
14
  isNodeVersionSupported
15
- } from "./chunk-TFTEMPOC.js";
15
+ } from "./chunk-RPJEWHJ4.js";
16
16
  import {
17
17
  allOf
18
18
  } from "./chunk-EZNIYU5T.js";
@@ -1385,7 +1385,7 @@ async function runDoctorFix(result) {
1385
1385
  writeLine2("\u2500".repeat(40));
1386
1386
  let fixCount = 0;
1387
1387
  if (!result.dataDirectory.rootExists || result.dataDirectory.subdirectories.some((d) => !d.exists || !d.writable)) {
1388
- const { initDataDirectories: initDataDirectories2, describeDataDirFix: describeDataDirFix2 } = await import("./setup-data-dir-MW73EVGZ.js");
1388
+ const { initDataDirectories: initDataDirectories2, describeDataDirFix: describeDataDirFix2 } = await import("./setup-data-dir-JXA3XHH2.js");
1389
1389
  const outcome = describeDataDirFix2(initDataDirectories2());
1390
1390
  writeLine2(outcome.line);
1391
1391
  if (outcome.counted) fixCount++;
@@ -1487,4 +1487,4 @@ export {
1487
1487
  startStdioServer,
1488
1488
  closeServer
1489
1489
  };
1490
- //# sourceMappingURL=chunk-WGPG74RS.js.map
1490
+ //# sourceMappingURL=chunk-2SQG5GNR.js.map
@@ -19,10 +19,10 @@ import {
19
19
  toolSuccessStructured,
20
20
  withProgressHeartbeat,
21
21
  wrapToolWithTimeout
22
- } from "./chunk-U5FUT4LQ.js";
22
+ } from "./chunk-OMC5ZQVL.js";
23
23
  import {
24
24
  VERSION
25
- } from "./chunk-TFTEMPOC.js";
25
+ } from "./chunk-RPJEWHJ4.js";
26
26
  import {
27
27
  allOf
28
28
  } from "./chunk-EZNIYU5T.js";
@@ -9899,4 +9899,4 @@ export {
9899
9899
  CONSENSUS_VOTE_TOOL_SCHEMA,
9900
9900
  registerConsensusVoteTool
9901
9901
  };
9902
- //# sourceMappingURL=chunk-6GPHTV3W.js.map
9902
+ //# sourceMappingURL=chunk-DJBGISVS.js.map
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk-LSSX77DS.js";
10
10
  import {
11
11
  withPrerequisite
12
- } from "./chunk-LFP4G323.js";
12
+ } from "./chunk-N5IAT32S.js";
13
13
  import {
14
14
  generateSecurityPlan
15
15
  } from "./chunk-SGRWJW57.js";
@@ -36,7 +36,7 @@ import {
36
36
  import {
37
37
  DEFAULT_TASK_TTL_MS,
38
38
  clampTaskTtl
39
- } from "./chunk-WGPG74RS.js";
39
+ } from "./chunk-2SQG5GNR.js";
40
40
  import {
41
41
  executeExpert
42
42
  } from "./chunk-RSDRQQTA.js";
@@ -89,7 +89,7 @@ import {
89
89
  withFileLock,
90
90
  withWarnings,
91
91
  writeJobCancelled
92
- } from "./chunk-6GPHTV3W.js";
92
+ } from "./chunk-DJBGISVS.js";
93
93
  import {
94
94
  NOOP_NOTIFIER,
95
95
  RateLimiter,
@@ -117,10 +117,10 @@ import {
117
117
  toolSuccessStructured,
118
118
  withProgressHeartbeat,
119
119
  wrapToolWithTimeout
120
- } from "./chunk-U5FUT4LQ.js";
120
+ } from "./chunk-OMC5ZQVL.js";
121
121
  import {
122
122
  VERSION
123
- } from "./chunk-TFTEMPOC.js";
123
+ } from "./chunk-RPJEWHJ4.js";
124
124
  import {
125
125
  allOf,
126
126
  anyOf
@@ -38095,7 +38095,7 @@ function threatModelHandler(state) {
38095
38095
  if (threats.length === 0) threats.push("No significant threat surfaces");
38096
38096
  return Promise.resolve({
38097
38097
  threat_model: `Threat model: ${threats.join("; ")}`,
38098
- steps: [`[claude] Threat modeling: ${String(threats.length)} surfaces identified`]
38098
+ steps: [`[heuristic] Threat surfaces: ${String(threats.length)} identified`]
38099
38099
  });
38100
38100
  }
38101
38101
  function codeAnalysisHandler(state) {
@@ -38109,7 +38109,7 @@ function codeAnalysisHandler(state) {
38109
38109
  if (findings.length === 0) findings.push("No static analysis issues");
38110
38110
  return Promise.resolve({
38111
38111
  code_analysis: `Code analysis: ${findings.join("; ")}`,
38112
- steps: [`[codex] Static analysis: ${String(findings.length)} findings`]
38112
+ steps: [`[heuristic] Static patterns: ${String(findings.length)} findings`]
38113
38113
  });
38114
38114
  }
38115
38115
  function docReviewHandler(state) {
@@ -38121,7 +38121,7 @@ function docReviewHandler(state) {
38121
38121
  if (gaps.length === 0) gaps.push("Documentation adequate");
38122
38122
  return Promise.resolve({
38123
38123
  doc_review: `Doc review: ${gaps.join("; ")}`,
38124
- steps: [`[gemini] Documentation review: ${String(gaps.length)} gaps found`]
38124
+ steps: [`[heuristic] Doc-tag check: ${String(gaps.length)} gaps found`]
38125
38125
  });
38126
38126
  }
38127
38127
  function synthesizeAuditHandler(state) {
@@ -38133,7 +38133,7 @@ function synthesizeAuditHandler(state) {
38133
38133
  ${tm}
38134
38134
  ${ca}
38135
38135
  ${dr}`;
38136
- return Promise.resolve({ report, steps: ["[claude] Synthesized audit report"] });
38136
+ return Promise.resolve({ report, steps: ["[heuristic] Concatenated audit report"] });
38137
38137
  }
38138
38138
  function createSecurityAuditGraph() {
38139
38139
  const result = new GraphBuilder().addState("code", overwrite("")).addState("threat_model", overwrite("")).addState("code_analysis", overwrite("")).addState("doc_review", overwrite("")).addState("report", overwrite("")).addState("steps", append()).addNode("threat_model", threatModelHandler).addNode("code_analysis", codeAnalysisHandler).addNode("doc_review", docReviewHandler).addNode("synthesize", synthesizeAuditHandler).addEdge(START, "threat_model").addEdge("threat_model", "code_analysis").addEdge("code_analysis", "doc_review").addEdge("doc_review", "synthesize").addEdge("synthesize", END).compile();
@@ -38150,7 +38150,7 @@ function generateTestsHandler(state) {
38150
38150
  if (tests.length === 0) tests.push("// No functions found to test");
38151
38151
  return Promise.resolve({
38152
38152
  tests: tests.join("\n"),
38153
- steps: [`[codex] Generated ${String(tests.length)} test(s)`]
38153
+ steps: [`[heuristic] Test stubs: ${String(tests.length)} generated`]
38154
38154
  });
38155
38155
  }
38156
38156
  function reviewCoverageHandler(state) {
@@ -38163,7 +38163,7 @@ function reviewCoverageHandler(state) {
38163
38163
  if (gaps.length === 0) gaps.push("Coverage appears adequate");
38164
38164
  return Promise.resolve({
38165
38165
  review: `Coverage review: ${gaps.join("; ")}`,
38166
- steps: [`[claude] Coverage review: ${String(gaps.length)} gap(s)`]
38166
+ steps: [`[heuristic] Coverage keyword check: ${String(gaps.length)} gap(s)`]
38167
38167
  });
38168
38168
  }
38169
38169
  function researchEdgeCasesHandler(state) {
@@ -38175,7 +38175,7 @@ function researchEdgeCasesHandler(state) {
38175
38175
  if (edges.length === 0) edges.push("No obvious edge cases");
38176
38176
  return Promise.resolve({
38177
38177
  edge_cases: `Edge cases: ${edges.join("; ")}`,
38178
- steps: [`[gemini] Researched ${String(edges.length)} edge case(s)`]
38178
+ steps: [`[heuristic] Edge-case keyword check: ${String(edges.length)} edge case(s)`]
38179
38179
  });
38180
38180
  }
38181
38181
  function compileTestReportHandler(state) {
@@ -38187,7 +38187,7 @@ function compileTestReportHandler(state) {
38187
38187
  ${tests}
38188
38188
  ${review}
38189
38189
  ${edgeCases}`;
38190
- return Promise.resolve({ report, steps: ["[claude] Compiled test report"] });
38190
+ return Promise.resolve({ report, steps: ["[heuristic] Concatenated test report"] });
38191
38191
  }
38192
38192
  function createTestGenerationGraph() {
38193
38193
  const result = new GraphBuilder().addState("code", overwrite("")).addState("tests", overwrite("")).addState("review", overwrite("")).addState("edge_cases", overwrite("")).addState("report", overwrite("")).addState("steps", append()).addNode("generate_tests", generateTestsHandler).addNode("review_coverage", reviewCoverageHandler).addNode("research_edge_cases", researchEdgeCasesHandler).addNode("compile_report", compileTestReportHandler).addEdge(START, "generate_tests").addEdge("generate_tests", "review_coverage").addEdge("review_coverage", "research_edge_cases").addEdge("research_edge_cases", "compile_report").addEdge("compile_report", END).compile();
@@ -38203,7 +38203,7 @@ function researchGatherHandler(state) {
38203
38203
  if (imports.length > 0) research.push(`Dependencies: ${String(imports.length)} imports`);
38204
38204
  return Promise.resolve({
38205
38205
  research: research.join("; "),
38206
- steps: [`[gemini] Gathered research on "${topic}"`]
38206
+ steps: [`[heuristic] Export/import scan for "${topic}"`]
38207
38207
  });
38208
38208
  }
38209
38209
  function writeStructureHandler(state) {
@@ -38218,7 +38218,7 @@ ${research}`,
38218
38218
  ];
38219
38219
  return Promise.resolve({
38220
38220
  content: sections.join("\n\n"),
38221
- steps: [`[claude] Structured documentation for "${topic}"`]
38221
+ steps: [`[heuristic] Documentation skeleton for "${topic}"`]
38222
38222
  });
38223
38223
  }
38224
38224
  function codeExamplesHandler(state) {
@@ -38234,7 +38234,7 @@ const result = ${name}();
38234
38234
  if (examples.length === 0) examples.push("```typescript\n// No exported functions found\n```");
38235
38235
  return Promise.resolve({
38236
38236
  examples: examples.join("\n\n"),
38237
- steps: [`[codex] Generated ${String(examples.length)} code example(s)`]
38237
+ steps: [`[heuristic] Example stubs: ${String(examples.length)} generated`]
38238
38238
  });
38239
38239
  }
38240
38240
  function assembleDocHandler(state) {
@@ -38245,7 +38245,7 @@ function assembleDocHandler(state) {
38245
38245
  ## Code Examples
38246
38246
 
38247
38247
  ${examples}`;
38248
- return Promise.resolve({ output: output2, steps: ["[claude] Assembled final documentation"] });
38248
+ return Promise.resolve({ output: output2, steps: ["[heuristic] Assembled documentation"] });
38249
38249
  }
38250
38250
  function createDocumentationGraph() {
38251
38251
  const result = new GraphBuilder().addState("topic", overwrite("")).addState("code", overwrite("")).addState("research", overwrite("")).addState("content", overwrite("")).addState("examples", overwrite("")).addState("output", overwrite("")).addState("steps", append()).addNode("research_gather", researchGatherHandler).addNode("write_structure", writeStructureHandler).addNode("code_examples", codeExamplesHandler).addNode("assemble", assembleDocHandler).addEdge(START, "research_gather").addEdge("research_gather", "write_structure").addEdge("write_structure", "code_examples").addEdge("code_examples", "assemble").addEdge("assemble", END).compile();
@@ -38257,7 +38257,7 @@ function getMultiCliTemplates() {
38257
38257
  factory: createSecurityAuditGraph,
38258
38258
  metadata: {
38259
38259
  name: "security-audit",
38260
- description: "Multi-CLI security audit: Claude (threats) -> Codex (code) -> Gemini (docs) -> synthesis",
38260
+ description: "Heuristic security audit (local keyword checks, calls no model): threat surfaces -> static patterns -> doc gaps -> report",
38261
38261
  inputFields: ["code"],
38262
38262
  nodeCount: 4,
38263
38263
  hasConditionalEdges: false
@@ -38268,7 +38268,7 @@ function getMultiCliTemplates() {
38268
38268
  factory: createTestGenerationGraph,
38269
38269
  metadata: {
38270
38270
  name: "test-generation",
38271
- description: "Multi-CLI test gen: Codex (tests) -> Claude (review) -> Gemini (edges) -> report",
38271
+ description: "Heuristic test gen (local keyword checks, calls no model): test stubs -> coverage gaps -> edge cases -> report",
38272
38272
  inputFields: ["code"],
38273
38273
  nodeCount: 4,
38274
38274
  hasConditionalEdges: false
@@ -38279,7 +38279,7 @@ function getMultiCliTemplates() {
38279
38279
  factory: createDocumentationGraph,
38280
38280
  metadata: {
38281
38281
  name: "documentation",
38282
- description: "Multi-CLI docs: Gemini (research) -> Claude (write) -> Codex (examples) -> assemble",
38282
+ description: "Heuristic docs (local regex scan, calls no model): exports/imports -> skeleton -> example stubs -> assemble",
38283
38283
  inputFields: ["topic", "code"],
38284
38284
  nodeCount: 4,
38285
38285
  hasConditionalEdges: false
@@ -41533,7 +41533,7 @@ async function handleRunGraphWorkflow(input, logger60, auditLogger, job) {
41533
41533
  checkpointCount
41534
41534
  };
41535
41535
  }
41536
- var GRAPH_WORKFLOW_DESCRIPTION = "Run a DAG-shaped workflow with per-node checkpoints, event streaming, and an audit trail. Checkpoints drive the executor in-process recovery (crash-resume + selective node retry) and inspection \u2014 the MCP call is fire-and-forget with NO caller resume input, and the checkpoint store is in-memory (not durable across process restarts). For straight linear templates, use `run_workflow` instead. Supports dispatch: 'async' \u2014 returns a jobId immediately; poll get_job_result.";
41536
+ var GRAPH_WORKFLOW_DESCRIPTION = "Run a DAG-shaped workflow with per-node checkpoints, event streaming, and an audit trail. Checkpoints drive the executor in-process recovery (crash-resume + selective node retry) and inspection \u2014 the MCP call is fire-and-forget with NO caller resume input, and the checkpoint store is in-memory (not durable across process restarts). For straight linear templates, use `run_workflow` instead. The security-audit, test-generation and documentation templates run local heuristic keyword checks and call no model. Their steps are labelled `[heuristic]` (#6676). Supports dispatch: 'async' \u2014 returns a jobId immediately; poll get_job_result.";
41537
41537
  var GRAPH_WORKFLOW_SCHEMA = {
41538
41538
  workflow: z78.string().min(1).max(100).describe(
41539
41539
  'Workflow name: echo, pipeline, code-review, security-scan. Use "list" for available workflows.'
@@ -46832,7 +46832,7 @@ function buildVotingInput(plan, config) {
46832
46832
  }
46833
46833
  async function executeSingleVote(plan, config, log) {
46834
46834
  try {
46835
- const { executeVoting } = await import("./consensus-vote-JNRDRQCA.js");
46835
+ const { executeVoting } = await import("./consensus-vote-R72RJP4R.js");
46836
46836
  const input = buildVotingInput(plan, config);
46837
46837
  const result = await executeVoting(input, log);
46838
46838
  return parseVotingResult(result);
@@ -47807,7 +47807,7 @@ function createVoteStage({ config, startStage }) {
47807
47807
  const strategy = config.votingStrategy ?? "higher_order";
47808
47808
  await postProgress(config, "Vote", `Running consensus with ${strategy} strategy...`);
47809
47809
  try {
47810
- const { executeVoting } = await import("./consensus-vote-JNRDRQCA.js");
47810
+ const { executeVoting } = await import("./consensus-vote-R72RJP4R.js");
47811
47811
  const votingResult = await executeVoting(
47812
47812
  {
47813
47813
  proposal: buildVoteProposal(plan, research),
@@ -57113,4 +57113,4 @@ export {
57113
57113
  startPipelineEventBridge,
57114
57114
  shutdownPipelineEventBridge
57115
57115
  };
57116
- //# sourceMappingURL=chunk-MT4SZ6U4.js.map
57116
+ //# sourceMappingURL=chunk-KVYCAFFT.js.map