nexus-agents 2.77.13 → 2.78.0
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-MJMUF7TL.js → child-mcp-config-CTO2MBRM.js} +3 -4
- package/dist/{child-mcp-config-MJMUF7TL.js.map → child-mcp-config-CTO2MBRM.js.map} +1 -1
- package/dist/{chunk-YJ2IGAD2.js → chunk-2UYTFLMO.js} +2 -2
- package/dist/{chunk-6AY5DK4E.js → chunk-2YPG6PDG.js} +3 -3
- package/dist/{chunk-3VWMM6UF.js → chunk-3NIPH6UP.js} +2 -2
- package/dist/{chunk-JX6OI4FS.js → chunk-4N33QZLH.js} +13 -15
- package/dist/{chunk-JX6OI4FS.js.map → chunk-4N33QZLH.js.map} +1 -1
- package/dist/{chunk-JN6UWGHH.js → chunk-5O6XLBPP.js} +2 -2
- package/dist/{chunk-ERWXGXV2.js → chunk-6TFTVW77.js} +3 -3
- package/dist/{chunk-GFKGL2GQ.js → chunk-6WBTNZAY.js} +171 -83
- package/dist/chunk-6WBTNZAY.js.map +1 -0
- package/dist/{chunk-GOT7OAL5.js → chunk-7BMOZJYS.js} +29 -5
- package/dist/chunk-7BMOZJYS.js.map +1 -0
- package/dist/{chunk-C2LLQ6TW.js → chunk-7XCUZI4G.js} +4 -4
- package/dist/chunk-7XCUZI4G.js.map +1 -0
- package/dist/{chunk-TDV5ALHY.js → chunk-D6TM2VHX.js} +3 -3
- package/dist/{chunk-PWTJGGKB.js → chunk-DLXT23AC.js} +2 -2
- package/dist/chunk-DNO2INX5.js +276 -0
- package/dist/chunk-DNO2INX5.js.map +1 -0
- package/dist/{chunk-G2CSKBY5.js → chunk-FJWWSVWB.js} +29 -6
- package/dist/chunk-FJWWSVWB.js.map +1 -0
- package/dist/{chunk-DSQ5XM4O.js → chunk-FVPYP5DD.js} +4 -4
- package/dist/{chunk-MGLWPN2I.js → chunk-GONMG4NM.js} +2 -2
- package/dist/{chunk-RBZ4CDMY.js → chunk-GTGDVBLW.js} +5 -5
- package/dist/{chunk-YQMQSJQK.js → chunk-HYU4GZY6.js} +2 -2
- package/dist/{chunk-3DH5SLFH.js → chunk-K2QILJG4.js} +6 -6
- package/dist/{chunk-5WHWKY32.js → chunk-KT5FIBWS.js} +2 -2
- package/dist/{chunk-DIB6V67T.js → chunk-L6SCKLGO.js} +3 -3
- package/dist/{chunk-IPWCD22D.js → chunk-PLX6FCFC.js} +2 -2
- package/dist/chunk-PQHVC4BD.js +639 -0
- package/dist/chunk-PQHVC4BD.js.map +1 -0
- package/dist/chunk-Q5CFPIJ5.js +5581 -0
- package/dist/chunk-Q5CFPIJ5.js.map +1 -0
- package/dist/{chunk-G6ZPVADX.js → chunk-SD76JZBG.js} +2 -2
- package/dist/{chunk-Y2CP4Z5B.js → chunk-SWFJU3W2.js} +220 -4580
- package/dist/chunk-SWFJU3W2.js.map +1 -0
- package/dist/{chunk-3MRM53T4.js → chunk-WDYCIJWN.js} +640 -470
- package/dist/chunk-WDYCIJWN.js.map +1 -0
- package/dist/{chunk-CM3TORGV.js → chunk-YXWGEIQR.js} +2 -2
- package/dist/{chunk-7NK7BTWP.js → chunk-ZVCED4Z4.js} +2 -2
- package/dist/cli-circuit-breaker-I74ZQ44Q.js +13 -0
- package/dist/cli.js +109 -58
- package/dist/cli.js.map +1 -1
- package/dist/{composite-router-S6E26BCI.js → composite-router-V3OC57IE.js} +3 -4
- package/dist/consensus-vote-ESFPGEJE.js +30 -0
- package/dist/context-retriever-MB3D7KS6.js +18 -0
- package/dist/dist-NIXVXYIH.js +42 -0
- package/dist/doctor-deep-KQ765XZA.js +12 -0
- package/dist/expert-bridge-JKLC57IC.js +10 -0
- package/dist/factory-BUUXNGIB.js +14 -0
- package/dist/{factory-X3VKIGKP.js → factory-LHHYDVZX.js} +5 -6
- package/dist/index.d.ts +72 -8
- package/dist/index.js +208 -316
- package/dist/index.js.map +1 -1
- package/dist/{init-opencode-CFE7M6XA.js → init-opencode-GXZN2W5S.js} +6 -7
- package/dist/{init-opencode-CFE7M6XA.js.map → init-opencode-GXZN2W5S.js.map} +1 -1
- package/dist/issue-triage-RMXPDZ2K.js +15 -0
- package/dist/{learning-persistence-N6ILD2HX.js → learning-persistence-Q3HTOGTU.js} +2 -3
- package/dist/outcome-store-adapter-QRFJJIKB.js +57 -0
- package/dist/outcome-store-adapter-QRFJJIKB.js.map +1 -0
- package/dist/{registry-command-RPPC7N2K.js → registry-command-6E4YKAMT.js} +3 -4
- package/dist/{registry-command-RPPC7N2K.js.map → registry-command-6E4YKAMT.js.map} +1 -1
- package/dist/{repo-security-plan-7ZCDVH5O.js → repo-security-plan-AGRU72DL.js} +4 -5
- package/dist/research-helpers-synthesize-K2UCJQQG.js +13 -0
- package/dist/{routing-memory-5VTX7LQX.js → routing-memory-3B6DDZ76.js} +3 -4
- package/dist/{session-memory-7XBV6BMY.js → session-memory-L7EQIY2O.js} +4 -5
- package/dist/{setup-command-W6UKPODL.js → setup-command-VYV4RFWW.js} +11 -12
- package/dist/setup-config-EQT24DD4.js +10 -0
- package/dist/{setup-custom-api-WM5W5AY5.js → setup-custom-api-IBDV654K.js} +5 -6
- package/dist/{setup-custom-api-WM5W5AY5.js.map → setup-custom-api-IBDV654K.js.map} +1 -1
- package/dist/tool-memory-6HCHQLAN.js +19 -0
- package/dist/{weather-report-YJMVKJGA.js → weather-report-ER3WUZ7S.js} +3 -4
- package/package.json +3 -2
- package/dist/adaptive-memory-EI564K4C.js +0 -16
- package/dist/chunk-3MRM53T4.js.map +0 -1
- package/dist/chunk-BJ2OMC7P.js +0 -944
- package/dist/chunk-BJ2OMC7P.js.map +0 -1
- package/dist/chunk-C2LLQ6TW.js.map +0 -1
- package/dist/chunk-G2CSKBY5.js.map +0 -1
- package/dist/chunk-GFKGL2GQ.js.map +0 -1
- package/dist/chunk-GOT7OAL5.js.map +0 -1
- package/dist/chunk-I7ORMAO7.js +0 -32
- package/dist/chunk-I7ORMAO7.js.map +0 -1
- package/dist/chunk-Y2CP4Z5B.js.map +0 -1
- package/dist/cli-circuit-breaker-YX4BWZD5.js +0 -14
- package/dist/consensus-vote-MUQ4HPIF.js +0 -30
- package/dist/doctor-deep-BRU5ZUJI.js +0 -13
- package/dist/expert-bridge-ZPNVLJVN.js +0 -11
- package/dist/factory-A7DTCCUY.js +0 -15
- package/dist/issue-triage-6XD6CVPB.js +0 -16
- package/dist/mobimem-CG2MNS7V.js +0 -14
- package/dist/nexus-data-dir-77UO7N6J.js +0 -12
- package/dist/research-helpers-synthesize-36TUTUUA.js +0 -14
- package/dist/setup-config-EI5KROA3.js +0 -11
- /package/dist/{chunk-YJ2IGAD2.js.map → chunk-2UYTFLMO.js.map} +0 -0
- /package/dist/{chunk-6AY5DK4E.js.map → chunk-2YPG6PDG.js.map} +0 -0
- /package/dist/{chunk-3VWMM6UF.js.map → chunk-3NIPH6UP.js.map} +0 -0
- /package/dist/{chunk-JN6UWGHH.js.map → chunk-5O6XLBPP.js.map} +0 -0
- /package/dist/{chunk-ERWXGXV2.js.map → chunk-6TFTVW77.js.map} +0 -0
- /package/dist/{chunk-TDV5ALHY.js.map → chunk-D6TM2VHX.js.map} +0 -0
- /package/dist/{chunk-PWTJGGKB.js.map → chunk-DLXT23AC.js.map} +0 -0
- /package/dist/{chunk-DSQ5XM4O.js.map → chunk-FVPYP5DD.js.map} +0 -0
- /package/dist/{chunk-MGLWPN2I.js.map → chunk-GONMG4NM.js.map} +0 -0
- /package/dist/{chunk-RBZ4CDMY.js.map → chunk-GTGDVBLW.js.map} +0 -0
- /package/dist/{chunk-YQMQSJQK.js.map → chunk-HYU4GZY6.js.map} +0 -0
- /package/dist/{chunk-3DH5SLFH.js.map → chunk-K2QILJG4.js.map} +0 -0
- /package/dist/{chunk-5WHWKY32.js.map → chunk-KT5FIBWS.js.map} +0 -0
- /package/dist/{chunk-DIB6V67T.js.map → chunk-L6SCKLGO.js.map} +0 -0
- /package/dist/{chunk-IPWCD22D.js.map → chunk-PLX6FCFC.js.map} +0 -0
- /package/dist/{chunk-G6ZPVADX.js.map → chunk-SD76JZBG.js.map} +0 -0
- /package/dist/{chunk-CM3TORGV.js.map → chunk-YXWGEIQR.js.map} +0 -0
- /package/dist/{chunk-7NK7BTWP.js.map → chunk-ZVCED4Z4.js.map} +0 -0
- /package/dist/{adaptive-memory-EI564K4C.js.map → cli-circuit-breaker-I74ZQ44Q.js.map} +0 -0
- /package/dist/{cli-circuit-breaker-YX4BWZD5.js.map → composite-router-V3OC57IE.js.map} +0 -0
- /package/dist/{composite-router-S6E26BCI.js.map → consensus-vote-ESFPGEJE.js.map} +0 -0
- /package/dist/{consensus-vote-MUQ4HPIF.js.map → context-retriever-MB3D7KS6.js.map} +0 -0
- /package/dist/{doctor-deep-BRU5ZUJI.js.map → dist-NIXVXYIH.js.map} +0 -0
- /package/dist/{expert-bridge-ZPNVLJVN.js.map → doctor-deep-KQ765XZA.js.map} +0 -0
- /package/dist/{factory-A7DTCCUY.js.map → expert-bridge-JKLC57IC.js.map} +0 -0
- /package/dist/{factory-X3VKIGKP.js.map → factory-BUUXNGIB.js.map} +0 -0
- /package/dist/{issue-triage-6XD6CVPB.js.map → factory-LHHYDVZX.js.map} +0 -0
- /package/dist/{learning-persistence-N6ILD2HX.js.map → issue-triage-RMXPDZ2K.js.map} +0 -0
- /package/dist/{mobimem-CG2MNS7V.js.map → learning-persistence-Q3HTOGTU.js.map} +0 -0
- /package/dist/{nexus-data-dir-77UO7N6J.js.map → repo-security-plan-AGRU72DL.js.map} +0 -0
- /package/dist/{repo-security-plan-7ZCDVH5O.js.map → research-helpers-synthesize-K2UCJQQG.js.map} +0 -0
- /package/dist/{research-helpers-synthesize-36TUTUUA.js.map → routing-memory-3B6DDZ76.js.map} +0 -0
- /package/dist/{routing-memory-5VTX7LQX.js.map → session-memory-L7EQIY2O.js.map} +0 -0
- /package/dist/{session-memory-7XBV6BMY.js.map → setup-command-VYV4RFWW.js.map} +0 -0
- /package/dist/{setup-command-W6UKPODL.js.map → setup-config-EQT24DD4.js.map} +0 -0
- /package/dist/{setup-config-EI5KROA3.js.map → tool-memory-6HCHQLAN.js.map} +0 -0
- /package/dist/{weather-report-YJMVKJGA.js.map → weather-report-ER3WUZ7S.js.map} +0 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getErrorMessage
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-WDYCIJWN.js";
|
|
4
4
|
|
|
5
5
|
// src/cli/setup-config.ts
|
|
6
6
|
import { copyFileSync, existsSync, writeFileSync } from "fs";
|
|
@@ -74,4 +74,4 @@ function ensureBackup(outputPath) {
|
|
|
74
74
|
export {
|
|
75
75
|
runConfigInitSync
|
|
76
76
|
};
|
|
77
|
-
//# sourceMappingURL=chunk-
|
|
77
|
+
//# sourceMappingURL=chunk-YXWGEIQR.js.map
|
|
@@ -2,7 +2,7 @@ import {
|
|
|
2
2
|
ConfigError,
|
|
3
3
|
err,
|
|
4
4
|
ok
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-WDYCIJWN.js";
|
|
6
6
|
|
|
7
7
|
// src/adapters/sdk/types.ts
|
|
8
8
|
var PROVIDER_ENV_KEYS = {
|
|
@@ -117,4 +117,4 @@ export {
|
|
|
117
117
|
CUSTOM_API_ALLOW_PRIVATE_ENV,
|
|
118
118
|
validateCustomApiBaseUrl
|
|
119
119
|
};
|
|
120
|
-
//# sourceMappingURL=chunk-
|
|
120
|
+
//# sourceMappingURL=chunk-ZVCED4Z4.js.map
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import {
|
|
2
|
+
CliCircuitBreakerIntegration,
|
|
3
|
+
createCliCircuitBreakerIntegration
|
|
4
|
+
} from "./chunk-2YPG6PDG.js";
|
|
5
|
+
import "./chunk-DLXT23AC.js";
|
|
6
|
+
import "./chunk-WDYCIJWN.js";
|
|
7
|
+
import "./chunk-7BMOZJYS.js";
|
|
8
|
+
import "./chunk-UP2VWCW5.js";
|
|
9
|
+
export {
|
|
10
|
+
CliCircuitBreakerIntegration,
|
|
11
|
+
createCliCircuitBreakerIntegration
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=cli-circuit-breaker-I74ZQ44Q.js.map
|
package/dist/cli.js
CHANGED
|
@@ -12,18 +12,18 @@ import {
|
|
|
12
12
|
parseFindings,
|
|
13
13
|
sumFindings
|
|
14
14
|
} from "./chunk-6E3NMMEY.js";
|
|
15
|
-
import "./chunk-
|
|
15
|
+
import "./chunk-2UYTFLMO.js";
|
|
16
16
|
import {
|
|
17
17
|
buildOpenAICompatAdapters,
|
|
18
18
|
loadUsageEvents,
|
|
19
19
|
readOpenAICompatEnv,
|
|
20
20
|
rollupByModel
|
|
21
|
-
} from "./chunk-
|
|
21
|
+
} from "./chunk-7XCUZI4G.js";
|
|
22
22
|
import {
|
|
23
23
|
setupCommandAsync,
|
|
24
24
|
verifyCommand
|
|
25
|
-
} from "./chunk-
|
|
26
|
-
import "./chunk-
|
|
25
|
+
} from "./chunk-GTGDVBLW.js";
|
|
26
|
+
import "./chunk-YXWGEIQR.js";
|
|
27
27
|
import {
|
|
28
28
|
AuthHandler,
|
|
29
29
|
DEFAULT_EXPERTS,
|
|
@@ -153,17 +153,19 @@ import {
|
|
|
153
153
|
validateCommand,
|
|
154
154
|
validateWorkflow,
|
|
155
155
|
wrapInMarkdownFence
|
|
156
|
-
} from "./chunk-
|
|
156
|
+
} from "./chunk-6WBTNZAY.js";
|
|
157
|
+
import "./chunk-AP2FD37C.js";
|
|
157
158
|
import "./chunk-ED6VQWNG.js";
|
|
158
159
|
import {
|
|
159
160
|
resolveToken
|
|
160
|
-
} from "./chunk-
|
|
161
|
+
} from "./chunk-GONMG4NM.js";
|
|
161
162
|
import {
|
|
162
163
|
CATEGORY_DISPLAY_NAMES,
|
|
163
164
|
DEFAULT_PR_REVIEW_CONFIG
|
|
164
165
|
} from "./chunk-X2M7OF27.js";
|
|
165
|
-
import "./chunk-
|
|
166
|
-
import "./chunk-
|
|
166
|
+
import "./chunk-L6SCKLGO.js";
|
|
167
|
+
import "./chunk-2YPG6PDG.js";
|
|
168
|
+
import "./chunk-K2QILJG4.js";
|
|
167
169
|
import {
|
|
168
170
|
DEFAULT_VOTE_TIMEOUT_MS,
|
|
169
171
|
ErrorPolicySchema,
|
|
@@ -174,30 +176,33 @@ import {
|
|
|
174
176
|
executeVoting,
|
|
175
177
|
getToolAnnotations,
|
|
176
178
|
registerConsensusVoteTool,
|
|
177
|
-
shutdownToolMemory,
|
|
178
179
|
toolStructuredError,
|
|
179
180
|
warnIfSimulatedOutsideTests
|
|
180
|
-
} from "./chunk-
|
|
181
|
-
import "./chunk-
|
|
182
|
-
import "./chunk-
|
|
181
|
+
} from "./chunk-SWFJU3W2.js";
|
|
182
|
+
import "./chunk-ZVCED4Z4.js";
|
|
183
|
+
import "./chunk-PLX6FCFC.js";
|
|
183
184
|
import {
|
|
184
185
|
loadPapersRegistry,
|
|
185
186
|
loadTechniquesRegistry,
|
|
186
187
|
savePapersRegistry,
|
|
187
188
|
synthesizeResearch
|
|
188
|
-
} from "./chunk-
|
|
189
|
+
} from "./chunk-5O6XLBPP.js";
|
|
189
190
|
import {
|
|
190
191
|
classifyTrust,
|
|
191
192
|
createFullGitHubProvider,
|
|
192
193
|
evaluatePolicy,
|
|
193
194
|
parsePRUrl,
|
|
194
195
|
sanitizeInput
|
|
195
|
-
} from "./chunk-
|
|
196
|
-
import "./chunk-
|
|
197
|
-
import "./chunk-
|
|
196
|
+
} from "./chunk-6TFTVW77.js";
|
|
197
|
+
import "./chunk-SD76JZBG.js";
|
|
198
|
+
import "./chunk-FJWWSVWB.js";
|
|
198
199
|
import "./chunk-7J7PNOJQ.js";
|
|
199
|
-
import "./chunk-AP2FD37C.js";
|
|
200
200
|
import "./chunk-BQ4YXGGQ.js";
|
|
201
|
+
import "./chunk-DNO2INX5.js";
|
|
202
|
+
import {
|
|
203
|
+
MemoryError,
|
|
204
|
+
shutdownToolMemory
|
|
205
|
+
} from "./chunk-Q5CFPIJ5.js";
|
|
201
206
|
import {
|
|
202
207
|
CustomExpertDefinitionSchema,
|
|
203
208
|
DATA_SUBDIRECTORIES,
|
|
@@ -216,30 +221,27 @@ import {
|
|
|
216
221
|
loadConfig,
|
|
217
222
|
runDoctor,
|
|
218
223
|
validateNexusEnv
|
|
219
|
-
} from "./chunk-
|
|
220
|
-
import "./chunk-
|
|
224
|
+
} from "./chunk-4N33QZLH.js";
|
|
225
|
+
import "./chunk-KT5FIBWS.js";
|
|
221
226
|
import {
|
|
222
227
|
DEFAULTS
|
|
223
|
-
} from "./chunk-
|
|
228
|
+
} from "./chunk-HYU4GZY6.js";
|
|
224
229
|
import "./chunk-NUBSJGQZ.js";
|
|
230
|
+
import {
|
|
231
|
+
capitalize,
|
|
232
|
+
capitalizeKebab,
|
|
233
|
+
truncateSentence
|
|
234
|
+
} from "./chunk-633WH2ML.js";
|
|
225
235
|
import {
|
|
226
236
|
createAllAdapters,
|
|
227
237
|
getAvailableClis,
|
|
228
238
|
isRecord,
|
|
229
239
|
probeAllClis
|
|
230
|
-
} from "./chunk-
|
|
240
|
+
} from "./chunk-D6TM2VHX.js";
|
|
241
|
+
import "./chunk-DLXT23AC.js";
|
|
231
242
|
import "./chunk-ZM4O442V.js";
|
|
232
|
-
import "./chunk-
|
|
233
|
-
import
|
|
234
|
-
MemoryError
|
|
235
|
-
} from "./chunk-BJ2OMC7P.js";
|
|
236
|
-
import {
|
|
237
|
-
capitalize,
|
|
238
|
-
capitalizeKebab,
|
|
239
|
-
truncateSentence
|
|
240
|
-
} from "./chunk-633WH2ML.js";
|
|
241
|
-
import "./chunk-6AY5DK4E.js";
|
|
242
|
-
import "./chunk-PWTJGGKB.js";
|
|
243
|
+
import "./chunk-PQHVC4BD.js";
|
|
244
|
+
import "./chunk-3NIPH6UP.js";
|
|
243
245
|
import {
|
|
244
246
|
API_TIMEOUTS,
|
|
245
247
|
AgentCapability,
|
|
@@ -307,13 +309,12 @@ import {
|
|
|
307
309
|
validateTimeout,
|
|
308
310
|
writeEmptyLine,
|
|
309
311
|
writeLine
|
|
310
|
-
} from "./chunk-
|
|
311
|
-
import "./chunk-I7ORMAO7.js";
|
|
312
|
+
} from "./chunk-WDYCIJWN.js";
|
|
312
313
|
import {
|
|
313
314
|
detectSandbox,
|
|
314
315
|
getNexusDataDir,
|
|
315
316
|
nexusDataPath
|
|
316
|
-
} from "./chunk-
|
|
317
|
+
} from "./chunk-7BMOZJYS.js";
|
|
317
318
|
import "./chunk-UP2VWCW5.js";
|
|
318
319
|
|
|
319
320
|
// src/cli/cli-log-bootstrap.ts
|
|
@@ -5922,6 +5923,11 @@ function applyFixes(projectRoot, result) {
|
|
|
5922
5923
|
}
|
|
5923
5924
|
return fixes;
|
|
5924
5925
|
}
|
|
5926
|
+
function detectWrongProjectRoot(projectRoot) {
|
|
5927
|
+
const claudeMd = path4.join(projectRoot, "CLAUDE.md");
|
|
5928
|
+
if (fs5.existsSync(claudeMd)) return null;
|
|
5929
|
+
return `system-review must run from the nexus-agents source repo, but ${claudeMd} does not exist. Clone the repo and re-run from the workspace root (or pass --project-root once that flag is wired). The installed npm package ships only the bundled dist/.`;
|
|
5930
|
+
}
|
|
5925
5931
|
function runSystemReview(options = {}) {
|
|
5926
5932
|
const pr = options.projectRoot ?? process.cwd();
|
|
5927
5933
|
const techniques = runPhase1(pr), docs = runPhase2(pr), issues = runPhase3(), security = runPhase4(pr), quality = runPhase5(pr);
|
|
@@ -5938,6 +5944,13 @@ function runSystemReview(options = {}) {
|
|
|
5938
5944
|
return { ...partial, actionItems, fixesApplied };
|
|
5939
5945
|
}
|
|
5940
5946
|
function systemReviewCommand(options = {}) {
|
|
5947
|
+
const pr = options.projectRoot ?? process.cwd();
|
|
5948
|
+
const wrongRootMessage = detectWrongProjectRoot(pr);
|
|
5949
|
+
if (wrongRootMessage !== null) {
|
|
5950
|
+
process.stderr.write(`${formatStatus("fail")} ${wrongRootMessage}
|
|
5951
|
+
`);
|
|
5952
|
+
return 1;
|
|
5953
|
+
}
|
|
5941
5954
|
const result = runSystemReview(options);
|
|
5942
5955
|
printSystemReviewResult(result);
|
|
5943
5956
|
if (options.createIssue === true) {
|
|
@@ -8713,29 +8726,43 @@ var VALID_SUBCOMMANDS = [
|
|
|
8713
8726
|
function isValidResearchSubcommand(value) {
|
|
8714
8727
|
return value !== void 0 && VALID_SUBCOMMANDS.includes(value);
|
|
8715
8728
|
}
|
|
8729
|
+
function ok2(handler) {
|
|
8730
|
+
return async (args, options) => ({
|
|
8731
|
+
text: await handler(args, options),
|
|
8732
|
+
exitCode: 0
|
|
8733
|
+
});
|
|
8734
|
+
}
|
|
8716
8735
|
async function handleIndexCommand(args) {
|
|
8717
8736
|
const indexOptions = parseResearchIndexArgs(args);
|
|
8718
8737
|
const result = await researchIndexCommand(indexOptions);
|
|
8719
|
-
return result.message;
|
|
8738
|
+
return { text: result.message, exitCode: result.exitCode };
|
|
8739
|
+
}
|
|
8740
|
+
async function handleAddCommandWithExit(args, options) {
|
|
8741
|
+
const text = await handleAddCommand(args, options);
|
|
8742
|
+
const exitCode = text.startsWith("Error:") ? 1 : 0;
|
|
8743
|
+
return { text, exitCode };
|
|
8720
8744
|
}
|
|
8721
8745
|
var SUBCOMMAND_HANDLERS = {
|
|
8722
|
-
status: handleStatusCommand,
|
|
8723
|
-
overlap: handleOverlapCommand,
|
|
8724
|
-
add:
|
|
8725
|
-
stats: (_args, options) => handleStatsCommand(options),
|
|
8726
|
-
refresh: (_args, options) => handleRefreshCommand(options),
|
|
8727
|
-
check: () => handleCheckCommand(),
|
|
8746
|
+
status: ok2(handleStatusCommand),
|
|
8747
|
+
overlap: ok2(handleOverlapCommand),
|
|
8748
|
+
add: handleAddCommandWithExit,
|
|
8749
|
+
stats: ok2((_args, options) => handleStatsCommand(options)),
|
|
8750
|
+
refresh: ok2((_args, options) => handleRefreshCommand(options)),
|
|
8751
|
+
check: ok2(() => handleCheckCommand()),
|
|
8728
8752
|
index: (args) => handleIndexCommand(args),
|
|
8729
|
-
discover: handleDiscoverCommand,
|
|
8730
|
-
review: handleReviewCommand,
|
|
8731
|
-
prioritize: handlePrioritizeCommand,
|
|
8732
|
-
synthesize: handleSynthesizeCommand,
|
|
8733
|
-
import: handleImportCommand
|
|
8753
|
+
discover: ok2(handleDiscoverCommand),
|
|
8754
|
+
review: ok2(handleReviewCommand),
|
|
8755
|
+
prioritize: ok2(handlePrioritizeCommand),
|
|
8756
|
+
synthesize: ok2(handleSynthesizeCommand),
|
|
8757
|
+
import: ok2(handleImportCommand)
|
|
8734
8758
|
};
|
|
8735
8759
|
async function researchCommand(subcommand, args, options) {
|
|
8736
8760
|
const handler = SUBCOMMAND_HANDLERS[subcommand];
|
|
8737
8761
|
if (handler === void 0) {
|
|
8738
|
-
return
|
|
8762
|
+
return {
|
|
8763
|
+
text: `Unknown subcommand: ${subcommand}. Available: ${VALID_SUBCOMMANDS.join(", ")}`,
|
|
8764
|
+
exitCode: 1
|
|
8765
|
+
};
|
|
8739
8766
|
}
|
|
8740
8767
|
return handler(args, options);
|
|
8741
8768
|
}
|
|
@@ -10755,7 +10782,8 @@ async function freshnessCommand(options) {
|
|
|
10755
10782
|
logger9.info("Analyzing documentation freshness...");
|
|
10756
10783
|
const result = analyzeFreshness();
|
|
10757
10784
|
const { summary } = result;
|
|
10758
|
-
const
|
|
10785
|
+
const allUnknown = summary.total > 0 && summary.unknown === summary.total;
|
|
10786
|
+
const hasIssues = summary.stale > 0 || summary.warning > 0 || summary.unknown > 0;
|
|
10759
10787
|
const output2 = options.format === "json" ? formatFreshnessJson(result) : formatFreshnessTable(result);
|
|
10760
10788
|
if (options.output !== void 0) {
|
|
10761
10789
|
const outputDir = path17.dirname(options.output);
|
|
@@ -10765,9 +10793,18 @@ async function freshnessCommand(options) {
|
|
|
10765
10793
|
} else {
|
|
10766
10794
|
process.stdout.write(output2 + "\n");
|
|
10767
10795
|
}
|
|
10796
|
+
const wrongCwdHint = "No tracked documents found at the current CWD. `index freshness` audits the nexus-agents source repo \u2014 run it from the repo root (or pass --project-root once that flag is wired).";
|
|
10797
|
+
let message;
|
|
10798
|
+
if (allUnknown) {
|
|
10799
|
+
message = `Documentation freshness check: ${wrongCwdHint}`;
|
|
10800
|
+
} else if (hasIssues) {
|
|
10801
|
+
message = `Documentation freshness check: ${String(summary.stale)} stale, ${String(summary.warning)} warnings, ${String(summary.unknown)} unknown`;
|
|
10802
|
+
} else {
|
|
10803
|
+
message = `Documentation freshness check: ${String(summary.fresh)} documents are fresh`;
|
|
10804
|
+
}
|
|
10768
10805
|
return {
|
|
10769
10806
|
success: !hasIssues,
|
|
10770
|
-
message
|
|
10807
|
+
message,
|
|
10771
10808
|
data: {
|
|
10772
10809
|
filesIndexed: summary.total
|
|
10773
10810
|
}
|
|
@@ -18997,13 +19034,27 @@ function registerStandardsSkills(library, logger17) {
|
|
|
18997
19034
|
// src/cli-server-skills.ts
|
|
18998
19035
|
var globalSkillLibrary;
|
|
18999
19036
|
function adaptConfigToLibrary(config) {
|
|
19037
|
+
const promoter = createBeliefPromoter();
|
|
19000
19038
|
return {
|
|
19001
19039
|
maxSkills: config.maxSkills,
|
|
19002
19040
|
minSuccessRateForRetention: config.minSuccessRateForRetention,
|
|
19003
19041
|
executionsBeforeEvaluation: config.executionsBeforeEvaluation,
|
|
19004
19042
|
enablePruning: config.enablePruning,
|
|
19005
19043
|
trackExecutionHistory: config.trackExecutionHistory,
|
|
19006
|
-
maxHistoryPerSkill: config.maxHistoryPerSkill
|
|
19044
|
+
maxHistoryPerSkill: config.maxHistoryPerSkill,
|
|
19045
|
+
...promoter !== void 0 && { skillPromoter: promoter }
|
|
19046
|
+
};
|
|
19047
|
+
}
|
|
19048
|
+
function createBeliefPromoter() {
|
|
19049
|
+
return async (event) => {
|
|
19050
|
+
const { getToolMemory } = await import("./tool-memory-6HCHQLAN.js");
|
|
19051
|
+
const tm = getToolMemory();
|
|
19052
|
+
await tm.recordBelief(
|
|
19053
|
+
`skill:${event.name}`,
|
|
19054
|
+
"is_reliable_for",
|
|
19055
|
+
event.category,
|
|
19056
|
+
event.successRate >= 0.8 ? "high" : "medium"
|
|
19057
|
+
);
|
|
19007
19058
|
};
|
|
19008
19059
|
}
|
|
19009
19060
|
async function initializeSkillLibrary(options) {
|
|
@@ -19846,8 +19897,8 @@ async function handleResearchCommand(args) {
|
|
|
19846
19897
|
}
|
|
19847
19898
|
try {
|
|
19848
19899
|
const result = await researchCommand(subcommand, positionalArgs, options);
|
|
19849
|
-
process.stdout.write(result + "\n");
|
|
19850
|
-
process.exit(EXIT_CODES.SUCCESS);
|
|
19900
|
+
process.stdout.write(result.text + "\n");
|
|
19901
|
+
process.exit(result.exitCode === 0 ? EXIT_CODES.SUCCESS : EXIT_CODES.SERVER_START_FAILED);
|
|
19851
19902
|
} catch (error) {
|
|
19852
19903
|
const message = getErrorMessage(error);
|
|
19853
19904
|
process.stdout.write(`Error: ${message}
|
|
@@ -19856,7 +19907,7 @@ async function handleResearchCommand(args) {
|
|
|
19856
19907
|
}
|
|
19857
19908
|
}
|
|
19858
19909
|
async function handleRegistryCommand(args) {
|
|
19859
|
-
const { registryCommand, isValidRegistrySubcommand, formatRegistryUsage } = await import("./registry-command-
|
|
19910
|
+
const { registryCommand, isValidRegistrySubcommand, formatRegistryUsage } = await import("./registry-command-6E4YKAMT.js");
|
|
19860
19911
|
const subcommand = args.subcommand;
|
|
19861
19912
|
if (!isValidRegistrySubcommand(subcommand)) {
|
|
19862
19913
|
process.stdout.write(`${formatRegistryUsage()}
|
|
@@ -19904,7 +19955,7 @@ async function handleVerifyCommand(args) {
|
|
|
19904
19955
|
async function handleDoctorCommand(args) {
|
|
19905
19956
|
const exitCode = await doctorCommand({ fix: args.options.fix });
|
|
19906
19957
|
if (args.options.deep) {
|
|
19907
|
-
const { runDeepDiagnostics: runDeepDiagnostics2, formatDeepDiagnostics: formatDeepDiagnostics2 } = await import("./doctor-deep-
|
|
19958
|
+
const { runDeepDiagnostics: runDeepDiagnostics2, formatDeepDiagnostics: formatDeepDiagnostics2 } = await import("./doctor-deep-KQ765XZA.js");
|
|
19908
19959
|
const diag = runDeepDiagnostics2();
|
|
19909
19960
|
process.stdout.write(formatDeepDiagnostics2(diag) + "\n");
|
|
19910
19961
|
}
|
|
@@ -19948,7 +19999,7 @@ async function handleInitCommand(args) {
|
|
|
19948
19999
|
process.exit(result.success ? EXIT_CODES.SUCCESS : EXIT_CODES.SERVER_START_FAILED);
|
|
19949
20000
|
}
|
|
19950
20001
|
async function runInitOpencodeFlow(args) {
|
|
19951
|
-
const { runInitOpencode } = await import("./init-opencode-
|
|
20002
|
+
const { runInitOpencode } = await import("./init-opencode-GXZN2W5S.js");
|
|
19952
20003
|
const opencodePath = args.options.opencode;
|
|
19953
20004
|
if (opencodePath === void 0 || opencodePath === "") {
|
|
19954
20005
|
process.stderr.write("Error: --opencode requires a path argument.\n");
|
|
@@ -19975,7 +20026,7 @@ async function runInitOpencodeFlow(args) {
|
|
|
19975
20026
|
process.exit(EXIT_CODES.SUCCESS);
|
|
19976
20027
|
}
|
|
19977
20028
|
async function renderOpencodeValidate(opencodePath) {
|
|
19978
|
-
const { runOpencodeValidate } = await import("./init-opencode-
|
|
20029
|
+
const { runOpencodeValidate } = await import("./init-opencode-GXZN2W5S.js");
|
|
19979
20030
|
const result = await runOpencodeValidate(opencodePath);
|
|
19980
20031
|
if (!result.ok) {
|
|
19981
20032
|
process.stderr.write(`init --opencode --validate: ${result.reason ?? "failed"}
|
|
@@ -20015,7 +20066,7 @@ async function handleSetupCommandAsync(args) {
|
|
|
20015
20066
|
process.exit(exitCode === 0 ? EXIT_CODES.SUCCESS : EXIT_CODES.SERVER_START_FAILED);
|
|
20016
20067
|
}
|
|
20017
20068
|
async function runCustomApiSetup(args) {
|
|
20018
|
-
const { configureCustomApi } = await import("./setup-custom-api-
|
|
20069
|
+
const { configureCustomApi } = await import("./setup-custom-api-IBDV654K.js");
|
|
20019
20070
|
const baseUrl = args.options.customApi;
|
|
20020
20071
|
if (baseUrl === void 0) return EXIT_CODES.SERVER_START_FAILED;
|
|
20021
20072
|
const input = {
|