nexus-agents 2.166.2 → 2.166.3
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-LQ4IKFSN.js → child-mcp-config-AUA4TFBG.js} +2 -2
- package/dist/{chunk-3HVF4BG4.js → chunk-3LVB5OE2.js} +2 -2
- package/dist/{chunk-YPPYRLDF.js → chunk-6LXTT6AK.js} +2 -2
- package/dist/{chunk-YOFRUVPJ.js → chunk-76Q6GTPU.js} +2 -2
- package/dist/{chunk-RXI5ONP7.js → chunk-AWPSFL5C.js} +2 -2
- package/dist/{chunk-NBPA4PQD.js → chunk-BFDVV3Q3.js} +2 -2
- package/dist/{chunk-MYNI3CYT.js → chunk-BZFF3YWU.js} +4 -4
- package/dist/{chunk-LQ2ABFLI.js → chunk-DMFMJFRY.js} +2 -2
- package/dist/{chunk-TZNJCTNQ.js → chunk-F2YZ3U6O.js} +2 -2
- package/dist/{chunk-2255SARF.js → chunk-FKHQWC2L.js} +2 -2
- package/dist/{chunk-55NRU7SV.js → chunk-FQNG6ZIW.js} +8 -8
- package/dist/{chunk-2UMMVKUW.js → chunk-FZV4YAYT.js} +3 -3
- package/dist/{chunk-33X5V4PL.js → chunk-GS3UPAUE.js} +2 -2
- package/dist/{chunk-U43BUJSN.js → chunk-HNAFWKJG.js} +7 -7
- package/dist/{chunk-MQUSJVER.js → chunk-I7OZP6FS.js} +4 -4
- package/dist/{chunk-RBN4WXOA.js → chunk-IF46G2LM.js} +2 -2
- package/dist/{chunk-RLRAUL43.js → chunk-JBH4CU46.js} +133 -59
- package/dist/{chunk-RLRAUL43.js.map → chunk-JBH4CU46.js.map} +1 -1
- package/dist/{chunk-CVLVWHXG.js → chunk-JYVPM37A.js} +5 -5
- package/dist/{chunk-LUP26FMZ.js → chunk-K2IX6BEK.js} +4 -4
- package/dist/{chunk-ZNY7MM2J.js → chunk-LRBEUBZ3.js} +3 -3
- package/dist/{chunk-FKOWIKR4.js → chunk-NEQJSYJH.js} +3 -3
- package/dist/{chunk-LKSG75LC.js → chunk-OI6H3DL6.js} +4 -4
- package/dist/{chunk-TFYQRAWT.js → chunk-ORRKK563.js} +3 -3
- package/dist/{chunk-6PYVTJZF.js → chunk-P54BDACX.js} +2 -2
- package/dist/{chunk-DUUMMELV.js → chunk-PRSGZQNB.js} +3 -3
- package/dist/{chunk-YIEMNZUD.js → chunk-PXTZ6RPP.js} +7 -7
- package/dist/{chunk-SF2AK3JB.js → chunk-THI3VWHO.js} +2 -2
- package/dist/{chunk-MLURL552.js → chunk-UO6C5J5D.js} +5 -5
- package/dist/{chunk-JV64QX3Y.js → chunk-UWRDWX6L.js} +2 -2
- package/dist/{chunk-3SMFRAX5.js → chunk-V5RPW2ZX.js} +3 -3
- package/dist/{chunk-JBZMUKT4.js → chunk-WL4SGKAW.js} +2 -2
- package/dist/{chunk-3GYRM7D6.js → chunk-WOY6TQCH.js} +33 -9
- package/dist/{chunk-3GYRM7D6.js.map → chunk-WOY6TQCH.js.map} +1 -1
- package/dist/{chunk-NXJJZEUO.js → chunk-YKTVN2TF.js} +2 -2
- package/dist/{chunk-PZ3BB3PO.js → chunk-Z66EEQ4A.js} +3 -3
- package/dist/{chunk-IXZXG2MY.js → chunk-ZI4PO2A3.js} +7 -7
- package/dist/{cli-circuit-breaker-5IGBBD7R.js → cli-circuit-breaker-FSUDU7BV.js} +4 -4
- package/dist/cli.js +41 -41
- package/dist/{composite-router-62KI56W6.js → composite-router-HC4YLG5W.js} +2 -2
- package/dist/{consensus-vote-M4ZELBV4.js → consensus-vote-KWPS6WNH.js} +15 -15
- package/dist/{context-retriever-5UJC5KDZ.js → context-retriever-YCKTCDGM.js} +10 -8
- package/dist/{doctor-deep-7OR5MYMI.js → doctor-deep-4UARVVSD.js} +3 -3
- package/dist/{expert-bridge-BNMCDENK.js → expert-bridge-EAR6XZJA.js} +4 -4
- package/dist/{factory-QLW773DP.js → factory-7SVW7XMV.js} +5 -5
- package/dist/{factory-77GX5DG4.js → factory-JYAUOFEN.js} +8 -8
- package/dist/{improvement-review-KDM6OL25.js → improvement-review-AHSY5ZXD.js} +5 -5
- package/dist/index.d.ts +2 -0
- package/dist/index.js +30 -30
- package/dist/{init-opencode-FXKABSGS.js → init-opencode-5BKE7UEB.js} +6 -6
- package/dist/{issue-triage-OVX4VSUN.js → issue-triage-TNV4R33I.js} +6 -6
- package/dist/{pr-reviewer-helpers-VGIBNZBX.js → pr-reviewer-helpers-ZC2I5ZYD.js} +4 -4
- package/dist/{registry-command-CGMRLZQ2.js → registry-command-O2GLHG3G.js} +2 -2
- package/dist/{repo-security-plan-TBCMGL5Z.js → repo-security-plan-CFRLHIMY.js} +3 -3
- package/dist/{research-helpers-synthesize-76ZZYWJ5.js → research-helpers-synthesize-ONWBGXHO.js} +4 -4
- package/dist/{routing-memory-PZ4LTLXJ.js → routing-memory-XHZKEPUH.js} +2 -2
- package/dist/{session-memory-C55R7LGY.js → session-memory-5QVKDE4U.js} +3 -3
- package/dist/{setup-command-AVQWHV5L.js → setup-command-G7OB4QQG.js} +11 -11
- package/dist/{setup-config-SMRMMT6Z.js → setup-config-MMBOL5CW.js} +3 -3
- package/dist/{setup-custom-api-42JXTJHU.js → setup-custom-api-RQ3BUMJC.js} +3 -3
- package/dist/{tool-memory-LCDNVPFI.js → tool-memory-VK4IZLPN.js} +5 -5
- package/dist/{unified-registry-XEXWGKV5.js → unified-registry-ZOTGM4EY.js} +9 -9
- package/dist/{weather-report-DPADAXFN.js → weather-report-MPD66LKP.js} +2 -2
- package/package.json +1 -1
- /package/dist/{child-mcp-config-LQ4IKFSN.js.map → child-mcp-config-AUA4TFBG.js.map} +0 -0
- /package/dist/{chunk-3HVF4BG4.js.map → chunk-3LVB5OE2.js.map} +0 -0
- /package/dist/{chunk-YPPYRLDF.js.map → chunk-6LXTT6AK.js.map} +0 -0
- /package/dist/{chunk-YOFRUVPJ.js.map → chunk-76Q6GTPU.js.map} +0 -0
- /package/dist/{chunk-RXI5ONP7.js.map → chunk-AWPSFL5C.js.map} +0 -0
- /package/dist/{chunk-NBPA4PQD.js.map → chunk-BFDVV3Q3.js.map} +0 -0
- /package/dist/{chunk-MYNI3CYT.js.map → chunk-BZFF3YWU.js.map} +0 -0
- /package/dist/{chunk-LQ2ABFLI.js.map → chunk-DMFMJFRY.js.map} +0 -0
- /package/dist/{chunk-TZNJCTNQ.js.map → chunk-F2YZ3U6O.js.map} +0 -0
- /package/dist/{chunk-2255SARF.js.map → chunk-FKHQWC2L.js.map} +0 -0
- /package/dist/{chunk-55NRU7SV.js.map → chunk-FQNG6ZIW.js.map} +0 -0
- /package/dist/{chunk-2UMMVKUW.js.map → chunk-FZV4YAYT.js.map} +0 -0
- /package/dist/{chunk-33X5V4PL.js.map → chunk-GS3UPAUE.js.map} +0 -0
- /package/dist/{chunk-U43BUJSN.js.map → chunk-HNAFWKJG.js.map} +0 -0
- /package/dist/{chunk-MQUSJVER.js.map → chunk-I7OZP6FS.js.map} +0 -0
- /package/dist/{chunk-RBN4WXOA.js.map → chunk-IF46G2LM.js.map} +0 -0
- /package/dist/{chunk-CVLVWHXG.js.map → chunk-JYVPM37A.js.map} +0 -0
- /package/dist/{chunk-LUP26FMZ.js.map → chunk-K2IX6BEK.js.map} +0 -0
- /package/dist/{chunk-ZNY7MM2J.js.map → chunk-LRBEUBZ3.js.map} +0 -0
- /package/dist/{chunk-FKOWIKR4.js.map → chunk-NEQJSYJH.js.map} +0 -0
- /package/dist/{chunk-LKSG75LC.js.map → chunk-OI6H3DL6.js.map} +0 -0
- /package/dist/{chunk-TFYQRAWT.js.map → chunk-ORRKK563.js.map} +0 -0
- /package/dist/{chunk-6PYVTJZF.js.map → chunk-P54BDACX.js.map} +0 -0
- /package/dist/{chunk-DUUMMELV.js.map → chunk-PRSGZQNB.js.map} +0 -0
- /package/dist/{chunk-YIEMNZUD.js.map → chunk-PXTZ6RPP.js.map} +0 -0
- /package/dist/{chunk-SF2AK3JB.js.map → chunk-THI3VWHO.js.map} +0 -0
- /package/dist/{chunk-MLURL552.js.map → chunk-UO6C5J5D.js.map} +0 -0
- /package/dist/{chunk-JV64QX3Y.js.map → chunk-UWRDWX6L.js.map} +0 -0
- /package/dist/{chunk-3SMFRAX5.js.map → chunk-V5RPW2ZX.js.map} +0 -0
- /package/dist/{chunk-JBZMUKT4.js.map → chunk-WL4SGKAW.js.map} +0 -0
- /package/dist/{chunk-NXJJZEUO.js.map → chunk-YKTVN2TF.js.map} +0 -0
- /package/dist/{chunk-PZ3BB3PO.js.map → chunk-Z66EEQ4A.js.map} +0 -0
- /package/dist/{chunk-IXZXG2MY.js.map → chunk-ZI4PO2A3.js.map} +0 -0
- /package/dist/{cli-circuit-breaker-5IGBBD7R.js.map → cli-circuit-breaker-FSUDU7BV.js.map} +0 -0
- /package/dist/{composite-router-62KI56W6.js.map → composite-router-HC4YLG5W.js.map} +0 -0
- /package/dist/{consensus-vote-M4ZELBV4.js.map → consensus-vote-KWPS6WNH.js.map} +0 -0
- /package/dist/{context-retriever-5UJC5KDZ.js.map → context-retriever-YCKTCDGM.js.map} +0 -0
- /package/dist/{doctor-deep-7OR5MYMI.js.map → doctor-deep-4UARVVSD.js.map} +0 -0
- /package/dist/{expert-bridge-BNMCDENK.js.map → expert-bridge-EAR6XZJA.js.map} +0 -0
- /package/dist/{factory-77GX5DG4.js.map → factory-7SVW7XMV.js.map} +0 -0
- /package/dist/{factory-QLW773DP.js.map → factory-JYAUOFEN.js.map} +0 -0
- /package/dist/{improvement-review-KDM6OL25.js.map → improvement-review-AHSY5ZXD.js.map} +0 -0
- /package/dist/{init-opencode-FXKABSGS.js.map → init-opencode-5BKE7UEB.js.map} +0 -0
- /package/dist/{issue-triage-OVX4VSUN.js.map → issue-triage-TNV4R33I.js.map} +0 -0
- /package/dist/{pr-reviewer-helpers-VGIBNZBX.js.map → pr-reviewer-helpers-ZC2I5ZYD.js.map} +0 -0
- /package/dist/{registry-command-CGMRLZQ2.js.map → registry-command-O2GLHG3G.js.map} +0 -0
- /package/dist/{repo-security-plan-TBCMGL5Z.js.map → repo-security-plan-CFRLHIMY.js.map} +0 -0
- /package/dist/{research-helpers-synthesize-76ZZYWJ5.js.map → research-helpers-synthesize-ONWBGXHO.js.map} +0 -0
- /package/dist/{routing-memory-PZ4LTLXJ.js.map → routing-memory-XHZKEPUH.js.map} +0 -0
- /package/dist/{session-memory-C55R7LGY.js.map → session-memory-5QVKDE4U.js.map} +0 -0
- /package/dist/{setup-command-AVQWHV5L.js.map → setup-command-G7OB4QQG.js.map} +0 -0
- /package/dist/{setup-config-SMRMMT6Z.js.map → setup-config-MMBOL5CW.js.map} +0 -0
- /package/dist/{setup-custom-api-42JXTJHU.js.map → setup-custom-api-RQ3BUMJC.js.map} +0 -0
- /package/dist/{tool-memory-LCDNVPFI.js.map → tool-memory-VK4IZLPN.js.map} +0 -0
- /package/dist/{unified-registry-XEXWGKV5.js.map → unified-registry-ZOTGM4EY.js.map} +0 -0
- /package/dist/{weather-report-DPADAXFN.js.map → weather-report-MPD66LKP.js.map} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
generateSecurityPlan
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-76Q6GTPU.js";
|
|
4
4
|
import {
|
|
5
5
|
analyzeGitHubRepo
|
|
6
6
|
} from "./chunk-HFOQKCD2.js";
|
|
@@ -20,10 +20,10 @@ import {
|
|
|
20
20
|
DEFAULT_TASK_TTL_MS,
|
|
21
21
|
DEFAULT_TOOL_RATE_LIMITS,
|
|
22
22
|
clampTaskTtl
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-PXTZ6RPP.js";
|
|
24
24
|
import {
|
|
25
25
|
executeExpert
|
|
26
|
-
} from "./chunk-
|
|
26
|
+
} from "./chunk-HNAFWKJG.js";
|
|
27
27
|
import {
|
|
28
28
|
JobStatusSchema,
|
|
29
29
|
abortJob,
|
|
@@ -44,21 +44,21 @@ import {
|
|
|
44
44
|
simulationDeniedResult,
|
|
45
45
|
toJobSummary,
|
|
46
46
|
writeJobCancelled
|
|
47
|
-
} from "./chunk-
|
|
47
|
+
} from "./chunk-FQNG6ZIW.js";
|
|
48
48
|
import {
|
|
49
49
|
normalizeTopicToCanonical,
|
|
50
50
|
synthesizeResearch
|
|
51
|
-
} from "./chunk-
|
|
51
|
+
} from "./chunk-ORRKK563.js";
|
|
52
52
|
import {
|
|
53
53
|
IssueTriage
|
|
54
|
-
} from "./chunk-
|
|
54
|
+
} from "./chunk-JYVPM37A.js";
|
|
55
55
|
import {
|
|
56
56
|
resolveEnvMode,
|
|
57
57
|
sanitizeInput
|
|
58
|
-
} from "./chunk-
|
|
58
|
+
} from "./chunk-F2YZ3U6O.js";
|
|
59
59
|
import {
|
|
60
60
|
withPrerequisite
|
|
61
|
-
} from "./chunk-
|
|
61
|
+
} from "./chunk-PRSGZQNB.js";
|
|
62
62
|
import {
|
|
63
63
|
NOOP_NOTIFIER,
|
|
64
64
|
RateLimiter,
|
|
@@ -81,12 +81,12 @@ import {
|
|
|
81
81
|
withAuditTrail,
|
|
82
82
|
withProgressHeartbeat,
|
|
83
83
|
wrapToolWithTimeout
|
|
84
|
-
} from "./chunk-
|
|
84
|
+
} from "./chunk-V5RPW2ZX.js";
|
|
85
85
|
import {
|
|
86
86
|
createAuditTrail,
|
|
87
87
|
createGraphAuditBridge,
|
|
88
88
|
emitPipelinePolicyEvent
|
|
89
|
-
} from "./chunk-
|
|
89
|
+
} from "./chunk-BFDVV3Q3.js";
|
|
90
90
|
import {
|
|
91
91
|
addResearchPaper,
|
|
92
92
|
addSourceToRegistry,
|
|
@@ -114,15 +114,15 @@ import {
|
|
|
114
114
|
parseRegistry,
|
|
115
115
|
sourceExistsInRegistry,
|
|
116
116
|
summarizeContextForPrompt
|
|
117
|
-
} from "./chunk-
|
|
117
|
+
} from "./chunk-WOY6TQCH.js";
|
|
118
118
|
import {
|
|
119
119
|
getTokenEnvVars,
|
|
120
120
|
resolveToken
|
|
121
|
-
} from "./chunk-
|
|
121
|
+
} from "./chunk-UWRDWX6L.js";
|
|
122
122
|
import {
|
|
123
123
|
loadPapersRegistry,
|
|
124
124
|
loadTechniquesRegistry
|
|
125
|
-
} from "./chunk-
|
|
125
|
+
} from "./chunk-6LXTT6AK.js";
|
|
126
126
|
import {
|
|
127
127
|
resolveInsideRoot
|
|
128
128
|
} from "./chunk-NUBSJGQZ.js";
|
|
@@ -131,14 +131,14 @@ import {
|
|
|
131
131
|
MemoryImportance,
|
|
132
132
|
calculateTextJaccardSimilarity,
|
|
133
133
|
getToolMemory
|
|
134
|
-
} from "./chunk-
|
|
134
|
+
} from "./chunk-I7OZP6FS.js";
|
|
135
135
|
import {
|
|
136
136
|
STOPWORDS,
|
|
137
137
|
truncateWithInfo
|
|
138
138
|
} from "./chunk-6T3EPABN.js";
|
|
139
139
|
import {
|
|
140
140
|
createSessionMemory
|
|
141
|
-
} from "./chunk-
|
|
141
|
+
} from "./chunk-DMFMJFRY.js";
|
|
142
142
|
import {
|
|
143
143
|
BUILT_IN_EXPERTS,
|
|
144
144
|
BuiltInExpertTypeSchema,
|
|
@@ -153,7 +153,7 @@ import {
|
|
|
153
153
|
createEvent,
|
|
154
154
|
getGlobalEventBus,
|
|
155
155
|
getGlobalRegistry
|
|
156
|
-
} from "./chunk-
|
|
156
|
+
} from "./chunk-BZFF3YWU.js";
|
|
157
157
|
import {
|
|
158
158
|
CliDetectionCache,
|
|
159
159
|
asRecord,
|
|
@@ -161,19 +161,19 @@ import {
|
|
|
161
161
|
getAvailableClis,
|
|
162
162
|
sleep,
|
|
163
163
|
withTimeout
|
|
164
|
-
} from "./chunk-
|
|
164
|
+
} from "./chunk-ZI4PO2A3.js";
|
|
165
165
|
import {
|
|
166
166
|
DEFAULTS
|
|
167
|
-
} from "./chunk-
|
|
167
|
+
} from "./chunk-P54BDACX.js";
|
|
168
168
|
import {
|
|
169
169
|
getAvailabilityCache,
|
|
170
170
|
getCliForModelId,
|
|
171
171
|
resolveFallback
|
|
172
|
-
} from "./chunk-
|
|
172
|
+
} from "./chunk-3LVB5OE2.js";
|
|
173
173
|
import {
|
|
174
174
|
generateHyphenId,
|
|
175
175
|
generateUUID
|
|
176
|
-
} from "./chunk-
|
|
176
|
+
} from "./chunk-GS3UPAUE.js";
|
|
177
177
|
import {
|
|
178
178
|
AGENT_ROUTER_TIMEOUTS,
|
|
179
179
|
API_TIMEOUTS,
|
|
@@ -265,7 +265,7 @@ import {
|
|
|
265
265
|
selectStrategyByManifest,
|
|
266
266
|
toExpertTaskAnalysisResult,
|
|
267
267
|
withStep
|
|
268
|
-
} from "./chunk-
|
|
268
|
+
} from "./chunk-Z66EEQ4A.js";
|
|
269
269
|
import {
|
|
270
270
|
ensureLearningDir,
|
|
271
271
|
getMetaOutcomesFile,
|
|
@@ -26300,7 +26300,7 @@ function execIdFields(executionId) {
|
|
|
26300
26300
|
async function populateUnifiedContextOnState(state, options) {
|
|
26301
26301
|
const taskCandidate = state["task"];
|
|
26302
26302
|
if (typeof taskCandidate !== "string" || taskCandidate === "") return;
|
|
26303
|
-
const { getContextForTask: getContextForTask2, inferTaskCategory: inferTaskCategory2 } = await import("./context-retriever-
|
|
26303
|
+
const { getContextForTask: getContextForTask2, inferTaskCategory: inferTaskCategory2 } = await import("./context-retriever-YCKTCDGM.js");
|
|
26304
26304
|
const category = inferTaskCategory2(taskCandidate);
|
|
26305
26305
|
const executionId = options?.executionId;
|
|
26306
26306
|
const execFields = execIdFields(executionId);
|
|
@@ -39689,30 +39689,93 @@ function registerSearchCodebaseTool(server, deps) {
|
|
|
39689
39689
|
// src/mcp/tools/extract-symbols-tool.ts
|
|
39690
39690
|
import { resolve as resolve8, sep as sep4 } from "path";
|
|
39691
39691
|
import { z as z80 } from "zod";
|
|
39692
|
+
var DEFAULT_EXTRACT_MAX_CHARS = 2e4;
|
|
39693
|
+
var DEFAULT_EXTRACT_MAX_SYMBOLS = 200;
|
|
39692
39694
|
var ExtractSymbolsInputSchema = z80.object({
|
|
39693
39695
|
filePath: z80.string().min(1).max(500).describe("Path to TypeScript/JavaScript file to extract symbols from"),
|
|
39694
|
-
mode: z80.enum(["index", "full"]).optional().describe("index: names+lines only (minimal tokens). full: includes source text.")
|
|
39696
|
+
mode: z80.enum(["index", "full"]).optional().describe("index: names+lines only (minimal tokens). full: includes source text."),
|
|
39697
|
+
maxChars: z80.number().int().positive().max(1e6).optional().describe(
|
|
39698
|
+
`full mode only: cap on total emitted symbol source chars (default ${String(DEFAULT_EXTRACT_MAX_CHARS)}). Excess is truncated and reported, never silently dropped.`
|
|
39699
|
+
),
|
|
39700
|
+
maxSymbols: z80.number().int().positive().max(1e4).optional().describe(
|
|
39701
|
+
`full mode only: cap on number of symbols emitted (default ${String(DEFAULT_EXTRACT_MAX_SYMBOLS)}).`
|
|
39702
|
+
)
|
|
39695
39703
|
});
|
|
39696
|
-
function
|
|
39697
|
-
return
|
|
39698
|
-
|
|
39699
|
-
|
|
39700
|
-
|
|
39701
|
-
|
|
39702
|
-
|
|
39703
|
-
|
|
39704
|
-
|
|
39705
|
-
|
|
39706
|
-
|
|
39707
|
-
|
|
39708
|
-
|
|
39709
|
-
|
|
39710
|
-
|
|
39711
|
-
|
|
39712
|
-
|
|
39713
|
-
|
|
39714
|
-
|
|
39715
|
-
|
|
39704
|
+
function toOutputSymbol(s, text) {
|
|
39705
|
+
return {
|
|
39706
|
+
name: s.name,
|
|
39707
|
+
kind: s.kind,
|
|
39708
|
+
startLine: s.startLine,
|
|
39709
|
+
endLine: s.endLine,
|
|
39710
|
+
exported: s.exported,
|
|
39711
|
+
text: text ?? s.text
|
|
39712
|
+
};
|
|
39713
|
+
}
|
|
39714
|
+
function sumChars(symbols) {
|
|
39715
|
+
return symbols.reduce((sum, s) => sum + s.text.length, 0);
|
|
39716
|
+
}
|
|
39717
|
+
function truncateSymbolText(s, remaining) {
|
|
39718
|
+
const kept = s.text.slice(0, Math.max(0, remaining));
|
|
39719
|
+
const omittedChars = s.text.length - kept.length;
|
|
39720
|
+
return toOutputSymbol(s, `${kept}
|
|
39721
|
+
\u2026 [truncated: ${String(omittedChars)} more chars omitted]`);
|
|
39722
|
+
}
|
|
39723
|
+
function applyCharBudget(symbols, maxChars) {
|
|
39724
|
+
const out = [];
|
|
39725
|
+
let used = 0;
|
|
39726
|
+
for (let i = 0; i < symbols.length; i++) {
|
|
39727
|
+
const s = symbols[i];
|
|
39728
|
+
if (s === void 0) break;
|
|
39729
|
+
const remaining = maxChars - used;
|
|
39730
|
+
if (remaining <= 0) {
|
|
39731
|
+
const rest = symbols.slice(i);
|
|
39732
|
+
return { symbols: out, omittedCount: rest.length, omittedChars: sumChars(rest) };
|
|
39733
|
+
}
|
|
39734
|
+
if (s.text.length > remaining) {
|
|
39735
|
+
out.push(truncateSymbolText(s, remaining));
|
|
39736
|
+
const rest = symbols.slice(i + 1);
|
|
39737
|
+
return {
|
|
39738
|
+
symbols: out,
|
|
39739
|
+
omittedCount: rest.length,
|
|
39740
|
+
omittedChars: s.text.length - remaining + sumChars(rest)
|
|
39741
|
+
};
|
|
39742
|
+
}
|
|
39743
|
+
out.push(toOutputSymbol(s));
|
|
39744
|
+
used += s.text.length;
|
|
39745
|
+
}
|
|
39746
|
+
return { symbols: out, omittedCount: 0, omittedChars: 0 };
|
|
39747
|
+
}
|
|
39748
|
+
function capSymbols(all, maxChars, maxSymbols) {
|
|
39749
|
+
const kept = all.slice(0, Math.max(0, maxSymbols));
|
|
39750
|
+
const countOmitted = all.slice(kept.length);
|
|
39751
|
+
const budgeted = applyCharBudget(kept, maxChars);
|
|
39752
|
+
const omittedSymbols = countOmitted.length + budgeted.omittedCount;
|
|
39753
|
+
const omittedChars = sumChars(countOmitted) + budgeted.omittedChars;
|
|
39754
|
+
return {
|
|
39755
|
+
symbols: budgeted.symbols,
|
|
39756
|
+
omittedSymbols,
|
|
39757
|
+
omittedChars,
|
|
39758
|
+
truncated: omittedSymbols > 0
|
|
39759
|
+
};
|
|
39760
|
+
}
|
|
39761
|
+
function buildFullSymbolOutput(result, maxChars, maxSymbols) {
|
|
39762
|
+
const capped = capSymbols(result.symbols, maxChars, maxSymbols);
|
|
39763
|
+
const payload = {
|
|
39764
|
+
filePath: result.filePath,
|
|
39765
|
+
totalLines: result.totalLines,
|
|
39766
|
+
totalChars: result.totalChars,
|
|
39767
|
+
symbolChars: result.symbolChars,
|
|
39768
|
+
savingsPercent: result.savingsPercent,
|
|
39769
|
+
symbols: capped.symbols
|
|
39770
|
+
};
|
|
39771
|
+
if (capped.truncated) {
|
|
39772
|
+
payload["truncated"] = true;
|
|
39773
|
+
payload["omittedSymbols"] = capped.omittedSymbols;
|
|
39774
|
+
payload["omittedChars"] = capped.omittedChars;
|
|
39775
|
+
payload["maxChars"] = maxChars;
|
|
39776
|
+
payload["maxSymbols"] = maxSymbols;
|
|
39777
|
+
}
|
|
39778
|
+
return JSON.stringify(payload, null, 2);
|
|
39716
39779
|
}
|
|
39717
39780
|
async function extractSymbolsHandler(args, ctx) {
|
|
39718
39781
|
const parsed = ExtractSymbolsInputSchema.safeParse(args);
|
|
@@ -39722,7 +39785,7 @@ async function extractSymbolsHandler(args, ctx) {
|
|
|
39722
39785
|
message: `Validation error: ${formatZodError(parsed.error)}`
|
|
39723
39786
|
});
|
|
39724
39787
|
}
|
|
39725
|
-
const { filePath, mode } = parsed.data;
|
|
39788
|
+
const { filePath, mode, maxChars, maxSymbols } = parsed.data;
|
|
39726
39789
|
const resolvedPath = resolve8(filePath);
|
|
39727
39790
|
const cwdRoot = resolve8(".");
|
|
39728
39791
|
if (resolvedPath !== cwdRoot && !resolvedPath.startsWith(cwdRoot + sep4)) {
|
|
@@ -39733,7 +39796,12 @@ async function extractSymbolsHandler(args, ctx) {
|
|
|
39733
39796
|
}
|
|
39734
39797
|
try {
|
|
39735
39798
|
if (mode === "full") {
|
|
39736
|
-
|
|
39799
|
+
const output2 = buildFullSymbolOutput(
|
|
39800
|
+
await extractSymbols(resolvedPath),
|
|
39801
|
+
maxChars ?? DEFAULT_EXTRACT_MAX_CHARS,
|
|
39802
|
+
maxSymbols ?? DEFAULT_EXTRACT_MAX_SYMBOLS
|
|
39803
|
+
);
|
|
39804
|
+
return toolSuccess(output2);
|
|
39737
39805
|
}
|
|
39738
39806
|
const index = await extractSymbolIndex(resolvedPath);
|
|
39739
39807
|
if (index === "") {
|
|
@@ -39753,9 +39821,15 @@ function registerExtractSymbolsTool(server, deps) {
|
|
|
39753
39821
|
const logger58 = deps.logger ?? createLogger({ tool: "extract_symbols" });
|
|
39754
39822
|
const toolSchema = {
|
|
39755
39823
|
filePath: z80.string().min(1).max(500).describe("Path to TypeScript/JavaScript file"),
|
|
39756
|
-
mode: z80.enum(["index", "full"]).optional().describe("index (default): names+lines. full: includes source text")
|
|
39824
|
+
mode: z80.enum(["index", "full"]).optional().describe("index (default): names+lines. full: includes source text"),
|
|
39825
|
+
maxChars: z80.number().int().positive().max(1e6).optional().describe(
|
|
39826
|
+
`full mode only: cap on total emitted symbol source chars (default ${String(DEFAULT_EXTRACT_MAX_CHARS)})`
|
|
39827
|
+
),
|
|
39828
|
+
maxSymbols: z80.number().int().positive().max(1e4).optional().describe(
|
|
39829
|
+
`full mode only: cap on number of symbols emitted (default ${String(DEFAULT_EXTRACT_MAX_SYMBOLS)})`
|
|
39830
|
+
)
|
|
39757
39831
|
};
|
|
39758
|
-
const description =
|
|
39832
|
+
const description = `Parse a SINGLE TypeScript/JavaScript file with the TypeScript compiler API and return its structural AST symbols. Use when you need the structure of one file \u2014 function/class/method/interface/type definitions. Not a cross-file search; for that use \`search_codebase\`. Output is 80%+ smaller than reading the full file. Full mode caps total emitted source at ${String(DEFAULT_EXTRACT_MAX_CHARS)} chars / ${String(DEFAULT_EXTRACT_MAX_SYMBOLS)} symbols by default (override via maxChars/maxSymbols); truncation is reported, never silent.`;
|
|
39759
39833
|
const secureHandler = createSecureHandler(extractSymbolsHandler, {
|
|
39760
39834
|
toolName: "extract_symbols",
|
|
39761
39835
|
rateLimiter: deps.rateLimiter,
|
|
@@ -41600,7 +41674,7 @@ async function tryIssueTriage(task) {
|
|
|
41600
41674
|
try {
|
|
41601
41675
|
const issueMatch = task.match(/github\.com\/([^/]+\/[^/]+)\/issues\/(\d+)/);
|
|
41602
41676
|
if (issueMatch === null) return null;
|
|
41603
|
-
const { createIssueTriage } = await import("./issue-triage-
|
|
41677
|
+
const { createIssueTriage } = await import("./issue-triage-TNV4R33I.js");
|
|
41604
41678
|
const triage = createIssueTriage();
|
|
41605
41679
|
const owner = issueMatch[1] ?? "";
|
|
41606
41680
|
const num = issueMatch[2] ?? "";
|
|
@@ -41628,7 +41702,7 @@ var VALID_TEMPLATES = /* @__PURE__ */ new Set([
|
|
|
41628
41702
|
]);
|
|
41629
41703
|
async function classifyWithLLM(task) {
|
|
41630
41704
|
try {
|
|
41631
|
-
const { executeExpert: executeExpert2 } = await import("./expert-bridge-
|
|
41705
|
+
const { executeExpert: executeExpert2 } = await import("./expert-bridge-EAR6XZJA.js");
|
|
41632
41706
|
const prompt = [
|
|
41633
41707
|
"Classify this task into exactly one pipeline template.",
|
|
41634
41708
|
"Templates: dev (implementation/bug fix/refactor), research (investigate/evaluate/compare),",
|
|
@@ -43269,7 +43343,7 @@ var memoryInitPromise = null;
|
|
|
43269
43343
|
async function initPipelineMemory() {
|
|
43270
43344
|
if (cachedMemory !== null) return cachedMemory;
|
|
43271
43345
|
try {
|
|
43272
|
-
const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-
|
|
43346
|
+
const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-5QVKDE4U.js");
|
|
43273
43347
|
const { getLearningDir } = await import("./learning-persistence-6D5GGT7D.js");
|
|
43274
43348
|
const mem = createSessionMemory2(getLearningDir());
|
|
43275
43349
|
mem.startSession(`pipeline-${String(getTimeProvider().now())}`);
|
|
@@ -43331,7 +43405,7 @@ function recordRoutingExperience(category, success, durationMs, tokensUsed = 0,
|
|
|
43331
43405
|
callRecord(routingMemoryCache);
|
|
43332
43406
|
return;
|
|
43333
43407
|
}
|
|
43334
|
-
routingMemoryInitPromise ??= import("./routing-memory-
|
|
43408
|
+
routingMemoryInitPromise ??= import("./routing-memory-XHZKEPUH.js").then(({ createRoutingMemory }) => {
|
|
43335
43409
|
routingMemoryCache ??= createRoutingMemory();
|
|
43336
43410
|
return routingMemoryCache;
|
|
43337
43411
|
}).catch((error) => {
|
|
@@ -43365,7 +43439,7 @@ ${text}` : "";
|
|
|
43365
43439
|
}
|
|
43366
43440
|
async function getWeatherContext() {
|
|
43367
43441
|
try {
|
|
43368
|
-
const { generateWeatherReport: generateWeatherReport2 } = await import("./weather-report-
|
|
43442
|
+
const { generateWeatherReport: generateWeatherReport2 } = await import("./weather-report-MPD66LKP.js");
|
|
43369
43443
|
const report = generateWeatherReport2({ includeAdaptive: true });
|
|
43370
43444
|
const mappings = "recommendedMappings" in report ? report.recommendedMappings : [];
|
|
43371
43445
|
if (!Array.isArray(mappings) || mappings.length === 0) return "";
|
|
@@ -43383,7 +43457,7 @@ ${lines}
|
|
|
43383
43457
|
}
|
|
43384
43458
|
async function getMemoryContext(task) {
|
|
43385
43459
|
try {
|
|
43386
|
-
const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-
|
|
43460
|
+
const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-5QVKDE4U.js");
|
|
43387
43461
|
const { getLearningDir } = await import("./learning-persistence-6D5GGT7D.js");
|
|
43388
43462
|
const memory = createSessionMemory2(getLearningDir(), { maxLearningsInContext: 10 });
|
|
43389
43463
|
const learnings = memory.searchLearnings(task.slice(0, 200));
|
|
@@ -43498,7 +43572,7 @@ ${contextBlock}`;
|
|
|
43498
43572
|
const strategy = config.votingStrategy ?? "higher_order";
|
|
43499
43573
|
await postProgress(config, "Vote", `Running consensus with ${strategy} strategy...`);
|
|
43500
43574
|
try {
|
|
43501
|
-
const { executeVoting } = await import("./consensus-vote-
|
|
43575
|
+
const { executeVoting } = await import("./consensus-vote-KWPS6WNH.js");
|
|
43502
43576
|
const votingResult = await executeVoting(
|
|
43503
43577
|
{
|
|
43504
43578
|
proposal: buildVoteProposal(plan, research),
|
|
@@ -43939,7 +44013,7 @@ async function searchCodebaseForTask(task) {
|
|
|
43939
44013
|
}
|
|
43940
44014
|
async function queryResearchRegistry(task) {
|
|
43941
44015
|
try {
|
|
43942
|
-
const { synthesizeResearch: synthesizeResearch2 } = await import("./research-helpers-synthesize-
|
|
44016
|
+
const { synthesizeResearch: synthesizeResearch2 } = await import("./research-helpers-synthesize-ONWBGXHO.js");
|
|
43943
44017
|
const topic = task.split(/[.!?\n]/).filter((s) => s.trim().length > 10)[0]?.trim();
|
|
43944
44018
|
if (topic === void 0) return null;
|
|
43945
44019
|
const result = await synthesizeResearch2(topic.slice(0, 50));
|
|
@@ -44010,7 +44084,7 @@ function createScanStageWrapper() {
|
|
|
44010
44084
|
try {
|
|
44011
44085
|
const slug = ctx.task.match(/([a-zA-Z0-9._-]+\/[a-zA-Z0-9._-]+)/)?.[1];
|
|
44012
44086
|
if (slug !== void 0) {
|
|
44013
|
-
const { generateSecurityPlan: generateSecurityPlan2 } = await import("./repo-security-plan-
|
|
44087
|
+
const { generateSecurityPlan: generateSecurityPlan2 } = await import("./repo-security-plan-CFRLHIMY.js");
|
|
44014
44088
|
const plan = await generateSecurityPlan2({ repo: slug, maxScanners: 10 });
|
|
44015
44089
|
const recs = plan.recommendations.slice(0, 5).map((r) => `${r.priority}: ${r.displayName} (${r.category})`).join("; ");
|
|
44016
44090
|
return output(PIPELINE_STATE_KEYS.FINDINGS, recs, getTimeProvider().now() - start, true);
|
|
@@ -46970,7 +47044,7 @@ var GitHubTaskTracker = class {
|
|
|
46970
47044
|
cachedProvider = null;
|
|
46971
47045
|
async getProvider() {
|
|
46972
47046
|
if (this.cachedProvider !== null) return this.cachedProvider;
|
|
46973
|
-
const { createScmProvider } = await import("./factory-
|
|
47047
|
+
const { createScmProvider } = await import("./factory-7SVW7XMV.js");
|
|
46974
47048
|
const result = await createScmProvider({ repo: this.config.repo ?? "" });
|
|
46975
47049
|
if (!result.ok) throw new Error(`SCM provider error: ${result.error.message}`);
|
|
46976
47050
|
this.cachedProvider = result.value;
|
|
@@ -47777,7 +47851,7 @@ async function probeSource(source, includeModelIds) {
|
|
|
47777
47851
|
}
|
|
47778
47852
|
}
|
|
47779
47853
|
async function defaultSources(includeOpenRouter) {
|
|
47780
|
-
const { createAllAdapters: createAllAdapters2 } = await import("./factory-
|
|
47854
|
+
const { createAllAdapters: createAllAdapters2 } = await import("./factory-JYAUOFEN.js");
|
|
47781
47855
|
const adapters = createAllAdapters2();
|
|
47782
47856
|
return buildDefaultModelSources(adapters, { includeOpenRouter });
|
|
47783
47857
|
}
|
|
@@ -51846,4 +51920,4 @@ export {
|
|
|
51846
51920
|
shutdownFeedbackSubscriber,
|
|
51847
51921
|
createEventBusBridge
|
|
51848
51922
|
};
|
|
51849
|
-
//# sourceMappingURL=chunk-
|
|
51923
|
+
//# sourceMappingURL=chunk-JBH4CU46.js.map
|