@liberseek/boft-cli-win32-arm64 0.6.8 → 0.7.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/README.md +1 -1
- package/THIRD_PARTY_NOTICES.txt +16 -0
- package/app/codexhost-distribution.json +1 -1
- package/app/desktop-controller.mjs +184 -47
- package/app/host-runtime.mjs +5449 -4221
- package/app/plugins/antigravity/plugin.mjs +70 -61
- package/app/plugins/claude-code/plugin.mjs +85 -58
- package/app/plugins/codebuddy/plugin.mjs +102 -69
- package/app/plugins/cursor-cli/plugin.mjs +69 -50
- package/app/plugins/deepseek-harness/plugin.mjs +81 -53
- package/app/plugins/enabled.json +3 -1
- package/app/plugins/grok/plugin.mjs +94 -61
- package/app/plugins/hermes/plugin.mjs +308 -95
- package/app/plugins/kiro-cli/plugin.mjs +76 -49
- package/app/plugins/muse/plugin.mjs +66 -46
- package/app/plugins/omp/plugin.mjs +79 -52
- package/app/plugins/opencode/plugin.mjs +118 -92
- package/app/plugins/pi/plugin.mjs +79 -52
- package/app/plugins/qoder/assets/icon.svg +1 -0
- package/app/plugins/qoder/manifest.json +12 -0
- package/app/plugins/qoder/plugin.mjs +52290 -0
- package/app/plugins/qoder-cn/assets/icon.svg +1 -0
- package/app/plugins/qoder-cn/manifest.json +12 -0
- package/app/plugins/qoder-cn/plugin.mjs +52288 -0
- package/app/renderer-extension.js +3857 -1175
- package/bin/boft.exe +0 -0
- package/libexec/boft-node-repl.exe +0 -0
- package/libexec/boft-shim.exe +0 -0
- package/libexec/boft-updater.exe +0 -0
- package/licenses/Qoder-Agent-SDK-LICENSE.txt +7 -0
- package/licenses/QoderCN-Agent-SDK-LICENSE.txt +7 -0
- package/licenses/opencodex-LICENSE.txt +21 -0
- package/licenses/tailwindcss-LICENSE.txt +21 -0
- package/package.json +1 -1
|
@@ -14525,6 +14525,46 @@ config(en_default());
|
|
|
14525
14525
|
// ../../shared-contracts/dist/version.js
|
|
14526
14526
|
var WORKSPACE_CONTRACT_VERSION = 1;
|
|
14527
14527
|
|
|
14528
|
+
// ../../shared-contracts/dist/idle-release.js
|
|
14529
|
+
var IDLE_RELEASE_TIMEOUT_MINUTES_MIN = 5;
|
|
14530
|
+
var IDLE_RELEASE_TIMEOUT_MINUTES_MAX = 1440;
|
|
14531
|
+
var idleReleaseSettingsSchema = external_exports.strictObject({
|
|
14532
|
+
enabled: external_exports.boolean(),
|
|
14533
|
+
timeoutMinutes: external_exports.number().int().min(IDLE_RELEASE_TIMEOUT_MINUTES_MIN).max(IDLE_RELEASE_TIMEOUT_MINUTES_MAX)
|
|
14534
|
+
});
|
|
14535
|
+
var DEFAULT_IDLE_RELEASE_SETTINGS = Object.freeze({
|
|
14536
|
+
enabled: false,
|
|
14537
|
+
timeoutMinutes: 30
|
|
14538
|
+
});
|
|
14539
|
+
|
|
14540
|
+
// ../../shared-contracts/dist/loaded-sessions.js
|
|
14541
|
+
var loadedSessionStateSchema = external_exports.enum([
|
|
14542
|
+
"idle",
|
|
14543
|
+
"running",
|
|
14544
|
+
"busy",
|
|
14545
|
+
"closing",
|
|
14546
|
+
"failed",
|
|
14547
|
+
"blocked"
|
|
14548
|
+
]);
|
|
14549
|
+
var loadedSessionReasonSchema = external_exports.enum([
|
|
14550
|
+
"none",
|
|
14551
|
+
"disabled",
|
|
14552
|
+
"timeout",
|
|
14553
|
+
"operation",
|
|
14554
|
+
"background",
|
|
14555
|
+
"identity",
|
|
14556
|
+
"persistence",
|
|
14557
|
+
"closeFailed"
|
|
14558
|
+
]);
|
|
14559
|
+
var loadedSessionsSchema = external_exports.array(external_exports.strictObject({
|
|
14560
|
+
threadId: external_exports.string(),
|
|
14561
|
+
title: external_exports.string(),
|
|
14562
|
+
harnessId: external_exports.string(),
|
|
14563
|
+
state: loadedSessionStateSchema,
|
|
14564
|
+
reason: loadedSessionReasonSchema,
|
|
14565
|
+
inactiveMs: external_exports.number().nonnegative()
|
|
14566
|
+
}));
|
|
14567
|
+
|
|
14528
14568
|
// ../../shared-contracts/dist/ids.js
|
|
14529
14569
|
var opaqueIdSchema = external_exports.string().refine((value) => value.trim().length > 0, {
|
|
14530
14570
|
message: "Identifier must not be empty or whitespace"
|
|
@@ -14645,12 +14685,21 @@ var harnessAccountSnapshotSchema = external_exports.object({
|
|
|
14645
14685
|
plan: external_exports.string().trim().min(1).max(128).optional(),
|
|
14646
14686
|
credits: accountCreditsSnapshotSchema
|
|
14647
14687
|
}).strict();
|
|
14648
|
-
var
|
|
14688
|
+
var harnessAccountIdentityShape = {
|
|
14689
|
+
harnessId: harnessIdSchema,
|
|
14690
|
+
harnessName: external_exports.string().trim().min(1).max(128)
|
|
14691
|
+
};
|
|
14692
|
+
var harnessAccountSourceSchema = external_exports.object(harnessAccountIdentityShape).strict();
|
|
14693
|
+
var harnessAccountSourceListParamsSchema = external_exports.object({}).strict();
|
|
14694
|
+
var harnessAccountSourceListResultSchema = external_exports.object({ sources: external_exports.array(harnessAccountSourceSchema).max(128) }).strict();
|
|
14695
|
+
var harnessAccountInspectParamsSchema = external_exports.object({ harnessId: harnessIdSchema, refresh: external_exports.boolean().optional() }).strict();
|
|
14696
|
+
var harnessAccountInspectResultSchema = external_exports.object({
|
|
14697
|
+
...harnessAccountIdentityShape,
|
|
14698
|
+
account: harnessAccountSnapshotSchema.nullable()
|
|
14699
|
+
}).strict();
|
|
14700
|
+
var harnessAccountListParamsSchema = external_exports.object({ refresh: external_exports.boolean().optional() }).strict();
|
|
14649
14701
|
var harnessAccountListResultSchema = external_exports.object({
|
|
14650
|
-
accounts: external_exports.array(harnessAccountSnapshotSchema.extend(
|
|
14651
|
-
harnessId: harnessIdSchema,
|
|
14652
|
-
harnessName: external_exports.string().min(1)
|
|
14653
|
-
})).max(128)
|
|
14702
|
+
accounts: external_exports.array(harnessAccountSnapshotSchema.extend(harnessAccountIdentityShape)).max(128)
|
|
14654
14703
|
}).strict();
|
|
14655
14704
|
|
|
14656
14705
|
// ../../shared-contracts/dist/json-value.js
|
|
@@ -14946,7 +14995,6 @@ var threadInspectionParamsSchema = external_exports.object({
|
|
|
14946
14995
|
}).strict();
|
|
14947
14996
|
var codexThreadInspectionSchema = external_exports.object({
|
|
14948
14997
|
owner: external_exports.literal("codex"),
|
|
14949
|
-
accountId: nonBlankTextSchema2.optional(),
|
|
14950
14998
|
locked: external_exports.literal(true)
|
|
14951
14999
|
}).strict();
|
|
14952
15000
|
var externalThreadInspectionSchema = external_exports.object({
|
|
@@ -15088,53 +15136,25 @@ var codexAccountSchema = external_exports.object({
|
|
|
15088
15136
|
label: nonBlankTextSchema3.max(256),
|
|
15089
15137
|
email: external_exports.string().email().max(320).optional(),
|
|
15090
15138
|
planType: codexAccountPlanTypeSchema.optional(),
|
|
15091
|
-
codexHome: nonBlankTextSchema3.max(16384),
|
|
15092
|
-
active: external_exports.boolean(),
|
|
15093
|
-
isDefault: external_exports.boolean(),
|
|
15094
15139
|
authKind: codexAccountAuthKindSchema.optional(),
|
|
15095
15140
|
authIdentity: nonBlankTextSchema3.max(256).optional()
|
|
15096
15141
|
}).strict();
|
|
15097
|
-
var
|
|
15098
|
-
var
|
|
15099
|
-
|
|
15100
|
-
|
|
15101
|
-
|
|
15102
|
-
|
|
15103
|
-
|
|
15104
|
-
|
|
15105
|
-
accountId: accountIdSchema,
|
|
15106
|
-
loginId: nonBlankTextSchema3.max(1024),
|
|
15107
|
-
verificationUrl: external_exports.string().url().max(16384),
|
|
15108
|
-
userCode: nonBlankTextSchema3.max(1024)
|
|
15142
|
+
var codexAccountPhaseSchema = external_exports.enum(["ready", "unavailable"]);
|
|
15143
|
+
var codexAccountListResultSchema = external_exports.object({
|
|
15144
|
+
version: external_exports.literal(2),
|
|
15145
|
+
currentAccountId: accountIdSchema.nullable(),
|
|
15146
|
+
phase: codexAccountPhaseSchema,
|
|
15147
|
+
revision: external_exports.number().int().nonnegative(),
|
|
15148
|
+
instanceId: nonBlankTextSchema3.max(1024).optional(),
|
|
15149
|
+
accounts: external_exports.array(codexAccountSchema).max(1)
|
|
15109
15150
|
}).strict();
|
|
15110
|
-
var
|
|
15111
|
-
var codexAccountLoginCancelResultSchema = external_exports.object({ cancelled: external_exports.boolean() }).strict();
|
|
15112
|
-
var codexAccountLoginCompletedSchema = external_exports.object({
|
|
15113
|
-
accountId: accountIdSchema,
|
|
15114
|
-
loginId: nonBlankTextSchema3.max(1024),
|
|
15115
|
-
success: external_exports.boolean(),
|
|
15116
|
-
error: external_exports.string().max(4096).nullable()
|
|
15117
|
-
}).strict();
|
|
15118
|
-
var codexAccountUsageParamsSchema = external_exports.object({ accountId: accountIdSchema }).strict();
|
|
15151
|
+
var codexAccountUsageParamsSchema = external_exports.object({ accountId: accountIdSchema, refresh: external_exports.boolean().optional() }).strict();
|
|
15119
15152
|
var codexAccountUsageResultSchema = external_exports.object({
|
|
15120
15153
|
accountId: accountIdSchema,
|
|
15121
15154
|
usage: threadUsageSnapshotSchema.nullable(),
|
|
15122
|
-
accountCredits: accountCreditsSnapshotSchema.optional()
|
|
15123
|
-
|
|
15124
|
-
|
|
15125
|
-
accountId: accountIdSchema,
|
|
15126
|
-
idempotencyKey: external_exports.string().uuid().optional()
|
|
15127
|
-
}).strict();
|
|
15128
|
-
var codexAccountResetCreditConsumeOutcomeSchema = external_exports.enum([
|
|
15129
|
-
"reset",
|
|
15130
|
-
"nothingToReset",
|
|
15131
|
-
"noCredit",
|
|
15132
|
-
"alreadyRedeemed"
|
|
15133
|
-
]);
|
|
15134
|
-
var codexAccountResetCreditConsumeResultSchema = external_exports.object({
|
|
15135
|
-
accountId: accountIdSchema,
|
|
15136
|
-
outcome: codexAccountResetCreditConsumeOutcomeSchema,
|
|
15137
|
-
accountCredits: accountCreditsSnapshotSchema.optional()
|
|
15155
|
+
accountCredits: accountCreditsSnapshotSchema.optional(),
|
|
15156
|
+
freshness: external_exports.enum(["live", "cached"]),
|
|
15157
|
+
observedAt: external_exports.string().datetime().nullable()
|
|
15138
15158
|
}).strict();
|
|
15139
15159
|
|
|
15140
15160
|
// ../../shared-contracts/dist/harness-session-import.js
|
|
@@ -21073,6 +21093,26 @@ function snapshotFromHistory(contents, ref, cwd) {
|
|
|
21073
21093
|
const turns = [];
|
|
21074
21094
|
let current;
|
|
21075
21095
|
const tools = /* @__PURE__ */ new Map();
|
|
21096
|
+
const earlyResults = /* @__PURE__ */ new Map();
|
|
21097
|
+
const applyResult = (snapshot, row) => {
|
|
21098
|
+
snapshot.outcome = toolOutcome(row.status);
|
|
21099
|
+
if (snapshot.item.type === "subagentDelegation") {
|
|
21100
|
+
const childId = codeBuddyChildId(row);
|
|
21101
|
+
snapshot.item.subagents = snapshot.item.subagents.map((child) => ({
|
|
21102
|
+
...child,
|
|
21103
|
+
...childId ? { subagentId: childId, nativeSubagentId: childId } : {},
|
|
21104
|
+
status: snapshot.outcome.status === "failed" ? "failed" : child.background ? "interrupted" : "completed",
|
|
21105
|
+
resultSummary: child.background ? "Live background observation is unavailable after reload" : contentText(row.output).slice(0, 2e3)
|
|
21106
|
+
}));
|
|
21107
|
+
}
|
|
21108
|
+
if (snapshot.item.type === "toolExecution")
|
|
21109
|
+
snapshot.item.output = toolOutput(row.output);
|
|
21110
|
+
if (snapshot.item.type === "commandExecution") {
|
|
21111
|
+
const output = toolOutput(row.output);
|
|
21112
|
+
snapshot.item.output = contentText(output.content);
|
|
21113
|
+
snapshot.item.outputTruncated = Boolean(output.truncated);
|
|
21114
|
+
}
|
|
21115
|
+
};
|
|
21076
21116
|
for (const row of nativeHistoryRows(contents)) {
|
|
21077
21117
|
if (row.type === "message" && row.role === "user") {
|
|
21078
21118
|
current = {
|
|
@@ -21089,6 +21129,7 @@ function snapshotFromHistory(contents, ref, cwd) {
|
|
|
21089
21129
|
};
|
|
21090
21130
|
turns.push(current);
|
|
21091
21131
|
tools.clear();
|
|
21132
|
+
earlyResults.clear();
|
|
21092
21133
|
continue;
|
|
21093
21134
|
}
|
|
21094
21135
|
if (!current)
|
|
@@ -21118,34 +21159,26 @@ function snapshotFromHistory(contents, ref, cwd) {
|
|
|
21118
21159
|
throw new CodeBuddyError("protocolError", "Invalid native Tool arguments");
|
|
21119
21160
|
}
|
|
21120
21161
|
}
|
|
21162
|
+
const callId = text(row.callId);
|
|
21121
21163
|
const snapshot = {
|
|
21122
|
-
item: row.name === "Agent" ? codeBuddyDelegation(
|
|
21164
|
+
item: row.name === "Agent" ? codeBuddyDelegation(callId, input, "running") : toolItem(callId, text(row.name), input, cwd),
|
|
21123
21165
|
outcome: toolOutcome("unknown")
|
|
21124
21166
|
};
|
|
21125
|
-
tools.set(
|
|
21167
|
+
tools.set(callId, snapshot);
|
|
21126
21168
|
current.items.push(snapshot);
|
|
21127
21169
|
current.outcome = { status: "unknown", reason: "Native Tool has not completed" };
|
|
21128
|
-
|
|
21129
|
-
|
|
21130
|
-
|
|
21131
|
-
|
|
21132
|
-
snapshot.outcome = toolOutcome(row.status);
|
|
21133
|
-
if (snapshot.item.type === "subagentDelegation") {
|
|
21134
|
-
const childId = codeBuddyChildId(row);
|
|
21135
|
-
snapshot.item.subagents = snapshot.item.subagents.map((child) => ({
|
|
21136
|
-
...child,
|
|
21137
|
-
...childId ? { subagentId: childId, nativeSubagentId: childId } : {},
|
|
21138
|
-
status: snapshot.outcome.status === "failed" ? "failed" : child.background ? "interrupted" : "completed",
|
|
21139
|
-
resultSummary: child.background ? "Live background observation is unavailable after reload" : contentText(row.output).slice(0, 2e3)
|
|
21140
|
-
}));
|
|
21141
|
-
}
|
|
21142
|
-
if (snapshot.item.type === "toolExecution")
|
|
21143
|
-
snapshot.item.output = toolOutput(row.output);
|
|
21144
|
-
if (snapshot.item.type === "commandExecution") {
|
|
21145
|
-
const output = toolOutput(row.output);
|
|
21146
|
-
snapshot.item.output = contentText(output.content);
|
|
21147
|
-
snapshot.item.outputTruncated = Boolean(output.truncated);
|
|
21170
|
+
const early = earlyResults.get(callId);
|
|
21171
|
+
if (early) {
|
|
21172
|
+
earlyResults.delete(callId);
|
|
21173
|
+
applyResult(snapshot, early);
|
|
21148
21174
|
}
|
|
21175
|
+
} else if (row.type === "function_call_result") {
|
|
21176
|
+
const callId = text(row.callId);
|
|
21177
|
+
const snapshot = tools.get(callId);
|
|
21178
|
+
if (snapshot)
|
|
21179
|
+
applyResult(snapshot, row);
|
|
21180
|
+
else
|
|
21181
|
+
earlyResults.set(callId, row);
|
|
21149
21182
|
}
|
|
21150
21183
|
}
|
|
21151
21184
|
return { turns };
|
|
@@ -21885,7 +21918,7 @@ var CodeBuddySession = class {
|
|
|
21885
21918
|
}
|
|
21886
21919
|
return { ok: true, value: { cancellationRequested: true } };
|
|
21887
21920
|
}
|
|
21888
|
-
if (this.#busy || this.#active)
|
|
21921
|
+
if (this.#busy || this.#active && command.type !== "model.select" && command.type !== "thinking.select")
|
|
21889
21922
|
return failure("sessionBusy", "Session is executing an operation");
|
|
21890
21923
|
this.#busy = true;
|
|
21891
21924
|
try {
|
|
@@ -14525,6 +14525,46 @@ config(en_default());
|
|
|
14525
14525
|
// ../../shared-contracts/dist/version.js
|
|
14526
14526
|
var WORKSPACE_CONTRACT_VERSION = 1;
|
|
14527
14527
|
|
|
14528
|
+
// ../../shared-contracts/dist/idle-release.js
|
|
14529
|
+
var IDLE_RELEASE_TIMEOUT_MINUTES_MIN = 5;
|
|
14530
|
+
var IDLE_RELEASE_TIMEOUT_MINUTES_MAX = 1440;
|
|
14531
|
+
var idleReleaseSettingsSchema = external_exports.strictObject({
|
|
14532
|
+
enabled: external_exports.boolean(),
|
|
14533
|
+
timeoutMinutes: external_exports.number().int().min(IDLE_RELEASE_TIMEOUT_MINUTES_MIN).max(IDLE_RELEASE_TIMEOUT_MINUTES_MAX)
|
|
14534
|
+
});
|
|
14535
|
+
var DEFAULT_IDLE_RELEASE_SETTINGS = Object.freeze({
|
|
14536
|
+
enabled: false,
|
|
14537
|
+
timeoutMinutes: 30
|
|
14538
|
+
});
|
|
14539
|
+
|
|
14540
|
+
// ../../shared-contracts/dist/loaded-sessions.js
|
|
14541
|
+
var loadedSessionStateSchema = external_exports.enum([
|
|
14542
|
+
"idle",
|
|
14543
|
+
"running",
|
|
14544
|
+
"busy",
|
|
14545
|
+
"closing",
|
|
14546
|
+
"failed",
|
|
14547
|
+
"blocked"
|
|
14548
|
+
]);
|
|
14549
|
+
var loadedSessionReasonSchema = external_exports.enum([
|
|
14550
|
+
"none",
|
|
14551
|
+
"disabled",
|
|
14552
|
+
"timeout",
|
|
14553
|
+
"operation",
|
|
14554
|
+
"background",
|
|
14555
|
+
"identity",
|
|
14556
|
+
"persistence",
|
|
14557
|
+
"closeFailed"
|
|
14558
|
+
]);
|
|
14559
|
+
var loadedSessionsSchema = external_exports.array(external_exports.strictObject({
|
|
14560
|
+
threadId: external_exports.string(),
|
|
14561
|
+
title: external_exports.string(),
|
|
14562
|
+
harnessId: external_exports.string(),
|
|
14563
|
+
state: loadedSessionStateSchema,
|
|
14564
|
+
reason: loadedSessionReasonSchema,
|
|
14565
|
+
inactiveMs: external_exports.number().nonnegative()
|
|
14566
|
+
}));
|
|
14567
|
+
|
|
14528
14568
|
// ../../shared-contracts/dist/ids.js
|
|
14529
14569
|
var opaqueIdSchema = external_exports.string().refine((value) => value.trim().length > 0, {
|
|
14530
14570
|
message: "Identifier must not be empty or whitespace"
|
|
@@ -14645,12 +14685,21 @@ var harnessAccountSnapshotSchema = external_exports.object({
|
|
|
14645
14685
|
plan: external_exports.string().trim().min(1).max(128).optional(),
|
|
14646
14686
|
credits: accountCreditsSnapshotSchema
|
|
14647
14687
|
}).strict();
|
|
14648
|
-
var
|
|
14688
|
+
var harnessAccountIdentityShape = {
|
|
14689
|
+
harnessId: harnessIdSchema,
|
|
14690
|
+
harnessName: external_exports.string().trim().min(1).max(128)
|
|
14691
|
+
};
|
|
14692
|
+
var harnessAccountSourceSchema = external_exports.object(harnessAccountIdentityShape).strict();
|
|
14693
|
+
var harnessAccountSourceListParamsSchema = external_exports.object({}).strict();
|
|
14694
|
+
var harnessAccountSourceListResultSchema = external_exports.object({ sources: external_exports.array(harnessAccountSourceSchema).max(128) }).strict();
|
|
14695
|
+
var harnessAccountInspectParamsSchema = external_exports.object({ harnessId: harnessIdSchema, refresh: external_exports.boolean().optional() }).strict();
|
|
14696
|
+
var harnessAccountInspectResultSchema = external_exports.object({
|
|
14697
|
+
...harnessAccountIdentityShape,
|
|
14698
|
+
account: harnessAccountSnapshotSchema.nullable()
|
|
14699
|
+
}).strict();
|
|
14700
|
+
var harnessAccountListParamsSchema = external_exports.object({ refresh: external_exports.boolean().optional() }).strict();
|
|
14649
14701
|
var harnessAccountListResultSchema = external_exports.object({
|
|
14650
|
-
accounts: external_exports.array(harnessAccountSnapshotSchema.extend(
|
|
14651
|
-
harnessId: harnessIdSchema,
|
|
14652
|
-
harnessName: external_exports.string().min(1)
|
|
14653
|
-
})).max(128)
|
|
14702
|
+
accounts: external_exports.array(harnessAccountSnapshotSchema.extend(harnessAccountIdentityShape)).max(128)
|
|
14654
14703
|
}).strict();
|
|
14655
14704
|
|
|
14656
14705
|
// ../../shared-contracts/dist/json-value.js
|
|
@@ -14946,7 +14995,6 @@ var threadInspectionParamsSchema = external_exports.object({
|
|
|
14946
14995
|
}).strict();
|
|
14947
14996
|
var codexThreadInspectionSchema = external_exports.object({
|
|
14948
14997
|
owner: external_exports.literal("codex"),
|
|
14949
|
-
accountId: nonBlankTextSchema2.optional(),
|
|
14950
14998
|
locked: external_exports.literal(true)
|
|
14951
14999
|
}).strict();
|
|
14952
15000
|
var externalThreadInspectionSchema = external_exports.object({
|
|
@@ -15088,53 +15136,25 @@ var codexAccountSchema = external_exports.object({
|
|
|
15088
15136
|
label: nonBlankTextSchema3.max(256),
|
|
15089
15137
|
email: external_exports.string().email().max(320).optional(),
|
|
15090
15138
|
planType: codexAccountPlanTypeSchema.optional(),
|
|
15091
|
-
codexHome: nonBlankTextSchema3.max(16384),
|
|
15092
|
-
active: external_exports.boolean(),
|
|
15093
|
-
isDefault: external_exports.boolean(),
|
|
15094
15139
|
authKind: codexAccountAuthKindSchema.optional(),
|
|
15095
15140
|
authIdentity: nonBlankTextSchema3.max(256).optional()
|
|
15096
15141
|
}).strict();
|
|
15097
|
-
var
|
|
15098
|
-
var
|
|
15099
|
-
|
|
15100
|
-
|
|
15101
|
-
|
|
15102
|
-
|
|
15103
|
-
|
|
15104
|
-
|
|
15105
|
-
accountId: accountIdSchema,
|
|
15106
|
-
loginId: nonBlankTextSchema3.max(1024),
|
|
15107
|
-
verificationUrl: external_exports.string().url().max(16384),
|
|
15108
|
-
userCode: nonBlankTextSchema3.max(1024)
|
|
15142
|
+
var codexAccountPhaseSchema = external_exports.enum(["ready", "unavailable"]);
|
|
15143
|
+
var codexAccountListResultSchema = external_exports.object({
|
|
15144
|
+
version: external_exports.literal(2),
|
|
15145
|
+
currentAccountId: accountIdSchema.nullable(),
|
|
15146
|
+
phase: codexAccountPhaseSchema,
|
|
15147
|
+
revision: external_exports.number().int().nonnegative(),
|
|
15148
|
+
instanceId: nonBlankTextSchema3.max(1024).optional(),
|
|
15149
|
+
accounts: external_exports.array(codexAccountSchema).max(1)
|
|
15109
15150
|
}).strict();
|
|
15110
|
-
var
|
|
15111
|
-
var codexAccountLoginCancelResultSchema = external_exports.object({ cancelled: external_exports.boolean() }).strict();
|
|
15112
|
-
var codexAccountLoginCompletedSchema = external_exports.object({
|
|
15113
|
-
accountId: accountIdSchema,
|
|
15114
|
-
loginId: nonBlankTextSchema3.max(1024),
|
|
15115
|
-
success: external_exports.boolean(),
|
|
15116
|
-
error: external_exports.string().max(4096).nullable()
|
|
15117
|
-
}).strict();
|
|
15118
|
-
var codexAccountUsageParamsSchema = external_exports.object({ accountId: accountIdSchema }).strict();
|
|
15151
|
+
var codexAccountUsageParamsSchema = external_exports.object({ accountId: accountIdSchema, refresh: external_exports.boolean().optional() }).strict();
|
|
15119
15152
|
var codexAccountUsageResultSchema = external_exports.object({
|
|
15120
15153
|
accountId: accountIdSchema,
|
|
15121
15154
|
usage: threadUsageSnapshotSchema.nullable(),
|
|
15122
|
-
accountCredits: accountCreditsSnapshotSchema.optional()
|
|
15123
|
-
|
|
15124
|
-
|
|
15125
|
-
accountId: accountIdSchema,
|
|
15126
|
-
idempotencyKey: external_exports.string().uuid().optional()
|
|
15127
|
-
}).strict();
|
|
15128
|
-
var codexAccountResetCreditConsumeOutcomeSchema = external_exports.enum([
|
|
15129
|
-
"reset",
|
|
15130
|
-
"nothingToReset",
|
|
15131
|
-
"noCredit",
|
|
15132
|
-
"alreadyRedeemed"
|
|
15133
|
-
]);
|
|
15134
|
-
var codexAccountResetCreditConsumeResultSchema = external_exports.object({
|
|
15135
|
-
accountId: accountIdSchema,
|
|
15136
|
-
outcome: codexAccountResetCreditConsumeOutcomeSchema,
|
|
15137
|
-
accountCredits: accountCreditsSnapshotSchema.optional()
|
|
15155
|
+
accountCredits: accountCreditsSnapshotSchema.optional(),
|
|
15156
|
+
freshness: external_exports.enum(["live", "cached"]),
|
|
15157
|
+
observedAt: external_exports.string().datetime().nullable()
|
|
15138
15158
|
}).strict();
|
|
15139
15159
|
|
|
15140
15160
|
// ../../shared-contracts/dist/harness-session-import.js
|
|
@@ -21379,7 +21399,7 @@ var CursorAdapter = class {
|
|
|
21379
21399
|
};
|
|
21380
21400
|
const cwd = path5.resolve(input.cwd ?? process.cwd());
|
|
21381
21401
|
const cached2 = this.#inspections.get(cwd);
|
|
21382
|
-
if (cached2 && (cached2.pending || !input.refresh
|
|
21402
|
+
if (cached2 && (cached2.pending || !input.refresh))
|
|
21383
21403
|
return cached2.result;
|
|
21384
21404
|
const result = (async () => {
|
|
21385
21405
|
const transport = new CursorTransport(this.transportOptions(cwd));
|
|
@@ -21401,11 +21421,10 @@ var CursorAdapter = class {
|
|
|
21401
21421
|
await transport.close();
|
|
21402
21422
|
}
|
|
21403
21423
|
})();
|
|
21404
|
-
const entry = {
|
|
21424
|
+
const entry = { pending: true, result };
|
|
21405
21425
|
this.#inspections.set(cwd, entry);
|
|
21406
21426
|
void result.finally(() => {
|
|
21407
21427
|
entry.pending = false;
|
|
21408
|
-
entry.expires = Date.now() + 5 * 6e4;
|
|
21409
21428
|
});
|
|
21410
21429
|
return result;
|
|
21411
21430
|
}
|
|
@@ -21557,7 +21576,7 @@ var CursorSession = class {
|
|
|
21557
21576
|
void active.task.finally(() => clearTimeout(timer));
|
|
21558
21577
|
return { ok: true, value: { cancellationRequested: true } };
|
|
21559
21578
|
}
|
|
21560
|
-
if (this.#
|
|
21579
|
+
if (this.#configuring || this.#active && command.type !== "model.select" && command.type !== "thinking.select")
|
|
21561
21580
|
return rejected("sessionBusy", "Cursor session is busy");
|
|
21562
21581
|
if (command.type === "turn.start") {
|
|
21563
21582
|
if (this.#submitted.has(command.turnId))
|
|
@@ -18226,6 +18226,46 @@ config(en_default());
|
|
|
18226
18226
|
// ../../shared-contracts/dist/version.js
|
|
18227
18227
|
var WORKSPACE_CONTRACT_VERSION = 1;
|
|
18228
18228
|
|
|
18229
|
+
// ../../shared-contracts/dist/idle-release.js
|
|
18230
|
+
var IDLE_RELEASE_TIMEOUT_MINUTES_MIN = 5;
|
|
18231
|
+
var IDLE_RELEASE_TIMEOUT_MINUTES_MAX = 1440;
|
|
18232
|
+
var idleReleaseSettingsSchema = external_exports.strictObject({
|
|
18233
|
+
enabled: external_exports.boolean(),
|
|
18234
|
+
timeoutMinutes: external_exports.number().int().min(IDLE_RELEASE_TIMEOUT_MINUTES_MIN).max(IDLE_RELEASE_TIMEOUT_MINUTES_MAX)
|
|
18235
|
+
});
|
|
18236
|
+
var DEFAULT_IDLE_RELEASE_SETTINGS = Object.freeze({
|
|
18237
|
+
enabled: false,
|
|
18238
|
+
timeoutMinutes: 30
|
|
18239
|
+
});
|
|
18240
|
+
|
|
18241
|
+
// ../../shared-contracts/dist/loaded-sessions.js
|
|
18242
|
+
var loadedSessionStateSchema = external_exports.enum([
|
|
18243
|
+
"idle",
|
|
18244
|
+
"running",
|
|
18245
|
+
"busy",
|
|
18246
|
+
"closing",
|
|
18247
|
+
"failed",
|
|
18248
|
+
"blocked"
|
|
18249
|
+
]);
|
|
18250
|
+
var loadedSessionReasonSchema = external_exports.enum([
|
|
18251
|
+
"none",
|
|
18252
|
+
"disabled",
|
|
18253
|
+
"timeout",
|
|
18254
|
+
"operation",
|
|
18255
|
+
"background",
|
|
18256
|
+
"identity",
|
|
18257
|
+
"persistence",
|
|
18258
|
+
"closeFailed"
|
|
18259
|
+
]);
|
|
18260
|
+
var loadedSessionsSchema = external_exports.array(external_exports.strictObject({
|
|
18261
|
+
threadId: external_exports.string(),
|
|
18262
|
+
title: external_exports.string(),
|
|
18263
|
+
harnessId: external_exports.string(),
|
|
18264
|
+
state: loadedSessionStateSchema,
|
|
18265
|
+
reason: loadedSessionReasonSchema,
|
|
18266
|
+
inactiveMs: external_exports.number().nonnegative()
|
|
18267
|
+
}));
|
|
18268
|
+
|
|
18229
18269
|
// ../../shared-contracts/dist/ids.js
|
|
18230
18270
|
var opaqueIdSchema = external_exports.string().refine((value) => value.trim().length > 0, {
|
|
18231
18271
|
message: "Identifier must not be empty or whitespace"
|
|
@@ -18346,12 +18386,21 @@ var harnessAccountSnapshotSchema = external_exports.object({
|
|
|
18346
18386
|
plan: external_exports.string().trim().min(1).max(128).optional(),
|
|
18347
18387
|
credits: accountCreditsSnapshotSchema
|
|
18348
18388
|
}).strict();
|
|
18349
|
-
var
|
|
18389
|
+
var harnessAccountIdentityShape = {
|
|
18390
|
+
harnessId: harnessIdSchema,
|
|
18391
|
+
harnessName: external_exports.string().trim().min(1).max(128)
|
|
18392
|
+
};
|
|
18393
|
+
var harnessAccountSourceSchema = external_exports.object(harnessAccountIdentityShape).strict();
|
|
18394
|
+
var harnessAccountSourceListParamsSchema = external_exports.object({}).strict();
|
|
18395
|
+
var harnessAccountSourceListResultSchema = external_exports.object({ sources: external_exports.array(harnessAccountSourceSchema).max(128) }).strict();
|
|
18396
|
+
var harnessAccountInspectParamsSchema = external_exports.object({ harnessId: harnessIdSchema, refresh: external_exports.boolean().optional() }).strict();
|
|
18397
|
+
var harnessAccountInspectResultSchema = external_exports.object({
|
|
18398
|
+
...harnessAccountIdentityShape,
|
|
18399
|
+
account: harnessAccountSnapshotSchema.nullable()
|
|
18400
|
+
}).strict();
|
|
18401
|
+
var harnessAccountListParamsSchema = external_exports.object({ refresh: external_exports.boolean().optional() }).strict();
|
|
18350
18402
|
var harnessAccountListResultSchema = external_exports.object({
|
|
18351
|
-
accounts: external_exports.array(harnessAccountSnapshotSchema.extend(
|
|
18352
|
-
harnessId: harnessIdSchema,
|
|
18353
|
-
harnessName: external_exports.string().min(1)
|
|
18354
|
-
})).max(128)
|
|
18403
|
+
accounts: external_exports.array(harnessAccountSnapshotSchema.extend(harnessAccountIdentityShape)).max(128)
|
|
18355
18404
|
}).strict();
|
|
18356
18405
|
|
|
18357
18406
|
// ../../shared-contracts/dist/json-value.js
|
|
@@ -18647,7 +18696,6 @@ var threadInspectionParamsSchema = external_exports.object({
|
|
|
18647
18696
|
}).strict();
|
|
18648
18697
|
var codexThreadInspectionSchema = external_exports.object({
|
|
18649
18698
|
owner: external_exports.literal("codex"),
|
|
18650
|
-
accountId: nonBlankTextSchema2.optional(),
|
|
18651
18699
|
locked: external_exports.literal(true)
|
|
18652
18700
|
}).strict();
|
|
18653
18701
|
var externalThreadInspectionSchema = external_exports.object({
|
|
@@ -18789,53 +18837,25 @@ var codexAccountSchema = external_exports.object({
|
|
|
18789
18837
|
label: nonBlankTextSchema3.max(256),
|
|
18790
18838
|
email: external_exports.string().email().max(320).optional(),
|
|
18791
18839
|
planType: codexAccountPlanTypeSchema.optional(),
|
|
18792
|
-
codexHome: nonBlankTextSchema3.max(16384),
|
|
18793
|
-
active: external_exports.boolean(),
|
|
18794
|
-
isDefault: external_exports.boolean(),
|
|
18795
18840
|
authKind: codexAccountAuthKindSchema.optional(),
|
|
18796
18841
|
authIdentity: nonBlankTextSchema3.max(256).optional()
|
|
18797
18842
|
}).strict();
|
|
18798
|
-
var
|
|
18799
|
-
var
|
|
18800
|
-
|
|
18801
|
-
|
|
18802
|
-
|
|
18803
|
-
|
|
18804
|
-
|
|
18805
|
-
|
|
18806
|
-
accountId: accountIdSchema,
|
|
18807
|
-
loginId: nonBlankTextSchema3.max(1024),
|
|
18808
|
-
verificationUrl: external_exports.string().url().max(16384),
|
|
18809
|
-
userCode: nonBlankTextSchema3.max(1024)
|
|
18843
|
+
var codexAccountPhaseSchema = external_exports.enum(["ready", "unavailable"]);
|
|
18844
|
+
var codexAccountListResultSchema = external_exports.object({
|
|
18845
|
+
version: external_exports.literal(2),
|
|
18846
|
+
currentAccountId: accountIdSchema.nullable(),
|
|
18847
|
+
phase: codexAccountPhaseSchema,
|
|
18848
|
+
revision: external_exports.number().int().nonnegative(),
|
|
18849
|
+
instanceId: nonBlankTextSchema3.max(1024).optional(),
|
|
18850
|
+
accounts: external_exports.array(codexAccountSchema).max(1)
|
|
18810
18851
|
}).strict();
|
|
18811
|
-
var
|
|
18812
|
-
var codexAccountLoginCancelResultSchema = external_exports.object({ cancelled: external_exports.boolean() }).strict();
|
|
18813
|
-
var codexAccountLoginCompletedSchema = external_exports.object({
|
|
18814
|
-
accountId: accountIdSchema,
|
|
18815
|
-
loginId: nonBlankTextSchema3.max(1024),
|
|
18816
|
-
success: external_exports.boolean(),
|
|
18817
|
-
error: external_exports.string().max(4096).nullable()
|
|
18818
|
-
}).strict();
|
|
18819
|
-
var codexAccountUsageParamsSchema = external_exports.object({ accountId: accountIdSchema }).strict();
|
|
18852
|
+
var codexAccountUsageParamsSchema = external_exports.object({ accountId: accountIdSchema, refresh: external_exports.boolean().optional() }).strict();
|
|
18820
18853
|
var codexAccountUsageResultSchema = external_exports.object({
|
|
18821
18854
|
accountId: accountIdSchema,
|
|
18822
18855
|
usage: threadUsageSnapshotSchema.nullable(),
|
|
18823
|
-
accountCredits: accountCreditsSnapshotSchema.optional()
|
|
18824
|
-
|
|
18825
|
-
|
|
18826
|
-
accountId: accountIdSchema,
|
|
18827
|
-
idempotencyKey: external_exports.string().uuid().optional()
|
|
18828
|
-
}).strict();
|
|
18829
|
-
var codexAccountResetCreditConsumeOutcomeSchema = external_exports.enum([
|
|
18830
|
-
"reset",
|
|
18831
|
-
"nothingToReset",
|
|
18832
|
-
"noCredit",
|
|
18833
|
-
"alreadyRedeemed"
|
|
18834
|
-
]);
|
|
18835
|
-
var codexAccountResetCreditConsumeResultSchema = external_exports.object({
|
|
18836
|
-
accountId: accountIdSchema,
|
|
18837
|
-
outcome: codexAccountResetCreditConsumeOutcomeSchema,
|
|
18838
|
-
accountCredits: accountCreditsSnapshotSchema.optional()
|
|
18856
|
+
accountCredits: accountCreditsSnapshotSchema.optional(),
|
|
18857
|
+
freshness: external_exports.enum(["live", "cached"]),
|
|
18858
|
+
observedAt: external_exports.string().datetime().nullable()
|
|
18839
18859
|
}).strict();
|
|
18840
18860
|
|
|
18841
18861
|
// ../../shared-contracts/dist/harness-session-import.js
|
|
@@ -19197,6 +19217,11 @@ var HarnessOutputChannel = class {
|
|
|
19197
19217
|
var DIAGNOSTIC_TAIL_MAX_LENGTH = 8e3;
|
|
19198
19218
|
var SENSITIVE_VALUE_PATTERN = /(api[_-]?key|access[_-]?token|auth(?:orization)?|password|secret)(\s*[:=]\s*)([^\s,;]+)/giu;
|
|
19199
19219
|
var BEARER_PATTERN = /\bBearer\s+[A-Za-z0-9._~+/=-]+/giu;
|
|
19220
|
+
var NODE_WARNING_PREFIX_PATTERN = /^\(node:\d+\)\s+/u;
|
|
19221
|
+
var NODE_TRACE_WARNINGS_HINT_PATTERN = /^\(Use\s+`node\s+--trace-warnings/u;
|
|
19222
|
+
function filterAmbientNodeWarnings(output) {
|
|
19223
|
+
return output.split("\n").filter((line) => !NODE_WARNING_PREFIX_PATTERN.test(line) && !NODE_TRACE_WARNINGS_HINT_PATTERN.test(line)).join("\n");
|
|
19224
|
+
}
|
|
19200
19225
|
function sanitizeDiagnosticTail(value) {
|
|
19201
19226
|
const redacted = value.replace(BEARER_PATTERN, "Bearer [redacted]").replace(SENSITIVE_VALUE_PATTERN, "$1$2[redacted]");
|
|
19202
19227
|
return redacted.length <= DIAGNOSTIC_TAIL_MAX_LENGTH ? redacted : redacted.slice(-DIAGNOSTIC_TAIL_MAX_LENGTH);
|
|
@@ -19754,9 +19779,10 @@ async function probeDeepSeekExecutableGeneration(options = {}, dependencies = {
|
|
|
19754
19779
|
cleanupTimeoutMs,
|
|
19755
19780
|
outputLimitBytes
|
|
19756
19781
|
}, dependencies);
|
|
19757
|
-
|
|
19782
|
+
const substantiveStderr = filterAmbientNodeWarnings(output.stderr);
|
|
19783
|
+
if (substantiveStderr.length > 0) {
|
|
19758
19784
|
throw probeError("protocolError", "DeepSeek Harness --version wrote unexpected stderr", {
|
|
19759
|
-
stderrTail: sanitizeDiagnosticTail(
|
|
19785
|
+
stderrTail: sanitizeDiagnosticTail(substantiveStderr)
|
|
19760
19786
|
});
|
|
19761
19787
|
}
|
|
19762
19788
|
return { ...classifyDeepSeekVersionOutput(output.stdout), command };
|
|
@@ -21877,7 +21903,7 @@ function structuredDiffs(meta3) {
|
|
|
21877
21903
|
const oldHeader = kind === "add" ? "/dev/null" : `a/${candidate.path}`;
|
|
21878
21904
|
const newHeader = kind === "delete" ? "/dev/null" : `b/${candidate.path}`;
|
|
21879
21905
|
const unifiedDiff = createTwoFilesPatch(oldHeader, newHeader, oldText ?? "", newText ?? "", "", "", { context: 3 });
|
|
21880
|
-
changes.push({ path: candidate.path, kind, unifiedDiff });
|
|
21906
|
+
changes.push({ path: candidate.path, kind, unifiedDiff, diffScope: "fragment" });
|
|
21881
21907
|
}
|
|
21882
21908
|
return changes;
|
|
21883
21909
|
}
|
|
@@ -27236,6 +27262,7 @@ function projectToolResultEvent(turn, sessionId, data, seq, limit) {
|
|
|
27236
27262
|
const fileItem = {
|
|
27237
27263
|
type: "fileChange",
|
|
27238
27264
|
itemId: modernItemId(sessionId, `event:${seq}:file-change`),
|
|
27265
|
+
sourceItemIds: [item.itemId],
|
|
27239
27266
|
changes
|
|
27240
27267
|
};
|
|
27241
27268
|
turn.items.push({ item: fileItem, outcome: { status: "succeeded" } });
|
|
@@ -28307,14 +28334,14 @@ ${question.detail}` : question.question;
|
|
|
28307
28334
|
if (force || changed)
|
|
28308
28335
|
this.#emit({ type: "session.state.changed", state: next });
|
|
28309
28336
|
}
|
|
28310
|
-
#configurationBusy(area) {
|
|
28311
|
-
if (this.#active || this.#buffer || this.#pendingByRequestId.size > 0 || this.#activeCommand || this.#commandAdmission || this.#queuedDeliveries.size > 0
|
|
28337
|
+
#configurationBusy(area, allowActiveTurn = false) {
|
|
28338
|
+
if (this.#configuring || this.#reading || !allowActiveTurn && (this.#active || this.#buffer || this.#pendingByRequestId.size > 0 || this.#activeCommand || this.#commandAdmission || this.#queuedDeliveries.size > 0)) {
|
|
28312
28339
|
return busyError(`select ${area}`);
|
|
28313
28340
|
}
|
|
28314
28341
|
return void 0;
|
|
28315
28342
|
}
|
|
28316
28343
|
async #selectModel(command) {
|
|
28317
|
-
const busy = this.#configurationBusy("a Model");
|
|
28344
|
+
const busy = this.#configurationBusy("a Model", true);
|
|
28318
28345
|
if (busy)
|
|
28319
28346
|
return { ok: false, error: busy };
|
|
28320
28347
|
let requested;
|
|
@@ -28329,7 +28356,7 @@ ${question.detail}` : question.question;
|
|
|
28329
28356
|
});
|
|
28330
28357
|
}
|
|
28331
28358
|
async #selectThinking(command) {
|
|
28332
|
-
const busy = this.#configurationBusy("Thinking");
|
|
28359
|
+
const busy = this.#configurationBusy("Thinking", true);
|
|
28333
28360
|
if (busy)
|
|
28334
28361
|
return { ok: false, error: busy };
|
|
28335
28362
|
let requested;
|
|
@@ -29436,6 +29463,7 @@ ${question.detail}` : question.question;
|
|
|
29436
29463
|
const fileItem = {
|
|
29437
29464
|
type: "fileChange",
|
|
29438
29465
|
itemId: modernItemId(this.#sessionId, `event:${seq}:file-change`),
|
|
29466
|
+
sourceItemIds: [item.itemId],
|
|
29439
29467
|
changes
|
|
29440
29468
|
};
|
|
29441
29469
|
this.#emit({ type: "item.started", turnId: active.turnId, item: fileItem });
|