@codexhost/cli-darwin-x64 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 +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;
|
|
@@ -14787,6 +14790,15 @@ var harnessDisplaySetSchema = external_exports.strictObject({
|
|
|
14787
14790
|
initializeOnly: external_exports.boolean().optional()
|
|
14788
14791
|
});
|
|
14789
14792
|
|
|
14793
|
+
// ../../shared-contracts/dist/harness-presentation.js
|
|
14794
|
+
var localeSchema = external_exports.string().max(64).regex(/^[a-z]{2,3}(?:-[A-Za-z0-9]{2,8})*$/u);
|
|
14795
|
+
var displayText = (maximum) => external_exports.string().min(1).max(maximum).refine((text2) => text2.trim().length > 0);
|
|
14796
|
+
var harnessLocalizationsSchema = external_exports.record(localeSchema, external_exports.object({
|
|
14797
|
+
label: displayText(256).optional(),
|
|
14798
|
+
description: displayText(1024).optional()
|
|
14799
|
+
}).strict()).refine((entries) => Object.keys(entries).length <= 16, "Too many locales");
|
|
14800
|
+
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");
|
|
14801
|
+
|
|
14790
14802
|
// ../../shared-contracts/dist/model-price-overrides.js
|
|
14791
14803
|
var usdPerMillionTokens = external_exports.number().finite().nonnegative();
|
|
14792
14804
|
var modelPriceOverrideSchema = external_exports.strictObject({
|
|
@@ -14836,10 +14848,19 @@ var model = external_exports.string().min(1).max(512);
|
|
|
14836
14848
|
var project = external_exports.string().min(1).max(4096);
|
|
14837
14849
|
var usageStatisticsParamsSchema = external_exports.strictObject({
|
|
14838
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(),
|
|
14839
14860
|
harness: harness.optional(),
|
|
14840
14861
|
model: model.nullable().optional(),
|
|
14841
14862
|
project: project.nullable().optional(),
|
|
14842
|
-
/** One
|
|
14863
|
+
/** One date in the query timezone inside the range. */
|
|
14843
14864
|
date: localDate.optional()
|
|
14844
14865
|
});
|
|
14845
14866
|
var usageStatisticsTotalsSchema = external_exports.strictObject({
|
|
@@ -14875,7 +14896,7 @@ var usageStatisticsSessionSchema = external_exports.strictObject({
|
|
|
14875
14896
|
});
|
|
14876
14897
|
var usageStatisticsResultSchema = external_exports.strictObject({
|
|
14877
14898
|
range: external_exports.enum(USAGE_STATISTICS_RANGES),
|
|
14878
|
-
/** First
|
|
14899
|
+
/** First date in the query timezone (Host local when omitted); null for all time. */
|
|
14879
14900
|
from: localDate.nullable(),
|
|
14880
14901
|
to: localDate,
|
|
14881
14902
|
/** The filters these figures apply, echoed so a late answer to older filters is recognised. */
|
|
@@ -14915,7 +14936,7 @@ var usageStatisticsResultSchema = external_exports.strictObject({
|
|
|
14915
14936
|
totals: usageStatisticsTotalsSchema,
|
|
14916
14937
|
/** Each date and Harness of the range: every filter except the day. */
|
|
14917
14938
|
daily: external_exports.array(external_exports.strictObject({ date: localDate, harness, ...totals })).max(2e5),
|
|
14918
|
-
/**
|
|
14939
|
+
/** Weekday (0 = Sunday) and hour in the query timezone, all filters applied. */
|
|
14919
14940
|
hourly: external_exports.array(external_exports.strictObject({
|
|
14920
14941
|
weekday: external_exports.number().int().min(0).max(6),
|
|
14921
14942
|
hour: external_exports.number().int().min(0).max(23),
|
|
@@ -14975,6 +14996,8 @@ var CONSOLE_HOST_METHODS = Object.freeze([
|
|
|
14975
14996
|
"codexhost/harness/display-settings/set",
|
|
14976
14997
|
"codexhost/harness/inspect",
|
|
14977
14998
|
"codexhost/harness/installation",
|
|
14999
|
+
"codexhost/harness/installation/start",
|
|
15000
|
+
"codexhost/harness/installation/status",
|
|
14978
15001
|
"codexhost/harness/launch-settings/get",
|
|
14979
15002
|
"codexhost/harness/launch-settings/set",
|
|
14980
15003
|
"codexhost/harness/web-ui/open",
|
|
@@ -15050,7 +15073,18 @@ var threadManualCompactionStartedSchema = external_exports.strictObject({
|
|
|
15050
15073
|
var nonNegativeSafeIntegerSchema = external_exports.number().int().safe().nonnegative();
|
|
15051
15074
|
var finiteNonNegativeNumberSchema = external_exports.number().finite().nonnegative();
|
|
15052
15075
|
var cacheHitRatePercentSchema = external_exports.number().finite().min(0).max(100);
|
|
15076
|
+
var indicatorTextSchema = (maximum) => harnessLocalizedTextSchema.refine((entries) => Object.values(entries).every((text2) => text2.length <= maximum));
|
|
15077
|
+
var composerIndicatorsSchema = external_exports.array(external_exports.object({
|
|
15078
|
+
kind: external_exports.literal("countdown"),
|
|
15079
|
+
id: external_exports.string().min(1).max(64),
|
|
15080
|
+
expiresAtUnix: nonNegativeSafeIntegerSchema,
|
|
15081
|
+
label: indicatorTextSchema(256).optional(),
|
|
15082
|
+
tooltip: indicatorTextSchema(1024).optional()
|
|
15083
|
+
}).strict()).max(2).refine((entries) => new Set(entries.map(({ id }) => id)).size === entries.length, {
|
|
15084
|
+
message: "Composer indicator IDs must be unique"
|
|
15085
|
+
});
|
|
15053
15086
|
var threadUsageSnapshotSchema = external_exports.object({
|
|
15087
|
+
composerIndicators: composerIndicatorsSchema.optional(),
|
|
15054
15088
|
inputTokens: nonNegativeSafeIntegerSchema.optional(),
|
|
15055
15089
|
cachedInputTokens: nonNegativeSafeIntegerSchema.optional(),
|
|
15056
15090
|
cacheWriteInputTokens: nonNegativeSafeIntegerSchema.optional(),
|
|
@@ -15123,8 +15157,24 @@ var threadUsageSnapshotSchema = external_exports.object({
|
|
|
15123
15157
|
}
|
|
15124
15158
|
});
|
|
15125
15159
|
var usagePercentSchema = external_exports.number().finite().min(0).max(100);
|
|
15160
|
+
var accountCreditsPeriodSchema = external_exports.enum([
|
|
15161
|
+
"weekly",
|
|
15162
|
+
"monthly",
|
|
15163
|
+
"five_hour",
|
|
15164
|
+
"seven_day",
|
|
15165
|
+
"unknown"
|
|
15166
|
+
]);
|
|
15167
|
+
var accountCreditsScopeSchema = external_exports.object({
|
|
15168
|
+
id: external_exports.string().min(1).max(256),
|
|
15169
|
+
label: external_exports.string().min(1).max(256),
|
|
15170
|
+
localizations: harnessLocalizationsSchema.optional()
|
|
15171
|
+
}).strict();
|
|
15126
15172
|
var accountCreditsProductUsageSchema = external_exports.object({
|
|
15127
15173
|
product: external_exports.string().min(1),
|
|
15174
|
+
/** Native period and scope, never inferred from the display name. */
|
|
15175
|
+
periodType: accountCreditsPeriodSchema.optional(),
|
|
15176
|
+
scope: accountCreditsScopeSchema.optional(),
|
|
15177
|
+
localizations: harnessLocalizationsSchema.optional(),
|
|
15128
15178
|
used: external_exports.number().finite().nonnegative().optional(),
|
|
15129
15179
|
// Zero is a real empty cap, not an absent field.
|
|
15130
15180
|
limit: external_exports.number().finite().nonnegative().optional(),
|
|
@@ -15144,9 +15194,11 @@ var accountCreditsSnapshotSchema = external_exports.object({
|
|
|
15144
15194
|
unit: external_exports.string().min(1).max(32).optional(),
|
|
15145
15195
|
/** Native label when the primary limit is scoped to a model or product group. */
|
|
15146
15196
|
label: external_exports.string().min(1).optional(),
|
|
15197
|
+
scope: accountCreditsScopeSchema.optional(),
|
|
15198
|
+
localizations: harnessLocalizationsSchema.optional(),
|
|
15147
15199
|
usedPercent: usagePercentSchema,
|
|
15148
15200
|
resetsAt: external_exports.string().min(1).optional(),
|
|
15149
|
-
periodType:
|
|
15201
|
+
periodType: accountCreditsPeriodSchema,
|
|
15150
15202
|
productUsage: external_exports.array(accountCreditsProductUsageSchema).min(1).optional(),
|
|
15151
15203
|
resetCredits: accountResetCreditsSchema.optional()
|
|
15152
15204
|
}).strict();
|
|
@@ -15157,7 +15209,9 @@ var threadUsageInspectionParamsSchema = external_exports.object({
|
|
|
15157
15209
|
var threadUsageInspectionSchema = external_exports.object({
|
|
15158
15210
|
threadId: hostThreadIdSchema,
|
|
15159
15211
|
usage: threadUsageSnapshotSchema.nullable(),
|
|
15160
|
-
accountCredits: accountCreditsSnapshotSchema.optional()
|
|
15212
|
+
accountCredits: accountCreditsSnapshotSchema.optional(),
|
|
15213
|
+
/** Whether this source can provide cached account quota independently of usage. */
|
|
15214
|
+
accountCreditsSupported: external_exports.boolean().optional()
|
|
15161
15215
|
}).strict();
|
|
15162
15216
|
|
|
15163
15217
|
// ../../shared-contracts/dist/harness-accounts.js
|
|
@@ -15284,7 +15338,8 @@ var harnessPermissionModeSchema = external_exports.object({
|
|
|
15284
15338
|
id: harnessPermissionModeIdSchema,
|
|
15285
15339
|
label: nonBlankTextSchema.max(HARNESS_PERMISSION_MODE_LABEL_MAX_LENGTH),
|
|
15286
15340
|
description: nonBlankTextSchema.max(HARNESS_PERMISSION_MODE_DESCRIPTION_MAX_LENGTH).optional(),
|
|
15287
|
-
dangerous: external_exports.boolean().optional()
|
|
15341
|
+
dangerous: external_exports.boolean().optional(),
|
|
15342
|
+
localizations: harnessLocalizationsSchema.optional()
|
|
15288
15343
|
}).strict();
|
|
15289
15344
|
var harnessPermissionModeCatalogSchema = external_exports.object({
|
|
15290
15345
|
modes: external_exports.array(harnessPermissionModeSchema).min(1).max(HARNESS_PERMISSION_MODE_CATALOG_MAX_LENGTH),
|
|
@@ -15437,7 +15492,9 @@ var harnessSessionCapabilitiesSchema = external_exports.object({
|
|
|
15437
15492
|
}).strict().optional(),
|
|
15438
15493
|
autonomousTurns: external_exports.object({
|
|
15439
15494
|
observe: external_exports.boolean()
|
|
15440
|
-
}).strict().optional()
|
|
15495
|
+
}).strict().optional(),
|
|
15496
|
+
/** True only when `turn.steer` delivers input into the active Turn through a native primitive. */
|
|
15497
|
+
steer: external_exports.boolean().optional()
|
|
15441
15498
|
}).strict();
|
|
15442
15499
|
var harnessConfigurationStateSchema = external_exports.object({
|
|
15443
15500
|
effectiveModel: harnessModelRefSchema.optional(),
|
|
@@ -15484,7 +15541,9 @@ var harnessInspectionSchema = external_exports.union([
|
|
|
15484
15541
|
var harnessInspectParamsSchema = external_exports.object({
|
|
15485
15542
|
harnessId: harnessIdSchema,
|
|
15486
15543
|
cwd: nonBlankTextSchema2.max(16384).optional(),
|
|
15487
|
-
refresh: external_exports.boolean().optional()
|
|
15544
|
+
refresh: external_exports.boolean().optional(),
|
|
15545
|
+
/** `availability` asks only whether the Harness can run; see `InspectHarnessInput.purpose`. */
|
|
15546
|
+
purpose: external_exports.literal("availability").optional()
|
|
15488
15547
|
}).strict();
|
|
15489
15548
|
var harnessWebUiOpenParamsSchema = external_exports.object({
|
|
15490
15549
|
harnessId: harnessIdSchema
|
|
@@ -15567,6 +15626,15 @@ var threadOwnershipListResultSchema = external_exports.object({
|
|
|
15567
15626
|
seen.add(thread.threadId);
|
|
15568
15627
|
}
|
|
15569
15628
|
});
|
|
15629
|
+
var threadSteeringInspectParamsSchema = external_exports.object({
|
|
15630
|
+
threadId: hostThreadIdSchema,
|
|
15631
|
+
/** The text about to be steered; a Harness command always stops and restarts. */
|
|
15632
|
+
text: external_exports.string().optional()
|
|
15633
|
+
}).strict();
|
|
15634
|
+
var threadSteerDeliverySchema = external_exports.enum(["activeTurn", "newTurn"]);
|
|
15635
|
+
var threadSteeringInspectResultSchema = external_exports.object({
|
|
15636
|
+
delivery: external_exports.enum(["official", "activeTurn", "newTurn"])
|
|
15637
|
+
}).strict();
|
|
15570
15638
|
|
|
15571
15639
|
// ../../shared-contracts/dist/harness-plugins.js
|
|
15572
15640
|
var HARNESS_PLUGIN_MANIFEST_MAX_BYTES = 32 * 1024;
|
|
@@ -15668,11 +15736,31 @@ var harnessInstallationStateSchema = external_exports.object({
|
|
|
15668
15736
|
latestVersion: external_exports.string().min(1).max(128),
|
|
15669
15737
|
updateAvailable: external_exports.boolean(),
|
|
15670
15738
|
canUpdate: external_exports.boolean(),
|
|
15739
|
+
/** Defaults to CLI; some Harnesses ship only inside a desktop application. */
|
|
15740
|
+
versionKind: external_exports.enum(["cli", "application"]).optional(),
|
|
15741
|
+
/** Official download opened by the user; does not imply an automatic installation. */
|
|
15742
|
+
manualUpdateUrl: external_exports.url().max(2048).refine((value) => /^https:\/\/[^/?#@]+(?:[/?#]|$)/iu.test(value), "Manual updates require a credential-free HTTPS URL").optional(),
|
|
15671
15743
|
// Adapter-owned diagnostic text; UI uses messageCode rather than displaying it verbatim.
|
|
15672
15744
|
message: external_exports.string().max(2048).optional(),
|
|
15673
15745
|
messageCode: external_exports.string().min(1).max(128).optional(),
|
|
15746
|
+
/** Safe plugin-owned explanation, distinct from raw diagnostic message. */
|
|
15747
|
+
notice: harnessLocalizedTextSchema.optional(),
|
|
15674
15748
|
latestVersionKind: external_exports.enum(["unknown", "tracking-branch"]).optional()
|
|
15675
15749
|
}).strict();
|
|
15750
|
+
var harnessInstallationTaskParamsSchema = external_exports.object({ taskId: external_exports.string().uuid() }).strict();
|
|
15751
|
+
var harnessInstallationTaskSchema = external_exports.discriminatedUnion("status", [
|
|
15752
|
+
external_exports.object({ taskId: external_exports.string().uuid(), status: external_exports.literal("running") }).strict(),
|
|
15753
|
+
external_exports.object({
|
|
15754
|
+
taskId: external_exports.string().uuid(),
|
|
15755
|
+
status: external_exports.literal("succeeded"),
|
|
15756
|
+
result: harnessInstallationStateSchema
|
|
15757
|
+
}).strict(),
|
|
15758
|
+
external_exports.object({
|
|
15759
|
+
taskId: external_exports.string().uuid(),
|
|
15760
|
+
status: external_exports.literal("failed"),
|
|
15761
|
+
error: external_exports.object({ code: external_exports.number().int(), message: external_exports.string().min(1).max(2048) }).strict()
|
|
15762
|
+
}).strict()
|
|
15763
|
+
]);
|
|
15676
15764
|
|
|
15677
15765
|
// ../../shared-contracts/dist/codex-accounts.js
|
|
15678
15766
|
var accountIdSchema = external_exports.string().min(1).max(256).regex(/^[A-Za-z0-9._~-]+$/u);
|
|
@@ -15797,6 +15885,7 @@ var harnessCommandDescriptorSchema = external_exports.object({
|
|
|
15797
15885
|
invocation: commandInvocationSchema,
|
|
15798
15886
|
label: commandLabelSchema,
|
|
15799
15887
|
description: commandDescriptionSchema.optional(),
|
|
15888
|
+
localizations: harnessLocalizationsSchema.optional(),
|
|
15800
15889
|
argumentMode: external_exports.enum(["none", "text"]),
|
|
15801
15890
|
/**
|
|
15802
15891
|
* Native distinction reported by the Harness. Omitted when the Harness does
|
|
@@ -16157,6 +16246,18 @@ function sanitizeDiagnosticTail(value) {
|
|
|
16157
16246
|
return redacted.length <= DIAGNOSTIC_TAIL_MAX_LENGTH ? redacted : redacted.slice(-DIAGNOSTIC_TAIL_MAX_LENGTH);
|
|
16158
16247
|
}
|
|
16159
16248
|
|
|
16249
|
+
// ../../harness-adapter/dist/steer.js
|
|
16250
|
+
function unsupportedSteer(harnessLabel) {
|
|
16251
|
+
return {
|
|
16252
|
+
ok: false,
|
|
16253
|
+
error: {
|
|
16254
|
+
code: "unsupported",
|
|
16255
|
+
message: `${harnessLabel} cannot steer an active Turn natively`,
|
|
16256
|
+
retryable: false
|
|
16257
|
+
}
|
|
16258
|
+
};
|
|
16259
|
+
}
|
|
16260
|
+
|
|
16160
16261
|
// ../../harness-adapter/dist/usage.js
|
|
16161
16262
|
var tokenFields = [
|
|
16162
16263
|
"inputTokens",
|
|
@@ -16184,6 +16285,7 @@ var usageFields = /* @__PURE__ */ new Set([
|
|
|
16184
16285
|
...safeIntegerFields,
|
|
16185
16286
|
...percentFields,
|
|
16186
16287
|
"sessionCacheUsage",
|
|
16288
|
+
"composerIndicators",
|
|
16187
16289
|
"totalCostUsd",
|
|
16188
16290
|
"totalCredits",
|
|
16189
16291
|
"contextUsagePercent",
|
|
@@ -16206,6 +16308,7 @@ function parseHostUsage(value) {
|
|
|
16206
16308
|
throw new Error(`Harness Usage contains unknown field '${key}'`);
|
|
16207
16309
|
}
|
|
16208
16310
|
}
|
|
16311
|
+
const indicators = value.composerIndicators === void 0 ? {} : { composerIndicators: composerIndicatorsSchema.parse(value.composerIndicators) };
|
|
16209
16312
|
for (const field2 of [
|
|
16210
16313
|
"totalCredits",
|
|
16211
16314
|
"contextUsagePercent",
|
|
@@ -16276,9 +16379,9 @@ function parseHostUsage(value) {
|
|
|
16276
16379
|
if (value.costSource !== "publicPrice") {
|
|
16277
16380
|
throw new Error("Harness Usage 'unpricedModels' must be provided with a 'publicPrice' cost");
|
|
16278
16381
|
}
|
|
16279
|
-
return { ...value, unpricedModels: [...models] };
|
|
16382
|
+
return { ...value, ...indicators, unpricedModels: [...models] };
|
|
16280
16383
|
}
|
|
16281
|
-
return { ...value };
|
|
16384
|
+
return { ...value, ...indicators };
|
|
16282
16385
|
}
|
|
16283
16386
|
var requestTokenFields = [
|
|
16284
16387
|
"inputTokens",
|
|
@@ -16716,6 +16819,10 @@ function createZcodeInstallation(environment, app) {
|
|
|
16716
16819
|
updateAvailable: false,
|
|
16717
16820
|
canUpdate: false,
|
|
16718
16821
|
messageCode: "zcode-desktop-updater",
|
|
16822
|
+
notice: {
|
|
16823
|
+
en: "The CLI ships inside ZCode Desktop. Update ZCode Desktop itself to update it.",
|
|
16824
|
+
"zh-CN": "CLI 随 ZCode Desktop 一起发布,请直接更新 ZCode Desktop。"
|
|
16825
|
+
},
|
|
16719
16826
|
message: "The CLI ships inside ZCode Desktop. Update ZCode Desktop itself to update it."
|
|
16720
16827
|
};
|
|
16721
16828
|
};
|
|
@@ -18180,11 +18287,19 @@ var modeLabels = {
|
|
|
18180
18287
|
yolo: "Full access",
|
|
18181
18288
|
auto: "Auto"
|
|
18182
18289
|
};
|
|
18290
|
+
var chineseModeLabels = {
|
|
18291
|
+
build: "确认变更",
|
|
18292
|
+
edit: "自动编辑",
|
|
18293
|
+
plan: "规划模式",
|
|
18294
|
+
yolo: "完全访问",
|
|
18295
|
+
auto: "自动"
|
|
18296
|
+
};
|
|
18183
18297
|
function permissionModes(current = "build") {
|
|
18184
18298
|
return harnessPermissionModeCatalogSchema.parse({
|
|
18185
18299
|
modes: Object.entries(modeLabels).map(([id, label]) => ({
|
|
18186
18300
|
id,
|
|
18187
18301
|
label,
|
|
18302
|
+
localizations: { "zh-CN": { label: chineseModeLabels[id] } },
|
|
18188
18303
|
...id === "yolo" ? { dangerous: true } : {}
|
|
18189
18304
|
})),
|
|
18190
18305
|
defaultModeId: current
|
|
@@ -19224,6 +19339,7 @@ var COMMAND_CATALOG = harnessCommandCatalogSchema.parse({
|
|
|
19224
19339
|
{
|
|
19225
19340
|
id: "compact",
|
|
19226
19341
|
invocation: "/compact",
|
|
19342
|
+
localizations: { "zh-CN": { label: "压缩上下文", description: "压缩当前对话上下文" } },
|
|
19227
19343
|
label: "Compact",
|
|
19228
19344
|
description: "Compact the native ZCode conversation.",
|
|
19229
19345
|
argumentMode: "text"
|
|
@@ -19373,6 +19489,7 @@ async function readHistory(transport, snapshot, events = []) {
|
|
|
19373
19489
|
|
|
19374
19490
|
// dist/capabilities.js
|
|
19375
19491
|
var ZCODE_CAPABILITIES = {
|
|
19492
|
+
steer: false,
|
|
19376
19493
|
configuration: {
|
|
19377
19494
|
selectModel: true,
|
|
19378
19495
|
selectThinkingOption: true,
|
|
@@ -19547,6 +19664,8 @@ var ZcodeSession = class {
|
|
|
19547
19664
|
if (this.#closed || this.#faulted)
|
|
19548
19665
|
return failure("invalidState", "ZCode session is closed");
|
|
19549
19666
|
try {
|
|
19667
|
+
if (command.type === "turn.steer")
|
|
19668
|
+
return unsupportedSteer("ZCode");
|
|
19550
19669
|
if (command.type === "turn.start") {
|
|
19551
19670
|
if (!hostTurnIdSchema.safeParse(command.turnId).success || !command.input.length || command.input.some((item) => item.type !== "text") || !command.input.some((item) => item.text.trim()))
|
|
19552
19671
|
return failure("invalidRequest", "ZCode requires nonempty text and a turn ID");
|