nexus-agents 2.137.0 → 2.138.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.
package/README.md CHANGED
@@ -99,20 +99,22 @@ Add to your Claude Desktop configuration (`~/Library/Application Support/Claude/
99
99
 
100
100
  The Orchestrator agent analyzes incoming tasks and delegates to specialized experts:
101
101
 
102
- | Expert | Specialization |
103
- | ------------------------- | ------------------------------------------------------ |
104
- | **Code Expert** | Implementation, debugging, optimization, refactoring |
105
- | **Architecture Expert** | System design, patterns, trade-offs, scalability |
106
- | **Security Expert** | Vulnerability analysis, secure coding, threat modeling |
107
- | **Documentation Expert** | Technical writing, API docs, code comments |
108
- | **Testing Expert** | Test strategies, coverage analysis, test generation |
109
- | **DevOps Expert** | CI/CD, deployment, containerization |
110
- | **Research Expert** | Literature review, state-of-the-art analysis |
111
- | **PM Expert** | Product management, requirements, priorities |
112
- | **UX Expert** | User experience, usability, accessibility |
113
- | **Infrastructure Expert** | Server management, bare metal, networking |
114
-
115
- Experts can collaborate on complex tasks. The Orchestrator combines their outputs into a single response.
102
+ | Expert | Specialization |
103
+ | ----------------------------- | ------------------------------------------------------ |
104
+ | **Code Expert** | Implementation, debugging, optimization, refactoring |
105
+ | **Architecture Expert** | System design, patterns, trade-offs, scalability |
106
+ | **Security Expert** | Vulnerability analysis, secure coding, threat modeling |
107
+ | **Documentation Expert** | Technical writing, API docs, code comments |
108
+ | **Testing Expert** | Test strategies, coverage analysis, test generation |
109
+ | **DevOps Expert** | CI/CD, deployment, containerization |
110
+ | **Research Expert** | Literature review, state-of-the-art analysis |
111
+ | **PM Expert** | Product management, requirements, priorities |
112
+ | **UX Expert** | User experience, usability, accessibility |
113
+ | **Infrastructure Expert** | Server management, bare metal, networking |
114
+ | **QA Expert** | Quality gates, test-plan review, defect triage |
115
+ | **Data-Visualization Expert** | Charts, diagrams, dashboards, data presentation |
116
+
117
+ All twelve expert types can collaborate on complex tasks. The Orchestrator combines their outputs into a single response.
116
118
 
117
119
  ### Model Adapters
118
120
 
@@ -155,7 +157,7 @@ steps:
155
157
 
156
158
  ### MCP Tools
157
159
 
158
- The server exposes 42 MCP tools for integration. Key tools include:
160
+ The server exposes 46 MCP tools for integration. Key tools include:
159
161
 
160
162
  | Tool | Description |
161
163
  | -------------------- | ---------------------------------------------- |
@@ -171,7 +173,7 @@ The server exposes 42 MCP tools for integration. Key tools include:
171
173
  | `repo_analyze` | Analyze GitHub repository structure |
172
174
  | `repo_security_plan` | Generate security scanning pipeline for a repo |
173
175
 
174
- See the root [README](../../README.md) for the complete tool list.
176
+ See the [root README](https://github.com/nexus-substrate/nexus-agents/blob/main/README.md) for the complete tool list.
175
177
 
176
178
  ---
177
179
 
@@ -204,7 +206,7 @@ nexus-agents/
204
206
  └── pnpm-workspace.yaml
205
207
  ```
206
208
 
207
- See [docs/architecture/README.md](../../docs/architecture/README.md) for detailed module descriptions.
209
+ See [docs/architecture/README.md](https://github.com/nexus-substrate/nexus-agents/blob/main/docs/architecture/README.md) for detailed module descriptions.
208
210
 
209
211
  ### Dependency Flow
210
212
 
@@ -280,7 +282,7 @@ import {
280
282
  // Create individual adapters
281
283
  const claude = createClaudeAdapter({ model: 'claude-sonnet-4-6' });
282
284
  const openai = createOpenAIAdapter({ model: 'gpt-4o' });
283
- const gemini = createGeminiAdapter({ model: 'gemini-1.5-pro' });
285
+ const gemini = createGeminiAdapter({ model: 'gemini-3-pro' });
284
286
  const ollama = createOllamaAdapter({ model: 'llama3:8b' });
285
287
 
286
288
  // Or use the factory
@@ -379,11 +381,11 @@ We welcome contributions! Please see our guidelines:
379
381
 
380
382
  - Files must be under 400 lines
381
383
  - Functions must be under 50 lines
382
- - Test coverage must be at least 80%
384
+ - Coverage thresholds: 60% statements/functions/lines, 50% branches (`vitest.config.ts`)
383
385
  - All code must pass linting and type checking
384
386
 
385
- See [CODING_STANDARDS.md](../../CODING_STANDARDS.md) for detailed guidelines.
386
- See [CONTRIBUTING.md](../../CONTRIBUTING.md) for contribution workflow.
387
+ See [CODING_STANDARDS.md](https://github.com/nexus-substrate/nexus-agents/blob/main/CODING_STANDARDS.md) for detailed guidelines.
388
+ See [CONTRIBUTING.md](https://github.com/nexus-substrate/nexus-agents/blob/main/CONTRIBUTING.md) for contribution workflow.
387
389
 
388
390
  ### Commit Convention
389
391
 
@@ -402,7 +404,7 @@ chore(scope): maintenance tasks
402
404
 
403
405
  ## License
404
406
 
405
- MIT - See [LICENSE](../../LICENSE) for details.
407
+ MIT - See [LICENSE](https://github.com/nexus-substrate/nexus-agents/blob/main/LICENSE) for details.
406
408
 
407
409
  ---
408
410
 
@@ -42,7 +42,7 @@ import {
42
42
  } from "./chunk-DHVMSIT5.js";
43
43
 
44
44
  // src/version.ts
45
- var VERSION = true ? "2.137.0" : "dev";
45
+ var VERSION = true ? "2.138.1" : "dev";
46
46
 
47
47
  // src/config/schemas-core.ts
48
48
  import { z } from "zod";
@@ -2132,7 +2132,7 @@ async function runDoctorFix(result) {
2132
2132
  writeLine2("\u2500".repeat(40));
2133
2133
  let fixCount = 0;
2134
2134
  if (!result.dataDirectory.rootExists || result.dataDirectory.subdirectories.some((d) => !d.exists || !d.writable)) {
2135
- const { runSetup } = await import("./setup-command-TIGCMJRZ.js");
2135
+ const { runSetup } = await import("./setup-command-I3WAJY2X.js");
2136
2136
  const setupResult = runSetup({
2137
2137
  skipMcp: true,
2138
2138
  skipRules: true,
@@ -2245,4 +2245,4 @@ export {
2245
2245
  startStdioServer,
2246
2246
  closeServer
2247
2247
  };
2248
- //# sourceMappingURL=chunk-DPHEFR5X.js.map
2248
+ //# sourceMappingURL=chunk-BQA5LM72.js.map
@@ -18,7 +18,7 @@ import {
18
18
  DEFAULT_TASK_TTL_MS,
19
19
  DEFAULT_TOOL_RATE_LIMITS,
20
20
  clampTaskTtl
21
- } from "./chunk-DPHEFR5X.js";
21
+ } from "./chunk-BQA5LM72.js";
22
22
  import {
23
23
  executeExpert
24
24
  } from "./chunk-7QR2RTA4.js";
@@ -40,7 +40,7 @@ import {
40
40
  toJobSummary,
41
41
  warnIfSimulatedOutsideTests,
42
42
  writeJobCancelled
43
- } from "./chunk-HC5CUX6C.js";
43
+ } from "./chunk-NWW7HLRL.js";
44
44
  import {
45
45
  normalizeTopicToCanonical,
46
46
  synthesizeResearch
@@ -40046,32 +40046,6 @@ var TierTransitionPayloadSchema = z85.object({
40046
40046
  ratificationVoteRef: z85.string().min(1).optional()
40047
40047
  }).strict();
40048
40048
  var TIER_TRANSITION_METADATA_KEY = "tierTransition";
40049
- var RatificationVoteSchema = z85.object({
40050
- /** The ref a tier-transition's `ratificationVoteRef` must equal to resolve. */
40051
- id: z85.string().min(1),
40052
- /** The loop/strategy the vote ratified (cross-checked against the transition subject). */
40053
- subject: z85.string().min(1),
40054
- /**
40055
- * The recorded decision. Only `approved` ratifies a promotion; `rejected`
40056
- * fails the gate (`promotion-ratification-not-approved`).
40057
- */
40058
- decision: z85.enum(["approved", "rejected"]),
40059
- /**
40060
- * The voting strategy. A promotion is governance-of-the-governor and must be
40061
- * ratified by a `higher_order` consensus_vote (ADR-0017).
40062
- */
40063
- strategy: z85.enum(["higher_order", "simple_majority", "supermajority", "unanimous"]),
40064
- /** ISO-8601 timestamp the vote was recorded. */
40065
- votedAt: z85.string().min(1),
40066
- /** Optional approval fraction / quorum detail, for the human record. */
40067
- approvalPercentage: z85.number().min(0).max(100).optional(),
40068
- /** Optional link to the vote artifact / issue thread for the human record. */
40069
- voteUri: z85.string().min(1).optional()
40070
- }).strict();
40071
- var RatificationVoteLedgerSchema = z85.object({
40072
- version: z85.number().int().positive(),
40073
- votes: z85.array(RatificationVoteSchema)
40074
- }).strict();
40075
40049
  var AuditSeveritySchema = z85.enum([
40076
40050
  "info",
40077
40051
  // Normal operations
@@ -43409,7 +43383,7 @@ ${contextBlock}`;
43409
43383
  const strategy = config.votingStrategy ?? "higher_order";
43410
43384
  await postProgress(config, "Vote", `Running consensus with ${strategy} strategy...`);
43411
43385
  try {
43412
- const { executeVoting } = await import("./consensus-vote-HHA73ME6.js");
43386
+ const { executeVoting } = await import("./consensus-vote-PCIFXILX.js");
43413
43387
  const votingResult = await executeVoting(
43414
43388
  {
43415
43389
  proposal: buildVoteProposal(plan, research),
@@ -46633,6 +46607,13 @@ function buildDefaultExecutors(trustTier) {
46633
46607
  return {
46634
46608
  "dev-pipeline": (_decision, metaInput) => runDevPipelineForGoal(metaInput.goal, trustTier),
46635
46609
  pipeline: (_decision, metaInput) => runPipelineForGoal(metaInput.goal),
46610
+ // #3988: `research` deliberately ALIASES the `pipeline` engine — it runs the
46611
+ // SAME generic stage registry (selectStageRegistry only branches greenfield/
46612
+ // audit), shaped by the goal text, NOT a distinct research stage registry.
46613
+ // The registry's research `entrypointTool` already points at run_pipeline, so
46614
+ // this is intended aliasing, not a distinct executor. A real research-shaped
46615
+ // registry is a feature with no current consumer (YAGNI) — add it only when a
46616
+ // named loop needs research-specific stages; until then research==pipeline.
46636
46617
  research: (_decision, metaInput) => runPipelineForGoal(metaInput.goal),
46637
46618
  consensus: (_decision, metaInput) => runConsensusForGoal(metaInput.goal)
46638
46619
  };
@@ -50911,4 +50892,4 @@ export {
50911
50892
  shutdownFeedbackSubscriber,
50912
50893
  createEventBusBridge
50913
50894
  };
50914
- //# sourceMappingURL=chunk-23J7J37D.js.map
50895
+ //# sourceMappingURL=chunk-D5FEGFJM.js.map