@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
@@ -14531,6 +14531,46 @@ config(en_default());
14531
14531
  // ../../shared-contracts/dist/version.js
14532
14532
  var WORKSPACE_CONTRACT_VERSION = 1;
14533
14533
 
14534
+ // ../../shared-contracts/dist/idle-release.js
14535
+ var IDLE_RELEASE_TIMEOUT_MINUTES_MIN = 5;
14536
+ var IDLE_RELEASE_TIMEOUT_MINUTES_MAX = 1440;
14537
+ var idleReleaseSettingsSchema = external_exports.strictObject({
14538
+ enabled: external_exports.boolean(),
14539
+ timeoutMinutes: external_exports.number().int().min(IDLE_RELEASE_TIMEOUT_MINUTES_MIN).max(IDLE_RELEASE_TIMEOUT_MINUTES_MAX)
14540
+ });
14541
+ var DEFAULT_IDLE_RELEASE_SETTINGS = Object.freeze({
14542
+ enabled: false,
14543
+ timeoutMinutes: 30
14544
+ });
14545
+
14546
+ // ../../shared-contracts/dist/loaded-sessions.js
14547
+ var loadedSessionStateSchema = external_exports.enum([
14548
+ "idle",
14549
+ "running",
14550
+ "busy",
14551
+ "closing",
14552
+ "failed",
14553
+ "blocked"
14554
+ ]);
14555
+ var loadedSessionReasonSchema = external_exports.enum([
14556
+ "none",
14557
+ "disabled",
14558
+ "timeout",
14559
+ "operation",
14560
+ "background",
14561
+ "identity",
14562
+ "persistence",
14563
+ "closeFailed"
14564
+ ]);
14565
+ var loadedSessionsSchema = external_exports.array(external_exports.strictObject({
14566
+ threadId: external_exports.string(),
14567
+ title: external_exports.string(),
14568
+ harnessId: external_exports.string(),
14569
+ state: loadedSessionStateSchema,
14570
+ reason: loadedSessionReasonSchema,
14571
+ inactiveMs: external_exports.number().nonnegative()
14572
+ }));
14573
+
14534
14574
  // ../../shared-contracts/dist/ids.js
