@codexhost/cli-darwin-x64 0.13.3 → 0.14.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/app/codexhost-distribution.json +1 -1
- package/app/console-server.mjs +58 -5
- package/app/console-web.js +437 -68
- package/app/desktop-controller.mjs +72 -9
- package/app/host-runtime.mjs +766 -214
- package/app/plugins/antigravity/plugin.mjs +91 -13
- package/app/plugins/claude-code/plugin.mjs +407 -26
- package/app/plugins/codebuddy/plugin.mjs +117 -22
- package/app/plugins/codex-usage/plugin.mjs +176 -74
- package/app/plugins/copilot/assets/icon.png +0 -0
- package/app/plugins/copilot/manifest.json +26 -0
- package/app/plugins/copilot/plugin.mjs +34546 -0
- package/app/plugins/cursor-cli/plugin.mjs +20701 -44819
- package/app/plugins/deepseek-harness/plugin.mjs +83 -11
- package/app/plugins/enabled.json +1 -0
- package/app/plugins/grok/plugin.mjs +214 -24
- package/app/plugins/hermes/plugin.mjs +80 -9
- package/app/plugins/kimi-code/plugin.mjs +76 -7
- package/app/plugins/kiro-cli/plugin.mjs +76 -7
- package/app/plugins/omp/plugin.mjs +2155 -2000
- package/app/plugins/opencode/plugin.mjs +85 -11
- package/app/plugins/pi/plugin.mjs +2547 -2300
- package/app/plugins/qoder/plugin.mjs +83 -11
- package/app/plugins/qoder-cn/plugin.mjs +83 -11
- package/app/plugins/workbuddy/plugin.mjs +378 -46
- package/app/plugins/zcode/plugin.mjs +84 -11
- package/app/renderer-extension.js +834 -163
- package/bin/codexhost +0 -0
- package/libexec/codexhost-shim +0 -0
- package/libexec/codexhost-updater +0 -0
- package/package.json +1 -1
|
@@ -27648,10 +27648,19 @@ var model = external_exports.string().min(1).max(512);
|
|
|
27648
27648
|
var project = external_exports.string().min(1).max(4096);
|
|
27649
27649
|
var usageStatisticsParamsSchema = external_exports.strictObject({
|
|
27650
27650
|
range: external_exports.enum(USAGE_STATISTICS_RANGES),
|
|
27651
|
+
/** Display timezone for ranges, dates and hourly buckets; omitted means the Host's local zone. */
|
|
27652
|
+
timeZone: external_exports.string().min(1).max(128).refine((value) => {
|
|
27653
|
+
try {
|
|
27654
|
+
new Intl.DateTimeFormat("en", { timeZone: value });
|
|
27655
|
+
return true;
|
|
27656
|
+
} catch {
|
|
27657
|
+
return false;
|
|
27658
|
+
}
|
|
27659
|
+
}, "Unsupported usage statistics timezone").optional(),
|
|
27651
27660
|
harness: harness.optional(),
|
|
27652
27661
|
model: model.nullable().optional(),
|
|
27653
27662
|
project: project.nullable().optional(),
|
|
27654
|
-
/** One
|
|
27663
|
+
/** One date in the query timezone inside the range. */
|
|
27655
27664
|
date: localDate.optional()
|
|
27656
27665
|
});
|
|
27657
27666
|
var usageStatisticsTotalsSchema = external_exports.strictObject({
|
|
@@ -27687,7 +27696,7 @@ var usageStatisticsSessionSchema = external_exports.strictObject({
|
|
|
27687
27696
|
});
|
|
27688
27697
|
var usageStatisticsResultSchema = external_exports.strictObject({
|
|
27689
27698
|
range: external_exports.enum(USAGE_STATISTICS_RANGES),
|
|
27690
|
-
/** First
|
|
27699
|
+
/** First date in the query timezone (Host local when omitted); null for all time. */
|
|
27691
27700
|
from: localDate.nullable(),
|
|
27692
27701
|
to: localDate,
|
|
27693
27702
|
/** The filters these figures apply, echoed so a late answer to older filters is recognised. */
|
|
@@ -27727,7 +27736,7 @@ var usageStatisticsResultSchema = external_exports.strictObject({
|
|
|
27727
27736
|
totals: usageStatisticsTotalsSchema,
|
|
27728
27737
|
/** Each date and Harness of the range: every filter except the day. */
|
|
27729
27738
|
daily: external_exports.array(external_exports.strictObject({ date: localDate, harness, ...totals })).max(2e5),
|
|
27730
|
-
/**
|
|
27739
|
+
/** Weekday (0 = Sunday) and hour in the query timezone, all filters applied. */
|
|
27731
27740
|
hourly: external_exports.array(external_exports.strictObject({
|
|
27732
27741
|
weekday: external_exports.number().int().min(0).max(6),
|
|
27733
27742
|
hour: external_exports.number().int().min(0).max(23),
|
|
@@ -27787,6 +27796,8 @@ var CONSOLE_HOST_METHODS = Object.freeze([
|
|
|
27787
27796
|
"codexhost/harness/display-settings/set",
|
|
27788
27797
|
"codexhost/harness/inspect",
|
|
27789
27798
|
"codexhost/harness/installation",
|
|
27799
|
+
"codexhost/harness/installation/start",
|
|
27800
|
+
"codexhost/harness/installation/status",
|
|
27790
27801
|
"codexhost/harness/launch-settings/get",
|
|
27791
27802
|
"codexhost/harness/launch-settings/set",
|
|
27792
27803
|
"codexhost/harness/web-ui/open",
|
|
@@ -27862,7 +27873,18 @@ var threadManualCompactionStartedSchema = external_exports.strictObject({
|
|
|
27862
27873
|
var nonNegativeSafeIntegerSchema = external_exports.number().int().safe().nonnegative();
|
|
27863
27874
|
var finiteNonNegativeNumberSchema = external_exports.number().finite().nonnegative();
|
|
27864
27875
|
var cacheHitRatePercentSchema = external_exports.number().finite().min(0).max(100);
|
|
27876
|
+
var indicatorTextSchema = (maximum) => harnessLocalizedTextSchema.refine((entries) => Object.values(entries).every((text) => text.length <= maximum));
|
|
27877
|
+
var composerIndicatorsSchema = external_exports.array(external_exports.object({
|
|
27878
|
+
kind: external_exports.literal("countdown"),
|
|
27879
|
+
id: external_exports.string().min(1).max(64),
|
|
27880
|
+
expiresAtUnix: nonNegativeSafeIntegerSchema,
|
|
27881
|
+
label: indicatorTextSchema(256).optional(),
|
|
27882
|
+
tooltip: indicatorTextSchema(1024).optional()
|
|
27883
|
+
}).strict()).max(2).refine((entries) => new Set(entries.map(({ id }) => id)).size === entries.length, {
|
|
27884
|
+
message: "Composer indicator IDs must be unique"
|
|
27885
|
+
});
|
|
27865
27886
|
var threadUsageSnapshotSchema = external_exports.object({
|
|
27887
|
+
composerIndicators: composerIndicatorsSchema.optional(),
|
|
27866
27888
|
inputTokens: nonNegativeSafeIntegerSchema.optional(),
|
|
27867
27889
|
cachedInputTokens: nonNegativeSafeIntegerSchema.optional(),
|
|
27868
27890
|
cacheWriteInputTokens: nonNegativeSafeIntegerSchema.optional(),
|
|
@@ -28270,7 +28292,9 @@ var harnessSessionCapabilitiesSchema = external_exports.object({
|
|
|
28270
28292
|
}).strict().optional(),
|
|
28271
28293
|
autonomousTurns: external_exports.object({
|
|
28272
28294
|
observe: external_exports.boolean()
|
|
28273
|
-
}).strict().optional()
|
|
28295
|
+
}).strict().optional(),
|
|
28296
|
+
/** True only when `turn.steer` delivers input into the active Turn through a native primitive. */
|
|
28297
|
+
steer: external_exports.boolean().optional()
|
|
28274
28298
|
}).strict();
|
|
28275
28299
|
var harnessConfigurationStateSchema = external_exports.object({
|
|
28276
28300
|
effectiveModel: harnessModelRefSchema.optional(),
|
|
@@ -28317,7 +28341,9 @@ var harnessInspectionSchema = external_exports.union([
|
|
|
28317
28341
|
var harnessInspectParamsSchema = external_exports.object({
|
|
28318
28342
|
harnessId: harnessIdSchema,
|
|
28319
28343
|
cwd: nonBlankTextSchema2.max(16384).optional(),
|
|
28320
|
-
refresh: external_exports.boolean().optional()
|
|
28344
|
+
refresh: external_exports.boolean().optional(),
|
|
28345
|
+
/** `availability` asks only whether the Harness can run; see `InspectHarnessInput.purpose`. */
|
|
28346
|
+
purpose: external_exports.literal("availability").optional()
|
|
28321
28347
|
}).strict();
|
|
28322
28348
|
var harnessWebUiOpenParamsSchema = external_exports.object({
|
|
28323
28349
|
harnessId: harnessIdSchema
|
|
@@ -28400,6 +28426,15 @@ var threadOwnershipListResultSchema = external_exports.object({
|
|
|
28400
28426
|
seen.add(thread.threadId);
|
|
28401
28427
|
}
|
|
28402
28428
|
});
|
|
28429
|
+
var threadSteeringInspectParamsSchema = external_exports.object({
|
|
28430
|
+
threadId: hostThreadIdSchema,
|
|
28431
|
+
/** The text about to be steered; a Harness command always stops and restarts. */
|
|
28432
|
+
text: external_exports.string().optional()
|
|
28433
|
+
}).strict();
|
|
28434
|
+
var threadSteerDeliverySchema = external_exports.enum(["activeTurn", "newTurn"]);
|
|
28435
|
+
var threadSteeringInspectResultSchema = external_exports.object({
|
|
28436
|
+
delivery: external_exports.enum(["official", "activeTurn", "newTurn"])
|
|
28437
|
+
}).strict();
|
|
28403
28438
|
|
|
28404
28439
|
// ../../shared-contracts/dist/harness-plugins.js
|
|
28405
28440
|
var HARNESS_PLUGIN_MANIFEST_MAX_BYTES = 32 * 1024;
|
|
@@ -28501,6 +28536,10 @@ var harnessInstallationStateSchema = external_exports.object({
|
|
|
28501
28536
|
latestVersion: external_exports.string().min(1).max(128),
|
|
28502
28537
|
updateAvailable: external_exports.boolean(),
|
|
28503
28538
|
canUpdate: external_exports.boolean(),
|
|
28539
|
+
/** Defaults to CLI; some Harnesses ship only inside a desktop application. */
|
|
28540
|
+
versionKind: external_exports.enum(["cli", "application"]).optional(),
|
|
28541
|
+
/** Official download opened by the user; does not imply an automatic installation. */
|
|
28542
|
+
manualUpdateUrl: external_exports.url().max(2048).refine((value) => /^https:\/\/[^/?#@]+(?:[/?#]|$)/iu.test(value), "Manual updates require a credential-free HTTPS URL").optional(),
|
|
28504
28543
|
// Adapter-owned diagnostic text; UI uses messageCode rather than displaying it verbatim.
|
|
28505
28544
|
message: external_exports.string().max(2048).optional(),
|
|
28506
28545
|
messageCode: external_exports.string().min(1).max(128).optional(),
|
|
@@ -28508,6 +28547,20 @@ var harnessInstallationStateSchema = external_exports.object({
|
|
|
28508
28547
|
notice: harnessLocalizedTextSchema.optional(),
|
|
28509
28548
|
latestVersionKind: external_exports.enum(["unknown", "tracking-branch"]).optional()
|
|
28510
28549
|
}).strict();
|
|
28550
|
+
var harnessInstallationTaskParamsSchema = external_exports.object({ taskId: external_exports.string().uuid() }).strict();
|
|
28551
|
+
var harnessInstallationTaskSchema = external_exports.discriminatedUnion("status", [
|
|
28552
|
+
external_exports.object({ taskId: external_exports.string().uuid(), status: external_exports.literal("running") }).strict(),
|
|
28553
|
+
external_exports.object({
|
|
28554
|
+
taskId: external_exports.string().uuid(),
|
|
28555
|
+
status: external_exports.literal("succeeded"),
|
|
28556
|
+
result: harnessInstallationStateSchema
|
|
28557
|
+
}).strict(),
|
|
28558
|
+
external_exports.object({
|
|
28559
|
+
taskId: external_exports.string().uuid(),
|
|
28560
|
+
status: external_exports.literal("failed"),
|
|
28561
|
+
error: external_exports.object({ code: external_exports.number().int(), message: external_exports.string().min(1).max(2048) }).strict()
|
|
28562
|
+
}).strict()
|
|
28563
|
+
]);
|
|
28511
28564
|
|
|
28512
28565
|
// ../../shared-contracts/dist/codex-accounts.js
|
|
28513
28566
|
var accountIdSchema = external_exports.string().min(1).max(256).regex(/^[A-Za-z0-9._~-]+$/u);
|
|
@@ -29261,6 +29314,18 @@ var HarnessOutputChannel = class {
|
|
|
29261
29314
|
}
|
|
29262
29315
|
};
|
|
29263
29316
|
|
|
29317
|
+
// ../../harness-adapter/dist/steer.js
|
|
29318
|
+
function unsupportedSteer(harnessLabel) {
|
|
29319
|
+
return {
|
|
29320
|
+
ok: false,
|
|
29321
|
+
error: {
|
|
29322
|
+
code: "unsupported",
|
|
29323
|
+
message: `${harnessLabel} cannot steer an active Turn natively`,
|
|
29324
|
+
retryable: false
|
|
29325
|
+
}
|
|
29326
|
+
};
|
|
29327
|
+
}
|
|
29328
|
+
|
|
29264
29329
|
// ../../harness-adapter/dist/usage.js
|
|
29265
29330
|
var tokenFields = [
|
|
29266
29331
|
"inputTokens",
|
|
@@ -29288,6 +29353,7 @@ var usageFields = /* @__PURE__ */ new Set([
|
|
|
29288
29353
|
...safeIntegerFields,
|
|
29289
29354
|
...percentFields,
|
|
29290
29355
|
"sessionCacheUsage",
|
|
29356
|
+
"composerIndicators",
|
|
29291
29357
|
"totalCostUsd",
|
|
29292
29358
|
"totalCredits",
|
|
29293
29359
|
"contextUsagePercent",
|
|
@@ -29310,6 +29376,7 @@ function parseHostUsage(value) {
|
|
|
29310
29376
|
throw new Error(`Harness Usage contains unknown field '${key}'`);
|
|
29311
29377
|
}
|
|
29312
29378
|
}
|
|
29379
|
+
const indicators = value.composerIndicators === void 0 ? {} : { composerIndicators: composerIndicatorsSchema.parse(value.composerIndicators) };
|
|
29313
29380
|
for (const field of [
|
|
29314
29381
|
"totalCredits",
|
|
29315
29382
|
"contextUsagePercent",
|
|
@@ -29380,9 +29447,9 @@ function parseHostUsage(value) {
|
|
|
29380
29447
|
if (value.costSource !== "publicPrice") {
|
|
29381
29448
|
throw new Error("Harness Usage 'unpricedModels' must be provided with a 'publicPrice' cost");
|
|
29382
29449
|
}
|
|
29383
|
-
return { ...value, unpricedModels: [...models] };
|
|
29450
|
+
return { ...value, ...indicators, unpricedModels: [...models] };
|
|
29384
29451
|
}
|
|
29385
|
-
return { ...value };
|
|
29452
|
+
return { ...value, ...indicators };
|
|
29386
29453
|
}
|
|
29387
29454
|
var requestTokenFields = [
|
|
29388
29455
|
"inputTokens",
|
|
@@ -52270,6 +52337,8 @@ var QoderSession = class {
|
|
|
52270
52337
|
};
|
|
52271
52338
|
}
|
|
52272
52339
|
switch (command.type) {
|
|
52340
|
+
case "turn.steer":
|
|
52341
|
+
return unsupportedSteer("Qoder");
|
|
52273
52342
|
case "turn.start": {
|
|
52274
52343
|
if (this.#activeTurn) {
|
|
52275
52344
|
return {
|
|
@@ -52980,10 +53049,13 @@ function usageSessionTitle(value) {
|
|
|
52980
53049
|
return void 0;
|
|
52981
53050
|
if (normalized.length <= MAX_SESSION_TITLE_LENGTH)
|
|
52982
53051
|
return normalized;
|
|
52983
|
-
|
|
52984
|
-
|
|
52985
|
-
|
|
52986
|
-
|
|
53052
|
+
let title = "";
|
|
53053
|
+
for (const character of normalized) {
|
|
53054
|
+
if (title.length + character.length >= MAX_SESSION_TITLE_LENGTH)
|
|
53055
|
+
break;
|
|
53056
|
+
title += character;
|
|
53057
|
+
}
|
|
53058
|
+
return `${title.trimEnd()}…`;
|
|
52987
53059
|
}
|
|
52988
53060
|
function sessionIdOk(value) {
|
|
52989
53061
|
return typeof value === "string" && value.length > 0 && value.length <= MAX_SESSION_ID_LENGTH;
|
|
@@ -27245,10 +27245,19 @@ var model = external_exports.string().min(1).max(512);
|
|
|
27245
27245
|
var project = external_exports.string().min(1).max(4096);
|
|
27246
27246
|
var usageStatisticsParamsSchema = external_exports.strictObject({
|
|
27247
27247
|
range: external_exports.enum(USAGE_STATISTICS_RANGES),
|
|
27248
|
+
/** Display timezone for ranges, dates and hourly buckets; omitted means the Host's local zone. */
|
|
27249
|
+
timeZone: external_exports.string().min(1).max(128).refine((value) => {
|
|
27250
|
+
try {
|
|
27251
|
+
new Intl.DateTimeFormat("en", { timeZone: value });
|
|
27252
|
+
return true;
|
|
27253
|
+
} catch {
|
|
27254
|
+
return false;
|
|
27255
|
+
}
|
|
27256
|
+
}, "Unsupported usage statistics timezone").optional(),
|
|
27248
27257
|
harness: harness.optional(),
|
|
27249
27258
|
model: model.nullable().optional(),
|
|
27250
27259
|
project: project.nullable().optional(),
|
|
27251
|
-
/** One
|
|
27260
|
+
/** One date in the query timezone inside the range. */
|
|
27252
27261
|
date: localDate.optional()
|
|
27253
27262
|
});
|
|
27254
27263
|
var usageStatisticsTotalsSchema = external_exports.strictObject({
|
|
@@ -27284,7 +27293,7 @@ var usageStatisticsSessionSchema = external_exports.strictObject({
|
|
|
27284
27293
|
});
|
|
27285
27294
|
var usageStatisticsResultSchema = external_exports.strictObject({
|
|
27286
27295
|
range: external_exports.enum(USAGE_STATISTICS_RANGES),
|
|
27287
|
-
/** First
|
|
27296
|
+
/** First date in the query timezone (Host local when omitted); null for all time. */
|
|
27288
27297
|
from: localDate.nullable(),
|
|
27289
27298
|
to: localDate,
|
|
27290
27299
|
/** The filters these figures apply, echoed so a late answer to older filters is recognised. */
|
|
@@ -27324,7 +27333,7 @@ var usageStatisticsResultSchema = external_exports.strictObject({
|
|
|
27324
27333
|
totals: usageStatisticsTotalsSchema,
|
|
27325
27334
|
/** Each date and Harness of the range: every filter except the day. */
|
|
27326
27335
|
daily: external_exports.array(external_exports.strictObject({ date: localDate, harness, ...totals })).max(2e5),
|
|
27327
|
-
/**
|
|
27336
|
+
/** Weekday (0 = Sunday) and hour in the query timezone, all filters applied. */
|
|
27328
27337
|
hourly: external_exports.array(external_exports.strictObject({
|
|
27329
27338
|
weekday: external_exports.number().int().min(0).max(6),
|
|
27330
27339
|
hour: external_exports.number().int().min(0).max(23),
|
|
@@ -27384,6 +27393,8 @@ var CONSOLE_HOST_METHODS = Object.freeze([
|
|
|
27384
27393
|
"codexhost/harness/display-settings/set",
|
|
27385
27394
|
"codexhost/harness/inspect",
|
|
27386
27395
|
"codexhost/harness/installation",
|
|
27396
|
+
"codexhost/harness/installation/start",
|
|
27397
|
+
"codexhost/harness/installation/status",
|
|
27387
27398
|
"codexhost/harness/launch-settings/get",
|
|
27388
27399
|
"codexhost/harness/launch-settings/set",
|
|
27389
27400
|
"codexhost/harness/web-ui/open",
|
|
@@ -27459,7 +27470,18 @@ var threadManualCompactionStartedSchema = external_exports.strictObject({
|
|
|
27459
27470
|
var nonNegativeSafeIntegerSchema = external_exports.number().int().safe().nonnegative();
|
|
27460
27471
|
var finiteNonNegativeNumberSchema = external_exports.number().finite().nonnegative();
|
|
27461
27472
|
var cacheHitRatePercentSchema = external_exports.number().finite().min(0).max(100);
|
|
27473
|
+
var indicatorTextSchema = (maximum) => harnessLocalizedTextSchema.refine((entries) => Object.values(entries).every((text) => text.length <= maximum));
|
|
27474
|
+
var composerIndicatorsSchema = external_exports.array(external_exports.object({
|
|
27475
|
+
kind: external_exports.literal("countdown"),
|
|
27476
|
+
id: external_exports.string().min(1).max(64),
|
|
27477
|
+
expiresAtUnix: nonNegativeSafeIntegerSchema,
|
|
27478
|
+
label: indicatorTextSchema(256).optional(),
|
|
27479
|
+
tooltip: indicatorTextSchema(1024).optional()
|
|
27480
|
+
}).strict()).max(2).refine((entries) => new Set(entries.map(({ id }) => id)).size === entries.length, {
|
|
27481
|
+
message: "Composer indicator IDs must be unique"
|
|
27482
|
+
});
|
|
27462
27483
|
var threadUsageSnapshotSchema = external_exports.object({
|
|
27484
|
+
composerIndicators: composerIndicatorsSchema.optional(),
|
|
27463
27485
|
inputTokens: nonNegativeSafeIntegerSchema.optional(),
|
|
27464
27486
|
cachedInputTokens: nonNegativeSafeIntegerSchema.optional(),
|
|
27465
27487
|
cacheWriteInputTokens: nonNegativeSafeIntegerSchema.optional(),
|
|
@@ -27867,7 +27889,9 @@ var harnessSessionCapabilitiesSchema = external_exports.object({
|
|
|
27867
27889
|
}).strict().optional(),
|
|
27868
27890
|
autonomousTurns: external_exports.object({
|
|
27869
27891
|
observe: external_exports.boolean()
|
|
27870
|
-
}).strict().optional()
|
|
27892
|
+
}).strict().optional(),
|
|
27893
|
+
/** True only when `turn.steer` delivers input into the active Turn through a native primitive. */
|
|
27894
|
+
steer: external_exports.boolean().optional()
|
|
27871
27895
|
}).strict();
|
|
27872
27896
|
var harnessConfigurationStateSchema = external_exports.object({
|
|
27873
27897
|
effectiveModel: harnessModelRefSchema.optional(),
|
|
@@ -27914,7 +27938,9 @@ var harnessInspectionSchema = external_exports.union([
|
|
|
27914
27938
|
var harnessInspectParamsSchema = external_exports.object({
|
|
27915
27939
|
harnessId: harnessIdSchema,
|
|
27916
27940
|
cwd: nonBlankTextSchema2.max(16384).optional(),
|
|
27917
|
-
refresh: external_exports.boolean().optional()
|
|
27941
|
+
refresh: external_exports.boolean().optional(),
|
|
27942
|
+
/** `availability` asks only whether the Harness can run; see `InspectHarnessInput.purpose`. */
|
|
27943
|
+
purpose: external_exports.literal("availability").optional()
|
|
27918
27944
|
}).strict();
|
|
27919
27945
|
var harnessWebUiOpenParamsSchema = external_exports.object({
|
|
27920
27946
|
harnessId: harnessIdSchema
|
|
@@ -27997,6 +28023,15 @@ var threadOwnershipListResultSchema = external_exports.object({
|
|
|
27997
28023
|
seen.add(thread.threadId);
|
|
27998
28024
|
}
|
|
27999
28025
|
});
|
|
28026
|
+
var threadSteeringInspectParamsSchema = external_exports.object({
|
|
28027
|
+
threadId: hostThreadIdSchema,
|
|
28028
|
+
/** The text about to be steered; a Harness command always stops and restarts. */
|
|
28029
|
+
text: external_exports.string().optional()
|
|
28030
|
+
}).strict();
|
|
28031
|
+
var threadSteerDeliverySchema = external_exports.enum(["activeTurn", "newTurn"]);
|
|
28032
|
+
var threadSteeringInspectResultSchema = external_exports.object({
|
|
28033
|
+
delivery: external_exports.enum(["official", "activeTurn", "newTurn"])
|
|
28034
|
+
}).strict();
|
|
28000
28035
|
|
|
28001
28036
|
// ../../shared-contracts/dist/harness-plugins.js
|
|
28002
28037
|
var HARNESS_PLUGIN_MANIFEST_MAX_BYTES = 32 * 1024;
|
|
@@ -28098,6 +28133,10 @@ var harnessInstallationStateSchema = external_exports.object({
|
|
|
28098
28133
|
latestVersion: external_exports.string().min(1).max(128),
|
|
28099
28134
|
updateAvailable: external_exports.boolean(),
|
|
28100
28135
|
canUpdate: external_exports.boolean(),
|
|
28136
|
+
/** Defaults to CLI; some Harnesses ship only inside a desktop application. */
|
|
28137
|
+
versionKind: external_exports.enum(["cli", "application"]).optional(),
|
|
28138
|
+
/** Official download opened by the user; does not imply an automatic installation. */
|
|
28139
|
+
manualUpdateUrl: external_exports.url().max(2048).refine((value) => /^https:\/\/[^/?#@]+(?:[/?#]|$)/iu.test(value), "Manual updates require a credential-free HTTPS URL").optional(),
|
|
28101
28140
|
// Adapter-owned diagnostic text; UI uses messageCode rather than displaying it verbatim.
|
|
28102
28141
|
message: external_exports.string().max(2048).optional(),
|
|
28103
28142
|
messageCode: external_exports.string().min(1).max(128).optional(),
|
|
@@ -28105,6 +28144,20 @@ var harnessInstallationStateSchema = external_exports.object({
|
|
|
28105
28144
|
notice: harnessLocalizedTextSchema.optional(),
|
|
28106
28145
|
latestVersionKind: external_exports.enum(["unknown", "tracking-branch"]).optional()
|
|
28107
28146
|
}).strict();
|
|
28147
|
+
var harnessInstallationTaskParamsSchema = external_exports.object({ taskId: external_exports.string().uuid() }).strict();
|
|
28148
|
+
var harnessInstallationTaskSchema = external_exports.discriminatedUnion("status", [
|
|
28149
|
+
external_exports.object({ taskId: external_exports.string().uuid(), status: external_exports.literal("running") }).strict(),
|
|
28150
|
+
external_exports.object({
|
|
28151
|
+
taskId: external_exports.string().uuid(),
|
|
28152
|
+
status: external_exports.literal("succeeded"),
|
|
28153
|
+
result: harnessInstallationStateSchema
|
|
28154
|
+
}).strict(),
|
|
28155
|
+
external_exports.object({
|
|
28156
|
+
taskId: external_exports.string().uuid(),
|
|
28157
|
+
status: external_exports.literal("failed"),
|
|
28158
|
+
error: external_exports.object({ code: external_exports.number().int(), message: external_exports.string().min(1).max(2048) }).strict()
|
|
28159
|
+
}).strict()
|
|
28160
|
+
]);
|
|
28108
28161
|
|
|
28109
28162
|
// ../../shared-contracts/dist/codex-accounts.js
|
|
28110
28163
|
var accountIdSchema = external_exports.string().min(1).max(256).regex(/^[A-Za-z0-9._~-]+$/u);
|
|
@@ -29263,6 +29316,18 @@ var HarnessOutputChannel = class {
|
|
|
29263
29316
|
}
|
|
29264
29317
|
};
|
|
29265
29318
|
|
|
29319
|
+
// ../../harness-adapter/dist/steer.js
|
|
29320
|
+
function unsupportedSteer(harnessLabel) {
|
|
29321
|
+
return {
|
|
29322
|
+
ok: false,
|
|
29323
|
+
error: {
|
|
29324
|
+
code: "unsupported",
|
|
29325
|
+
message: `${harnessLabel} cannot steer an active Turn natively`,
|
|
29326
|
+
retryable: false
|
|
29327
|
+
}
|
|
29328
|
+
};
|
|
29329
|
+
}
|
|
29330
|
+
|
|
29266
29331
|
// ../../harness-adapter/dist/usage.js
|
|
29267
29332
|
var tokenFields = [
|
|
29268
29333
|
"inputTokens",
|
|
@@ -29290,6 +29355,7 @@ var usageFields = /* @__PURE__ */ new Set([
|
|
|
29290
29355
|
...safeIntegerFields,
|
|
29291
29356
|
...percentFields,
|
|
29292
29357
|
"sessionCacheUsage",
|
|
29358
|
+
"composerIndicators",
|
|
29293
29359
|
"totalCostUsd",
|
|
29294
29360
|
"totalCredits",
|
|
29295
29361
|
"contextUsagePercent",
|
|
@@ -29312,6 +29378,7 @@ function parseHostUsage(value) {
|
|
|
29312
29378
|
throw new Error(`Harness Usage contains unknown field '${key}'`);
|
|
29313
29379
|
}
|
|
29314
29380
|
}
|
|
29381
|
+
const indicators = value.composerIndicators === void 0 ? {} : { composerIndicators: composerIndicatorsSchema.parse(value.composerIndicators) };
|
|
29315
29382
|
for (const field of [
|
|
29316
29383
|
"totalCredits",
|
|
29317
29384
|
"contextUsagePercent",
|
|
@@ -29382,9 +29449,9 @@ function parseHostUsage(value) {
|
|
|
29382
29449
|
if (value.costSource !== "publicPrice") {
|
|
29383
29450
|
throw new Error("Harness Usage 'unpricedModels' must be provided with a 'publicPrice' cost");
|
|
29384
29451
|
}
|
|
29385
|
-
return { ...value, unpricedModels: [...models] };
|
|
29452
|
+
return { ...value, ...indicators, unpricedModels: [...models] };
|
|
29386
29453
|
}
|
|
29387
|
-
return { ...value };
|
|
29454
|
+
return { ...value, ...indicators };
|
|
29388
29455
|
}
|
|
29389
29456
|
var requestTokenFields = [
|
|
29390
29457
|
"inputTokens",
|
|
@@ -52272,6 +52339,8 @@ var QoderSession = class {
|
|
|
52272
52339
|
};
|
|
52273
52340
|
}
|
|
52274
52341
|
switch (command.type) {
|
|
52342
|
+
case "turn.steer":
|
|
52343
|
+
return unsupportedSteer("Qoder");
|
|
52275
52344
|
case "turn.start": {
|
|
52276
52345
|
if (this.#activeTurn) {
|
|
52277
52346
|
return {
|
|
@@ -52982,10 +53051,13 @@ function usageSessionTitle(value) {
|
|
|
52982
53051
|
return void 0;
|
|
52983
53052
|
if (normalized.length <= MAX_SESSION_TITLE_LENGTH)
|
|
52984
53053
|
return normalized;
|
|
52985
|
-
|
|
52986
|
-
|
|
52987
|
-
|
|
52988
|
-
|
|
53054
|
+
let title = "";
|
|
53055
|
+
for (const character of normalized) {
|
|
53056
|
+
if (title.length + character.length >= MAX_SESSION_TITLE_LENGTH)
|
|
53057
|
+
break;
|
|
53058
|
+
title += character;
|
|
53059
|
+
}
|
|
53060
|
+
return `${title.trimEnd()}…`;
|
|
52989
53061
|
}
|
|
52990
53062
|
function sessionIdOk(value) {
|
|
52991
53063
|
return typeof value === "string" && value.length > 0 && value.length <= MAX_SESSION_ID_LENGTH;
|