@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.
Files changed (34) hide show
  1. package/README.md +1 -1
  2. package/THIRD_PARTY_NOTICES.txt +16 -0
  3. package/app/codexhost-distribution.json +1 -1
  4. package/app/desktop-controller.mjs +184 -47
  5. package/app/host-runtime.mjs +5449 -4221
  6. package/app/plugins/antigravity/plugin.mjs +70 -61
  7. package/app/plugins/claude-code/plugin.mjs +85 -58
  8. package/app/plugins/codebuddy/plugin.mjs +102 -69
  9. package/app/plugins/cursor-cli/plugin.mjs +69 -50
  10. package/app/plugins/deepseek-harness/plugin.mjs +81 -53
  11. package/app/plugins/enabled.json +3 -1
  12. package/app/plugins/grok/plugin.mjs +94 -61
  13. package/app/plugins/hermes/plugin.mjs +308 -95
  14. package/app/plugins/kiro-cli/plugin.mjs +76 -49
  15. package/app/plugins/muse/plugin.mjs +66 -46
  16. package/app/plugins/omp/plugin.mjs +79 -52
  17. package/app/plugins/opencode/plugin.mjs +118 -92
  18. package/app/plugins/pi/plugin.mjs +79 -52
  19. package/app/plugins/qoder/assets/icon.svg +1 -0
  20. package/app/plugins/qoder/manifest.json +12 -0
  21. package/app/plugins/qoder/plugin.mjs +52290 -0
  22. package/app/plugins/qoder-cn/assets/icon.svg +1 -0
  23. package/app/plugins/qoder-cn/manifest.json +12 -0
  24. package/app/plugins/qoder-cn/plugin.mjs +52288 -0
  25. package/app/renderer-extension.js +3857 -1175
  26. package/bin/boft.exe +0 -0
  27. package/libexec/boft-node-repl.exe +0 -0
  28. package/libexec/boft-shim.exe +0 -0
  29. package/libexec/boft-updater.exe +0 -0
  30. package/licenses/Qoder-Agent-SDK-LICENSE.txt +7 -0
  31. package/licenses/QoderCN-Agent-SDK-LICENSE.txt +7 -0
  32. package/licenses/opencodex-LICENSE.txt +21 -0
  33. package/licenses/tailwindcss-LICENSE.txt +21 -0
  34. package/package.json +1 -1
