@karlorz/codexhost-cli-darwin-x64 0.13.3-6 → 0.14.0-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 +539 -95
- package/app/console-web.js +879 -73
- package/app/cpa-live-voice-hook.js +605 -37
- package/app/desktop-controller.mjs +94 -9
- package/app/host-runtime.mjs +1662 -642
- package/app/plugins/antigravity/plugin.mjs +113 -13
- package/app/plugins/claude-code/plugin.mjs +429 -26
- package/app/plugins/codebuddy/plugin.mjs +139 -22
- package/app/plugins/codex-usage/plugin.mjs +198 -74
- package/app/plugins/copilot/assets/icon.png +0 -0
- package/app/plugins/copilot/manifest.json +26 -0
- package/app/plugins/copilot/plugin.mjs +34645 -0
- package/app/plugins/cursor-cli/plugin.mjs +20877 -44973
- package/app/plugins/deepseek-harness/plugin.mjs +105 -11
- package/app/plugins/enabled.json +1 -0
- package/app/plugins/grok/plugin.mjs +1073 -214
- package/app/plugins/hermes/plugin.mjs +102 -9
- package/app/plugins/kimi-code/plugin.mjs +98 -7
- package/app/plugins/kiro-cli/plugin.mjs +98 -7
- package/app/plugins/omp/plugin.mjs +2177 -2000
- package/app/plugins/opencode/plugin.mjs +107 -11
- package/app/plugins/pi/plugin.mjs +2554 -2285
- package/app/plugins/qoder/plugin.mjs +105 -11
- package/app/plugins/qoder-cn/plugin.mjs +105 -11
- package/app/plugins/workbuddy/plugin.mjs +400 -46
- package/app/plugins/zcode/plugin.mjs +106 -11
- package/app/renderer-extension.js +2717 -1237
- package/bin/codexhost +0 -0
- package/libexec/codexhost-shim +0 -0
- package/libexec/codexhost-updater +0 -0
- package/package.json +1 -1
|
@@ -22,10 +22,13 @@ function usageSessionTitle(value) {
|
|
|
22
22
|
return void 0;
|
|
23
23
|
if (normalized.length <= MAX_SESSION_TITLE_LENGTH)
|
|
24
24
|
return normalized;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
25
|
+
let title = "";
|
|
26
|
+
for (const character of normalized) {
|
|
27
|
+
if (title.length + character.length >= MAX_SESSION_TITLE_LENGTH)
|
|
28
|
+
break;
|
|
29
|
+
title += character;
|
|
30
|
+
}
|
|
31
|
+
return `${title.trimEnd()}…`;
|
|
29
32
|
}
|
|
30
33
|
function sessionIdOk(value) {
|
|
31
34
|
return typeof value === "string" && value.length > 0 && value.length <= MAX_SESSION_ID_LENGTH;
|
|
@@ -14845,10 +14848,19 @@ var model = external_exports.string().min(1).max(512);
|
|
|
14845
14848
|
var project = external_exports.string().min(1).max(4096);
|
|
14846
14849
|
var usageStatisticsParamsSchema = external_exports.strictObject({
|
|
14847
14850
|
range: external_exports.enum(USAGE_STATISTICS_RANGES),
|
|
14851
|
+
/** Display timezone for ranges, dates and hourly buckets; omitted means the Host's local zone. */
|
|
14852
|
+
timeZone: external_exports.string().min(1).max(128).refine((value) => {
|
|
14853
|
+
try {
|
|
14854
|
+
new Intl.DateTimeFormat("en", { timeZone: value });
|
|
14855
|
+
return true;
|
|
14856
|
+
} catch {
|
|
14857
|
+
return false;
|
|
14858
|
+
}
|
|
14859
|
+
}, "Unsupported usage statistics timezone").optional(),
|
|
14848
14860
|
harness: harness.optional(),
|
|
14849
14861
|
model: model.nullable().optional(),
|
|
14850
14862
|
project: project.nullable().optional(),
|
|
14851
|
-
/** One
|
|
14863
|
+
/** One date in the query timezone inside the range. */
|
|
14852
14864
|
date: localDate.optional()
|
|
14853
14865
|
});
|
|
14854
14866
|
var usageStatisticsTotalsSchema = external_exports.strictObject({
|
|
@@ -14884,7 +14896,7 @@ var usageStatisticsSessionSchema = external_exports.strictObject({
|
|
|
14884
14896
|
});
|
|
14885
14897
|
var usageStatisticsResultSchema = external_exports.strictObject({
|
|
14886
14898
|
range: external_exports.enum(USAGE_STATISTICS_RANGES),
|
|
14887
|
-
/** First
|
|
14899
|
+
/** First date in the query timezone (Host local when omitted); null for all time. */
|
|
14888
14900
|
from: localDate.nullable(),
|
|
14889
14901
|
to: localDate,
|
|
14890
14902
|
/** The filters these figures apply, echoed so a late answer to older filters is recognised. */
|
|
@@ -14924,7 +14936,7 @@ var usageStatisticsResultSchema = external_exports.strictObject({
|
|
|
14924
14936
|
totals: usageStatisticsTotalsSchema,
|
|
14925
14937
|
/** Each date and Harness of the range: every filter except the day. */
|
|
14926
14938
|
daily: external_exports.array(external_exports.strictObject({ date: localDate, harness, ...totals })).max(2e5),
|
|
14927
|
-
/**
|
|
14939
|
+
/** Weekday (0 = Sunday) and hour in the query timezone, all filters applied. */
|
|
14928
14940
|
hourly: external_exports.array(external_exports.strictObject({
|
|
14929
14941
|
weekday: external_exports.number().int().min(0).max(6),
|
|
14930
14942
|
hour: external_exports.number().int().min(0).max(23),
|
|
@@ -15015,8 +15027,12 @@ var CONSOLE_HOST_METHODS = Object.freeze([
|
|
|
15015
15027
|
"codexhost/harness/display-settings/set",
|
|
15016
15028
|
"codexhost/harness/inspect",
|
|
15017
15029
|
"codexhost/harness/installation",
|
|
15030
|
+
"codexhost/harness/installation/start",
|
|
15031
|
+
"codexhost/harness/installation/status",
|
|
15018
15032
|
"codexhost/harness/launch-settings/get",
|
|
15019
15033
|
"codexhost/harness/launch-settings/set",
|
|
15034
|
+
"codexhost/harness/grok-computer-use/get",
|
|
15035
|
+
"codexhost/harness/grok-computer-use/set",
|
|
15020
15036
|
"codexhost/harness/web-ui/open",
|
|
15021
15037
|
"codexhost/harness/accounts/sources",
|
|
15022
15038
|
"codexhost/harness/accounts/list",
|
|
@@ -15090,7 +15106,18 @@ var threadManualCompactionStartedSchema = external_exports.strictObject({
|
|
|
15090
15106
|
var nonNegativeSafeIntegerSchema = external_exports.number().int().safe().nonnegative();
|
|
15091
15107
|
var finiteNonNegativeNumberSchema = external_exports.number().finite().nonnegative();
|
|
15092
15108
|
var cacheHitRatePercentSchema = external_exports.number().finite().min(0).max(100);
|
|
15109
|
+
var indicatorTextSchema = (maximum) => harnessLocalizedTextSchema.refine((entries) => Object.values(entries).every((text2) => text2.length <= maximum));
|
|
15110
|
+
var composerIndicatorsSchema = external_exports.array(external_exports.object({
|
|
15111
|
+
kind: external_exports.literal("countdown"),
|
|
15112
|
+
id: external_exports.string().min(1).max(64),
|
|
15113
|
+
expiresAtUnix: nonNegativeSafeIntegerSchema,
|
|
15114
|
+
label: indicatorTextSchema(256).optional(),
|
|
15115
|
+
tooltip: indicatorTextSchema(1024).optional()
|
|
15116
|
+
}).strict()).max(2).refine((entries) => new Set(entries.map(({ id }) => id)).size === entries.length, {
|
|
15117
|
+
message: "Composer indicator IDs must be unique"
|
|
15118
|
+
});
|
|
15093
15119
|
var threadUsageSnapshotSchema = external_exports.object({
|
|
15120
|
+
composerIndicators: composerIndicatorsSchema.optional(),
|
|
15094
15121
|
inputTokens: nonNegativeSafeIntegerSchema.optional(),
|
|
15095
15122
|
cachedInputTokens: nonNegativeSafeIntegerSchema.optional(),
|
|
15096
15123
|
cacheWriteInputTokens: nonNegativeSafeIntegerSchema.optional(),
|
|
@@ -15498,7 +15525,9 @@ var harnessSessionCapabilitiesSchema = external_exports.object({
|
|
|
15498
15525
|
}).strict().optional(),
|
|
15499
15526
|
autonomousTurns: external_exports.object({
|
|
15500
15527
|
observe: external_exports.boolean()
|
|
15501
|
-
}).strict().optional()
|
|
15528
|
+
}).strict().optional(),
|
|
15529
|
+
/** True only when `turn.steer` delivers input into the active Turn through a native primitive. */
|
|
15530
|
+
steer: external_exports.boolean().optional()
|
|
15502
15531
|
}).strict();
|
|
15503
15532
|
var harnessConfigurationStateSchema = external_exports.object({
|
|
15504
15533
|
effectiveModel: harnessModelRefSchema.optional(),
|
|
@@ -15545,7 +15574,9 @@ var harnessInspectionSchema = external_exports.union([
|
|
|
15545
15574
|
var harnessInspectParamsSchema = external_exports.object({
|
|
15546
15575
|
harnessId: harnessIdSchema,
|
|
15547
15576
|
cwd: nonBlankTextSchema2.max(16384).optional(),
|
|
15548
|
-
refresh: external_exports.boolean().optional()
|
|
15577
|
+
refresh: external_exports.boolean().optional(),
|
|
15578
|
+
/** `availability` asks only whether the Harness can run; see `InspectHarnessInput.purpose`. */
|
|
15579
|
+
purpose: external_exports.literal("availability").optional()
|
|
15549
15580
|
}).strict();
|
|
15550
15581
|
var harnessWebUiOpenParamsSchema = external_exports.object({
|
|
15551
15582
|
harnessId: harnessIdSchema
|
|
@@ -15628,6 +15659,15 @@ var threadOwnershipListResultSchema = external_exports.object({
|
|
|
15628
15659
|
seen.add(thread.threadId);
|
|
15629
15660
|
}
|
|
15630
15661
|
});
|
|
15662
|
+
var threadSteeringInspectParamsSchema = external_exports.object({
|
|
15663
|
+
threadId: hostThreadIdSchema,
|
|
15664
|
+
/** The text about to be steered; a Harness command always stops and restarts. */
|
|
15665
|
+
text: external_exports.string().optional()
|
|
15666
|
+
}).strict();
|
|
15667
|
+
var threadSteerDeliverySchema = external_exports.enum(["activeTurn", "newTurn"]);
|
|
15668
|
+
var threadSteeringInspectResultSchema = external_exports.object({
|
|
15669
|
+
delivery: external_exports.enum(["official", "activeTurn", "newTurn"])
|
|
15670
|
+
}).strict();
|
|
15631
15671
|
|
|
15632
15672
|
// ../../shared-contracts/dist/harness-plugins.js
|
|
15633
15673
|
var HARNESS_PLUGIN_MANIFEST_MAX_BYTES = 32 * 1024;
|
|
@@ -15719,6 +15759,26 @@ var harnessLaunchSettingsSchema = external_exports.object({
|
|
|
15719
15759
|
restartRequired: external_exports.boolean()
|
|
15720
15760
|
}).strict();
|
|
15721
15761
|
|
|
15762
|
+
// ../../shared-contracts/dist/grok-computer-use.js
|
|
15763
|
+
var grokComputerUseGetSchema = external_exports.object({}).strict();
|
|
15764
|
+
var grokComputerUseSetSchema = external_exports.object({
|
|
15765
|
+
enabled: external_exports.boolean().optional(),
|
|
15766
|
+
browser: external_exports.boolean().optional()
|
|
15767
|
+
}).strict().refine((value) => value.enabled !== void 0 || value.browser !== void 0, {
|
|
15768
|
+
message: "Expected enabled or browser"
|
|
15769
|
+
});
|
|
15770
|
+
var grokComputerUseSettingsSchema = external_exports.object({
|
|
15771
|
+
enabled: external_exports.boolean(),
|
|
15772
|
+
available: external_exports.boolean(),
|
|
15773
|
+
unavailableReason: external_exports.string().min(1).max(500).optional(),
|
|
15774
|
+
browser: external_exports.boolean().optional(),
|
|
15775
|
+
browserFilesPresent: external_exports.boolean().optional(),
|
|
15776
|
+
browserAvailable: external_exports.boolean().optional(),
|
|
15777
|
+
browserUnavailableReason: external_exports.string().min(1).max(500).optional(),
|
|
15778
|
+
applyFailed: external_exports.boolean().optional(),
|
|
15779
|
+
applyError: external_exports.string().min(1).max(500).optional()
|
|
15780
|
+
}).strict();
|
|
15781
|
+
|
|
15722
15782
|
// ../../shared-contracts/dist/harness-installation.js
|
|
15723
15783
|
var harnessInstallationParamsSchema = external_exports.object({
|
|
15724
15784
|
harnessId: harnessIdSchema,
|
|
@@ -15729,6 +15789,10 @@ var harnessInstallationStateSchema = external_exports.object({
|
|
|
15729
15789
|
latestVersion: external_exports.string().min(1).max(128),
|
|
15730
15790
|
updateAvailable: external_exports.boolean(),
|
|
15731
15791
|
canUpdate: external_exports.boolean(),
|
|
15792
|
+
/** Defaults to CLI; some Harnesses ship only inside a desktop application. */
|
|
15793
|
+
versionKind: external_exports.enum(["cli", "application"]).optional(),
|
|
15794
|
+
/** Official download opened by the user; does not imply an automatic installation. */
|
|
15795
|
+
manualUpdateUrl: external_exports.url().max(2048).refine((value) => /^https:\/\/[^/?#@]+(?:[/?#]|$)/iu.test(value), "Manual updates require a credential-free HTTPS URL").optional(),
|
|
15732
15796
|
// Adapter-owned diagnostic text; UI uses messageCode rather than displaying it verbatim.
|
|
15733
15797
|
message: external_exports.string().max(2048).optional(),
|
|
15734
15798
|
messageCode: external_exports.string().min(1).max(128).optional(),
|
|
@@ -15736,6 +15800,20 @@ var harnessInstallationStateSchema = external_exports.object({
|
|
|
15736
15800
|
notice: harnessLocalizedTextSchema.optional(),
|
|
15737
15801
|
latestVersionKind: external_exports.enum(["unknown", "tracking-branch"]).optional()
|
|
15738
15802
|
}).strict();
|
|
15803
|
+
var harnessInstallationTaskParamsSchema = external_exports.object({ taskId: external_exports.string().uuid() }).strict();
|
|
15804
|
+
var harnessInstallationTaskSchema = external_exports.discriminatedUnion("status", [
|
|
15805
|
+
external_exports.object({ taskId: external_exports.string().uuid(), status: external_exports.literal("running") }).strict(),
|
|
15806
|
+
external_exports.object({
|
|
15807
|
+
taskId: external_exports.string().uuid(),
|
|
15808
|
+
status: external_exports.literal("succeeded"),
|
|
15809
|
+
result: harnessInstallationStateSchema
|
|
15810
|
+
}).strict(),
|
|
15811
|
+
external_exports.object({
|
|
15812
|
+
taskId: external_exports.string().uuid(),
|
|
15813
|
+
status: external_exports.literal("failed"),
|
|
15814
|
+
error: external_exports.object({ code: external_exports.number().int(), message: external_exports.string().min(1).max(2048) }).strict()
|
|
15815
|
+
}).strict()
|
|
15816
|
+
]);
|
|
15739
15817
|
|
|
15740
15818
|
// ../../shared-contracts/dist/codex-accounts.js
|
|
15741
15819
|
var accountIdSchema = external_exports.string().min(1).max(256).regex(/^[A-Za-z0-9._~-]+$/u);
|
|
@@ -16267,6 +16345,18 @@ function sanitizeDiagnosticTail(value) {
|
|
|
16267
16345
|
return redacted.length <= DIAGNOSTIC_TAIL_MAX_LENGTH ? redacted : redacted.slice(-DIAGNOSTIC_TAIL_MAX_LENGTH);
|
|
16268
16346
|
}
|
|
16269
16347
|
|
|
16348
|
+
// ../../harness-adapter/dist/steer.js
|
|
16349
|
+
function unsupportedSteer(harnessLabel) {
|
|
16350
|
+
return {
|
|
16351
|
+
ok: false,
|
|
16352
|
+
error: {
|
|
16353
|
+
code: "unsupported",
|
|
16354
|
+
message: `${harnessLabel} cannot steer an active Turn natively`,
|
|
16355
|
+
retryable: false
|
|
16356
|
+
}
|
|
16357
|
+
};
|
|
16358
|
+
}
|
|
16359
|
+
|
|
16270
16360
|
// ../../harness-adapter/dist/usage.js
|
|
16271
16361
|
var tokenFields = [
|
|
16272
16362
|
"inputTokens",
|
|
@@ -16294,6 +16384,7 @@ var usageFields = /* @__PURE__ */ new Set([
|
|
|
16294
16384
|
...safeIntegerFields,
|
|
16295
16385
|
...percentFields,
|
|
16296
16386
|
"sessionCacheUsage",
|
|
16387
|
+
"composerIndicators",
|
|
16297
16388
|
"totalCostUsd",
|
|
16298
16389
|
"totalCredits",
|
|
16299
16390
|
"contextUsagePercent",
|
|
@@ -16316,6 +16407,7 @@ function parseHostUsage(value) {
|
|
|
16316
16407
|
throw new Error(`Harness Usage contains unknown field '${key}'`);
|
|
16317
16408
|
}
|
|
16318
16409
|
}
|
|
16410
|
+
const indicators = value.composerIndicators === void 0 ? {} : { composerIndicators: composerIndicatorsSchema.parse(value.composerIndicators) };
|
|
16319
16411
|
for (const field2 of [
|
|
16320
16412
|
"totalCredits",
|
|
16321
16413
|
"contextUsagePercent",
|
|
@@ -16386,9 +16478,9 @@ function parseHostUsage(value) {
|
|
|
16386
16478
|
if (value.costSource !== "publicPrice") {
|
|
16387
16479
|
throw new Error("Harness Usage 'unpricedModels' must be provided with a 'publicPrice' cost");
|
|
16388
16480
|
}
|
|
16389
|
-
return { ...value, unpricedModels: [...models] };
|
|
16481
|
+
return { ...value, ...indicators, unpricedModels: [...models] };
|
|
16390
16482
|
}
|
|
16391
|
-
return { ...value };
|
|
16483
|
+
return { ...value, ...indicators };
|
|
16392
16484
|
}
|
|
16393
16485
|
var requestTokenFields = [
|
|
16394
16486
|
"inputTokens",
|
|
@@ -19496,6 +19588,7 @@ async function readHistory(transport, snapshot, events = []) {
|
|
|
19496
19588
|
|
|
19497
19589
|
// dist/capabilities.js
|
|
19498
19590
|
var ZCODE_CAPABILITIES = {
|
|
19591
|
+
steer: false,
|
|
19499
19592
|
configuration: {
|
|
19500
19593
|
selectModel: true,
|
|
19501
19594
|
selectThinkingOption: true,
|
|
@@ -19670,6 +19763,8 @@ var ZcodeSession = class {
|
|
|
19670
19763
|
if (this.#closed || this.#faulted)
|
|
19671
19764
|
return failure("invalidState", "ZCode session is closed");
|
|
19672
19765
|
try {
|
|
19766
|
+
if (command.type === "turn.steer")
|
|
19767
|
+
return unsupportedSteer("ZCode");
|
|
19673
19768
|
if (command.type === "turn.start") {
|
|
19674
19769
|
if (!hostTurnIdSchema.safeParse(command.turnId).success || !command.input.length || command.input.some((item) => item.type !== "text") || !command.input.some((item) => item.text.trim()))
|
|
19675
19770
|
return failure("invalidRequest", "ZCode requires nonempty text and a turn ID");
|