14535
14575
  var opaqueIdSchema = external_exports.string().refine((value) => value.trim().length > 0, {
14536
14576
  message: "Identifier must not be empty or whitespace"
@@ -14651,12 +14691,21 @@ var harnessAccountSnapshotSchema = external_exports.object({
14651
14691
  plan: external_exports.string().trim().min(1).max(128).optional(),
14652
14692
  credits: accountCreditsSnapshotSchema
14653
14693
  }).strict();
14654
- var harnessAccountListParamsSchema = external_exports.object({}).strict();
14694
+ var harnessAccountIdentityShape = {
14695
+ harnessId: harnessIdSchema,
14696
+ harnessName: external_exports.string().trim().min(1).max(128)
14697
+ };
14698
+ var harnessAccountSourceSchema = external_exports.object(harnessAccountIdentityShape).strict();
14699
+ var harnessAccountSourceListParamsSchema = external_exports.object({}).strict();
14700
+ var harnessAccountSourceListResultSchema = external_exports.object({ sources: external_exports.array(harnessAccountSourceSchema).max(128) }).strict();
14701
+ var harnessAccountInspectParamsSchema = external_exports.object({ harnessId: harnessIdSchema, refresh: external_exports.boolean().optional() }).strict();
14702
+ var harnessAccountInspectResultSchema = external_exports.object({
14703
+ ...harnessAccountIdentityShape,
14704
+ account: harnessAccountSnapshotSchema.nullable()
14705
+ }).strict();
14706
+ var harnessAccountListParamsSchema = external_exports.object({ refresh: external_exports.boolean().optional() }).strict();
14655
14707
  var harnessAccountListResultSchema = external_exports.object({
14656
- accounts: external_exports.array(harnessAccountSnapshotSchema.extend({
14657
- harnessId: harnessIdSchema,
14658
- harnessName: external_exports.string().min(1)
14659
- })).max(128)
14708
+ accounts: external_exports.array(harnessAccountSnapshotSchema.extend(harnessAccountIdentityShape)).max(128)
14660
14709
  }).strict();
14661
14710
 
14662
14711
  // ../../shared-contracts/dist/json-value.js
@@ -14952,7 +15001,6 @@ var threadInspectionParamsSchema = external_exports.object({
14952
15001
  }).strict();
14953
15002
  var codexThreadInspectionSchema = external_exports.object({
14954
15003
  owner: external_exports.literal("codex"),
14955
- accountId: nonBlankTextSchema2.optional(),
14956
15004
  locked: external_exports.literal(true)
14957
15005
  }).strict();
14958
15006
  var externalThreadInspectionSchema = external_exports.object({
@@ -15094,53 +15142,25 @@ var codexAccountSchema = external_exports.object({
15094
15142
  label: nonBlankTextSchema3.max(256),
15095
15143
  email: external_exports.string().email().max(320).optional(),
15096
15144
  planType: codexAccountPlanTypeSchema.optional(),
15097
- codexHome: nonBlankTextSchema3.max(16384),
15098
- active: external_exports.boolean(),
15099
- isDefault: external_exports.boolean(),
15100
15145
  authKind: codexAccountAuthKindSchema.optional(),
15101
15146
  authIdentity: nonBlankTextSchema3.max(256).optional()
15102
15147
  }).strict();
15103
- var codexAccountListResultSchema = external_exports.object({ accounts: external_exports.array(codexAccountSchema).max(128) }).strict();
15104
- var codexAccountCreateParamsSchema = external_exports.object({ label: nonBlankTextSchema3.max(256).optional() }).strict();
15105
- var codexAccountActivateParamsSchema = external_exports.object({ accountId: accountIdSchema }).strict();
15106
- var codexAccountDeleteParamsSchema = external_exports.object({ accountId: accountIdSchema }).strict();
15107
- var codexAccountDeleteResultSchema = external_exports.object({ deletedAccountId: accountIdSchema }).strict();
15108
- var codexAccountMutationResultSchema = external_exports.object({ account: codexAccountSchema }).strict();
15109
- var codexAccountLoginStartParamsSchema = external_exports.object({ accountId: accountIdSchema }).strict();
15110
- var codexAccountLoginStartResultSchema = external_exports.object({
15111
- accountId: accountIdSchema,
15112
- loginId: nonBlankTextSchema3.max(1024),
15113
- verificationUrl: external_exports.string().url().max(16384),
15114
- userCode: nonBlankTextSchema3.max(1024)
15115
- }).strict();
15116
- var codexAccountLoginCancelParamsSchema = external_exports.object({ accountId: accountIdSchema.optional(), loginId: nonBlankTextSchema3.max(1024) }).strict();
15117
- var codexAccountLoginCancelResultSchema = external_exports.object({ cancelled: external_exports.boolean() }).strict();
15118
- var codexAccountLoginCompletedSchema = external_exports.object({
15119
- accountId: accountIdSchema,
15120
- loginId: nonBlankTextSchema3.max(1024),
15121
- success: external_exports.boolean(),
15122
- error: external_exports.string().max(4096).nullable()
15148
+ var codexAccountPhaseSchema = external_exports.enum(["ready", "unavailable"]);
15149
+ var codexAccountListResultSchema = external_exports.object({
15150
+ version: external_exports.literal(2),
15151
+ currentAccountId: accountIdSchema.nullable(),
15152
+ phase: codexAccountPhaseSchema,
15153
+ revision: external_exports.number().int().nonnegative(),
15154
+ instanceId: nonBlankTextSchema3.max(1024).optional(),
15155
+ accounts: external_exports.array(codexAccountSchema).max(1)
15123
15156
  }).strict();
15124
- var codexAccountUsageParamsSchema = external_exports.object({ accountId: accountIdSchema }).strict();
15157
+ var codexAccountUsageParamsSchema = external_exports.object({ accountId: accountIdSchema, refresh: external_exports.boolean().optional() }).strict();
15125
15158
  var codexAccountUsageResultSchema = external_exports.object({
15126
15159
  accountId: accountIdSchema,
15127
15160
  usage: threadUsageSnapshotSchema.nullable(),
15128
- accountCredits: accountCreditsSnapshotSchema.optional()
15129
- }).strict();
15130
- var codexAccountResetCreditConsumeParamsSchema = external_exports.object({
15131
- accountId: accountIdSchema,
15132
- idempotencyKey: external_exports.string().uuid().optional()
15133
- }).strict();
15134
- var codexAccountResetCreditConsumeOutcomeSchema = external_exports.enum([
15135
- "reset",
15136
- "nothingToReset",
15137
- "noCredit",
15138
- "alreadyRedeemed"
15139
- ]);
15140
- var codexAccountResetCreditConsumeResultSchema = external_exports.object({
15141
- accountId: accountIdSchema,
15142
- outcome: codexAccountResetCreditConsumeOutcomeSchema,
15143
- accountCredits: accountCreditsSnapshotSchema.optional()
15161
+ accountCredits: accountCreditsSnapshotSchema.optional(),
15162
+ freshness: external_exports.enum(["live", "cached"]),
15163
+ observedAt: external_exports.string().datetime().nullable()
15144
15164
  }).strict();
15145
15165
 
15146
15166
  // ../../shared-contracts/dist/harness-session-import.js
@@ -18431,6 +18451,7 @@ var AntigravitySession = class {
18431
18451
  }
18432
18452
  const active = {
18433
18453
  command,
18454
+ model: this.#model,
18434
18455
  process: child,
18435
18456
  exited: new Promise((resolve) => child.once("close", () => resolve())),
18436
18457
  questions,
@@ -18599,7 +18620,7 @@ ${line}`).slice(-8e3);
18599
18620
  if (event.step_update.conversation_id !== this.#nativeRef?.nativeSessionId)
18600
18621
  return;
18601
18622
  await this.#handleStep(active, event.step_update);
18602
- const usage = hostUsage(event.step_update.usage, this.#model?.id);
18623
+ const usage = hostUsage(event.step_update.usage, active.model?.id);
18603
18624
  if (usage)
18604
18625
  this.#publishUsage(active, usage);
18605
18626
  this.#ensureContextUsage(active, event.step_update.conversation_id);
@@ -18613,7 +18634,7 @@ ${line}`).slice(-8e3);
18613
18634
  async #handleResult(active, event) {
18614
18635
  if (this.#active !== active)
18615
18636
  return;
18616
- const usage = hostUsage(event.result.usage, this.#model?.id);
18637
+ const usage = hostUsage(event.result.usage, active.model?.id);
18617
18638
  if (usage)
18618
18639
  this.#publishUsage(active, usage);
18619
18640
  this.#ensureContextUsage(active, event.result.conversation_id);
@@ -18685,7 +18706,7 @@ ${line}`).slice(-8e3);
18685
18706
  #ensureContextUsage(active, conversationId) {
18686
18707
  if (active.contextUsagePromise)
18687
18708
  return;
18688
- active.contextUsagePromise = pollAntigravityContextUsage(active.logPath, conversationId, this.#model?.id, () => active.receivedResult || active.cancellationRequested || active.process.exitCode !== null);
18709
+ active.contextUsagePromise = pollAntigravityContextUsage(active.logPath, conversationId, active.model?.id, () => active.receivedResult || active.cancellationRequested || active.process.exitCode !== null);
18689
18710
  }
18690
18711
  async #handleStep(active, step) {
18691
18712
  if (step.step_type === "subagent") {
@@ -18933,12 +18954,6 @@ ${line}`).slice(-8e3);
18933
18954
  return { ok: true, value: { cancellationRequested: true } };
18934
18955
  }
18935
18956
  #selectModel(command) {
18936
- if (this.isActive) {
18937
- return {
18938
- ok: false,
18939
- error: { code: "sessionBusy", message: "Turn is active", retryable: true }
18940
- };
18941
- }
18942
18957
  this.#model = harnessModelRefSchema.parse(command.model);
18943
18958
  const available = antigravityAvailableThinkingOptions(this.#catalog, this.#model);
18944
18959
  if (this.#thinkingOptionId && !available?.some(({ id }) => id === this.#thinkingOptionId)) {
@@ -18949,12 +18964,6 @@ ${line}`).slice(-8e3);
18949
18964
  return { ok: true, value: { completed: true } };
18950
18965
  }
18951
18966
  #selectThinking(command) {
18952
- if (this.isActive) {
18953
- return {
18954
- ok: false,
18955
- error: { code: "sessionBusy", message: "Turn is active", retryable: true }
18956
- };
18957
- }
18958
18967
  const requested = harnessThinkingOptionIdSchema.safeParse(command.thinkingOptionId);
18959
18968
  if (!requested.success) {
18960
18969
  return {
@@ -14527,6 +14527,46 @@ config(en_default());
14527
14527
  // ../../shared-contracts/dist/version.js
14528
14528
  var WORKSPACE_CONTRACT_VERSION = 1;
14529
14529
 
14530
+ // ../../shared-contracts/dist/idle-release.js
14531
+ var IDLE_RELEASE_TIMEOUT_MINUTES_MIN = 5;
14532
+ var IDLE_RELEASE_TIMEOUT_MINUTES_MAX = 1440;
14533
+ var idleReleaseSettingsSchema = external_exports.strictObject({
14534
+ enabled: external_exports.boolean(),
14535
+ timeoutMinutes: external_exports.number().int().min(IDLE_RELEASE_TIMEOUT_MINUTES_MIN).max(IDLE_RELEASE_TIMEOUT_MINUTES_MAX)
14536
+ });
14537
+ var DEFAULT_IDLE_RELEASE_SETTINGS = Object.freeze({
14538
+ enabled: false,
14539
+ timeoutMinutes: 30
14540
+ });
14541
+
14542
+ // ../../shared-contracts/dist/loaded-sessions.js
14543
+ var loadedSessionStateSchema = external_exports.enum([
14544
+ "idle",
14545
+ "running",
14546
+ "busy",
14547
+ "closing",
14548
+ "failed",
14549
+ "blocked"
14550
+ ]);
14551
+ var loadedSessionReasonSchema = external_exports.enum([
14552
+ "none",
14553
+ "disabled",
14554
+ "timeout",
14555
+ "operation",
14556
+ "background",
14557
+ "identity",
14558
+ "persistence",
14559
+ "closeFailed"
14560
+ ]);
14561
+ var loadedSessionsSchema = external_exports.array(external_exports.strictObject({
14562
+ threadId: external_exports.string(),
14563
+ title: external_exports.string(),
14564
+ harnessId: external_exports.string(),
14565
+ state: loadedSessionStateSchema,
14566
+ reason: loadedSessionReasonSchema,
14567
+ inactiveMs: external_exports.number().nonnegative()
14568
+ }));
14569
+
14530
14570
  // ../../shared-contracts/dist/ids.js
14531
14571
  var opaqueIdSchema = external_exports.string().refine((value) => value.trim().length > 0, {
14532
14572
  message: "Identifier must not be empty or whitespace"
@@ -14647,12 +14687,21 @@ var harnessAccountSnapshotSchema = external_exports.object({
14647
14687
  plan: external_exports.string().trim().min(1).max(128).optional(),
14648
14688
  credits: accountCreditsSnapshotSchema
14649
14689
  }).strict();
14650
- var harnessAccountListParamsSchema = external_exports.object({}).strict();
14690
+ var harnessAccountIdentityShape = {
14691
+ harnessId: harnessIdSchema,
14692
+ harnessName: external_exports.string().trim().min(1).max(128)
14693
+ };
14694
+ var harnessAccountSourceSchema = external_exports.object(harnessAccountIdentityShape).strict();
14695
+ var harnessAccountSourceListParamsSchema = external_exports.object({}).strict();
14696
+ var harnessAccountSourceListResultSchema = external_exports.object({ sources: external_exports.array(harnessAccountSourceSchema).max(128) }).strict();
14697
+ var harnessAccountInspectParamsSchema = external_exports.object({ harnessId: harnessIdSchema, refresh: external_exports.boolean().optional() }).strict();
14698
+ var harnessAccountInspectResultSchema = external_exports.object({
14699
+ ...harnessAccountIdentityShape,
14700
+ account: harnessAccountSnapshotSchema.nullable()
14701
+ }).strict();
14702
+ var harnessAccountListParamsSchema = external_exports.object({ refresh: external_exports.boolean().optional() }).strict();
14651
14703
  var harnessAccountListResultSchema = external_exports.object({
14652
- accounts: external_exports.array(harnessAccountSnapshotSchema.extend({
14653
- harnessId: harnessIdSchema,
14654
- harnessName: external_exports.string().min(1)
14655
- })).max(128)
14704
+ accounts: external_exports.array(harnessAccountSnapshotSchema.extend(harnessAccountIdentityShape)).max(128)
14656
14705
  }).strict();
14657
14706
 
14658
14707
  // ../../shared-contracts/dist/json-value.js
@@ -14948,7 +14997,6 @@ var threadInspectionParamsSchema = external_exports.object({
14948
14997
  }).strict();
14949
14998
  var codexThreadInspectionSchema = external_exports.object({
14950
14999
  owner: external_exports.literal("codex"),
14951
- accountId: nonBlankTextSchema2.optional(),
14952
15000
  locked: external_exports.literal(true)
14953
15001
  }).strict();
14954
15002
  var externalThreadInspectionSchema = external_exports.object({
@@ -15090,53 +15138,25 @@ var codexAccountSchema = external_exports.object({
15090
15138
  label: nonBlankTextSchema3.max(256),
15091
15139
  email: external_exports.string().email().max(320).optional(),
15092
15140
  planType: codexAccountPlanTypeSchema.optional(),
15093
- codexHome: nonBlankTextSchema3.max(16384),
15094
- active: external_exports.boolean(),
15095
- isDefault: external_exports.boolean(),
15096
15141
  authKind: codexAccountAuthKindSchema.optional(),
15097
15142
  authIdentity: nonBlankTextSchema3.max(256).optional()
15098
15143
  }).strict();
15099
- var codexAccountListResultSchema = external_exports.object({ accounts: external_exports.array(codexAccountSchema).max(128) }).strict();
15100
- var codexAccountCreateParamsSchema = external_exports.object({ label: nonBlankTextSchema3.max(256).optional() }).strict();
15101
- var codexAccountActivateParamsSchema = external_exports.object({ accountId: accountIdSchema }).strict();
15102
- var codexAccountDeleteParamsSchema = external_exports.object({ accountId: accountIdSchema }).strict();
15103
- var codexAccountDeleteResultSchema = external_exports.object({ deletedAccountId: accountIdSchema }).strict();
15104
- var codexAccountMutationResultSchema = external_exports.object({ account: codexAccountSchema }).strict();
15105
- var codexAccountLoginStartParamsSchema = external_exports.object({ accountId: accountIdSchema }).strict();
15106
- var codexAccountLoginStartResultSchema = external_exports.object({
15107
- accountId: accountIdSchema,
15108
- loginId: nonBlankTextSchema3.max(1024),
15109
- verificationUrl: external_exports.string().url().max(16384),
15110
- userCode: nonBlankTextSchema3.max(1024)
15111
- }).strict();
15112
- var codexAccountLoginCancelParamsSchema = external_exports.object({ accountId: accountIdSchema.optional(), loginId: nonBlankTextSchema3.max(1024) }).strict();
15113
- var codexAccountLoginCancelResultSchema = external_exports.object({ cancelled: external_exports.boolean() }).strict();
15114
- var codexAccountLoginCompletedSchema = external_exports.object({
15115
- accountId: accountIdSchema,
15116
- loginId: nonBlankTextSchema3.max(1024),
15117
- success: external_exports.boolean(),
15118
- error: external_exports.string().max(4096).nullable()
15144
+ var codexAccountPhaseSchema = external_exports.enum(["ready", "unavailable"]);
15145
+ var codexAccountListResultSchema = external_exports.object({
15146
+ version: external_exports.literal(2),
15147
+ currentAccountId: accountIdSchema.nullable(),
15148
+ phase: codexAccountPhaseSchema,
15149
+ revision: external_exports.number().int().nonnegative(),
15150
+ instanceId: nonBlankTextSchema3.max(1024).optional(),
15151
+ accounts: external_exports.array(codexAccountSchema).max(1)
15119
15152
  }).strict();
15120
- var codexAccountUsageParamsSchema = external_exports.object({ accountId: accountIdSchema }).strict();
15153
+ var codexAccountUsageParamsSchema = external_exports.object({ accountId: accountIdSchema, refresh: external_exports.boolean().optional() }).strict();
15121
15154
  var codexAccountUsageResultSchema = external_exports.object({
15122
15155
  accountId: accountIdSchema,
15123
15156
  usage: threadUsageSnapshotSchema.nullable(),
15124
- accountCredits: accountCreditsSnapshotSchema.optional()
15125
- }).strict();
15126
- var codexAccountResetCreditConsumeParamsSchema = external_exports.object({
15127
- accountId: accountIdSchema,
15128
- idempotencyKey: external_exports.string().uuid().optional()
15129
- }).strict();
15130
- var codexAccountResetCreditConsumeOutcomeSchema = external_exports.enum([
15131
- "reset",
15132
- "nothingToReset",
15133
- "noCredit",
15134
- "alreadyRedeemed"
15135
- ]);
15136
- var codexAccountResetCreditConsumeResultSchema = external_exports.object({
15137
- accountId: accountIdSchema,
15138
- outcome: codexAccountResetCreditConsumeOutcomeSchema,
15139
- accountCredits: accountCreditsSnapshotSchema.optional()
15157
+ accountCredits: accountCreditsSnapshotSchema.optional(),
15158
+ freshness: external_exports.enum(["live", "cached"]),
15159
+ observedAt: external_exports.string().datetime().nullable()
15140
15160
  }).strict();
15141
15161
 
15142
15162
  // ../../shared-contracts/dist/harness-session-import.js
@@ -45013,6 +45033,7 @@ async function closeClaudeProcessGroup(child, timeoutMs) {
45013
45033
 
45014
45034
  // dist/sdk-transport.js
45015
45035
  var CLIENT_APP = "codexhost-claude-code-adapter/0.0.0";
45036
+ var SESSION_ENTRYPOINT = "codexhost-sdk";
45016
45037
  var APPROVAL_TITLE_MAX_LENGTH = 120;
45017
45038
  var APPROVAL_DESCRIPTION_MAX_LENGTH = 500;
45018
45039
  var DEFAULT_ABORT_TIMEOUT_MS = 2e3;
@@ -45335,6 +45356,7 @@ var ClaudeSdkTransport = class {
45335
45356
  forwardSubagentText: true,
45336
45357
  env: withNodeRuntimeOnPath({
45337
45358
  ...this.#environment,
45359
+ CLAUDE_CODE_ENTRYPOINT: SESSION_ENTRYPOINT,
45338
45360
  CLAUDE_AGENT_SDK_CLIENT_APP: CLIENT_APP
45339
45361
  }),
45340
45362
  spawnClaudeCodeProcess: (options) => this.#spawn(options)
@@ -46234,6 +46256,7 @@ var ClaudeToolLifecycle = class {
46234
46256
  const fileItem = {
46235
46257
  type: "fileChange",
46236
46258
  itemId: this.#newItemId(),
46259
+ sourceItemIds: [tool.item.itemId],
46237
46260
  changes: [change]
46238
46261
  };
46239
46262
  this.#emit({ type: "item.started", turnId, item: fileItem });
@@ -46984,7 +47007,7 @@ var ClaudeHarnessSession = class {
46984
47007
  return this.#closePromise;
46985
47008
  }
46986
47009
  async #selectModel(command) {
46987
- if (this.#acceptingTurn || this.#active || this.#configurationTask || this.#readingHistory) {
47010
+ if (this.#acceptingTurn || this.#configurationTask || this.#readingHistory) {
46988
47011
  return {
46989
47012
  ok: false,
46990
47013
  error: {
@@ -47042,7 +47065,7 @@ var ClaudeHarnessSession = class {
47042
47065
  }
47043
47066
  }
47044
47067
  async #selectThinking(command) {
47045
- if (this.#acceptingTurn || this.#active || this.#configurationTask || this.#readingHistory) {
47068
+ if (this.#acceptingTurn || this.#configurationTask || this.#readingHistory) {
47046
47069
  return {
47047
47070
  ok: false,
47048
47071
  error: {
@@ -48428,7 +48451,8 @@ var ClaudeCodeAdapter = class {
48428
48451
  #latestPlanLimit = null;
48429
48452
  #accountInspection = null;
48430
48453
  constructor(options = {}, dependencies) {
48431
- this.#pendingSessions = new ClaudePendingSessions(options.environment ?? process.env);
48454
+ const environment = options.environment ?? process.env;
48455
+ this.#pendingSessions = new ClaudePendingSessions(environment);
48432
48456
  this.#closeTimeoutMs = options.closeTimeoutMs ?? DEFAULT_CLOSE_TIMEOUT_MS;
48433
48457
  this.#cancelTimeoutMs = options.cancelTimeoutMs ?? DEFAULT_CANCEL_TIMEOUT_MS;
48434
48458
  if (!Number.isSafeInteger(this.#cancelTimeoutMs) || this.#cancelTimeoutMs <= 0) {
@@ -48829,7 +48853,7 @@ var ClaudeCodeAdapter = class {
48829
48853
 
48830
48854
  // dist/user-shell-environment.js
48831
48855
  import path13 from "node:path";
48832
- import { spawnSync } from "node:child_process";
48856
+ import { execFile as execFile2 } from "node:child_process";
48833
48857
  var ENVIRONMENT_MARKER = Buffer.from("\0CODEXHOST_USER_SHELL_ENV_V1\0");
48834
48858
  var ENVIRONMENT_COMMAND = "printf '\\0CODEXHOST_USER_SHELL_ENV_V1\\0'; /usr/bin/env -0";
48835
48859
  var SHELL_ENVIRONMENT_TIMEOUT_MS = 3e3;
@@ -48866,7 +48890,7 @@ function mergeMissingEnvironment(environment, shellEnvironment) {
48866
48890
  }
48867
48891
  return merged;
48868
48892
  }
48869
- function withUserShellEnvironment(environment, dependencies) {
48893
+ async function withUserShellEnvironment(environment, dependencies) {
48870
48894
  const platform = dependencies?.platform ?? process.platform;
48871
48895
  if (platform === "win32" || !environment.HOME)
48872
48896
  return environment;
@@ -48877,13 +48901,16 @@ function withUserShellEnvironment(environment, dependencies) {
48877
48901
  const cached2 = dependencies ? void 0 : shellEnvironmentCache.get(cacheKey);
48878
48902
  if (cached2)
48879
48903
  return mergeMissingEnvironment(environment, cached2);
48880
- const run = dependencies?.run ?? ((command, arguments_, options) => spawnSync(command, arguments_, {
48881
- ...options,
48882
- encoding: "buffer",
48883
- stdio: ["ignore", "pipe", "ignore"]
48904
+ const run = dependencies?.run ?? ((command, arguments_, options) => new Promise((resolve2) => {
48905
+ const child = execFile2(command, arguments_, {
48906
+ ...options,
48907
+ encoding: "buffer",
48908
+ killSignal: "SIGKILL"
48909
+ }, (error52, stdout) => resolve2({ status: error52 ? 1 : 0, stdout }));
48910
+ child.stdin?.end();
48884
48911
  }));
48885
48912
  try {
48886
- const result = run(shell, ["-ilc", ENVIRONMENT_COMMAND], {
48913
+ const result = await run(shell, ["-ilc", ENVIRONMENT_COMMAND], {
48887
48914
  env: environment,
48888
48915
  maxBuffer: SHELL_ENVIRONMENT_MAX_BYTES,
48889
48916
  timeout: SHELL_ENVIRONMENT_TIMEOUT_MS,
@@ -48902,8 +48929,8 @@ function withUserShellEnvironment(environment, dependencies) {
48902
48929
 
48903
48930
  // dist/plugin.js
48904
48931
  var CLAUDE_CODE_COMMAND_ENV = "CODEXHOST_CLAUDE_COMMAND";
48905
- function createHarnessAdapter(context) {
48906
- const environment = withUserShellEnvironment({ ...context.environment });
48932
+ async function createHarnessAdapter(context) {
48933
+ const environment = await withUserShellEnvironment({ ...context.environment });
48907
48934
  if (context.platform === "darwin" && context.managedRemoteHost) {
48908
48935
  return new BrokeredHarnessAdapter({
48909
48936
  commandCatalog: claudeCommandCatalog,