@@ -18687,6 +18687,46 @@ var ClientSideConnection = class {
18687
18687
  // ../../shared-contracts/dist/version.js
18688
18688
  var WORKSPACE_CONTRACT_VERSION = 1;
18689
18689
 
18690
+ // ../../shared-contracts/dist/idle-release.js
18691
+ var IDLE_RELEASE_TIMEOUT_MINUTES_MIN = 5;
18692
+ var IDLE_RELEASE_TIMEOUT_MINUTES_MAX = 1440;
18693
+ var idleReleaseSettingsSchema = external_exports.strictObject({
18694
+ enabled: external_exports.boolean(),
18695
+ timeoutMinutes: external_exports.number().int().min(IDLE_RELEASE_TIMEOUT_MINUTES_MIN).max(IDLE_RELEASE_TIMEOUT_MINUTES_MAX)
18696
+ });
18697
+ var DEFAULT_IDLE_RELEASE_SETTINGS = Object.freeze({
18698
+ enabled: false,
18699
+ timeoutMinutes: 30
18700
+ });
18701
+
18702
+ // ../../shared-contracts/dist/loaded-sessions.js
18703
+ var loadedSessionStateSchema = external_exports.enum([
18704
+ "idle",
18705
+ "running",
18706
+ "busy",
18707
+ "closing",
18708
+ "failed",
18709
+ "blocked"
18710
+ ]);
18711
+ var loadedSessionReasonSchema = external_exports.enum([
18712
+ "none",
18713
+ "disabled",
18714
+ "timeout",
18715
+ "operation",
18716
+ "background",
18717
+ "identity",
18718
+ "persistence",
18719
+ "closeFailed"
18720
+ ]);
18721
+ var loadedSessionsSchema = external_exports.array(external_exports.strictObject({
18722
+ threadId: external_exports.string(),
18723
+ title: external_exports.string(),
18724
+ harnessId: external_exports.string(),
18725
+ state: loadedSessionStateSchema,
18726
+ reason: loadedSessionReasonSchema,
18727
+ inactiveMs: external_exports.number().nonnegative()
18728
+ }));
18729
+
18690
18730
  // ../../shared-contracts/dist/ids.js
18691
18731
  var opaqueIdSchema = external_exports.string().refine((value) => value.trim().length > 0, {
18692
18732
  message: "Identifier must not be empty or whitespace"
@@ -18807,12 +18847,21 @@ var harnessAccountSnapshotSchema = external_exports.object({
18807
18847
  plan: external_exports.string().trim().min(1).max(128).optional(),
18808
18848
  credits: accountCreditsSnapshotSchema
18809
18849
  }).strict();
18810
- var harnessAccountListParamsSchema = external_exports.object({}).strict();
18850
+ var harnessAccountIdentityShape = {
18851
+ harnessId: harnessIdSchema,
18852
+ harnessName: external_exports.string().trim().min(1).max(128)
18853
+ };
18854
+ var harnessAccountSourceSchema = external_exports.object(harnessAccountIdentityShape).strict();
18855
+ var harnessAccountSourceListParamsSchema = external_exports.object({}).strict();
18856
+ var harnessAccountSourceListResultSchema = external_exports.object({ sources: external_exports.array(harnessAccountSourceSchema).max(128) }).strict();
18857
+ var harnessAccountInspectParamsSchema = external_exports.object({ harnessId: harnessIdSchema, refresh: external_exports.boolean().optional() }).strict();
18858
+ var harnessAccountInspectResultSchema = external_exports.object({
18859
+ ...harnessAccountIdentityShape,
18860
+ account: harnessAccountSnapshotSchema.nullable()
18861
+ }).strict();
18862
+ var harnessAccountListParamsSchema = external_exports.object({ refresh: external_exports.boolean().optional() }).strict();
18811
18863
  var harnessAccountListResultSchema = external_exports.object({
18812
- accounts: external_exports.array(harnessAccountSnapshotSchema.extend({
18813
- harnessId: harnessIdSchema,
18814
- harnessName: external_exports.string().min(1)
18815
- })).max(128)
18864
+ accounts: external_exports.array(harnessAccountSnapshotSchema.extend(harnessAccountIdentityShape)).max(128)
18816
18865
  }).strict();
18817
18866
 
18818
18867
  // ../../shared-contracts/dist/json-value.js
@@ -19108,7 +19157,6 @@ var threadInspectionParamsSchema = external_exports.object({
19108
19157
  }).strict();
19109
19158
  var codexThreadInspectionSchema = external_exports.object({
19110
19159
  owner: external_exports.literal("codex"),
19111
- accountId: nonBlankTextSchema2.optional(),
19112
19160
  locked: external_exports.literal(true)
19113
19161
  }).strict();
19114
19162
  var externalThreadInspectionSchema = external_exports.object({
@@ -19250,53 +19298,25 @@ var codexAccountSchema = external_exports.object({
19250
19298
  label: nonBlankTextSchema3.max(256),
19251
19299
  email: external_exports.string().email().max(320).optional(),
19252
19300
  planType: codexAccountPlanTypeSchema.optional(),
19253
- codexHome: nonBlankTextSchema3.max(16384),
19254
- active: external_exports.boolean(),
19255
- isDefault: external_exports.boolean(),
19256
19301
  authKind: codexAccountAuthKindSchema.optional(),
19257
19302
  authIdentity: nonBlankTextSchema3.max(256).optional()
19258
19303
  }).strict();
19259
- var codexAccountListResultSchema = external_exports.object({ accounts: external_exports.array(codexAccountSchema).max(128) }).strict();
19260
- var codexAccountCreateParamsSchema = external_exports.object({ label: nonBlankTextSchema3.max(256).optional() }).strict();
19261
- var codexAccountActivateParamsSchema = external_exports.object({ accountId: accountIdSchema }).strict();
19262
- var codexAccountDeleteParamsSchema = external_exports.object({ accountId: accountIdSchema }).strict();
19263
- var codexAccountDeleteResultSchema = external_exports.object({ deletedAccountId: accountIdSchema }).strict();
19264
- var codexAccountMutationResultSchema = external_exports.object({ account: codexAccountSchema }).strict();
19265
- var codexAccountLoginStartParamsSchema = external_exports.object({ accountId: accountIdSchema }).strict();
19266
- var codexAccountLoginStartResultSchema = external_exports.object({
19267
- accountId: accountIdSchema,
19268
- loginId: nonBlankTextSchema3.max(1024),
19269
- verificationUrl: external_exports.string().url().max(16384),
19270
- userCode: nonBlankTextSchema3.max(1024)
19304
+ var codexAccountPhaseSchema = external_exports.enum(["ready", "unavailable"]);
19305
+ var codexAccountListResultSchema = external_exports.object({
19306
+ version: external_exports.literal(2),
19307
+ currentAccountId: accountIdSchema.nullable(),
19308
+ phase: codexAccountPhaseSchema,
19309
+ revision: external_exports.number().int().nonnegative(),
19310
+ instanceId: nonBlankTextSchema3.max(1024).optional(),
19311
+ accounts: external_exports.array(codexAccountSchema).max(1)
19271
19312
  }).strict();
19272
- var codexAccountLoginCancelParamsSchema = external_exports.object({ accountId: accountIdSchema.optional(), loginId: nonBlankTextSchema3.max(1024) }).strict();
19273
- var codexAccountLoginCancelResultSchema = external_exports.object({ cancelled: external_exports.boolean() }).strict();
19274
- var codexAccountLoginCompletedSchema = external_exports.object({
19275
- accountId: accountIdSchema,
19276
- loginId: nonBlankTextSchema3.max(1024),
19277
- success: external_exports.boolean(),
19278
- error: external_exports.string().max(4096).nullable()
19279
- }).strict();
19280
- var codexAccountUsageParamsSchema = external_exports.object({ accountId: accountIdSchema }).strict();
19313
+ var codexAccountUsageParamsSchema = external_exports.object({ accountId: accountIdSchema, refresh: external_exports.boolean().optional() }).strict();
19281
19314
  var codexAccountUsageResultSchema = external_exports.object({
19282
19315
  accountId: accountIdSchema,
19283
19316
  usage: threadUsageSnapshotSchema.nullable(),
19284
- accountCredits: accountCreditsSnapshotSchema.optional()
19285
- }).strict();
19286
- var codexAccountResetCreditConsumeParamsSchema = external_exports.object({
19287
- accountId: accountIdSchema,
19288
- idempotencyKey: external_exports.string().uuid().optional()
19289
- }).strict();
19290
- var codexAccountResetCreditConsumeOutcomeSchema = external_exports.enum([
19291
- "reset",
19292
- "nothingToReset",
19293
- "noCredit",
19294
- "alreadyRedeemed"
19295
- ]);
19296
- var codexAccountResetCreditConsumeResultSchema = external_exports.object({
19297
- accountId: accountIdSchema,
19298
- outcome: codexAccountResetCreditConsumeOutcomeSchema,
19299
- accountCredits: accountCreditsSnapshotSchema.optional()
19317
+ accountCredits: accountCreditsSnapshotSchema.optional(),
19318
+ freshness: external_exports.enum(["live", "cached"]),
19319
+ observedAt: external_exports.string().datetime().nullable()
19300
19320
  }).strict();
19301
19321
 
19302
19322
  // ../../shared-contracts/dist/harness-session-import.js
@@ -21510,6 +21530,7 @@ function mapGrokReplay(replay, harnessId, sessionId, cwd, knownTurnRefs = [], to
21510
21530
  const fileItem = {
21511
21531
  type: "fileChange",
21512
21532
  itemId: stableId("file-change", turnIndex, ++messageIndex),
21533
+ sourceItemIds: [tool.itemId],
21513
21534
  changes
21514
21535
  };
21515
21536
  items.push({ item: fileItem, outcome: { status: "succeeded" } });
@@ -22184,6 +22205,12 @@ async function rewindGrokLastTurn(input) {
22184
22205
 
22185
22206
  // dist/grok-plan-review.js
22186
22207
  var GROK_PLAN_DECISION_ID = "plan-decision";
22208
+ var GROK_PLAN_APPROVE_VALUE = "approve";
22209
+ var GROK_PLAN_APPROVE_LABEL = "Approve plan and exit plan mode";
22210
+ var GROK_PLAN_STAY_VALUE = "stay";
22211
+ var GROK_PLAN_STAY_LABEL = "Stay in plan mode";
22212
+ var GROK_PLAN_OUTCOME_APPROVED = "approved";
22213
+ var GROK_PLAN_OUTCOME_CANCELLED = "cancelled";
22187
22214
  function isRecord10(value) {
22188
22215
  return typeof value === "object" && value !== null && !Array.isArray(value);
22189
22216
  }
@@ -22222,19 +22249,23 @@ function createGrokPlanReview(request, interactionId, turnId) {
22222
22249
  prompt: request.plan ? `${warning}
22223
22250
 
22224
22251
  ${request.plan}` : "Grok did not provide plan text. Stay in plan mode and ask Grok to present the plan before approving it.",
22225
- options: [
22252
+ options: request.plan ? [
22226
22253
  {
22227
- value: "stay",
22228
- label: "Stay in plan mode",
22229
- description: "Do not approve the plan or begin implementation."
22254
+ value: GROK_PLAN_APPROVE_VALUE,
22255
+ label: GROK_PLAN_APPROVE_LABEL,
22256
+ description: "Leave plan mode and begin implementation."
22230
22257
  },
22231
- ...request.plan ? [
22232
- {
22233
- value: "approve",
22234
- label: "Approve plan and exit plan mode",
22235
- description: "Leave plan mode and begin implementation."
22236
- }
22237
- ] : []
22258
+ {
22259
+ value: GROK_PLAN_STAY_VALUE,
22260
+ label: GROK_PLAN_STAY_LABEL,
22261
+ description: "Do not approve the plan or begin implementation."
22262
+ }
22263
+ ] : [
22264
+ {
22265
+ value: GROK_PLAN_STAY_VALUE,
22266
+ label: GROK_PLAN_STAY_LABEL,
22267
+ description: "Do not approve the plan or begin implementation."
22268
+ }
22238
22269
  ],
22239
22270
  multiple: false,
22240
22271
  allowOther: false,
@@ -22244,12 +22275,13 @@ ${request.plan}` : "Grok did not provide plan text. Stay in plan mode and ask Gr
22244
22275
  };
22245
22276
  }
22246
22277
  function grokPlanRejectedResponse() {
22247
- return { approved: false, feedback: "" };
22278
+ return { outcome: GROK_PLAN_OUTCOME_CANCELLED };
22248
22279
  }
22249
22280
  function grokExitPlanModeResponse(request, response) {
22281
+ const decision = response.answers[GROK_PLAN_DECISION_ID]?.[0];
22282
+ const approved = !response.cancelled && request.plan !== null && (decision === GROK_PLAN_APPROVE_VALUE || decision === GROK_PLAN_APPROVE_LABEL);
22250
22283
  return {
22251
- approved: !response.cancelled && request.plan !== null && response.answers[GROK_PLAN_DECISION_ID]?.[0] === "approve",
22252
- feedback: ""
22284
+ outcome: approved ? GROK_PLAN_OUTCOME_APPROVED : GROK_PLAN_OUTCOME_CANCELLED
22253
22285
  };
22254
22286
  }
22255
22287
 
@@ -24079,7 +24111,7 @@ var GrokHarnessSession = class {
24079
24111
  return this.#configure(model, parsed.data);
24080
24112
  }
24081
24113
  async #configure(model, thinkingOptionId) {
24082
- if (this.#active || this.#configuring) {
24114
+ if (this.#configuring) {
24083
24115
  return {
24084
24116
  ok: false,
24085
24117
  error: {
@@ -24565,6 +24597,7 @@ var GrokHarnessSession = class {
24565
24597
  const fileItem = {
24566
24598
  type: "fileChange",
24567
24599
  itemId: hostItemIdSchema.parse(this.#randomUUID()),
24600
+ sourceItemIds: [tool.item.itemId],
24568
24601
  changes
24569
24602
  };
24570
24603
  this.#event({ type: "item.started", turnId: active.command.turnId, item: fileItem });