@aiden-ade/sandbox-agent 0.1.39 → 0.1.41
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/index.cjs +196 -105
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -14590,9 +14590,9 @@ function getAlanAgentPrompt(agentId) {
|
|
|
14590
14590
|
return getAgentSystemPrompt(agentId);
|
|
14591
14591
|
}
|
|
14592
14592
|
|
|
14593
|
-
// ../shared/dist/
|
|
14593
|
+
// ../shared/dist/effort.js
|
|
14594
14594
|
var EFFORT_LEVELS = ["minimal", "low", "medium", "high", "xhigh", "max", "ultra"];
|
|
14595
|
-
var
|
|
14595
|
+
var CLAUDE_EFFORT_LEVELS = [
|
|
14596
14596
|
"minimal",
|
|
14597
14597
|
"low",
|
|
14598
14598
|
"medium",
|
|
@@ -14600,20 +14600,144 @@ var CLAUDE_48_EFFORT_LEVELS = [
|
|
|
14600
14600
|
"xhigh",
|
|
14601
14601
|
"max"
|
|
14602
14602
|
];
|
|
14603
|
-
var
|
|
14603
|
+
var CODEX_5X_EFFORT_LEVELS = ["low", "medium", "high", "xhigh"];
|
|
14604
|
+
var GPT_5_5_EFFORT_LEVELS = [
|
|
14604
14605
|
"minimal",
|
|
14606
|
+
"low",
|
|
14607
|
+
"medium",
|
|
14608
|
+
"high",
|
|
14609
|
+
"xhigh"
|
|
14610
|
+
];
|
|
14611
|
+
var GPT_5_4_EFFORT_LEVELS = ["low", "medium", "high"];
|
|
14612
|
+
var GPT_5_6_EFFORT_LEVELS = [
|
|
14605
14613
|
"low",
|
|
14606
14614
|
"medium",
|
|
14607
14615
|
"high",
|
|
14608
14616
|
"xhigh",
|
|
14609
14617
|
"max"
|
|
14610
14618
|
];
|
|
14611
|
-
var
|
|
14619
|
+
var GPT_5_6_ULTRA_EFFORT_LEVELS = [
|
|
14612
14620
|
"low",
|
|
14613
14621
|
"medium",
|
|
14614
14622
|
"high",
|
|
14615
|
-
"xhigh"
|
|
14623
|
+
"xhigh",
|
|
14624
|
+
"max",
|
|
14625
|
+
"ultra"
|
|
14626
|
+
];
|
|
14627
|
+
var ATOMIC_MODEL_IDS = /* @__PURE__ */ new Set([
|
|
14628
|
+
"gpt-5.1-codex-max",
|
|
14629
|
+
"opencode/gpt-5.1-codex-max"
|
|
14630
|
+
]);
|
|
14631
|
+
var EFFORT_SUFFIXES = [
|
|
14632
|
+
{ suffix: "-extra-high", level: "xhigh" },
|
|
14633
|
+
{ suffix: "-xhigh", level: "xhigh" },
|
|
14634
|
+
{ suffix: "-ultra", level: "ultra" },
|
|
14635
|
+
{ suffix: "-max", level: "max" },
|
|
14636
|
+
{ suffix: "-high", level: "high" },
|
|
14637
|
+
{ suffix: "-medium", level: "medium" },
|
|
14638
|
+
{ suffix: "-low", level: "low" },
|
|
14639
|
+
{ suffix: "-none", level: "minimal" },
|
|
14640
|
+
{ suffix: "-minimal", level: "minimal" }
|
|
14616
14641
|
];
|
|
14642
|
+
function isAtomicModelId(modelId) {
|
|
14643
|
+
return ATOMIC_MODEL_IDS.has(modelId.trim());
|
|
14644
|
+
}
|
|
14645
|
+
function isEffortLevel(value2) {
|
|
14646
|
+
return EFFORT_LEVELS.includes(value2);
|
|
14647
|
+
}
|
|
14648
|
+
var EFFORT_RANK = {
|
|
14649
|
+
minimal: 0,
|
|
14650
|
+
low: 1,
|
|
14651
|
+
medium: 2,
|
|
14652
|
+
high: 3,
|
|
14653
|
+
xhigh: 4,
|
|
14654
|
+
max: 5,
|
|
14655
|
+
ultra: 6
|
|
14656
|
+
};
|
|
14657
|
+
function clampEffortToSupported(requested, allowed) {
|
|
14658
|
+
if (!requested?.trim() || allowed.length === 0)
|
|
14659
|
+
return null;
|
|
14660
|
+
const normalized = requested.trim().toLowerCase();
|
|
14661
|
+
if (!isEffortLevel(normalized))
|
|
14662
|
+
return null;
|
|
14663
|
+
if (allowed.includes(normalized))
|
|
14664
|
+
return normalized;
|
|
14665
|
+
const targetRank = EFFORT_RANK[normalized];
|
|
14666
|
+
let best = null;
|
|
14667
|
+
for (const level of allowed) {
|
|
14668
|
+
if (EFFORT_RANK[level] <= targetRank) {
|
|
14669
|
+
if (!best || EFFORT_RANK[level] > EFFORT_RANK[best])
|
|
14670
|
+
best = level;
|
|
14671
|
+
}
|
|
14672
|
+
}
|
|
14673
|
+
return best ?? allowed[0] ?? null;
|
|
14674
|
+
}
|
|
14675
|
+
function inferEffortLevelsForModel(harness, modelId) {
|
|
14676
|
+
const id = collapseModelIdToBase(modelId);
|
|
14677
|
+
if (harness === "claude_cli" || id.startsWith("claude-") || id === "sonnet" || id === "opus") {
|
|
14678
|
+
if (id === "haiku" || id.startsWith("claude-haiku-"))
|
|
14679
|
+
return [];
|
|
14680
|
+
return CLAUDE_EFFORT_LEVELS;
|
|
14681
|
+
}
|
|
14682
|
+
if (id === "gpt-5.5")
|
|
14683
|
+
return GPT_5_5_EFFORT_LEVELS;
|
|
14684
|
+
if (id === "gpt-5.4" || id === "gpt-5.4-mini")
|
|
14685
|
+
return GPT_5_4_EFFORT_LEVELS;
|
|
14686
|
+
if (/^gpt-5\.6-/.test(id)) {
|
|
14687
|
+
const hasUltra = id.includes("-sol") || id.includes("-terra");
|
|
14688
|
+
return hasUltra ? GPT_5_6_ULTRA_EFFORT_LEVELS : GPT_5_6_EFFORT_LEVELS;
|
|
14689
|
+
}
|
|
14690
|
+
if (id.includes("codex") || /^gpt-5\.[0-3]/.test(id))
|
|
14691
|
+
return CODEX_5X_EFFORT_LEVELS;
|
|
14692
|
+
return [];
|
|
14693
|
+
}
|
|
14694
|
+
function resolveWireEffort(input) {
|
|
14695
|
+
const allowed = input.effortLevels && input.effortLevels.length > 0 ? input.effortLevels : inferEffortLevelsForModel(input.harness, input.modelId);
|
|
14696
|
+
const clamped = clampEffortToSupported(input.selectedEffortLevel, allowed);
|
|
14697
|
+
if (!clamped)
|
|
14698
|
+
return null;
|
|
14699
|
+
if (input.harness === "cursor_agent_cli" && clamped === "minimal")
|
|
14700
|
+
return "none";
|
|
14701
|
+
if (input.harness === "claude_cli" && clamped === "minimal")
|
|
14702
|
+
return "low";
|
|
14703
|
+
return clamped;
|
|
14704
|
+
}
|
|
14705
|
+
function parseModelEffortSuffix(modelId) {
|
|
14706
|
+
const trimmed = modelId.trim();
|
|
14707
|
+
if (!trimmed)
|
|
14708
|
+
return { baseId: "", effort: null, fast: false };
|
|
14709
|
+
if (isAtomicModelId(trimmed)) {
|
|
14710
|
+
return { baseId: trimmed, effort: null, fast: false };
|
|
14711
|
+
}
|
|
14712
|
+
let id = trimmed;
|
|
14713
|
+
let fast = false;
|
|
14714
|
+
if (id.endsWith("-fast")) {
|
|
14715
|
+
const withoutFast = id.slice(0, -"-fast".length);
|
|
14716
|
+
if (isAtomicModelId(withoutFast)) {
|
|
14717
|
+
return { baseId: withoutFast, effort: null, fast: true };
|
|
14718
|
+
}
|
|
14719
|
+
fast = true;
|
|
14720
|
+
id = withoutFast;
|
|
14721
|
+
}
|
|
14722
|
+
if (isAtomicModelId(id)) {
|
|
14723
|
+
return { baseId: id, effort: null, fast };
|
|
14724
|
+
}
|
|
14725
|
+
for (const { suffix, level } of EFFORT_SUFFIXES) {
|
|
14726
|
+
if (id.endsWith(suffix)) {
|
|
14727
|
+
return { baseId: id.slice(0, -suffix.length), effort: level, fast };
|
|
14728
|
+
}
|
|
14729
|
+
}
|
|
14730
|
+
return { baseId: id, effort: null, fast };
|
|
14731
|
+
}
|
|
14732
|
+
function collapseModelIdToBase(modelId) {
|
|
14733
|
+
const parsed = parseModelEffortSuffix(modelId);
|
|
14734
|
+
if (parsed.fast && !parsed.effort)
|
|
14735
|
+
return modelId.trim();
|
|
14736
|
+
return parsed.baseId;
|
|
14737
|
+
}
|
|
14738
|
+
|
|
14739
|
+
// ../shared/dist/types/frontend.js
|
|
14740
|
+
var CLAUDE_5_EFFORT_LEVELS = CLAUDE_EFFORT_LEVELS;
|
|
14617
14741
|
var AVAILABLE_MODELS = [
|
|
14618
14742
|
{
|
|
14619
14743
|
id: "",
|
|
@@ -14628,7 +14752,7 @@ var AVAILABLE_MODELS = [
|
|
|
14628
14752
|
{
|
|
14629
14753
|
id: "claude-opus-4-8",
|
|
14630
14754
|
name: "Opus 4.8",
|
|
14631
|
-
capabilities: { contextWindows: ["200k", "1m"], effortLevels:
|
|
14755
|
+
capabilities: { contextWindows: ["200k", "1m"], effortLevels: CLAUDE_5_EFFORT_LEVELS }
|
|
14632
14756
|
},
|
|
14633
14757
|
{
|
|
14634
14758
|
id: "claude-haiku-4-5",
|
|
@@ -14867,51 +14991,8 @@ function findModelDef(providerKind, modelId) {
|
|
|
14867
14991
|
}
|
|
14868
14992
|
|
|
14869
14993
|
// ../shared/dist/cursor-agent-models.js
|
|
14870
|
-
var CLAUDE_5_EFFORT_LEVELS2 = [
|
|
14871
|
-
"minimal",
|
|
14872
|
-
"low",
|
|
14873
|
-
"medium",
|
|
14874
|
-
"high",
|
|
14875
|
-
"xhigh",
|
|
14876
|
-
"max"
|
|
14877
|
-
];
|
|
14878
|
-
var CODEX_5X_EFFORT_LEVELS2 = ["low", "medium", "high", "xhigh"];
|
|
14879
|
-
var GPT_5_5_EFFORT_LEVELS = ["minimal", "low", "medium", "high", "xhigh"];
|
|
14880
|
-
var GPT_5_4_EFFORT_LEVELS = ["low", "medium", "high"];
|
|
14881
|
-
var GPT_5_6_EFFORT_LEVELS = [
|
|
14882
|
-
"low",
|
|
14883
|
-
"medium",
|
|
14884
|
-
"high",
|
|
14885
|
-
"xhigh",
|
|
14886
|
-
"max",
|
|
14887
|
-
"ultra"
|
|
14888
|
-
];
|
|
14889
|
-
var CURSOR_EFFORT_SUFFIXES = [
|
|
14890
|
-
{ suffix: "-extra-high", level: "xhigh" },
|
|
14891
|
-
{ suffix: "-xhigh", level: "xhigh" },
|
|
14892
|
-
{ suffix: "-ultra", level: "ultra" },
|
|
14893
|
-
{ suffix: "-max", level: "max" },
|
|
14894
|
-
{ suffix: "-high", level: "high" },
|
|
14895
|
-
{ suffix: "-medium", level: "medium" },
|
|
14896
|
-
{ suffix: "-low", level: "low" },
|
|
14897
|
-
{ suffix: "-none", level: "minimal" }
|
|
14898
|
-
];
|
|
14899
|
-
function parseCursorModelId(modelId) {
|
|
14900
|
-
let id = modelId.trim();
|
|
14901
|
-
let fast = false;
|
|
14902
|
-
if (id.endsWith("-fast")) {
|
|
14903
|
-
fast = true;
|
|
14904
|
-
id = id.slice(0, -"-fast".length);
|
|
14905
|
-
}
|
|
14906
|
-
for (const { suffix, level } of CURSOR_EFFORT_SUFFIXES) {
|
|
14907
|
-
if (id.endsWith(suffix)) {
|
|
14908
|
-
return { baseId: id.slice(0, -suffix.length), effort: level, fast };
|
|
14909
|
-
}
|
|
14910
|
-
}
|
|
14911
|
-
return { baseId: id, effort: null, fast };
|
|
14912
|
-
}
|
|
14913
14994
|
function getCursorModelCollapseKey(modelId) {
|
|
14914
|
-
const parsed =
|
|
14995
|
+
const parsed = parseModelEffortSuffix(modelId);
|
|
14915
14996
|
if (parsed.fast && !parsed.effort)
|
|
14916
14997
|
return modelId.trim();
|
|
14917
14998
|
return parsed.baseId;
|
|
@@ -15017,11 +15098,11 @@ function inferSlugModelCapabilities(providerKind, modelId) {
|
|
|
15017
15098
|
const hasUltra = id.includes("-sol") || id.includes("-terra");
|
|
15018
15099
|
return {
|
|
15019
15100
|
contextWindows: [],
|
|
15020
|
-
effortLevels: hasUltra ?
|
|
15101
|
+
effortLevels: hasUltra ? GPT_5_6_ULTRA_EFFORT_LEVELS : GPT_5_6_EFFORT_LEVELS
|
|
15021
15102
|
};
|
|
15022
15103
|
}
|
|
15023
15104
|
if (id.includes("codex") || /^gpt-5\.[0-3]/.test(id)) {
|
|
15024
|
-
return { contextWindows: [], effortLevels:
|
|
15105
|
+
return { contextWindows: [], effortLevels: CODEX_5X_EFFORT_LEVELS };
|
|
15025
15106
|
}
|
|
15026
15107
|
return void 0;
|
|
15027
15108
|
}
|
|
@@ -15030,10 +15111,10 @@ function inferSlugModelCapabilities(providerKind, modelId) {
|
|
|
15030
15111
|
return { contextWindows: ["200k"], effortLevels: [] };
|
|
15031
15112
|
}
|
|
15032
15113
|
if (id === "claude-opus-4-8") {
|
|
15033
|
-
return { contextWindows: ["200k", "1m"], effortLevels:
|
|
15114
|
+
return { contextWindows: ["200k", "1m"], effortLevels: CLAUDE_EFFORT_LEVELS };
|
|
15034
15115
|
}
|
|
15035
15116
|
if (id === "sonnet" || id === "opus" || id === "fable" || /^claude-(sonnet|opus|fable)-/.test(id)) {
|
|
15036
|
-
return { contextWindows: ["200k", "1m"], effortLevels:
|
|
15117
|
+
return { contextWindows: ["200k", "1m"], effortLevels: CLAUDE_EFFORT_LEVELS };
|
|
15037
15118
|
}
|
|
15038
15119
|
return void 0;
|
|
15039
15120
|
}
|
|
@@ -15840,20 +15921,27 @@ function classifyCliErrorDetailed(stderr, _exitCode, opts) {
|
|
|
15840
15921
|
}
|
|
15841
15922
|
const haystack = [stderr, ...opts?.extraSignals ?? []].join("\n").toLowerCase();
|
|
15842
15923
|
const has = (...needles) => needles.some((n) => haystack.includes(n));
|
|
15924
|
+
if (has("codex cli connection expired", "reconnect openai codex"))
|
|
15925
|
+
return specForErrorKind("auth_expired");
|
|
15926
|
+
if (has("codex connection to openai timed out")) return specForErrorKind("provider_timeout");
|
|
15843
15927
|
if (has("authentication required", "not authenticated"))
|
|
15844
15928
|
return specForErrorKind("not_authenticated");
|
|
15845
15929
|
if (has("out of usage", "increase your limit")) return specForErrorKind("usage_limit");
|
|
15846
15930
|
if (has("no chat found", "chat not found", "session not found", "could not resume"))
|
|
15847
15931
|
return specForErrorKind("resume_failed");
|
|
15848
15932
|
if (has("rate_limit", "rate limit", "429")) return specForErrorKind("rate_limited");
|
|
15849
|
-
if (
|
|
15933
|
+
if (has("authentication_failed", "authentication error", "authentication failed") || isLikelyProviderAuthError(haystack))
|
|
15934
|
+
return specForErrorKind("auth_invalid");
|
|
15850
15935
|
if (has(
|
|
15851
15936
|
"not logged in",
|
|
15852
15937
|
"login required",
|
|
15853
15938
|
"please sign in",
|
|
15854
15939
|
"please log in",
|
|
15855
15940
|
"sign in to",
|
|
15856
|
-
"log in to"
|
|
15941
|
+
"log in to",
|
|
15942
|
+
// Claude prompts the user to re-auth with the /login slash command.
|
|
15943
|
+
"run /login",
|
|
15944
|
+
"please run /login"
|
|
15857
15945
|
))
|
|
15858
15946
|
return specForErrorKind("not_logged_in");
|
|
15859
15947
|
if (has(
|
|
@@ -17340,11 +17428,15 @@ function createClaudeCliBackend(command = "claude", defaultArgs = []) {
|
|
|
17340
17428
|
if (context.config.teamId?.trim() && await cliSupportsFlag(command, "--approve-mcps", context.env)) {
|
|
17341
17429
|
args.push("--approve-mcps");
|
|
17342
17430
|
}
|
|
17343
|
-
const baseModel = context.config.selectedModel?.trim();
|
|
17431
|
+
const baseModel = collapseModelIdToBase(context.config.selectedModel?.trim() || "");
|
|
17344
17432
|
if (baseModel) {
|
|
17345
17433
|
args.push("--model", buildClaudeModelArg(baseModel, context.config.selectedContextWindow));
|
|
17346
17434
|
}
|
|
17347
|
-
const claudeEffort =
|
|
17435
|
+
const claudeEffort = resolveWireEffort({
|
|
17436
|
+
harness: "claude_cli",
|
|
17437
|
+
modelId: baseModel,
|
|
17438
|
+
selectedEffortLevel: context.config.selectedEffortLevel
|
|
17439
|
+
});
|
|
17348
17440
|
if (claudeEffort) {
|
|
17349
17441
|
args.push("--effort", claudeEffort);
|
|
17350
17442
|
}
|
|
@@ -17865,8 +17957,14 @@ var parseCodexStructuredLine = createStructuredLineParser(
|
|
|
17865
17957
|
"codex_app_server",
|
|
17866
17958
|
handleCodexStructuredEvent
|
|
17867
17959
|
);
|
|
17868
|
-
function buildCodexEffortArgs(selectedEffortLevel) {
|
|
17869
|
-
const
|
|
17960
|
+
function buildCodexEffortArgs(selectedEffortLevel, options) {
|
|
17961
|
+
const modelId = collapseModelIdToBase(options?.modelId?.trim() || "");
|
|
17962
|
+
const level = resolveWireEffort({
|
|
17963
|
+
harness: "codex_app_server",
|
|
17964
|
+
modelId,
|
|
17965
|
+
selectedEffortLevel,
|
|
17966
|
+
effortLevels: options?.effortLevels
|
|
17967
|
+
});
|
|
17870
17968
|
if (!level) return [];
|
|
17871
17969
|
return ["-c", `model_reasoning_effort=${level}`];
|
|
17872
17970
|
}
|
|
@@ -17916,8 +18014,11 @@ function createCodexRuntimeBackend(command = "codex", defaultArgs = []) {
|
|
|
17916
18014
|
startupTimeoutMs: CODEX_STARTUP_TIMEOUT_MS,
|
|
17917
18015
|
buildArgs: (ctx) => {
|
|
17918
18016
|
const resumeId = resumableSessionId;
|
|
17919
|
-
const
|
|
17920
|
-
const
|
|
18017
|
+
const selectedModel = collapseModelIdToBase(ctx.config.selectedModel?.trim() || "");
|
|
18018
|
+
const modelArgs = selectedModel ? ["--model", selectedModel] : [];
|
|
18019
|
+
const effortArgs = buildCodexEffortArgs(ctx.config.selectedEffortLevel, {
|
|
18020
|
+
modelId: selectedModel
|
|
18021
|
+
});
|
|
17921
18022
|
const permissionArgs = getCodexPermissionArgs(ctx.config);
|
|
17922
18023
|
const imageArgs = imagePaths.flatMap((p) => ["--image", p]);
|
|
17923
18024
|
const baseArgs = resumeId ? [
|
|
@@ -18221,58 +18322,48 @@ var parseCursorStructuredLine = createStructuredLineParser(
|
|
|
18221
18322
|
"cursor_agent_cli",
|
|
18222
18323
|
handleCursorStructuredEvent
|
|
18223
18324
|
);
|
|
18224
|
-
var CURSOR_EFFORT_SUFFIXES2 = [
|
|
18225
|
-
{ suffix: "-extra-high", level: "xhigh" },
|
|
18226
|
-
{ suffix: "-xhigh", level: "xhigh" },
|
|
18227
|
-
{ suffix: "-max", level: "max" },
|
|
18228
|
-
{ suffix: "-high", level: "high" },
|
|
18229
|
-
{ suffix: "-medium", level: "medium" },
|
|
18230
|
-
{ suffix: "-low", level: "low" },
|
|
18231
|
-
{ suffix: "-none", level: "minimal" }
|
|
18232
|
-
];
|
|
18233
|
-
function parseCursorModelId2(modelId) {
|
|
18234
|
-
let id = modelId.trim();
|
|
18235
|
-
let fast = false;
|
|
18236
|
-
if (id.endsWith("-fast")) {
|
|
18237
|
-
fast = true;
|
|
18238
|
-
id = id.slice(0, -"-fast".length);
|
|
18239
|
-
}
|
|
18240
|
-
for (const { suffix, level } of CURSOR_EFFORT_SUFFIXES2) {
|
|
18241
|
-
if (id.endsWith(suffix)) {
|
|
18242
|
-
return { baseId: id.slice(0, -suffix.length), effort: level, fast };
|
|
18243
|
-
}
|
|
18244
|
-
}
|
|
18245
|
-
return { baseId: id, effort: null, fast };
|
|
18246
|
-
}
|
|
18247
|
-
function cursorEffortForBracket(level) {
|
|
18248
|
-
if (level === "minimal") return "none";
|
|
18249
|
-
return level;
|
|
18250
|
-
}
|
|
18251
|
-
function asEffortLevel(value2, allowed) {
|
|
18252
|
-
if (!value2) return null;
|
|
18253
|
-
return allowed.includes(value2) ? value2 : null;
|
|
18254
|
-
}
|
|
18255
18325
|
function asContextWindow(value2) {
|
|
18256
18326
|
if (value2 === "1m" || value2 === "200k") return value2;
|
|
18257
18327
|
return null;
|
|
18258
18328
|
}
|
|
18329
|
+
function cursorEffortSuffix(level, baseId) {
|
|
18330
|
+
if (level === "minimal") return "-none";
|
|
18331
|
+
if (level === "xhigh") {
|
|
18332
|
+
if (/^gpt-5\.5(?:-|$)/.test(baseId)) return "-extra-high";
|
|
18333
|
+
return "-xhigh";
|
|
18334
|
+
}
|
|
18335
|
+
if (level === "ultra") return "-max";
|
|
18336
|
+
return `-${level}`;
|
|
18337
|
+
}
|
|
18259
18338
|
function buildCursorAgentModelArg(modelId, options) {
|
|
18260
18339
|
const trimmed = modelId.trim();
|
|
18261
18340
|
if (!trimmed) return trimmed;
|
|
18262
|
-
const parsed =
|
|
18341
|
+
const parsed = parseModelEffortSuffix(trimmed);
|
|
18263
18342
|
if (parsed.fast && !parsed.effort) return trimmed;
|
|
18343
|
+
const baseId = collapseModelIdToBase(trimmed);
|
|
18264
18344
|
const effortLevels = options?.effortLevels ?? [];
|
|
18265
|
-
const
|
|
18266
|
-
|
|
18267
|
-
|
|
18268
|
-
|
|
18345
|
+
const wireEffort = resolveWireEffort({
|
|
18346
|
+
harness: "cursor_agent_cli",
|
|
18347
|
+
modelId: baseId,
|
|
18348
|
+
selectedEffortLevel: options?.selectedEffortLevel,
|
|
18349
|
+
effortLevels
|
|
18350
|
+
});
|
|
18351
|
+
let id = baseId;
|
|
18352
|
+
if (wireEffort) {
|
|
18353
|
+
const alanLevel = wireEffort === "none" ? "minimal" : wireEffort;
|
|
18354
|
+
if (isEffortLevel(alanLevel)) {
|
|
18355
|
+
const allowed = effortLevels.length === 0 || effortLevels.includes(alanLevel) || alanLevel === "minimal" && effortLevels.includes("minimal");
|
|
18356
|
+
if (allowed) {
|
|
18357
|
+
id = `${baseId}${cursorEffortSuffix(alanLevel, baseId)}`;
|
|
18358
|
+
}
|
|
18359
|
+
}
|
|
18269
18360
|
}
|
|
18270
|
-
const
|
|
18271
|
-
if (
|
|
18272
|
-
|
|
18361
|
+
const contextWindow = asContextWindow(options?.selectedContextWindow);
|
|
18362
|
+
if (contextWindow === "1m" && id === baseId) {
|
|
18363
|
+
return `${baseId}[context=1m]`;
|
|
18273
18364
|
}
|
|
18274
|
-
if (
|
|
18275
|
-
return
|
|
18365
|
+
if (parsed.fast) return `${id}-fast`;
|
|
18366
|
+
return id;
|
|
18276
18367
|
}
|
|
18277
18368
|
function isCursorAgentCliModelId(model) {
|
|
18278
18369
|
return model === "auto" || /^composer-/.test(model) || /^gpt-/.test(model) || /^claude-/.test(model) || /^gemini-/.test(model) || /^grok-/.test(model) || /^kimi-/.test(model);
|
|
@@ -18352,7 +18443,7 @@ function createCursorAgentCliBackend(command = "cursor-agent", defaultArgs = [])
|
|
|
18352
18443
|
}
|
|
18353
18444
|
const model = ctx.config.selectedModel?.trim();
|
|
18354
18445
|
if (model && isDispatchableCursorModel(model)) {
|
|
18355
|
-
const modelDef = findModelDef("cursor_agent_cli", model);
|
|
18446
|
+
const modelDef = findModelDef("cursor_agent_cli", model) ?? findModelDef("cursor_agent_cli", model.replace(/-fast$/, ""));
|
|
18356
18447
|
args.push(
|
|
18357
18448
|
"--model",
|
|
18358
18449
|
buildCursorAgentModelArg(model, {
|
|
@@ -22436,7 +22527,7 @@ var RunStartGate = class {
|
|
|
22436
22527
|
};
|
|
22437
22528
|
|
|
22438
22529
|
// src/version.ts
|
|
22439
|
-
var AGENT_VERSION = "0.1.
|
|
22530
|
+
var AGENT_VERSION = "0.1.41";
|
|
22440
22531
|
|
|
22441
22532
|
// src/workspace-relocation.ts
|
|
22442
22533
|
var import_node_child_process3 = require("child_process");
|