@codexhost/cli-win32-arm64 0.13.2 → 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 +94 -8
- package/app/console-web.js +537 -146
- package/app/desktop-controller.mjs +108 -12
- package/app/host-runtime.mjs +847 -235
- package/app/plugins/antigravity/plugin.mjs +143 -20
- package/app/plugins/claude-code/plugin.mjs +601 -71
- package/app/plugins/codebuddy/plugin.mjs +227 -30
- package/app/plugins/codex-usage/plugin.mjs +212 -77
- 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 +20805 -44862
- package/app/plugins/deepseek-harness/manifest.json +2 -2
- package/app/plugins/deepseek-harness/plugin.mjs +202 -21
- package/app/plugins/enabled.json +1 -0
- package/app/plugins/grok/plugin.mjs +278 -29
- package/app/plugins/hermes/plugin.mjs +143 -12
- package/app/plugins/kimi-code/plugin.mjs +140 -16
- package/app/plugins/kiro-cli/plugin.mjs +121 -10
- package/app/plugins/omp/plugin.mjs +2200 -2002
- package/app/plugins/opencode/plugin.mjs +137 -16
- package/app/plugins/pi/plugin.mjs +2563 -2282
- package/app/plugins/qoder/plugin.mjs +133 -14
- package/app/plugins/qoder-cn/plugin.mjs +133 -14
- package/app/plugins/workbuddy/plugin.mjs +603 -56
- package/app/plugins/zcode/plugin.mjs +133 -14
- package/app/renderer-extension.js +1171 -529
- package/bin/codexhost.exe +0 -0
- package/libexec/codexhost-node-repl.exe +0 -0
- package/libexec/codexhost-shim.exe +0 -0
- package/libexec/codexhost-updater.exe +0 -0
- package/package.json +1 -1
|
@@ -14873,6 +14873,15 @@ var harnessDisplaySetSchema = external_exports.strictObject({
|
|
|
14873
14873
|
initializeOnly: external_exports.boolean().optional()
|
|
14874
14874
|
});
|
|
14875
14875
|
|
|
14876
|
+
// packages/shared-contracts/dist/harness-presentation.js
|
|
14877
|
+
var localeSchema = external_exports.string().max(64).regex(/^[a-z]{2,3}(?:-[A-Za-z0-9]{2,8})*$/u);
|
|
14878
|
+
var displayText = (maximum) => external_exports.string().min(1).max(maximum).refine((text) => text.trim().length > 0);
|
|
14879
|
+
var harnessLocalizationsSchema = external_exports.record(localeSchema, external_exports.object({
|
|
14880
|
+
label: displayText(256).optional(),
|
|
14881
|
+
description: displayText(1024).optional()
|
|
14882
|
+
}).strict()).refine((entries) => Object.keys(entries).length <= 16, "Too many locales");
|
|
14883
|
+
var harnessLocalizedTextSchema = external_exports.record(localeSchema, displayText(4096)).refine((entries) => typeof entries.en === "string", "English fallback is required").refine((entries) => Object.keys(entries).length <= 16, "Too many locales");
|
|
14884
|
+
|
|
14876
14885
|
// packages/shared-contracts/dist/model-price-overrides.js
|
|
14877
14886
|
var usdPerMillionTokens = external_exports.number().finite().nonnegative();
|
|
14878
14887
|
var modelPriceOverrideSchema = external_exports.strictObject({
|
|
@@ -14922,10 +14931,19 @@ var model = external_exports.string().min(1).max(512);
|
|
|
14922
14931
|
var project = external_exports.string().min(1).max(4096);
|
|
14923
14932
|
var usageStatisticsParamsSchema = external_exports.strictObject({
|
|
14924
14933
|
range: external_exports.enum(USAGE_STATISTICS_RANGES),
|
|
14934
|
+
/** Display timezone for ranges, dates and hourly buckets; omitted means the Host's local zone. */
|
|
14935
|
+
timeZone: external_exports.string().min(1).max(128).refine((value) => {
|
|
14936
|
+
try {
|
|
14937
|
+
new Intl.DateTimeFormat("en", { timeZone: value });
|
|
14938
|
+
return true;
|
|
14939
|
+
} catch {
|
|
14940
|
+
return false;
|
|
14941
|
+
}
|
|
14942
|
+
}, "Unsupported usage statistics timezone").optional(),
|
|
14925
14943
|
harness: harness.optional(),
|
|
14926
14944
|
model: model.nullable().optional(),
|
|
14927
14945
|
project: project.nullable().optional(),
|
|
14928
|
-
/** One
|
|
14946
|
+
/** One date in the query timezone inside the range. */
|
|
14929
14947
|
date: localDate.optional()
|
|
14930
14948
|
});
|
|
14931
14949
|
var usageStatisticsTotalsSchema = external_exports.strictObject({
|
|
@@ -14961,7 +14979,7 @@ var usageStatisticsSessionSchema = external_exports.strictObject({
|
|
|
14961
14979
|
});
|
|
14962
14980
|
var usageStatisticsResultSchema = external_exports.strictObject({
|
|
14963
14981
|
range: external_exports.enum(USAGE_STATISTICS_RANGES),
|
|
14964
|
-
/** First
|
|
14982
|
+
/** First date in the query timezone (Host local when omitted); null for all time. */
|
|
14965
14983
|
from: localDate.nullable(),
|
|
14966
14984
|
to: localDate,
|
|
14967
14985
|
/** The filters these figures apply, echoed so a late answer to older filters is recognised. */
|
|
@@ -15001,7 +15019,7 @@ var usageStatisticsResultSchema = external_exports.strictObject({
|
|
|
15001
15019
|
totals: usageStatisticsTotalsSchema,
|
|
15002
15020
|
/** Each date and Harness of the range: every filter except the day. */
|
|
15003
15021
|
daily: external_exports.array(external_exports.strictObject({ date: localDate, harness, ...totals })).max(2e5),
|
|
15004
|
-
/**
|
|
15022
|
+
/** Weekday (0 = Sunday) and hour in the query timezone, all filters applied. */
|
|
15005
15023
|
hourly: external_exports.array(external_exports.strictObject({
|
|
15006
15024
|
weekday: external_exports.number().int().min(0).max(6),
|
|
15007
15025
|
hour: external_exports.number().int().min(0).max(23),
|
|
@@ -15061,6 +15079,8 @@ var CONSOLE_HOST_METHODS = Object.freeze([
|
|
|
15061
15079
|
"codexhost/harness/display-settings/set",
|
|
15062
15080
|
"codexhost/harness/inspect",
|
|
15063
15081
|
"codexhost/harness/installation",
|
|
15082
|
+
"codexhost/harness/installation/start",
|
|
15083
|
+
"codexhost/harness/installation/status",
|
|
15064
15084
|
"codexhost/harness/launch-settings/get",
|
|
15065
15085
|
"codexhost/harness/launch-settings/set",
|
|
15066
15086
|
"codexhost/harness/web-ui/open",
|
|
@@ -15136,7 +15156,18 @@ var threadManualCompactionStartedSchema = external_exports.strictObject({
|
|
|
15136
15156
|
var nonNegativeSafeIntegerSchema = external_exports.number().int().safe().nonnegative();
|
|
15137
15157
|
var finiteNonNegativeNumberSchema = external_exports.number().finite().nonnegative();
|
|
15138
15158
|
var cacheHitRatePercentSchema = external_exports.number().finite().min(0).max(100);
|
|
15159
|
+
var indicatorTextSchema = (maximum) => harnessLocalizedTextSchema.refine((entries) => Object.values(entries).every((text) => text.length <= maximum));
|
|
15160
|
+
var composerIndicatorsSchema = external_exports.array(external_exports.object({
|
|
15161
|
+
kind: external_exports.literal("countdown"),
|
|
15162
|
+
id: external_exports.string().min(1).max(64),
|
|
15163
|
+
expiresAtUnix: nonNegativeSafeIntegerSchema,
|
|
15164
|
+
label: indicatorTextSchema(256).optional(),
|
|
15165
|
+
tooltip: indicatorTextSchema(1024).optional()
|
|
15166
|
+
}).strict()).max(2).refine((entries) => new Set(entries.map(({ id }) => id)).size === entries.length, {
|
|
15167
|
+
message: "Composer indicator IDs must be unique"
|
|
15168
|
+
});
|
|
15139
15169
|
var threadUsageSnapshotSchema = external_exports.object({
|
|
15170
|
+
composerIndicators: composerIndicatorsSchema.optional(),
|
|
15140
15171
|
inputTokens: nonNegativeSafeIntegerSchema.optional(),
|
|
15141
15172
|
cachedInputTokens: nonNegativeSafeIntegerSchema.optional(),
|
|
15142
15173
|
cacheWriteInputTokens: nonNegativeSafeIntegerSchema.optional(),
|
|
@@ -15209,8 +15240,24 @@ var threadUsageSnapshotSchema = external_exports.object({
|
|
|
15209
15240
|
}
|
|
15210
15241
|
});
|
|
15211
15242
|
var usagePercentSchema = external_exports.number().finite().min(0).max(100);
|
|
15243
|
+
var accountCreditsPeriodSchema = external_exports.enum([
|
|
15244
|
+
"weekly",
|
|
15245
|
+
"monthly",
|
|
15246
|
+
"five_hour",
|
|
15247
|
+
"seven_day",
|
|
15248
|
+
"unknown"
|
|
15249
|
+
]);
|
|
15250
|
+
var accountCreditsScopeSchema = external_exports.object({
|
|
15251
|
+
id: external_exports.string().min(1).max(256),
|
|
15252
|
+
label: external_exports.string().min(1).max(256),
|
|
15253
|
+
localizations: harnessLocalizationsSchema.optional()
|
|
15254
|
+
}).strict();
|
|
15212
15255
|
var accountCreditsProductUsageSchema = external_exports.object({
|
|
15213
15256
|
product: external_exports.string().min(1),
|
|
15257
|
+
/** Native period and scope, never inferred from the display name. */
|
|
15258
|
+
periodType: accountCreditsPeriodSchema.optional(),
|
|
15259
|
+
scope: accountCreditsScopeSchema.optional(),
|
|
15260
|
+
localizations: harnessLocalizationsSchema.optional(),
|
|
15214
15261
|
used: external_exports.number().finite().nonnegative().optional(),
|
|
15215
15262
|
// Zero is a real empty cap, not an absent field.
|
|
15216
15263
|
limit: external_exports.number().finite().nonnegative().optional(),
|
|
@@ -15230,9 +15277,11 @@ var accountCreditsSnapshotSchema = external_exports.object({
|
|
|
15230
15277
|
unit: external_exports.string().min(1).max(32).optional(),
|
|
15231
15278
|
/** Native label when the primary limit is scoped to a model or product group. */
|
|
15232
15279
|
label: external_exports.string().min(1).optional(),
|
|
15280
|
+
scope: accountCreditsScopeSchema.optional(),
|
|
15281
|
+
localizations: harnessLocalizationsSchema.optional(),
|
|
15233
15282
|
usedPercent: usagePercentSchema,
|
|
15234
15283
|
resetsAt: external_exports.string().min(1).optional(),
|
|
15235
|
-
periodType:
|
|
15284
|
+
periodType: accountCreditsPeriodSchema,
|
|
15236
15285
|
productUsage: external_exports.array(accountCreditsProductUsageSchema).min(1).optional(),
|
|
15237
15286
|
resetCredits: accountResetCreditsSchema.optional()
|
|
15238
15287
|
}).strict();
|
|
@@ -15243,7 +15292,9 @@ var threadUsageInspectionParamsSchema = external_exports.object({
|
|
|
15243
15292
|
var threadUsageInspectionSchema = external_exports.object({
|
|
15244
15293
|
threadId: hostThreadIdSchema,
|
|
15245
15294
|
usage: threadUsageSnapshotSchema.nullable(),
|
|
15246
|
-
accountCredits: accountCreditsSnapshotSchema.optional()
|
|
15295
|
+
accountCredits: accountCreditsSnapshotSchema.optional(),
|
|
15296
|
+
/** Whether this source can provide cached account quota independently of usage. */
|
|
15297
|
+
accountCreditsSupported: external_exports.boolean().optional()
|
|
15247
15298
|
}).strict();
|
|
15248
15299
|
|
|
15249
15300
|
// packages/shared-contracts/dist/harness-accounts.js
|
|
@@ -15370,7 +15421,8 @@ var harnessPermissionModeSchema = external_exports.object({
|
|
|
15370
15421
|
id: harnessPermissionModeIdSchema,
|
|
15371
15422
|
label: nonBlankTextSchema.max(HARNESS_PERMISSION_MODE_LABEL_MAX_LENGTH),
|
|
15372
15423
|
description: nonBlankTextSchema.max(HARNESS_PERMISSION_MODE_DESCRIPTION_MAX_LENGTH).optional(),
|
|
15373
|
-
dangerous: external_exports.boolean().optional()
|
|
15424
|
+
dangerous: external_exports.boolean().optional(),
|
|
15425
|
+
localizations: harnessLocalizationsSchema.optional()
|
|
15374
15426
|
}).strict();
|
|
15375
15427
|
var harnessPermissionModeCatalogSchema = external_exports.object({
|
|
15376
15428
|
modes: external_exports.array(harnessPermissionModeSchema).min(1).max(HARNESS_PERMISSION_MODE_CATALOG_MAX_LENGTH),
|
|
@@ -15523,7 +15575,9 @@ var harnessSessionCapabilitiesSchema = external_exports.object({
|
|
|
15523
15575
|
}).strict().optional(),
|
|
15524
15576
|
autonomousTurns: external_exports.object({
|
|
15525
15577
|
observe: external_exports.boolean()
|
|
15526
|
-
}).strict().optional()
|
|
15578
|
+
}).strict().optional(),
|
|
15579
|
+
/** True only when `turn.steer` delivers input into the active Turn through a native primitive. */
|
|
15580
|
+
steer: external_exports.boolean().optional()
|
|
15527
15581
|
}).strict();
|
|
15528
15582
|
var harnessConfigurationStateSchema = external_exports.object({
|
|
15529
15583
|
effectiveModel: harnessModelRefSchema.optional(),
|
|
@@ -15570,7 +15624,9 @@ var harnessInspectionSchema = external_exports.union([
|
|
|
15570
15624
|
var harnessInspectParamsSchema = external_exports.object({
|
|
15571
15625
|
harnessId: harnessIdSchema,
|
|
15572
15626
|
cwd: nonBlankTextSchema2.max(16384).optional(),
|
|
15573
|
-
refresh: external_exports.boolean().optional()
|
|
15627
|
+
refresh: external_exports.boolean().optional(),
|
|
15628
|
+
/** `availability` asks only whether the Harness can run; see `InspectHarnessInput.purpose`. */
|
|
15629
|
+
purpose: external_exports.literal("availability").optional()
|
|
15574
15630
|
}).strict();
|
|
15575
15631
|
var harnessWebUiOpenParamsSchema = external_exports.object({
|
|
15576
15632
|
harnessId: harnessIdSchema
|
|
@@ -15653,6 +15709,15 @@ var threadOwnershipListResultSchema = external_exports.object({
|
|
|
15653
15709
|
seen.add(thread.threadId);
|
|
15654
15710
|
}
|
|
15655
15711
|
});
|
|
15712
|
+
var threadSteeringInspectParamsSchema = external_exports.object({
|
|
15713
|
+
threadId: hostThreadIdSchema,
|
|
15714
|
+
/** The text about to be steered; a Harness command always stops and restarts. */
|
|
15715
|
+
text: external_exports.string().optional()
|
|
15716
|
+
}).strict();
|
|
15717
|
+
var threadSteerDeliverySchema = external_exports.enum(["activeTurn", "newTurn"]);
|
|
15718
|
+
var threadSteeringInspectResultSchema = external_exports.object({
|
|
15719
|
+
delivery: external_exports.enum(["official", "activeTurn", "newTurn"])
|
|
15720
|
+
}).strict();
|
|
15656
15721
|
|
|
15657
15722
|
// packages/shared-contracts/dist/harness-plugins.js
|
|
15658
15723
|
var HARNESS_PLUGIN_MANIFEST_MAX_BYTES = 32 * 1024;
|
|
@@ -15754,11 +15819,31 @@ var harnessInstallationStateSchema = external_exports.object({
|
|
|
15754
15819
|
latestVersion: external_exports.string().min(1).max(128),
|
|
15755
15820
|
updateAvailable: external_exports.boolean(),
|
|
15756
15821
|
canUpdate: external_exports.boolean(),
|
|
15822
|
+
/** Defaults to CLI; some Harnesses ship only inside a desktop application. */
|
|
15823
|
+
versionKind: external_exports.enum(["cli", "application"]).optional(),
|
|
15824
|
+
/** Official download opened by the user; does not imply an automatic installation. */
|
|
15825
|
+
manualUpdateUrl: external_exports.url().max(2048).refine((value) => /^https:\/\/[^/?#@]+(?:[/?#]|$)/iu.test(value), "Manual updates require a credential-free HTTPS URL").optional(),
|
|
15757
15826
|
// Adapter-owned diagnostic text; UI uses messageCode rather than displaying it verbatim.
|
|
15758
15827
|
message: external_exports.string().max(2048).optional(),
|
|
15759
15828
|
messageCode: external_exports.string().min(1).max(128).optional(),
|
|
15829
|
+
/** Safe plugin-owned explanation, distinct from raw diagnostic message. */
|
|
15830
|
+
notice: harnessLocalizedTextSchema.optional(),
|
|
15760
15831
|
latestVersionKind: external_exports.enum(["unknown", "tracking-branch"]).optional()
|
|
15761
15832
|
}).strict();
|
|
15833
|
+
var harnessInstallationTaskParamsSchema = external_exports.object({ taskId: external_exports.string().uuid() }).strict();
|
|
15834
|
+
var harnessInstallationTaskSchema = external_exports.discriminatedUnion("status", [
|
|
15835
|
+
external_exports.object({ taskId: external_exports.string().uuid(), status: external_exports.literal("running") }).strict(),
|
|
15836
|
+
external_exports.object({
|
|
15837
|
+
taskId: external_exports.string().uuid(),
|
|
15838
|
+
status: external_exports.literal("succeeded"),
|
|
15839
|
+
result: harnessInstallationStateSchema
|
|
15840
|
+
}).strict(),
|
|
15841
|
+
external_exports.object({
|
|
15842
|
+
taskId: external_exports.string().uuid(),
|
|
15843
|
+
status: external_exports.literal("failed"),
|
|
15844
|
+
error: external_exports.object({ code: external_exports.number().int(), message: external_exports.string().min(1).max(2048) }).strict()
|
|
15845
|
+
}).strict()
|
|
15846
|
+
]);
|
|
15762
15847
|
|
|
15763
15848
|
// packages/shared-contracts/dist/codex-accounts.js
|
|
15764
15849
|
var accountIdSchema = external_exports.string().min(1).max(256).regex(/^[A-Za-z0-9._~-]+$/u);
|
|
@@ -15883,6 +15968,7 @@ var harnessCommandDescriptorSchema = external_exports.object({
|
|
|
15883
15968
|
invocation: commandInvocationSchema,
|
|
15884
15969
|
label: commandLabelSchema,
|
|
15885
15970
|
description: commandDescriptionSchema.optional(),
|
|
15971
|
+
localizations: harnessLocalizationsSchema.optional(),
|
|
15886
15972
|
argumentMode: external_exports.enum(["none", "text"]),
|
|
15887
15973
|
/**
|
|
15888
15974
|
* Native distinction reported by the Harness. Omitted when the Harness does
|
|
@@ -17154,9 +17240,13 @@ function requestManagerFromHookState(value, hostId2) {
|
|
|
17154
17240
|
if (!record2(value)) return null;
|
|
17155
17241
|
const direct = manager(value) ?? manager(value.manager);
|
|
17156
17242
|
if (direct) return direct;
|
|
17157
|
-
if (!hostId2 || typeof value.addManager !== "function" || typeof value.getForHostId !== "function"
|
|
17243
|
+
if (!hostId2 || typeof value.addManager !== "function" || typeof value.getForHostId !== "function")
|
|
17158
17244
|
return null;
|
|
17159
|
-
|
|
17245
|
+
try {
|
|
17246
|
+
return manager(value.getForHostId(hostId2));
|
|
17247
|
+
} catch {
|
|
17248
|
+
return null;
|
|
17249
|
+
}
|
|
17160
17250
|
}
|
|
17161
17251
|
function discoverRendererHosts(root, ancestors = committedReactAncestors, managerFrom = requestManagerFromHookState) {
|
|
17162
17252
|
const editors = [
|
|
@@ -17191,7 +17281,7 @@ function discoverRendererHosts(root, ancestors = committedReactAncestors, manage
|
|
|
17191
17281
|
const value = hook.memoizedState;
|
|
17192
17282
|
const manager = managerFrom(value);
|
|
17193
17283
|
if (manager) managers.add(manager);
|
|
17194
|
-
if (value && typeof value === "object" && "addManager" in value && typeof value.addManager === "function" && "getForHostId" in value && typeof value.getForHostId === "function"
|
|
17284
|
+
if (value && typeof value === "object" && "addManager" in value && typeof value.addManager === "function" && "getForHostId" in value && typeof value.getForHostId === "function") {
|
|
17195
17285
|
registries.add(value);
|
|
17196
17286
|
}
|
|
17197
17287
|
hook = hook.next && typeof hook.next === "object" ? hook.next : null;
|
|
@@ -17206,7 +17296,13 @@ function discoverRendererHosts(root, ancestors = committedReactAncestors, manage
|
|
|
17206
17296
|
}
|
|
17207
17297
|
function resolveRendererHostManager(discovery, hostId2, managerFrom = requestManagerFromHookState) {
|
|
17208
17298
|
if (!hostId2) return null;
|
|
17209
|
-
const candidates = discovery.registries.length ? discovery.registries.
|
|
17299
|
+
const candidates = discovery.registries.length ? discovery.registries.flatMap((registry2) => {
|
|
17300
|
+
try {
|
|
17301
|
+
return [managerFrom(registry2.getForHostId(hostId2))];
|
|
17302
|
+
} catch {
|
|
17303
|
+
return [];
|
|
17304
|
+
}
|
|
17305
|
+
}) : discovery.managers;
|
|
17210
17306
|
const matching = new Set(
|
|
17211
17307
|
candidates.filter(
|
|
17212
17308
|
(manager) => manager && (manager.getHostId?.() ?? manager.requestClient.hostId) === hostId2 && (manager.requestClient.hostId === void 0 || manager.requestClient.hostId === hostId2)
|