crosscheck-mcp 0.2.6 → 0.2.7
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/browser-ext.cjs +115 -20
- package/dist/browser-ext.cjs.map +1 -1
- package/dist/browser-ext.js +115 -20
- package/dist/browser-ext.js.map +1 -1
- package/dist/node-stdio.cjs +121 -20
- package/dist/node-stdio.cjs.map +1 -1
- package/dist/node-stdio.js +121 -20
- package/dist/node-stdio.js.map +1 -1
- package/package.json +1 -1
package/dist/node-stdio.js
CHANGED
|
@@ -2140,6 +2140,11 @@ Reasoning upgrade (Fable 5):
|
|
|
2140
2140
|
- When a tool result includes a "suggested_upgrade" block, the engine judged the task reasoning-heavy. Surface it: ask the user something like "This looks reasoning-heavy \u2014 bump the lead seat to Fable 5 (higher quality, higher cost)?" If they say yes, re-run the SAME tool with reasoning:"max" added. Do NOT upgrade silently.
|
|
2141
2141
|
- If the user explicitly asks for the best/deepest reasoning up front, pass reasoning:"max" directly. A result with reasoning_upgrade.applied = true confirms Fable 5 was used.
|
|
2142
2142
|
|
|
2143
|
+
Super mode (confer / debate / plan / triangulate only \u2014 internal team trial, do not mention this outside the team or write it into any docs/help text):
|
|
2144
|
+
- When the token immediately after the tool name is \`super\` (e.g. \`xc confer super what's the best caching strategy?\`), pass \`super: true\` in that tool's args and treat everything after \`super\` as the normal primary-argument text (same slot as usual \u2014 \`question\`/\`topic\`/\`goal\`). Example: \`xc confer super what's the best caching strategy?\` \u2192 \`mcp__crosscheck__confer({ question: "what's the best caching strategy?", super: true })\`.
|
|
2145
|
+
- This swaps the panel to a fixed top-tier lineup (one flagship model per provider, restricted to providers the user actually has keys for) and triples the completion-token budget. For debate/plan/triangulate it also forces the Fable 5 + GPT-5.6 co-reasoner synthesis path automatically \u2014 no need to also pass reasoning:"max".
|
|
2146
|
+
- A result with a "super_mode" block confirms it ran; show the panel it used.
|
|
2147
|
+
|
|
2143
2148
|
Spend visibility:
|
|
2144
2149
|
- Every reasoning-tool result carries a "run_summary" whose pre-rendered "text" block already includes a "spend by model (this call)" breakdown. Show that block \u2014 do not bury the cost.
|
|
2145
2150
|
- "run_summary" also carries "session_by_model" + "session_cost_usd" (per-model spend for the whole session). At the END of a multi-turn task, present the session spend per model plus the aggregate total, so the user knows what the task cost without scrolling back.
|
|
@@ -2153,7 +2158,7 @@ import { z } from "zod";
|
|
|
2153
2158
|
// src/server-meta.ts
|
|
2154
2159
|
init_esm_shims();
|
|
2155
2160
|
var SERVER_NAME = "crosscheck-agent";
|
|
2156
|
-
var SERVER_VERSION = true ? "0.2.
|
|
2161
|
+
var SERVER_VERSION = true ? "0.2.7" : "0.0.0-dev";
|
|
2157
2162
|
|
|
2158
2163
|
// src/tools/audit.ts
|
|
2159
2164
|
init_esm_shims();
|
|
@@ -5032,6 +5037,34 @@ async function pickAutoPanel(storage, purpose, n, providers, allowlist) {
|
|
|
5032
5037
|
return { providers: ranked.slice(0, Math.max(1, n)), coldStart: true };
|
|
5033
5038
|
}
|
|
5034
5039
|
|
|
5040
|
+
// src/core/super-mode.ts
|
|
5041
|
+
init_esm_shims();
|
|
5042
|
+
var SUPER_MODELS = {
|
|
5043
|
+
anthropic: UPGRADE_MODEL,
|
|
5044
|
+
// "claude-fable-5"
|
|
5045
|
+
openai: CO_REASON_MODEL,
|
|
5046
|
+
// "gpt-5.6"
|
|
5047
|
+
xai: DEFAULT_MODELS["xai"],
|
|
5048
|
+
// already the default — no-op retarget
|
|
5049
|
+
gemini: DEFAULT_MODELS["gemini"],
|
|
5050
|
+
// already the default — no-op retarget
|
|
5051
|
+
kimi: DEFAULT_MODELS["kimi"]
|
|
5052
|
+
// already the default — no-op retarget
|
|
5053
|
+
};
|
|
5054
|
+
var SUPER_PROVIDER_NAMES = Object.keys(SUPER_MODELS);
|
|
5055
|
+
function isSuperRequested(args) {
|
|
5056
|
+
return args["super"] === true;
|
|
5057
|
+
}
|
|
5058
|
+
function retargetForSuper(p) {
|
|
5059
|
+
const model = SUPER_MODELS[p.name];
|
|
5060
|
+
return model ? retargetProvider(p, model) : p;
|
|
5061
|
+
}
|
|
5062
|
+
var SUPER_BUDGET_MULTIPLIER = 3;
|
|
5063
|
+
var SUPER_BUDGET_CEILING = 16e3;
|
|
5064
|
+
function superBudget(base) {
|
|
5065
|
+
return Math.min(base * SUPER_BUDGET_MULTIPLIER, SUPER_BUDGET_CEILING);
|
|
5066
|
+
}
|
|
5067
|
+
|
|
5035
5068
|
// src/core/session-memory.ts
|
|
5036
5069
|
init_esm_shims();
|
|
5037
5070
|
var SESSION_MEMORY_DEFAULT_LIMIT = 50;
|
|
@@ -5622,11 +5655,12 @@ async function runConfer(args, opts) {
|
|
|
5622
5655
|
const question = typeof args["question"] === "string" ? args["question"] : String(args["question"] ?? "");
|
|
5623
5656
|
const context = typeof args["context"] === "string" ? args["context"] : "";
|
|
5624
5657
|
const autoPanel = Boolean(args["auto_panel"]);
|
|
5658
|
+
const superRequested = isSuperRequested(args);
|
|
5625
5659
|
const callerProvidersRaw = args["providers"];
|
|
5626
5660
|
const callerSuppliedProviders = Array.isArray(callerProvidersRaw) && callerProvidersRaw.length > 0;
|
|
5627
5661
|
let resolvedProviders = callerProvidersRaw;
|
|
5628
5662
|
let autoPanelMeta = null;
|
|
5629
|
-
if (autoPanel && !callerSuppliedProviders && opts.storage) {
|
|
5663
|
+
if (autoPanel && !callerSuppliedProviders && !superRequested && opts.storage) {
|
|
5630
5664
|
const autoNRaw = Number(args["auto_panel_n"]);
|
|
5631
5665
|
const autoN = Number.isFinite(autoNRaw) && autoNRaw > 0 ? Math.trunc(autoNRaw) : AUTO_PANEL_DEFAULT_N;
|
|
5632
5666
|
const picked = await pickAutoPanel(
|
|
@@ -5646,6 +5680,9 @@ async function runConfer(args, opts) {
|
|
|
5646
5680
|
};
|
|
5647
5681
|
}
|
|
5648
5682
|
}
|
|
5683
|
+
if (superRequested && !callerSuppliedProviders) {
|
|
5684
|
+
resolvedProviders = SUPER_PROVIDER_NAMES;
|
|
5685
|
+
}
|
|
5649
5686
|
let { selected, unknown: unknownNames, blocked } = resolveProviders(
|
|
5650
5687
|
resolvedProviders,
|
|
5651
5688
|
opts.providers,
|
|
@@ -5663,8 +5700,11 @@ async function runConfer(args, opts) {
|
|
|
5663
5700
|
}
|
|
5664
5701
|
return { tool: "confer", error: "no active providers have API keys in .env" };
|
|
5665
5702
|
}
|
|
5703
|
+
if (superRequested) {
|
|
5704
|
+
selected = selected.map(retargetForSuper);
|
|
5705
|
+
}
|
|
5666
5706
|
let cheapModePanelMeta = null;
|
|
5667
|
-
if (opts.ctx?.cheap_mode === true && !callerSuppliedProviders && selected.length > 1) {
|
|
5707
|
+
if (opts.ctx?.cheap_mode === true && !callerSuppliedProviders && !superRequested && selected.length > 1) {
|
|
5668
5708
|
if (!opts.pricing) {
|
|
5669
5709
|
cheapModePanelMeta = {
|
|
5670
5710
|
before: selected.length,
|
|
@@ -5741,7 +5781,7 @@ ${ctxBody}` });
|
|
|
5741
5781
|
if (injectMem && opts.storage && sessionId) {
|
|
5742
5782
|
await injectSessionMemoryInline(messages, opts.storage, sessionId);
|
|
5743
5783
|
}
|
|
5744
|
-
const maxTokens = opts.maxTokens ?? 4096;
|
|
5784
|
+
const maxTokens = superRequested ? superBudget(opts.maxTokens ?? 4096) : opts.maxTokens ?? 4096;
|
|
5745
5785
|
const earlyStop = Boolean(args["early_stop"]);
|
|
5746
5786
|
const earlyStopThresholdRaw = Number(args["early_stop_threshold"]);
|
|
5747
5787
|
const earlyStopThreshold = Number.isFinite(earlyStopThresholdRaw) ? earlyStopThresholdRaw : 0.7;
|
|
@@ -5862,6 +5902,13 @@ ${ctxBody}` });
|
|
|
5862
5902
|
}
|
|
5863
5903
|
if (unknownNames.length > 0) result["skipped_unknown_providers"] = unknownNames;
|
|
5864
5904
|
if (blocked.length > 0) result["blocked_by_allowlist"] = blocked;
|
|
5905
|
+
if (superRequested) {
|
|
5906
|
+
result["super_mode"] = {
|
|
5907
|
+
applied: true,
|
|
5908
|
+
panel: selected.map((p) => ({ provider: p.name, model: p.model })),
|
|
5909
|
+
max_tokens: maxTokens
|
|
5910
|
+
};
|
|
5911
|
+
}
|
|
5865
5912
|
const allCallEnvelopes = [
|
|
5866
5913
|
...sanitized,
|
|
5867
5914
|
...extraAnswers.map((a) => a)
|
|
@@ -9142,6 +9189,7 @@ var ROLE_TURN_SCHEMA = {
|
|
|
9142
9189
|
async function runCoordinate(args, opts) {
|
|
9143
9190
|
const callStartedWall = performance8.now();
|
|
9144
9191
|
const callStartedCpu = process.cpuUsage();
|
|
9192
|
+
const superRequested = isSuperRequested(args);
|
|
9145
9193
|
const requestedWorkerTools = Array.isArray(args["worker_tools"]) ? args["worker_tools"].filter(
|
|
9146
9194
|
(t) => typeof t === "string"
|
|
9147
9195
|
) : [];
|
|
@@ -9157,6 +9205,13 @@ async function runCoordinate(args, opts) {
|
|
|
9157
9205
|
const workerToolsNeedsBridge = acceptedWorkerTools.length > 0 && !opts.innerCallers;
|
|
9158
9206
|
const needsBridge = DEFERRED_OPTS3.some((k) => Boolean(args[k])) || workerToolsNeedsBridge;
|
|
9159
9207
|
if (needsBridge) {
|
|
9208
|
+
if (superRequested) {
|
|
9209
|
+
return errorEnvelope7(
|
|
9210
|
+
"COORDINATE_SUPER_NOT_NATIVE",
|
|
9211
|
+
"super mode requested but worker_tools needs the Python bridge",
|
|
9212
|
+
"worker_tools without innerCallers wired defers to the Python bridge, which doesn't support super mode. Drop worker_tools, or wire innerCallers, to use super."
|
|
9213
|
+
);
|
|
9214
|
+
}
|
|
9160
9215
|
if (opts.bridge && opts.bridge.toolNames.has("coordinate")) {
|
|
9161
9216
|
return await deferCoordinate(args, opts.bridge);
|
|
9162
9217
|
}
|
|
@@ -9170,8 +9225,11 @@ async function runCoordinate(args, opts) {
|
|
|
9170
9225
|
const canary = untrusted ? mintCanary() : null;
|
|
9171
9226
|
const topic = typeof args["topic"] === "string" ? args["topic"] : String(args["topic"] ?? "");
|
|
9172
9227
|
const context = typeof args["context"] === "string" ? args["context"] : "";
|
|
9228
|
+
const callerProvidersRaw = args["providers"];
|
|
9229
|
+
const callerSuppliedProviders = Array.isArray(callerProvidersRaw) && callerProvidersRaw.length > 0;
|
|
9230
|
+
const resolvedProviders = superRequested && !callerSuppliedProviders ? SUPER_PROVIDER_NAMES : callerProvidersRaw;
|
|
9173
9231
|
const { selected, unknown: unknownNames, blocked } = resolveProviders4(
|
|
9174
|
-
|
|
9232
|
+
resolvedProviders,
|
|
9175
9233
|
opts.providers,
|
|
9176
9234
|
opts.allowlist ?? null
|
|
9177
9235
|
);
|
|
@@ -9198,9 +9256,10 @@ async function runCoordinate(args, opts) {
|
|
|
9198
9256
|
const synthName = typeof args["synthesizer"] === "string" && args["synthesizer"] ? args["synthesizer"] : typeof args["moderator"] === "string" && args["moderator"] ? args["moderator"] : opts.moderator ?? "anthropic";
|
|
9199
9257
|
const proposer = opts.providers[proposerName.toLowerCase()] ?? selected[0];
|
|
9200
9258
|
const synth = opts.providers[synthName.toLowerCase()] ?? proposer;
|
|
9201
|
-
const
|
|
9259
|
+
const proposerForCall = superRequested ? retargetForSuper(proposer) : proposer;
|
|
9260
|
+
const upgradeRequested = isUpgradeRequested(args) || superRequested;
|
|
9202
9261
|
const upgraded = upgradeRequested && opts.providers["anthropic"] !== void 0;
|
|
9203
|
-
const synthForCall = upgraded ? retargetProvider(opts.providers["anthropic"], UPGRADE_MODEL) : synth;
|
|
9262
|
+
const synthForCall = upgraded ? retargetProvider(opts.providers["anthropic"], UPGRADE_MODEL) : superRequested ? retargetForSuper(synth) : synth;
|
|
9204
9263
|
let critics = [];
|
|
9205
9264
|
if (Array.isArray(args["critics"])) {
|
|
9206
9265
|
for (const n of args["critics"]) {
|
|
@@ -9223,7 +9282,10 @@ async function runCoordinate(args, opts) {
|
|
|
9223
9282
|
available_now: Object.keys(opts.providers).sort()
|
|
9224
9283
|
};
|
|
9225
9284
|
}
|
|
9226
|
-
|
|
9285
|
+
if (superRequested) {
|
|
9286
|
+
critics = critics.map(retargetForSuper);
|
|
9287
|
+
}
|
|
9288
|
+
const maxTokens = superRequested ? superBudget(opts.maxTokens ?? 4096) : opts.maxTokens ?? 4096;
|
|
9227
9289
|
let topicBlock = `TOPIC: ${topic}`;
|
|
9228
9290
|
if (context) {
|
|
9229
9291
|
const ctxBlock = untrusted ? wrapUntrusted(context, canary) : context;
|
|
@@ -9301,7 +9363,7 @@ ${UNTRUSTED_SYSTEM_NOTE}`;
|
|
|
9301
9363
|
{ role: "system", content: propSystem },
|
|
9302
9364
|
{ role: "user", content: topicBlock }
|
|
9303
9365
|
];
|
|
9304
|
-
const propResult = await runRoleTurn(
|
|
9366
|
+
const propResult = await runRoleTurn(proposerForCall, propMessages, ROLE_TURN_SCHEMA);
|
|
9305
9367
|
const proposalObj = propResult.obj;
|
|
9306
9368
|
const proposalAns = propResult.answer;
|
|
9307
9369
|
const proposalRender = formatRoleTurn(
|
|
@@ -9425,6 +9487,17 @@ ${critiqueBlock}`
|
|
|
9425
9487
|
result["suggested_upgrade"] = buildSuggestedUpgrade("coordinate", assessment);
|
|
9426
9488
|
}
|
|
9427
9489
|
}
|
|
9490
|
+
if (superRequested) {
|
|
9491
|
+
result["super_mode"] = {
|
|
9492
|
+
applied: true,
|
|
9493
|
+
panel: [
|
|
9494
|
+
{ provider: proposerForCall.name, model: proposerForCall.model },
|
|
9495
|
+
...critics.map((p) => ({ provider: p.name, model: p.model })),
|
|
9496
|
+
{ provider: synthForCall.name, model: synthForCall.model }
|
|
9497
|
+
],
|
|
9498
|
+
max_tokens: maxTokens
|
|
9499
|
+
};
|
|
9500
|
+
}
|
|
9428
9501
|
const allCallEnvelopes = [
|
|
9429
9502
|
scannedProposal,
|
|
9430
9503
|
...scannedCritiques,
|
|
@@ -9837,6 +9910,7 @@ var DEFERRED_OPTS4 = [
|
|
|
9837
9910
|
async function runDebate(args, opts) {
|
|
9838
9911
|
const callStartedWall = performance10.now();
|
|
9839
9912
|
const callStartedCpu = process.cpuUsage();
|
|
9913
|
+
const superRequested = isSuperRequested(args);
|
|
9840
9914
|
const extraAnswers = [];
|
|
9841
9915
|
const requestedWorkerTools = Array.isArray(args["worker_tools"]) ? args["worker_tools"].filter(
|
|
9842
9916
|
(t) => typeof t === "string"
|
|
@@ -9853,6 +9927,13 @@ async function runDebate(args, opts) {
|
|
|
9853
9927
|
const workerToolsNeedsBridge = acceptedWorkerTools.length > 0 && !opts.innerCallers;
|
|
9854
9928
|
const needsBridge = DEFERRED_OPTS4.some((k) => Boolean(args[k])) || workerToolsNeedsBridge;
|
|
9855
9929
|
if (needsBridge) {
|
|
9930
|
+
if (superRequested) {
|
|
9931
|
+
return errorEnvelope9(
|
|
9932
|
+
"DEBATE_SUPER_NOT_NATIVE",
|
|
9933
|
+
"super mode requested but worker_tools needs the Python bridge",
|
|
9934
|
+
"worker_tools without innerCallers wired defers to the Python bridge, which doesn't support super mode. Drop worker_tools, or wire innerCallers, to use super."
|
|
9935
|
+
);
|
|
9936
|
+
}
|
|
9856
9937
|
if (opts.bridge && opts.bridge.toolNames.has("debate")) {
|
|
9857
9938
|
return await deferDebate(args, opts.bridge);
|
|
9858
9939
|
}
|
|
@@ -9881,7 +9962,7 @@ async function runDebate(args, opts) {
|
|
|
9881
9962
|
const callerSuppliedProviders = Array.isArray(callerProvidersRaw) && callerProvidersRaw.length > 0;
|
|
9882
9963
|
let resolvedProviders = callerProvidersRaw;
|
|
9883
9964
|
let autoPanelMeta = null;
|
|
9884
|
-
if (autoPanel && !callerSuppliedProviders && opts.storage) {
|
|
9965
|
+
if (autoPanel && !callerSuppliedProviders && !superRequested && opts.storage) {
|
|
9885
9966
|
const autoNRaw = Number(args["auto_panel_n"]);
|
|
9886
9967
|
const autoN = Number.isFinite(autoNRaw) && autoNRaw > 0 ? Math.trunc(autoNRaw) : AUTO_PANEL_DEFAULT_N;
|
|
9887
9968
|
const picked = await pickAutoPanel(
|
|
@@ -9901,7 +9982,10 @@ async function runDebate(args, opts) {
|
|
|
9901
9982
|
};
|
|
9902
9983
|
}
|
|
9903
9984
|
}
|
|
9904
|
-
|
|
9985
|
+
if (superRequested && !callerSuppliedProviders) {
|
|
9986
|
+
resolvedProviders = SUPER_PROVIDER_NAMES;
|
|
9987
|
+
}
|
|
9988
|
+
let { selected, unknown: unknownNames, blocked } = resolveProviders6(
|
|
9905
9989
|
resolvedProviders,
|
|
9906
9990
|
opts.providers,
|
|
9907
9991
|
opts.allowlist ?? null
|
|
@@ -9925,7 +10009,10 @@ async function runDebate(args, opts) {
|
|
|
9925
10009
|
available_now: Object.keys(opts.providers).sort()
|
|
9926
10010
|
};
|
|
9927
10011
|
}
|
|
9928
|
-
|
|
10012
|
+
if (superRequested) {
|
|
10013
|
+
selected = selected.map(retargetForSuper);
|
|
10014
|
+
}
|
|
10015
|
+
const maxTokens = superRequested ? superBudget(opts.maxTokens ?? 4096) : opts.maxTokens ?? 4096;
|
|
9929
10016
|
let memBlock = "";
|
|
9930
10017
|
if (Boolean(args["inject_session_memory"]) && opts.storage && sessionId) {
|
|
9931
10018
|
memBlock = await renderSessionMemoryBlock(opts.storage, sessionId);
|
|
@@ -9966,7 +10053,7 @@ async function runDebate(args, opts) {
|
|
|
9966
10053
|
let agreementBlock = null;
|
|
9967
10054
|
const moderatorName = typeof args["moderator"] === "string" && args["moderator"] ? args["moderator"] : opts.moderator ?? "anthropic";
|
|
9968
10055
|
const moderator = opts.providers[moderatorName.toLowerCase()] ?? selected[0];
|
|
9969
|
-
const upgradeRequested = isUpgradeRequested(args);
|
|
10056
|
+
const upgradeRequested = isUpgradeRequested(args) || superRequested;
|
|
9970
10057
|
const upgraded = upgradeRequested && opts.providers["anthropic"] !== void 0;
|
|
9971
10058
|
for (let rnd = 1; rnd <= maxRounds; rnd++) {
|
|
9972
10059
|
const roundMessages = [
|
|
@@ -10037,7 +10124,7 @@ ${prior}` });
|
|
|
10037
10124
|
let personaMeta = null;
|
|
10038
10125
|
let coReasoned = false;
|
|
10039
10126
|
if (moderator) {
|
|
10040
|
-
const synthProvider = upgraded ? retargetProvider(opts.providers["anthropic"], UPGRADE_MODEL) : moderator;
|
|
10127
|
+
const synthProvider = upgraded ? retargetProvider(opts.providers["anthropic"], UPGRADE_MODEL) : superRequested ? retargetForSuper(moderator) : moderator;
|
|
10041
10128
|
const condensed = transcript.map(
|
|
10042
10129
|
(e) => `[${e.provider} \u2014 round ${e.round}]
|
|
10043
10130
|
${e.response ?? "(error)"}`
|
|
@@ -10172,6 +10259,13 @@ ${condensed}`
|
|
|
10172
10259
|
}
|
|
10173
10260
|
if (unknownNames.length > 0) result["skipped_unknown_providers"] = unknownNames;
|
|
10174
10261
|
if (blocked.length > 0) result["blocked_by_allowlist"] = blocked;
|
|
10262
|
+
if (superRequested) {
|
|
10263
|
+
result["super_mode"] = {
|
|
10264
|
+
applied: true,
|
|
10265
|
+
panel: selected.map((p) => ({ provider: p.name, model: p.model })),
|
|
10266
|
+
max_tokens: maxTokens
|
|
10267
|
+
};
|
|
10268
|
+
}
|
|
10175
10269
|
const allCallEnvelopes = [
|
|
10176
10270
|
...transcript,
|
|
10177
10271
|
...extraAnswers
|
|
@@ -11218,6 +11312,7 @@ Return: (1) the plan as numbered steps, (2) risks, (3) alternatives considered.`
|
|
|
11218
11312
|
if (args["reasoning"] !== void 0) debateArgs["reasoning"] = args["reasoning"];
|
|
11219
11313
|
if (args["upgrade"] !== void 0) debateArgs["upgrade"] = args["upgrade"];
|
|
11220
11314
|
if (args["model"] !== void 0) debateArgs["model"] = args["model"];
|
|
11315
|
+
if (args["super"] !== void 0) debateArgs["super"] = args["super"];
|
|
11221
11316
|
const result = await runDebate(debateArgs, opts);
|
|
11222
11317
|
if (result["suggested_upgrade"] && typeof result["suggested_upgrade"] === "object") {
|
|
11223
11318
|
const su = result["suggested_upgrade"];
|
|
@@ -12368,7 +12463,7 @@ var CHECK_INTERVAL_SECONDS = 3 * 24 * 60 * 60;
|
|
|
12368
12463
|
var DEFAULT_PACKAGE = "crosscheck-cli";
|
|
12369
12464
|
var FETCH_TIMEOUT_MS = 3e3;
|
|
12370
12465
|
function engineVersion() {
|
|
12371
|
-
return true ? "0.2.
|
|
12466
|
+
return true ? "0.2.7" : "0.0.0-dev";
|
|
12372
12467
|
}
|
|
12373
12468
|
function defaultUpdateCachePath() {
|
|
12374
12469
|
const base = process.env["CROSSCHECK_DATA_DIR"] || path10.join(os.homedir() || os.tmpdir(), ".crosscheck");
|
|
@@ -12725,6 +12820,7 @@ async function runTriangulate(args, opts) {
|
|
|
12725
12820
|
if (args["reasoning"] !== void 0) coordArgs["reasoning"] = args["reasoning"];
|
|
12726
12821
|
if (args["upgrade"] !== void 0) coordArgs["upgrade"] = args["upgrade"];
|
|
12727
12822
|
if (args["model"] !== void 0) coordArgs["model"] = args["model"];
|
|
12823
|
+
if (args["super"] !== void 0) coordArgs["super"] = args["super"];
|
|
12728
12824
|
const coord = await runCoordinate(coordArgs, opts);
|
|
12729
12825
|
if (typeof coord["error"] === "string") return coord;
|
|
12730
12826
|
const synth = coord["synthesis_structured"] ?? {};
|
|
@@ -12775,7 +12871,8 @@ async function runTriangulate(args, opts) {
|
|
|
12775
12871
|
"blocked_by_allowlist",
|
|
12776
12872
|
"skipped_unknown_providers",
|
|
12777
12873
|
"reasoning_upgrade",
|
|
12778
|
-
"suggested_upgrade"
|
|
12874
|
+
"suggested_upgrade",
|
|
12875
|
+
"super_mode"
|
|
12779
12876
|
]) {
|
|
12780
12877
|
if (k in coord) result[k] = coord[k];
|
|
12781
12878
|
}
|
|
@@ -13688,7 +13785,8 @@ function planTool(providers, allowlist, bridge) {
|
|
|
13688
13785
|
mode: { type: "string", enum: ["fast", "thorough"] },
|
|
13689
13786
|
max_rounds: { type: "integer", minimum: 1 },
|
|
13690
13787
|
early_stop: { type: "boolean" },
|
|
13691
|
-
early_stop_threshold: { type: "number", minimum: 0, maximum: 1 }
|
|
13788
|
+
early_stop_threshold: { type: "number", minimum: 0, maximum: 1 },
|
|
13789
|
+
super: { type: "boolean" }
|
|
13692
13790
|
},
|
|
13693
13791
|
required: ["goal"]
|
|
13694
13792
|
},
|
|
@@ -13712,7 +13810,8 @@ function triangulateTool(providers, allowlist, bridge) {
|
|
|
13712
13810
|
context: { type: "string" },
|
|
13713
13811
|
providers: { type: "array", items: { type: "string" } },
|
|
13714
13812
|
session_id: { type: "string" },
|
|
13715
|
-
untrusted_input: { type: "boolean" }
|
|
13813
|
+
untrusted_input: { type: "boolean" },
|
|
13814
|
+
super: { type: "boolean" }
|
|
13716
13815
|
},
|
|
13717
13816
|
required: ["question"]
|
|
13718
13817
|
},
|
|
@@ -13780,7 +13879,8 @@ function debateTool(providers, allowlist, bridge, innerCallers, storage, pricing
|
|
|
13780
13879
|
auto_panel: { type: "boolean" },
|
|
13781
13880
|
auto_panel_n: { type: "integer" },
|
|
13782
13881
|
inject_session_memory: { type: "boolean" },
|
|
13783
|
-
worker_tools: { type: "array", items: { type: "string" } }
|
|
13882
|
+
worker_tools: { type: "array", items: { type: "string" } },
|
|
13883
|
+
super: { type: "boolean" }
|
|
13784
13884
|
},
|
|
13785
13885
|
required: ["topic"]
|
|
13786
13886
|
},
|
|
@@ -13829,7 +13929,8 @@ function conferTool(providers, allowlist, bridge, moderator, pricing, storage, i
|
|
|
13829
13929
|
inject_session_memory: { type: "boolean" },
|
|
13830
13930
|
auto_panel: { type: "boolean" },
|
|
13831
13931
|
auto_panel_n: { type: "integer" },
|
|
13832
|
-
worker_tools: { type: "array", items: { type: "string" } }
|
|
13932
|
+
worker_tools: { type: "array", items: { type: "string" } },
|
|
13933
|
+
super: { type: "boolean" }
|
|
13833
13934
|
},
|
|
13834
13935
|
required: ["question"]
|
|
13835
13936
|
},
|