nexus-agents 2.79.4 → 2.80.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/dist/{child-mcp-config-DFRYTRBK.js → child-mcp-config-Q6UMCPGZ.js} +3 -3
- package/dist/{chunk-UWDVEMYZ.js → chunk-23XU4LE2.js} +4 -4
- package/dist/chunk-2JQXC3CK.js +317 -0
- package/dist/chunk-2JQXC3CK.js.map +1 -0
- package/dist/{chunk-DOI7RE3X.js → chunk-33LDLZCC.js} +2 -2
- package/dist/{chunk-UNRTM43V.js → chunk-54UT2JUQ.js} +2 -2
- package/dist/{chunk-OGV7J5WG.js → chunk-5WN3WGXG.js} +3 -3
- package/dist/{chunk-NJPFN75N.js → chunk-7UM5XRGG.js} +2 -2
- package/dist/{chunk-JMRCMMZ5.js → chunk-7ZKZ7K7J.js} +2 -2
- package/dist/{chunk-45NUO4FE.js → chunk-ALDKPBOZ.js} +2 -2
- package/dist/{chunk-DW3UTO43.js → chunk-D3MQ4U2R.js} +51 -21
- package/dist/chunk-D3MQ4U2R.js.map +1 -0
- package/dist/{chunk-NVSJXN4S.js → chunk-D4NEYNBO.js} +8 -5
- package/dist/chunk-D4NEYNBO.js.map +1 -0
- package/dist/{chunk-42MM7GKW.js → chunk-D5C5N5Q4.js} +2 -2
- package/dist/{chunk-BIH2CBC5.js → chunk-EPZMFIAX.js} +105 -10
- package/dist/chunk-EPZMFIAX.js.map +1 -0
- package/dist/{chunk-ACP4YARI.js → chunk-GODRGVF4.js} +3 -3
- package/dist/{chunk-IPDUZJPH.js → chunk-HR7C4DSA.js} +4 -4
- package/dist/{chunk-PAKVXGS2.js → chunk-I5KYDT23.js} +2 -2
- package/dist/{chunk-PDCLBWH5.js → chunk-L7433REX.js} +4 -4
- package/dist/{chunk-3ENBGGYA.js → chunk-LDD272PW.js} +959 -885
- package/dist/chunk-LDD272PW.js.map +1 -0
- package/dist/{chunk-OFRDE7MK.js → chunk-MUIA32LU.js} +2 -2
- package/dist/{chunk-TN5ZKSGC.js → chunk-MVIYQMQM.js} +2 -2
- package/dist/{chunk-NXNNT5XW.js → chunk-NALIFUBD.js} +4 -4
- package/dist/{chunk-LFTK5ZQG.js → chunk-NCBWA6RU.js} +2 -2
- package/dist/{chunk-BXI6DKBU.js → chunk-O2ECPTFH.js} +3 -3
- package/dist/{chunk-UNFS6YBY.js → chunk-Q4DXTNGR.js} +2 -2
- package/dist/{chunk-BSQ4KTY4.js → chunk-SX3P2PD2.js} +2 -2
- package/dist/{chunk-UQOSVOEU.js → chunk-T4E6UFFC.js} +16 -14
- package/dist/chunk-T4E6UFFC.js.map +1 -0
- package/dist/{chunk-UOR2JWFH.js → chunk-TFTP7EUQ.js} +82 -57
- package/dist/chunk-TFTP7EUQ.js.map +1 -0
- package/dist/{chunk-PHBRELUK.js → chunk-UEKTTIDA.js} +7 -7
- package/dist/{chunk-SU3Y6LU2.js → chunk-WZ2T4T7N.js} +32 -6
- package/dist/chunk-WZ2T4T7N.js.map +1 -0
- package/dist/{cli-circuit-breaker-T75HOLZK.js → cli-circuit-breaker-EUERR2HK.js} +5 -5
- package/dist/cli.d.ts +1 -1
- package/dist/cli.js +618 -567
- package/dist/cli.js.map +1 -1
- package/dist/{composite-router-OPSK5FCQ.js → composite-router-ZP72LQFH.js} +3 -3
- package/dist/{consensus-vote-CYUPIJXR.js → consensus-vote-TU3TQ4VH.js} +12 -12
- package/dist/{context-retriever-6AWHCHRP.js → context-retriever-OTLV46DF.js} +6 -6
- package/dist/{doctor-deep-XBPRQ6ZP.js → doctor-deep-ZMBSG2DF.js} +4 -4
- package/dist/expert-bridge-IK4TY7HA.js +11 -0
- package/dist/{factory-Y3TMP4OQ.js → factory-45NHZFLK.js} +5 -5
- package/dist/factory-QDHYIYVE.js +14 -0
- package/dist/index.d.ts +40 -5
- package/dist/index.js +25 -25
- package/dist/{init-opencode-RV6IQEMS.js → init-opencode-WFL4OXMB.js} +6 -6
- package/dist/issue-triage-UHFCGTEJ.js +15 -0
- package/dist/{learning-persistence-Q3HTOGTU.js → learning-persistence-TGOBRUUU.js} +2 -2
- package/dist/{registry-command-6KJWW3W7.js → registry-command-YMZPSW7S.js} +3 -3
- package/dist/{repo-security-plan-HNLMF7J7.js → repo-security-plan-TGDXTSHS.js} +4 -4
- package/dist/{research-helpers-synthesize-77TLYSW4.js → research-helpers-synthesize-5BAN353Y.js} +4 -4
- package/dist/{routing-memory-6DV6ZPAH.js → routing-memory-RG3U2MC2.js} +3 -3
- package/dist/{session-memory-XZ3NJIR4.js → session-memory-C5GC2JAX.js} +4 -4
- package/dist/{setup-command-QOXG36UV.js → setup-command-OXJ32UAI.js} +13 -11
- package/dist/setup-config-KNMVMGDD.js +10 -0
- package/dist/{setup-custom-api-PJ6TGHJH.js → setup-custom-api-4EYRKCHB.js} +5 -5
- package/dist/{tool-memory-K2QPTPKV.js → tool-memory-LUXUOE6Q.js} +5 -5
- package/dist/{weather-report-ZB4AKOIA.js → weather-report-3KSDTC7T.js} +3 -3
- package/package.json +1 -1
- package/dist/chunk-3ENBGGYA.js.map +0 -1
- package/dist/chunk-7BMOZJYS.js +0 -83
- package/dist/chunk-7BMOZJYS.js.map +0 -1
- package/dist/chunk-BIH2CBC5.js.map +0 -1
- package/dist/chunk-DW3UTO43.js.map +0 -1
- package/dist/chunk-NVSJXN4S.js.map +0 -1
- package/dist/chunk-SU3Y6LU2.js.map +0 -1
- package/dist/chunk-UOR2JWFH.js.map +0 -1
- package/dist/chunk-UQOSVOEU.js.map +0 -1
- package/dist/expert-bridge-5YOPK5IT.js +0 -11
- package/dist/factory-DN7SJZ5Z.js +0 -14
- package/dist/issue-triage-UTWKXLKC.js +0 -15
- package/dist/setup-config-B4V4QHDP.js +0 -10
- /package/dist/{child-mcp-config-DFRYTRBK.js.map → child-mcp-config-Q6UMCPGZ.js.map} +0 -0
- /package/dist/{chunk-UWDVEMYZ.js.map → chunk-23XU4LE2.js.map} +0 -0
- /package/dist/{chunk-DOI7RE3X.js.map → chunk-33LDLZCC.js.map} +0 -0
- /package/dist/{chunk-UNRTM43V.js.map → chunk-54UT2JUQ.js.map} +0 -0
- /package/dist/{chunk-OGV7J5WG.js.map → chunk-5WN3WGXG.js.map} +0 -0
- /package/dist/{chunk-NJPFN75N.js.map → chunk-7UM5XRGG.js.map} +0 -0
- /package/dist/{chunk-JMRCMMZ5.js.map → chunk-7ZKZ7K7J.js.map} +0 -0
- /package/dist/{chunk-45NUO4FE.js.map → chunk-ALDKPBOZ.js.map} +0 -0
- /package/dist/{chunk-42MM7GKW.js.map → chunk-D5C5N5Q4.js.map} +0 -0
- /package/dist/{chunk-ACP4YARI.js.map → chunk-GODRGVF4.js.map} +0 -0
- /package/dist/{chunk-IPDUZJPH.js.map → chunk-HR7C4DSA.js.map} +0 -0
- /package/dist/{chunk-PAKVXGS2.js.map → chunk-I5KYDT23.js.map} +0 -0
- /package/dist/{chunk-PDCLBWH5.js.map → chunk-L7433REX.js.map} +0 -0
- /package/dist/{chunk-OFRDE7MK.js.map → chunk-MUIA32LU.js.map} +0 -0
- /package/dist/{chunk-TN5ZKSGC.js.map → chunk-MVIYQMQM.js.map} +0 -0
- /package/dist/{chunk-NXNNT5XW.js.map → chunk-NALIFUBD.js.map} +0 -0
- /package/dist/{chunk-LFTK5ZQG.js.map → chunk-NCBWA6RU.js.map} +0 -0
- /package/dist/{chunk-BXI6DKBU.js.map → chunk-O2ECPTFH.js.map} +0 -0
- /package/dist/{chunk-UNFS6YBY.js.map → chunk-Q4DXTNGR.js.map} +0 -0
- /package/dist/{chunk-BSQ4KTY4.js.map → chunk-SX3P2PD2.js.map} +0 -0
- /package/dist/{chunk-PHBRELUK.js.map → chunk-UEKTTIDA.js.map} +0 -0
- /package/dist/{cli-circuit-breaker-T75HOLZK.js.map → cli-circuit-breaker-EUERR2HK.js.map} +0 -0
- /package/dist/{composite-router-OPSK5FCQ.js.map → composite-router-ZP72LQFH.js.map} +0 -0
- /package/dist/{consensus-vote-CYUPIJXR.js.map → consensus-vote-TU3TQ4VH.js.map} +0 -0
- /package/dist/{context-retriever-6AWHCHRP.js.map → context-retriever-OTLV46DF.js.map} +0 -0
- /package/dist/{doctor-deep-XBPRQ6ZP.js.map → doctor-deep-ZMBSG2DF.js.map} +0 -0
- /package/dist/{expert-bridge-5YOPK5IT.js.map → expert-bridge-IK4TY7HA.js.map} +0 -0
- /package/dist/{factory-DN7SJZ5Z.js.map → factory-45NHZFLK.js.map} +0 -0
- /package/dist/{factory-Y3TMP4OQ.js.map → factory-QDHYIYVE.js.map} +0 -0
- /package/dist/{init-opencode-RV6IQEMS.js.map → init-opencode-WFL4OXMB.js.map} +0 -0
- /package/dist/{issue-triage-UTWKXLKC.js.map → issue-triage-UHFCGTEJ.js.map} +0 -0
- /package/dist/{learning-persistence-Q3HTOGTU.js.map → learning-persistence-TGOBRUUU.js.map} +0 -0
- /package/dist/{registry-command-6KJWW3W7.js.map → registry-command-YMZPSW7S.js.map} +0 -0
- /package/dist/{repo-security-plan-HNLMF7J7.js.map → repo-security-plan-TGDXTSHS.js.map} +0 -0
- /package/dist/{research-helpers-synthesize-77TLYSW4.js.map → research-helpers-synthesize-5BAN353Y.js.map} +0 -0
- /package/dist/{routing-memory-6DV6ZPAH.js.map → routing-memory-RG3U2MC2.js.map} +0 -0
- /package/dist/{session-memory-XZ3NJIR4.js.map → session-memory-C5GC2JAX.js.map} +0 -0
- /package/dist/{setup-command-QOXG36UV.js.map → setup-command-OXJ32UAI.js.map} +0 -0
- /package/dist/{setup-config-B4V4QHDP.js.map → setup-config-KNMVMGDD.js.map} +0 -0
- /package/dist/{setup-custom-api-PJ6TGHJH.js.map → setup-custom-api-4EYRKCHB.js.map} +0 -0
- /package/dist/{tool-memory-K2QPTPKV.js.map → tool-memory-LUXUOE6Q.js.map} +0 -0
- /package/dist/{weather-report-ZB4AKOIA.js.map → weather-report-3KSDTC7T.js.map} +0 -0
|
@@ -2,31 +2,32 @@ import {
|
|
|
2
2
|
CUSTOM_API_BASE_URL_ENV,
|
|
3
3
|
PROVIDER_ENV_KEYS,
|
|
4
4
|
validateCustomApiBaseUrl
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-I5KYDT23.js";
|
|
6
6
|
import {
|
|
7
7
|
AdapterModelError,
|
|
8
8
|
BaseAdapter,
|
|
9
9
|
createStream,
|
|
10
10
|
requireApiKey,
|
|
11
11
|
validateApiKeyPresence
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-33LDLZCC.js";
|
|
13
13
|
import {
|
|
14
14
|
getToolMemory
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-NALIFUBD.js";
|
|
16
16
|
import {
|
|
17
17
|
getDefaultAvailableModelsCache
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-D5C5N5Q4.js";
|
|
19
19
|
import {
|
|
20
20
|
CUSTOM_API_DEFAULT_MODEL
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-54UT2JUQ.js";
|
|
22
22
|
import {
|
|
23
23
|
createCliAdapter,
|
|
24
24
|
createCliDetectionCache,
|
|
25
25
|
delay,
|
|
26
26
|
getAvailableClis,
|
|
27
27
|
isCliAvailable,
|
|
28
|
+
sanitizeOutput,
|
|
28
29
|
withTimeout
|
|
29
|
-
} from "./chunk-
|
|
30
|
+
} from "./chunk-EPZMFIAX.js";
|
|
30
31
|
import {
|
|
31
32
|
AgentError,
|
|
32
33
|
CACHE_TIMEOUTS,
|
|
@@ -69,13 +70,13 @@ import {
|
|
|
69
70
|
resolveCliAlias,
|
|
70
71
|
resolveVoteTimeout,
|
|
71
72
|
toRateLimitError
|
|
72
|
-
} from "./chunk-
|
|
73
|
+
} from "./chunk-T4E6UFFC.js";
|
|
73
74
|
import {
|
|
74
75
|
ensureLearningDir,
|
|
75
76
|
getNexusDataDir,
|
|
76
77
|
getOutcomesFile,
|
|
77
78
|
nexusDataPath
|
|
78
|
-
} from "./chunk-
|
|
79
|
+
} from "./chunk-2JQXC3CK.js";
|
|
79
80
|
|
|
80
81
|
// src/mcp/tools/consensus-vote.ts
|
|
81
82
|
import { z as z10 } from "zod";
|
|
@@ -1596,7 +1597,7 @@ var SECRET_PATTERNS = [
|
|
|
1596
1597
|
// password= or token= in output
|
|
1597
1598
|
/(?:password|token|secret|apikey|api_key)\s*[=:]\s*\S{8,}/i
|
|
1598
1599
|
];
|
|
1599
|
-
function
|
|
1600
|
+
function sanitizeOutput2(text, logger8) {
|
|
1600
1601
|
let sanitized = text;
|
|
1601
1602
|
for (const pattern of SECRET_PATTERNS) {
|
|
1602
1603
|
if (pattern.test(sanitized)) {
|
|
@@ -1610,7 +1611,7 @@ function sanitizeOutput(text, logger8) {
|
|
|
1610
1611
|
}
|
|
1611
1612
|
function sanitizeToolResult(result, logger8) {
|
|
1612
1613
|
for (const item of result.content) {
|
|
1613
|
-
item.text =
|
|
1614
|
+
item.text = sanitizeOutput2(item.text, logger8);
|
|
1614
1615
|
}
|
|
1615
1616
|
}
|
|
1616
1617
|
function checkInputSize(args, logger8, requestId) {
|
|
@@ -2631,9 +2632,10 @@ var SdkAdapter = class extends BaseAdapter {
|
|
|
2631
2632
|
*/
|
|
2632
2633
|
toErrorResult(error, code) {
|
|
2633
2634
|
const message = getErrorMessage(error);
|
|
2634
|
-
const
|
|
2635
|
+
const safeMessage = sanitizeOutput(message);
|
|
2636
|
+
const errorObj = error instanceof Error ? error : new Error(safeMessage);
|
|
2635
2637
|
this.logger.error(`SDK adapter error (${this.sdkProviderId})`, errorObj);
|
|
2636
|
-
const modelError = new AdapterModelError(`${this.sdkProviderId} SDK error: ${
|
|
2638
|
+
const modelError = new AdapterModelError(`${this.sdkProviderId} SDK error: ${safeMessage}`, {
|
|
2637
2639
|
code
|
|
2638
2640
|
});
|
|
2639
2641
|
return { ok: false, error: modelError };
|
|
@@ -5281,6 +5283,13 @@ function createHigherOrderVotingStrategy(options) {
|
|
|
5281
5283
|
}
|
|
5282
5284
|
|
|
5283
5285
|
// src/consensus/strategies.ts
|
|
5286
|
+
function evaluateThreshold(approveCount, votingTotal, threshold, inclusive) {
|
|
5287
|
+
const ratio = approveCount / votingTotal;
|
|
5288
|
+
return {
|
|
5289
|
+
approved: inclusive ? ratio >= threshold : ratio > threshold,
|
|
5290
|
+
approvalPercentage: ratio * 100
|
|
5291
|
+
};
|
|
5292
|
+
}
|
|
5284
5293
|
var BaseVotingStrategy = class {
|
|
5285
5294
|
/**
|
|
5286
5295
|
* Count votes by decision type.
|
|
@@ -5344,8 +5353,12 @@ var SimpleMajorityStrategy = class extends BaseVotingStrategy {
|
|
|
5344
5353
|
reason: "No votes cast (excluding abstentions)"
|
|
5345
5354
|
};
|
|
5346
5355
|
}
|
|
5347
|
-
const
|
|
5348
|
-
|
|
5356
|
+
const { approved, approvalPercentage } = evaluateThreshold(
|
|
5357
|
+
counts.approve,
|
|
5358
|
+
votingVotes,
|
|
5359
|
+
threshold,
|
|
5360
|
+
false
|
|
5361
|
+
);
|
|
5349
5362
|
return {
|
|
5350
5363
|
approved,
|
|
5351
5364
|
approvalPercentage,
|
|
@@ -5368,8 +5381,12 @@ var SupermajorityStrategy = class extends BaseVotingStrategy {
|
|
|
5368
5381
|
reason: "No votes cast (excluding abstentions)"
|
|
5369
5382
|
};
|
|
5370
5383
|
}
|
|
5371
|
-
const
|
|
5372
|
-
|
|
5384
|
+
const { approved, approvalPercentage } = evaluateThreshold(
|
|
5385
|
+
counts.approve,
|
|
5386
|
+
votingVotes,
|
|
5387
|
+
threshold,
|
|
5388
|
+
true
|
|
5389
|
+
);
|
|
5373
5390
|
return {
|
|
5374
5391
|
approved,
|
|
5375
5392
|
approvalPercentage,
|
|
@@ -5432,8 +5449,12 @@ var ProofOfLearningStrategy = class extends BaseVotingStrategy {
|
|
|
5432
5449
|
reason: "No weighted votes cast (excluding abstentions)"
|
|
5433
5450
|
};
|
|
5434
5451
|
}
|
|
5435
|
-
const
|
|
5436
|
-
|
|
5452
|
+
const { approved, approvalPercentage } = evaluateThreshold(
|
|
5453
|
+
weightedCounts.approve,
|
|
5454
|
+
votingWeight,
|
|
5455
|
+
threshold,
|
|
5456
|
+
false
|
|
5457
|
+
);
|
|
5437
5458
|
return {
|
|
5438
5459
|
approved,
|
|
5439
5460
|
approvalPercentage,
|
|
@@ -5669,7 +5690,16 @@ var ConsensusEngine = class {
|
|
|
5669
5690
|
return this.closeInternal(proposalId).then((r) => r.ok ? ok(void 0) : err(r.error));
|
|
5670
5691
|
}
|
|
5671
5692
|
if (this.allRequiredVotersVoted(state)) {
|
|
5672
|
-
|
|
5693
|
+
if (state.expansionInFlight === true) {
|
|
5694
|
+
return Promise.resolve(ok(void 0));
|
|
5695
|
+
}
|
|
5696
|
+
state.expansionInFlight = true;
|
|
5697
|
+
let expanded;
|
|
5698
|
+
try {
|
|
5699
|
+
expanded = await this.tryExpandQuorum(proposalId, state);
|
|
5700
|
+
} finally {
|
|
5701
|
+
state.expansionInFlight = false;
|
|
5702
|
+
}
|
|
5673
5703
|
if (!expanded) {
|
|
5674
5704
|
return this.closeInternal(proposalId).then((r) => r.ok ? ok(void 0) : err(r.error));
|
|
5675
5705
|
}
|
|
@@ -8648,7 +8678,7 @@ async function processVotesWithCascade(engineVotes, opts) {
|
|
|
8648
8678
|
var CONTRARIAN_ESCALATION_THRESHOLD = 0.8;
|
|
8649
8679
|
async function runContrarianCheck(proposal, log) {
|
|
8650
8680
|
try {
|
|
8651
|
-
const { executeExpert } = await import("./expert-bridge-
|
|
8681
|
+
const { executeExpert } = await import("./expert-bridge-IK4TY7HA.js");
|
|
8652
8682
|
const prompt = [
|
|
8653
8683
|
"You are a contrarian analyst. Your job is to find reasons this proposal should be REJECTED.",
|
|
8654
8684
|
"Look for: YAGNI (not needed), MISALIGNED (wrong tech/architecture), SECURITY_RISK, SCOPE_CREEP.",
|
|
@@ -9065,4 +9095,4 @@ export {
|
|
|
9065
9095
|
CONSENSUS_VOTE_OUTPUT_SCHEMA,
|
|
9066
9096
|
registerConsensusVoteTool
|
|
9067
9097
|
};
|
|
9068
|
-
//# sourceMappingURL=chunk-
|
|
9098
|
+
//# sourceMappingURL=chunk-D3MQ4U2R.js.map
|