@codexhost/cli-darwin-arm64 0.18.0-beta.1 → 0.18.0-beta.4
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 +109 -94
- package/app/console-web.js +110 -95
- package/app/desktop-controller.mjs +109 -110
- package/app/host-runtime.mjs +14225 -10527
- package/app/plugins/antigravity/plugin.mjs +109 -94
- package/app/plugins/claude-code/plugin.mjs +229 -148
- package/app/plugins/codebuddy/plugin.mjs +109 -94
- package/app/plugins/codex-usage/plugin.mjs +109 -94
- package/app/plugins/copilot/plugin.mjs +109 -94
- package/app/plugins/cursor-cli/plugin.mjs +109 -94
- package/app/plugins/deepseek-harness/plugin.mjs +109 -94
- package/app/plugins/devin/plugin.mjs +109 -94
- package/app/plugins/enabled.json +0 -1
- package/app/plugins/grok/plugin.mjs +109 -94
- package/app/plugins/hermes/plugin.mjs +109 -94
- package/app/plugins/kimi-code/plugin.mjs +109 -94
- package/app/plugins/kiro-cli/plugin.mjs +109 -94
- package/app/plugins/omp/plugin.mjs +109 -94
- package/app/plugins/opencode/plugin.mjs +109 -94
- package/app/plugins/pi/plugin.mjs +109 -94
- package/app/plugins/qoder/plugin.mjs +109 -94
- package/app/plugins/qoder-cn/plugin.mjs +109 -94
- package/app/plugins/qwen-code/plugin.mjs +109 -94
- package/app/plugins/workbuddy/plugin.mjs +109 -94
- package/app/plugins/zcode/plugin.mjs +109 -94
- package/app/renderer-extension.js +128 -150
- package/app/web/assets/index-C3lniEH1.css +1 -0
- package/app/web/assets/index-D1dOzBMI.js +199 -0
- package/app/web/codexhost-settings.js +110 -95
- package/app/web/index.html +2 -2
- package/app/web/plugins/deepseek-ai__dsh-api-gateway/client.js +1 -1
- package/app/web/plugins/deepseek-ai__dsh-api-remotes/client.js +64 -64
- package/app/web/plugins/deepseek-ai__dsh-api-session-controller/client.js +69 -69
- package/app/web/plugins/deepseek-ai__dsh-client-connection/client.js +1 -1
- package/app/web/plugins/deepseek-ai__dsh-client-ui-chat/client.js +2 -2
- package/app/web/plugins/deepseek-ai__dsh-client-ui-codexhost/client.js +57 -56
- package/app/web/plugins/deepseek-ai__dsh-client-ui-conversation/client.js +87 -87
- package/app/web/plugins/deepseek-ai__dsh-client-ui-directory-picker-browse/client.js +10 -10
- package/app/web/plugins/deepseek-ai__dsh-client-ui-input-trigger/client.js +1 -1
- package/app/web/plugins/deepseek-ai__dsh-client-ui-layout/client.js +3 -3
- package/app/web/plugins/deepseek-ai__dsh-client-ui-model-selection/client.js +2 -2
- package/app/web/plugins/deepseek-ai__dsh-client-ui-permission-presets/client.js +1 -1
- package/app/web/plugins/deepseek-ai__dsh-client-ui-settings/client.js +1 -1
- package/app/web/plugins/deepseek-ai__dsh-client-ui-settings-general/client.js +2 -2
- package/app/web/plugins/deepseek-ai__dsh-client-ui-sidebar/client.js +2 -2
- package/app/web/plugins/deepseek-ai__dsh-client-ui-sidebar-right/client.js +55 -55
- package/app/web/plugins/deepseek-ai__dsh-client-ui-tool/client.js +18 -18
- package/app/web/plugins/deepseek-ai__dsh-client-ui-workspace/client.js +8 -12
- package/app/web/plugins.json +4 -0
- package/app/web/sw.js +55 -24
- package/app/web-modules/server.mjs +1415 -784
- package/bin/codexhost +0 -0
- package/libexec/codexhost-shim +0 -0
- package/libexec/codexhost-updater +0 -0
- package/package.json +1 -1
- package/app/plugins/codex-cli/manifest.json +0 -16
- package/app/plugins/codex-cli/plugin.mjs +0 -20374
- package/app/web/assets/index-CIeTchMu.css +0 -1
- package/app/web/assets/index-DeAPBQbV.js +0 -199
- /package/app/{plugins/codex-cli/assets/icon.png → web/codex.png} +0 -0
|
@@ -15162,7 +15162,7 @@ var HARNESS_PERMISSION_MODE_CATALOG_MAX_LENGTH = 32;
|
|
|
15162
15162
|
var nonBlankTextSchema = external_exports.string().refine((value) => value.trim().length > 0, {
|
|
15163
15163
|
message: "Value must not be empty or whitespace"
|
|
15164
15164
|
});
|
|
15165
|
-
var harnessPermissionModeIdSchema = nonBlankTextSchema.max(HARNESS_PERMISSION_MODE_ID_MAX_LENGTH).regex(/^[A-Za-z0-9._
|
|
15165
|
+
var harnessPermissionModeIdSchema = nonBlankTextSchema.max(HARNESS_PERMISSION_MODE_ID_MAX_LENGTH).regex(/^[A-Za-z0-9._~:-]+$/u, "Permission Mode ID must use transport-safe characters").brand();
|
|
15166
15166
|
var harnessPermissionModeSchema = external_exports.object({
|
|
15167
15167
|
id: harnessPermissionModeIdSchema,
|
|
15168
15168
|
label: nonBlankTextSchema.max(HARNESS_PERMISSION_MODE_LABEL_MAX_LENGTH),
|
|
@@ -15546,7 +15546,12 @@ var threadInspectionParamsSchema = external_exports.object({
|
|
|
15546
15546
|
}).strict();
|
|
15547
15547
|
var codexThreadInspectionSchema = external_exports.object({
|
|
15548
15548
|
owner: external_exports.literal("codex"),
|
|
15549
|
-
locked: external_exports.
|
|
15549
|
+
locked: external_exports.boolean(),
|
|
15550
|
+
effectiveModel: harnessModelRefSchema.optional(),
|
|
15551
|
+
resolvedModelLabel: harnessResolvedModelLabelSchema.optional(),
|
|
15552
|
+
effectiveThinkingOptionId: harnessThinkingOptionIdSchema.optional(),
|
|
15553
|
+
effectivePermissionModeId: harnessPermissionModeIdSchema.optional(),
|
|
15554
|
+
history: harnessHistoryCapabilitiesSchema.optional(),
|
|
15550
15555
|
supportsThreadReferences: external_exports.literal(true).optional()
|
|
15551
15556
|
}).strict();
|
|
15552
15557
|
var externalThreadInspectionSchema = external_exports.object({
|
|
@@ -15768,7 +15773,8 @@ var clientThreadSnapshotSchema = external_exports.object({
|
|
|
15768
15773
|
thread: external_exports.object({
|
|
15769
15774
|
id: external_exports.string().min(1),
|
|
15770
15775
|
cwd: external_exports.string(),
|
|
15771
|
-
|
|
15776
|
+
/** External rows use codexhost; native Codex rows retain their official provider. */
|
|
15777
|
+
modelProvider: external_exports.string().min(1),
|
|
15772
15778
|
createdAt: external_exports.number(),
|
|
15773
15779
|
updatedAt: external_exports.number(),
|
|
15774
15780
|
status: external_exports.object({ type: external_exports.string() }).passthrough(),
|
|
@@ -15782,6 +15788,11 @@ var clientThreadSnapshotSchema = external_exports.object({
|
|
|
15782
15788
|
nextCursor: external_exports.string().nullable()
|
|
15783
15789
|
}),
|
|
15784
15790
|
configuration: external_exports.object({
|
|
15791
|
+
/** Native Codex model names are not external Harness transport refs. */
|
|
15792
|
+
native: external_exports.object({
|
|
15793
|
+
model: external_exports.string().min(1).max(1024).optional(),
|
|
15794
|
+
reasoningEffort: external_exports.string().min(1).max(128).optional()
|
|
15795
|
+
}).optional(),
|
|
15785
15796
|
effectiveModel: harnessModelRefSchema.optional(),
|
|
15786
15797
|
effectiveThinkingOptionId: harnessThinkingOptionIdSchema.optional(),
|
|
15787
15798
|
effectivePermissionModeId: harnessPermissionModeIdSchema.optional()
|
|
@@ -15808,6 +15819,21 @@ var clientChannelResponseSchema = external_exports.object({
|
|
|
15808
15819
|
result: record2
|
|
15809
15820
|
});
|
|
15810
15821
|
|
|
15822
|
+
// ../../shared-contracts/dist/thread-catalog.js
|
|
15823
|
+
var threadCatalogReadParamsSchema = external_exports.object({
|
|
15824
|
+
includeArchived: external_exports.boolean().optional(),
|
|
15825
|
+
/** Absent means first page; null means this branch is exhausted. Native cursors only. */
|
|
15826
|
+
officialCursor: external_exports.object({ live: external_exports.string().nullable(), archived: external_exports.string().nullable().optional() }).strict().optional()
|
|
15827
|
+
}).strict();
|
|
15828
|
+
var threadCatalogReadResultSchema = external_exports.object({
|
|
15829
|
+
threads: external_exports.array(jsonObjectSchema),
|
|
15830
|
+
ownership: external_exports.array(threadOwnershipSchema),
|
|
15831
|
+
/** Known archived IDs, including visible local external records even when their rows are
|
|
15832
|
+
* excluded. Native archived IDs describe only the returned page, never a complete set. */
|
|
15833
|
+
archivedThreadIds: external_exports.array(hostThreadIdSchema),
|
|
15834
|
+
officialCursor: external_exports.object({ live: external_exports.string().nullable(), archived: external_exports.string().nullable().optional() }).strict().optional()
|
|
15835
|
+
}).strict();
|
|
15836
|
+
|
|
15811
15837
|
// ../../shared-contracts/dist/voice.js
|
|
15812
15838
|
var VOICE_AUDIO_MAX_BYTES = 10 * 1024 * 1024;
|
|
15813
15839
|
var voiceAudioMimeTypeSchema = external_exports.string().regex(/^audio\/[a-z0-9.+-]+(?:\s*;[^\r\n]*)?$/i);
|
|
@@ -16020,96 +16046,19 @@ var idleReleaseSettingsSchema = external_exports.strictObject({
|
|
|
16020
16046
|
});
|
|
16021
16047
|
var DEFAULT_IDLE_RELEASE_SETTINGS = Object.freeze({
|
|
16022
16048
|
enabled: false,
|
|
16023
|
-
timeoutMinutes:
|
|
16024
|
-
});
|
|
16025
|
-
|
|
16026
|
-
// ../../shared-contracts/dist/harness-plugins.js
|
|
16027
|
-
var HARNESS_PLUGIN_MANIFEST_MAX_BYTES = 32 * 1024;
|
|
16028
|
-
var HARNESS_PLUGIN_ICON_MAX_BYTES = 128 * 1024;
|
|
16029
|
-
var HARNESS_PLUGIN_LIMIT = 128;
|
|
16030
|
-
var HARNESS_PLUGIN_SURFACES = ["desktop", "web"];
|
|
16031
|
-
var harnessPluginSurfaceSchema = external_exports.enum(HARNESS_PLUGIN_SURFACES);
|
|
16032
|
-
var installedHarnessPluginIdSchema = external_exports.string().min(1).max(128).regex(/^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$/u).pipe(harnessIdSchema);
|
|
16033
|
-
var harnessPluginIdSchema = installedHarnessPluginIdSchema.refine((id) => id !== "codex", "The official Codex identity is reserved");
|
|
16034
|
-
var relativeResourceSchema = external_exports.string().min(1).max(512).refine((value) => !/[\\\u0000:#?]/u.test(value) && !value.startsWith("/") && !value.split("/").some((part) => part === ".." || part === ""), "Plugin resources must be relative paths inside the plugin");
|
|
16035
|
-
var documentationUrlSchema = external_exports.url().refine((value) => /^https:\/\/[^/?#@]+(?:[/?#]|$)/iu.test(value), "Plugin documentation links must be credential-free HTTPS URLs");
|
|
16036
|
-
var localizedTextSchema = external_exports.object({ en: external_exports.string().max(4096), "zh-CN": external_exports.string().max(4096).optional() }).strict();
|
|
16037
|
-
var harnessInstallationGuideSchema = external_exports.object({
|
|
16038
|
-
commands: external_exports.array(external_exports.object({ terminal: external_exports.string().max(256), command: external_exports.string().max(4096) }).strict()).max(8),
|
|
16039
|
-
before: localizedTextSchema.optional(),
|
|
16040
|
-
after: localizedTextSchema.optional(),
|
|
16041
|
-
downloads: external_exports.array(external_exports.object({ label: external_exports.string().max(128), url: documentationUrlSchema }).strict()).max(8).optional()
|
|
16042
|
-
}).strict();
|
|
16043
|
-
var pluginPresentationShape = {
|
|
16044
|
-
id: installedHarnessPluginIdSchema,
|
|
16045
|
-
name: external_exports.string().trim().min(1).max(128),
|
|
16046
|
-
version: external_exports.string().min(1).max(128),
|
|
16047
|
-
/** Capability-only plugin; omitted for existing session-capable plugins. */
|
|
16048
|
-
kind: external_exports.literal("usage").optional(),
|
|
16049
|
-
/** Original image styling or bounded vector paths; never arbitrary CSS/SVG markup. */
|
|
16050
|
-
iconStyle: external_exports.object({
|
|
16051
|
-
vector: external_exports.object({
|
|
16052
|
-
viewBox: external_exports.string().max(128).regex(/^-?\d+(?:\.\d+)?(?: +-?\d+(?:\.\d+)?){3}$/u),
|
|
16053
|
-
color: external_exports.string().regex(/^(?:currentColor|#[a-f0-9]{6})$/iu),
|
|
16054
|
-
paths: external_exports.array(external_exports.object({
|
|
16055
|
-
d: external_exports.string().min(1).max(32768).regex(/^[MmLlHhVvCcSsQqTtAaZz\d.,+eE\s-]+$/u),
|
|
16056
|
-
fillRule: external_exports.enum(["evenodd", "nonzero"]).optional(),
|
|
16057
|
-
fill: external_exports.string().regex(/^(?:currentColor|#[a-f0-9]{6})$/iu).optional()
|
|
16058
|
-
}).strict()).min(1).max(32)
|
|
16059
|
-
}).strict().optional(),
|
|
16060
|
-
background: external_exports.string().regex(/^#[a-f0-9]{6}$/iu).optional(),
|
|
16061
|
-
borderRadius: external_exports.number().min(0).max(50).optional(),
|
|
16062
|
-
paddingRatio: external_exports.number().min(0).max(0.25).optional()
|
|
16063
|
-
}).strict().optional(),
|
|
16064
|
-
installation: harnessInstallationGuideSchema.optional(),
|
|
16065
|
-
notice: localizedTextSchema.optional(),
|
|
16066
|
-
/** The factory accepts a persisted local entrypoint through its construction context. */
|
|
16067
|
-
launchCommand: external_exports.literal(true).optional(),
|
|
16068
|
-
links: external_exports.object({
|
|
16069
|
-
website: documentationUrlSchema.optional(),
|
|
16070
|
-
documentation: documentationUrlSchema.optional(),
|
|
16071
|
-
installation: documentationUrlSchema.optional()
|
|
16072
|
-
}).strict().optional()
|
|
16073
|
-
};
|
|
16074
|
-
var harnessPluginSurfacesSchema = external_exports.array(harnessPluginSurfaceSchema).min(1).max(HARNESS_PLUGIN_SURFACES.length).refine((surfaces) => new Set(surfaces).size === surfaces.length, {
|
|
16075
|
-
message: "Plugin surfaces must be unique"
|
|
16076
|
-
});
|
|
16077
|
-
var harnessPluginManifestSchema = external_exports.object({
|
|
16078
|
-
manifestVersion: external_exports.literal(1),
|
|
16079
|
-
...pluginPresentationShape,
|
|
16080
|
-
adapterApiVersion: external_exports.number().int().positive(),
|
|
16081
|
-
entry: relativeResourceSchema,
|
|
16082
|
-
icon: relativeResourceSchema.optional(),
|
|
16083
|
-
/** Omitted means the plugin appears in every surface; never inferred from its identity. */
|
|
16084
|
-
surfaces: harnessPluginSurfacesSchema.optional()
|
|
16085
|
-
}).strict();
|
|
16086
|
-
var harnessPluginIconSchema = external_exports.string().max(Math.ceil(HARNESS_PLUGIN_ICON_MAX_BYTES / 3) * 4 + 64).regex(/^data:image\/(?:png|jpeg|webp|svg\+xml);base64,[A-Za-z0-9+/]+={0,2}$/u);
|
|
16087
|
-
var harnessPluginDescriptorSchema = external_exports.object({
|
|
16088
|
-
...pluginPresentationShape,
|
|
16089
|
-
icon: harnessPluginIconSchema.optional()
|
|
16090
|
-
}).strict();
|
|
16091
|
-
var harnessPluginListParamsSchema = external_exports.object({}).strict();
|
|
16092
|
-
var harnessPluginListResultSchema = external_exports.object({
|
|
16093
|
-
plugins: external_exports.array(harnessPluginDescriptorSchema.extend({ id: harnessPluginIdSchema })).max(HARNESS_PLUGIN_LIMIT)
|
|
16094
|
-
}).strict();
|
|
16095
|
-
var harnessPluginConfigurationSchema = external_exports.object({
|
|
16096
|
-
version: external_exports.literal(1),
|
|
16097
|
-
enabled: external_exports.array(installedHarnessPluginIdSchema).max(HARNESS_PLUGIN_LIMIT)
|
|
16098
|
-
}).strict().refine((value) => new Set(value.enabled).size === value.enabled.length, {
|
|
16099
|
-
message: "Enabled plugin IDs must be unique",
|
|
16100
|
-
path: ["enabled"]
|
|
16049
|
+
timeoutMinutes: 10
|
|
16101
16050
|
});
|
|
16102
16051
|
|
|
16103
16052
|
// ../../shared-contracts/dist/harness-preferences.js
|
|
16104
16053
|
var harnessPreferenceScopeSchema = external_exports.string().regex(/^external$/u);
|
|
16105
|
-
var preferenceHarnessKey =
|
|
16054
|
+
var preferenceHarnessKey = harnessIdSchema.transform((id) => String(id));
|
|
16106
16055
|
var harnessDefaultConfigurationSchema = external_exports.strictObject({
|
|
16107
16056
|
model: harnessModelRefSchema.optional(),
|
|
16108
16057
|
thinkingOptionId: harnessThinkingOptionIdSchema.optional(),
|
|
16109
16058
|
permissionModeId: harnessPermissionModeIdSchema.optional()
|
|
16110
16059
|
}).refine((value) => Boolean(value.model || value.thinkingOptionId || value.permissionModeId), "A default configuration must contain a preference");
|
|
16111
16060
|
var newThreadDefaultsSchema = external_exports.strictObject({
|
|
16112
|
-
lastHarness:
|
|
16061
|
+
lastHarness: harnessIdSchema.optional(),
|
|
16113
16062
|
byHarness: external_exports.record(preferenceHarnessKey, harnessDefaultConfigurationSchema)
|
|
16114
16063
|
});
|
|
16115
16064
|
var modelId = external_exports.string().min(1).max(1024);
|
|
@@ -16130,19 +16079,19 @@ var harnessPreferenceOperationSchema = external_exports.discriminatedUnion("kind
|
|
|
16130
16079
|
external_exports.strictObject({ kind: external_exports.literal("idleRelease"), value: idleReleaseSettingsSchema }),
|
|
16131
16080
|
external_exports.strictObject({
|
|
16132
16081
|
kind: external_exports.literal("favorite"),
|
|
16133
|
-
harnessId:
|
|
16082
|
+
harnessId: harnessIdSchema,
|
|
16134
16083
|
modelId,
|
|
16135
16084
|
enabled: external_exports.boolean()
|
|
16136
16085
|
}),
|
|
16137
16086
|
external_exports.strictObject({
|
|
16138
16087
|
kind: external_exports.literal("favorites"),
|
|
16139
|
-
harnessId:
|
|
16088
|
+
harnessId: harnessIdSchema,
|
|
16140
16089
|
modelIds: external_exports.array(modelId).max(2048)
|
|
16141
16090
|
}),
|
|
16142
16091
|
external_exports.strictObject({
|
|
16143
16092
|
kind: external_exports.literal("newThread"),
|
|
16144
|
-
lastHarness:
|
|
16145
|
-
harnessId:
|
|
16093
|
+
lastHarness: harnessIdSchema.optional(),
|
|
16094
|
+
harnessId: harnessIdSchema.optional(),
|
|
16146
16095
|
configuration: harnessDefaultConfigurationSchema.optional()
|
|
16147
16096
|
})
|
|
16148
16097
|
]);
|
|
@@ -16158,12 +16107,6 @@ var harnessPreferencePatchSchema = external_exports.strictObject({
|
|
|
16158
16107
|
code: "custom",
|
|
16159
16108
|
message: "A default Harness or complete configuration is required"
|
|
16160
16109
|
});
|
|
16161
|
-
const harnessId = "harnessId" in operation ? operation.harnessId : void 0;
|
|
16162
|
-
if (harnessId === "codex")
|
|
16163
|
-
ctx.addIssue({
|
|
16164
|
-
code: "custom",
|
|
16165
|
-
message: "Official Codex is not an external Harness"
|
|
16166
|
-
});
|
|
16167
16110
|
}
|
|
16168
16111
|
});
|
|
16169
16112
|
var harnessPreferencesDocumentSchema = external_exports.strictObject({
|
|
@@ -16540,6 +16483,76 @@ var harnessAccountListResultSchema = external_exports.object({
|
|
|
16540
16483
|
accounts: external_exports.array(requireReportedQuota(harnessAccountSnapshotObject.extend(harnessAccountIdentityShape))).max(128)
|
|
16541
16484
|
}).strict();
|
|
16542
16485
|
|
|
16486
|
+
// ../../shared-contracts/dist/harness-plugins.js
|
|
16487
|
+
var HARNESS_PLUGIN_MANIFEST_MAX_BYTES = 32 * 1024;
|
|
16488
|
+
var HARNESS_PLUGIN_ICON_MAX_BYTES = 128 * 1024;
|
|
16489
|
+
var HARNESS_PLUGIN_LIMIT = 128;
|
|
16490
|
+
var installedHarnessPluginIdSchema = external_exports.string().min(1).max(128).regex(/^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$/u).pipe(harnessIdSchema);
|
|
16491
|
+
var harnessPluginIdSchema = installedHarnessPluginIdSchema.refine((id) => id !== "codex", "The official Codex identity is reserved");
|
|
16492
|
+
var relativeResourceSchema = external_exports.string().min(1).max(512).refine((value) => !/[\\\u0000:#?]/u.test(value) && !value.startsWith("/") && !value.split("/").some((part) => part === ".." || part === ""), "Plugin resources must be relative paths inside the plugin");
|
|
16493
|
+
var documentationUrlSchema = external_exports.url().refine((value) => /^https:\/\/[^/?#@]+(?:[/?#]|$)/iu.test(value), "Plugin documentation links must be credential-free HTTPS URLs");
|
|
16494
|
+
var localizedTextSchema = external_exports.object({ en: external_exports.string().max(4096), "zh-CN": external_exports.string().max(4096).optional() }).strict();
|
|
16495
|
+
var harnessInstallationGuideSchema = external_exports.object({
|
|
16496
|
+
commands: external_exports.array(external_exports.object({ terminal: external_exports.string().max(256), command: external_exports.string().max(4096) }).strict()).max(8),
|
|
16497
|
+
before: localizedTextSchema.optional(),
|
|
16498
|
+
after: localizedTextSchema.optional(),
|
|
16499
|
+
downloads: external_exports.array(external_exports.object({ label: external_exports.string().max(128), url: documentationUrlSchema }).strict()).max(8).optional()
|
|
16500
|
+
}).strict();
|
|
16501
|
+
var pluginPresentationShape = {
|
|
16502
|
+
id: installedHarnessPluginIdSchema,
|
|
16503
|
+
name: external_exports.string().trim().min(1).max(128),
|
|
16504
|
+
version: external_exports.string().min(1).max(128),
|
|
16505
|
+
/** Capability-only plugin; omitted for existing session-capable plugins. */
|
|
16506
|
+
kind: external_exports.literal("usage").optional(),
|
|
16507
|
+
/** Original image styling or bounded vector paths; never arbitrary CSS/SVG markup. */
|
|
16508
|
+
iconStyle: external_exports.object({
|
|
16509
|
+
vector: external_exports.object({
|
|
16510
|
+
viewBox: external_exports.string().max(128).regex(/^-?\d+(?:\.\d+)?(?: +-?\d+(?:\.\d+)?){3}$/u),
|
|
16511
|
+
color: external_exports.string().regex(/^(?:currentColor|#[a-f0-9]{6})$/iu),
|
|
16512
|
+
paths: external_exports.array(external_exports.object({
|
|
16513
|
+
d: external_exports.string().min(1).max(32768).regex(/^[MmLlHhVvCcSsQqTtAaZz\d.,+eE\s-]+$/u),
|
|
16514
|
+
fillRule: external_exports.enum(["evenodd", "nonzero"]).optional(),
|
|
16515
|
+
fill: external_exports.string().regex(/^(?:currentColor|#[a-f0-9]{6})$/iu).optional()
|
|
16516
|
+
}).strict()).min(1).max(32)
|
|
16517
|
+
}).strict().optional(),
|
|
16518
|
+
background: external_exports.string().regex(/^#[a-f0-9]{6}$/iu).optional(),
|
|
16519
|
+
borderRadius: external_exports.number().min(0).max(50).optional(),
|
|
16520
|
+
paddingRatio: external_exports.number().min(0).max(0.25).optional()
|
|
16521
|
+
}).strict().optional(),
|
|
16522
|
+
installation: harnessInstallationGuideSchema.optional(),
|
|
16523
|
+
notice: localizedTextSchema.optional(),
|
|
16524
|
+
/** The factory accepts a persisted local entrypoint through its construction context. */
|
|
16525
|
+
launchCommand: external_exports.literal(true).optional(),
|
|
16526
|
+
links: external_exports.object({
|
|
16527
|
+
website: documentationUrlSchema.optional(),
|
|
16528
|
+
documentation: documentationUrlSchema.optional(),
|
|
16529
|
+
installation: documentationUrlSchema.optional()
|
|
16530
|
+
}).strict().optional()
|
|
16531
|
+
};
|
|
16532
|
+
var harnessPluginManifestSchema = external_exports.object({
|
|
16533
|
+
manifestVersion: external_exports.literal(1),
|
|
16534
|
+
...pluginPresentationShape,
|
|
16535
|
+
adapterApiVersion: external_exports.number().int().positive(),
|
|
16536
|
+
entry: relativeResourceSchema,
|
|
16537
|
+
icon: relativeResourceSchema.optional()
|
|
16538
|
+
}).strict();
|
|
16539
|
+
var harnessPluginIconSchema = external_exports.string().max(Math.ceil(HARNESS_PLUGIN_ICON_MAX_BYTES / 3) * 4 + 64).regex(/^data:image\/(?:png|jpeg|webp|svg\+xml);base64,[A-Za-z0-9+/]+={0,2}$/u);
|
|
16540
|
+
var harnessPluginDescriptorSchema = external_exports.object({
|
|
16541
|
+
...pluginPresentationShape,
|
|
16542
|
+
icon: harnessPluginIconSchema.optional()
|
|
16543
|
+
}).strict();
|
|
16544
|
+
var harnessPluginListParamsSchema = external_exports.object({}).strict();
|
|
16545
|
+
var harnessPluginListResultSchema = external_exports.object({
|
|
16546
|
+
plugins: external_exports.array(harnessPluginDescriptorSchema.extend({ id: harnessPluginIdSchema })).max(HARNESS_PLUGIN_LIMIT)
|
|
16547
|
+
}).strict();
|
|
16548
|
+
var harnessPluginConfigurationSchema = external_exports.object({
|
|
16549
|
+
version: external_exports.literal(1),
|
|
16550
|
+
enabled: external_exports.array(installedHarnessPluginIdSchema).max(HARNESS_PLUGIN_LIMIT)
|
|
16551
|
+
}).strict().refine((value) => new Set(value.enabled).size === value.enabled.length, {
|
|
16552
|
+
message: "Enabled plugin IDs must be unique",
|
|
16553
|
+
path: ["enabled"]
|
|
16554
|
+
});
|
|
16555
|
+
|
|
16543
16556
|
// ../../shared-contracts/dist/harness-route.js
|
|
16544
16557
|
var harnessPluginRouteSchema = external_exports.object({
|
|
16545
16558
|
harnessId: harnessPluginIdSchema,
|
|
@@ -16733,6 +16746,8 @@ var harnessCommandDescriptorSchema = external_exports.object({
|
|
|
16733
16746
|
}).strict();
|
|
16734
16747
|
var harnessCommandCatalogSchema = external_exports.object({
|
|
16735
16748
|
commands: external_exports.array(harnessCommandDescriptorSchema),
|
|
16749
|
+
/** Partial discovery failures; valid commands remain available. */
|
|
16750
|
+
warnings: external_exports.array(external_exports.string().min(1)).optional(),
|
|
16736
16751
|
/**
|
|
16737
16752
|
* `live` when the catalog includes what a native Session reports for its
|
|
16738
16753
|
* workspace (custom commands, skills); `static` for Adapter built-ins only.
|
|
@@ -16768,7 +16783,7 @@ var threadCommandExecuteParamsSchema = external_exports.object({
|
|
|
16768
16783
|
}).strict();
|
|
16769
16784
|
var threadCommandExecuteResultSchema = external_exports.object({
|
|
16770
16785
|
accepted: external_exports.literal(true),
|
|
16771
|
-
turnId: hostTurnIdSchema
|
|
16786
|
+
turnId: hostTurnIdSchema.optional()
|
|
16772
16787
|
}).strict();
|
|
16773
16788
|
|
|
16774
16789
|
// ../../shared-contracts/dist/json-rpc.js
|
|
@@ -27608,7 +27608,7 @@ var HARNESS_PERMISSION_MODE_CATALOG_MAX_LENGTH = 32;
|
|
|
27608
27608
|
var nonBlankTextSchema = external_exports.string().refine((value) => value.trim().length > 0, {
|
|
27609
27609
|
message: "Value must not be empty or whitespace"
|
|
27610
27610
|
});
|
|
27611
|
-
var harnessPermissionModeIdSchema = nonBlankTextSchema.max(HARNESS_PERMISSION_MODE_ID_MAX_LENGTH).regex(/^[A-Za-z0-9._
|
|
27611
|
+
var harnessPermissionModeIdSchema = nonBlankTextSchema.max(HARNESS_PERMISSION_MODE_ID_MAX_LENGTH).regex(/^[A-Za-z0-9._~:-]+$/u, "Permission Mode ID must use transport-safe characters").brand();
|
|
27612
27612
|
var harnessPermissionModeSchema = external_exports.object({
|
|
27613
27613
|
id: harnessPermissionModeIdSchema,
|
|
27614
27614
|
label: nonBlankTextSchema.max(HARNESS_PERMISSION_MODE_LABEL_MAX_LENGTH),
|
|
@@ -27992,7 +27992,12 @@ var threadInspectionParamsSchema = external_exports.object({
|
|
|
27992
27992
|
}).strict();
|
|
27993
27993
|
var codexThreadInspectionSchema = external_exports.object({
|
|
27994
27994
|
owner: external_exports.literal("codex"),
|
|
27995
|
-
locked: external_exports.
|
|
27995
|
+
locked: external_exports.boolean(),
|
|
27996
|
+
effectiveModel: harnessModelRefSchema.optional(),
|
|
27997
|
+
resolvedModelLabel: harnessResolvedModelLabelSchema.optional(),
|
|
27998
|
+
effectiveThinkingOptionId: harnessThinkingOptionIdSchema.optional(),
|
|
27999
|
+
effectivePermissionModeId: harnessPermissionModeIdSchema.optional(),
|
|
28000
|
+
history: harnessHistoryCapabilitiesSchema.optional(),
|
|
27996
28001
|
supportsThreadReferences: external_exports.literal(true).optional()
|
|
27997
28002
|
}).strict();
|
|
27998
28003
|
var externalThreadInspectionSchema = external_exports.object({
|
|
@@ -28214,7 +28219,8 @@ var clientThreadSnapshotSchema = external_exports.object({
|
|
|
28214
28219
|
thread: external_exports.object({
|
|
28215
28220
|
id: external_exports.string().min(1),
|
|
28216
28221
|
cwd: external_exports.string(),
|
|
28217
|
-
|
|
28222
|
+
/** External rows use codexhost; native Codex rows retain their official provider. */
|
|
28223
|
+
modelProvider: external_exports.string().min(1),
|
|
28218
28224
|
createdAt: external_exports.number(),
|
|
28219
28225
|
updatedAt: external_exports.number(),
|
|
28220
28226
|
status: external_exports.object({ type: external_exports.string() }).passthrough(),
|
|
@@ -28228,6 +28234,11 @@ var clientThreadSnapshotSchema = external_exports.object({
|
|
|
28228
28234
|
nextCursor: external_exports.string().nullable()
|
|
28229
28235
|
}),
|
|
28230
28236
|
configuration: external_exports.object({
|
|
28237
|
+
/** Native Codex model names are not external Harness transport refs. */
|
|
28238
|
+
native: external_exports.object({
|
|
28239
|
+
model: external_exports.string().min(1).max(1024).optional(),
|
|
28240
|
+
reasoningEffort: external_exports.string().min(1).max(128).optional()
|
|
28241
|
+
}).optional(),
|
|
28231
28242
|
effectiveModel: harnessModelRefSchema.optional(),
|
|
28232
28243
|
effectiveThinkingOptionId: harnessThinkingOptionIdSchema.optional(),
|
|
28233
28244
|
effectivePermissionModeId: harnessPermissionModeIdSchema.optional()
|
|
@@ -28254,6 +28265,21 @@ var clientChannelResponseSchema = external_exports.object({
|
|
|
28254
28265
|
result: record2
|
|
28255
28266
|
});
|
|
28256
28267
|
|
|
28268
|
+
// ../../shared-contracts/dist/thread-catalog.js
|
|
28269
|
+
var threadCatalogReadParamsSchema = external_exports.object({
|
|
28270
|
+
includeArchived: external_exports.boolean().optional(),
|
|
28271
|
+
/** Absent means first page; null means this branch is exhausted. Native cursors only. */
|
|
28272
|
+
officialCursor: external_exports.object({ live: external_exports.string().nullable(), archived: external_exports.string().nullable().optional() }).strict().optional()
|
|
28273
|
+
}).strict();
|
|
28274
|
+
var threadCatalogReadResultSchema = external_exports.object({
|
|
28275
|
+
threads: external_exports.array(jsonObjectSchema),
|
|
28276
|
+
ownership: external_exports.array(threadOwnershipSchema),
|
|
28277
|
+
/** Known archived IDs, including visible local external records even when their rows are
|
|
28278
|
+
* excluded. Native archived IDs describe only the returned page, never a complete set. */
|
|
28279
|
+
archivedThreadIds: external_exports.array(hostThreadIdSchema),
|
|
28280
|
+
officialCursor: external_exports.object({ live: external_exports.string().nullable(), archived: external_exports.string().nullable().optional() }).strict().optional()
|
|
28281
|
+
}).strict();
|
|
28282
|
+
|
|
28257
28283
|
// ../../shared-contracts/dist/voice.js
|
|
28258
28284
|
var VOICE_AUDIO_MAX_BYTES = 10 * 1024 * 1024;
|
|
28259
28285
|
var voiceAudioMimeTypeSchema = external_exports.string().regex(/^audio\/[a-z0-9.+-]+(?:\s*;[^\r\n]*)?$/i);
|
|
@@ -28466,96 +28492,19 @@ var idleReleaseSettingsSchema = external_exports.strictObject({
|
|
|
28466
28492
|
});
|
|
28467
28493
|
var DEFAULT_IDLE_RELEASE_SETTINGS = Object.freeze({
|
|
28468
28494
|
enabled: false,
|
|
28469
|
-
timeoutMinutes:
|
|
28470
|
-
});
|
|
28471
|
-
|
|
28472
|
-
// ../../shared-contracts/dist/harness-plugins.js
|
|
28473
|
-
var HARNESS_PLUGIN_MANIFEST_MAX_BYTES = 32 * 1024;
|
|
28474
|
-
var HARNESS_PLUGIN_ICON_MAX_BYTES = 128 * 1024;
|
|
28475
|
-
var HARNESS_PLUGIN_LIMIT = 128;
|
|
28476
|
-
var HARNESS_PLUGIN_SURFACES = ["desktop", "web"];
|
|
28477
|
-
var harnessPluginSurfaceSchema = external_exports.enum(HARNESS_PLUGIN_SURFACES);
|
|
28478
|
-
var installedHarnessPluginIdSchema = external_exports.string().min(1).max(128).regex(/^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$/u).pipe(harnessIdSchema);
|
|
28479
|
-
var harnessPluginIdSchema = installedHarnessPluginIdSchema.refine((id3) => id3 !== "codex", "The official Codex identity is reserved");
|
|
28480
|
-
var relativeResourceSchema = external_exports.string().min(1).max(512).refine((value) => !/[\\\u0000:#?]/u.test(value) && !value.startsWith("/") && !value.split("/").some((part) => part === ".." || part === ""), "Plugin resources must be relative paths inside the plugin");
|
|
28481
|
-
var documentationUrlSchema = external_exports.url().refine((value) => /^https:\/\/[^/?#@]+(?:[/?#]|$)/iu.test(value), "Plugin documentation links must be credential-free HTTPS URLs");
|
|
28482
|
-
var localizedTextSchema = external_exports.object({ en: external_exports.string().max(4096), "zh-CN": external_exports.string().max(4096).optional() }).strict();
|
|
28483
|
-
var harnessInstallationGuideSchema = external_exports.object({
|
|
28484
|
-
commands: external_exports.array(external_exports.object({ terminal: external_exports.string().max(256), command: external_exports.string().max(4096) }).strict()).max(8),
|
|
28485
|
-
before: localizedTextSchema.optional(),
|
|
28486
|
-
after: localizedTextSchema.optional(),
|
|
28487
|
-
downloads: external_exports.array(external_exports.object({ label: external_exports.string().max(128), url: documentationUrlSchema }).strict()).max(8).optional()
|
|
28488
|
-
}).strict();
|
|
28489
|
-
var pluginPresentationShape = {
|
|
28490
|
-
id: installedHarnessPluginIdSchema,
|
|
28491
|
-
name: external_exports.string().trim().min(1).max(128),
|
|
28492
|
-
version: external_exports.string().min(1).max(128),
|
|
28493
|
-
/** Capability-only plugin; omitted for existing session-capable plugins. */
|
|
28494
|
-
kind: external_exports.literal("usage").optional(),
|
|
28495
|
-
/** Original image styling or bounded vector paths; never arbitrary CSS/SVG markup. */
|
|
28496
|
-
iconStyle: external_exports.object({
|
|
28497
|
-
vector: external_exports.object({
|
|
28498
|
-
viewBox: external_exports.string().max(128).regex(/^-?\d+(?:\.\d+)?(?: +-?\d+(?:\.\d+)?){3}$/u),
|
|
28499
|
-
color: external_exports.string().regex(/^(?:currentColor|#[a-f0-9]{6})$/iu),
|
|
28500
|
-
paths: external_exports.array(external_exports.object({
|
|
28501
|
-
d: external_exports.string().min(1).max(32768).regex(/^[MmLlHhVvCcSsQqTtAaZz\d.,+eE\s-]+$/u),
|
|
28502
|
-
fillRule: external_exports.enum(["evenodd", "nonzero"]).optional(),
|
|
28503
|
-
fill: external_exports.string().regex(/^(?:currentColor|#[a-f0-9]{6})$/iu).optional()
|
|
28504
|
-
}).strict()).min(1).max(32)
|
|
28505
|
-
}).strict().optional(),
|
|
28506
|
-
background: external_exports.string().regex(/^#[a-f0-9]{6}$/iu).optional(),
|
|
28507
|
-
borderRadius: external_exports.number().min(0).max(50).optional(),
|
|
28508
|
-
paddingRatio: external_exports.number().min(0).max(0.25).optional()
|
|
28509
|
-
}).strict().optional(),
|
|
28510
|
-
installation: harnessInstallationGuideSchema.optional(),
|
|
28511
|
-
notice: localizedTextSchema.optional(),
|
|
28512
|
-
/** The factory accepts a persisted local entrypoint through its construction context. */
|
|
28513
|
-
launchCommand: external_exports.literal(true).optional(),
|
|
28514
|
-
links: external_exports.object({
|
|
28515
|
-
website: documentationUrlSchema.optional(),
|
|
28516
|
-
documentation: documentationUrlSchema.optional(),
|
|
28517
|
-
installation: documentationUrlSchema.optional()
|
|
28518
|
-
}).strict().optional()
|
|
28519
|
-
};
|
|
28520
|
-
var harnessPluginSurfacesSchema = external_exports.array(harnessPluginSurfaceSchema).min(1).max(HARNESS_PLUGIN_SURFACES.length).refine((surfaces) => new Set(surfaces).size === surfaces.length, {
|
|
28521
|
-
message: "Plugin surfaces must be unique"
|
|
28522
|
-
});
|
|
28523
|
-
var harnessPluginManifestSchema = external_exports.object({
|
|
28524
|
-
manifestVersion: external_exports.literal(1),
|
|
28525
|
-
...pluginPresentationShape,
|
|
28526
|
-
adapterApiVersion: external_exports.number().int().positive(),
|
|
28527
|
-
entry: relativeResourceSchema,
|
|
28528
|
-
icon: relativeResourceSchema.optional(),
|
|
28529
|
-
/** Omitted means the plugin appears in every surface; never inferred from its identity. */
|
|
28530
|
-
surfaces: harnessPluginSurfacesSchema.optional()
|
|
28531
|
-
}).strict();
|
|
28532
|
-
var harnessPluginIconSchema = external_exports.string().max(Math.ceil(HARNESS_PLUGIN_ICON_MAX_BYTES / 3) * 4 + 64).regex(/^data:image\/(?:png|jpeg|webp|svg\+xml);base64,[A-Za-z0-9+/]+={0,2}$/u);
|
|
28533
|
-
var harnessPluginDescriptorSchema = external_exports.object({
|
|
28534
|
-
...pluginPresentationShape,
|
|
28535
|
-
icon: harnessPluginIconSchema.optional()
|
|
28536
|
-
}).strict();
|
|
28537
|
-
var harnessPluginListParamsSchema = external_exports.object({}).strict();
|
|
28538
|
-
var harnessPluginListResultSchema = external_exports.object({
|
|
28539
|
-
plugins: external_exports.array(harnessPluginDescriptorSchema.extend({ id: harnessPluginIdSchema })).max(HARNESS_PLUGIN_LIMIT)
|
|
28540
|
-
}).strict();
|
|
28541
|
-
var harnessPluginConfigurationSchema = external_exports.object({
|
|
28542
|
-
version: external_exports.literal(1),
|
|
28543
|
-
enabled: external_exports.array(installedHarnessPluginIdSchema).max(HARNESS_PLUGIN_LIMIT)
|
|
28544
|
-
}).strict().refine((value) => new Set(value.enabled).size === value.enabled.length, {
|
|
28545
|
-
message: "Enabled plugin IDs must be unique",
|
|
28546
|
-
path: ["enabled"]
|
|
28495
|
+
timeoutMinutes: 10
|
|
28547
28496
|
});
|
|
28548
28497
|
|
|
28549
28498
|
// ../../shared-contracts/dist/harness-preferences.js
|
|
28550
28499
|
var harnessPreferenceScopeSchema = external_exports.string().regex(/^external$/u);
|
|
28551
|
-
var preferenceHarnessKey =
|
|
28500
|
+
var preferenceHarnessKey = harnessIdSchema.transform((id3) => String(id3));
|
|
28552
28501
|
var harnessDefaultConfigurationSchema = external_exports.strictObject({
|
|
28553
28502
|
model: harnessModelRefSchema.optional(),
|
|
28554
28503
|
thinkingOptionId: harnessThinkingOptionIdSchema.optional(),
|
|
28555
28504
|
permissionModeId: harnessPermissionModeIdSchema.optional()
|
|
28556
28505
|
}).refine((value) => Boolean(value.model || value.thinkingOptionId || value.permissionModeId), "A default configuration must contain a preference");
|
|
28557
28506
|
var newThreadDefaultsSchema = external_exports.strictObject({
|
|
28558
|
-
lastHarness:
|
|
28507
|
+
lastHarness: harnessIdSchema.optional(),
|
|
28559
28508
|
byHarness: external_exports.record(preferenceHarnessKey, harnessDefaultConfigurationSchema)
|
|
28560
28509
|
});
|
|
28561
28510
|
var modelId = external_exports.string().min(1).max(1024);
|
|
@@ -28576,19 +28525,19 @@ var harnessPreferenceOperationSchema = external_exports.discriminatedUnion("kind
|
|
|
28576
28525
|
external_exports.strictObject({ kind: external_exports.literal("idleRelease"), value: idleReleaseSettingsSchema }),
|
|
28577
28526
|
external_exports.strictObject({
|
|
28578
28527
|
kind: external_exports.literal("favorite"),
|
|
28579
|
-
harnessId:
|
|
28528
|
+
harnessId: harnessIdSchema,
|
|
28580
28529
|
modelId,
|
|
28581
28530
|
enabled: external_exports.boolean()
|
|
28582
28531
|
}),
|
|
28583
28532
|
external_exports.strictObject({
|
|
28584
28533
|
kind: external_exports.literal("favorites"),
|
|
28585
|
-
harnessId:
|
|
28534
|
+
harnessId: harnessIdSchema,
|
|
28586
28535
|
modelIds: external_exports.array(modelId).max(2048)
|
|
28587
28536
|
}),
|
|
28588
28537
|
external_exports.strictObject({
|
|
28589
28538
|
kind: external_exports.literal("newThread"),
|
|
28590
|
-
lastHarness:
|
|
28591
|
-
harnessId:
|
|
28539
|
+
lastHarness: harnessIdSchema.optional(),
|
|
28540
|
+
harnessId: harnessIdSchema.optional(),
|
|
28592
28541
|
configuration: harnessDefaultConfigurationSchema.optional()
|
|
28593
28542
|
})
|
|
28594
28543
|
]);
|
|
@@ -28604,12 +28553,6 @@ var harnessPreferencePatchSchema = external_exports.strictObject({
|
|
|
28604
28553
|
code: "custom",
|
|
28605
28554
|
message: "A default Harness or complete configuration is required"
|
|
28606
28555
|
});
|
|
28607
|
-
const harnessId = "harnessId" in operation ? operation.harnessId : void 0;
|
|
28608
|
-
if (harnessId === "codex")
|
|
28609
|
-
ctx.addIssue({
|
|
28610
|
-
code: "custom",
|
|
28611
|
-
message: "Official Codex is not an external Harness"
|
|
28612
|
-
});
|
|
28613
28556
|
}
|
|
28614
28557
|
});
|
|
28615
28558
|
var harnessPreferencesDocumentSchema = external_exports.strictObject({
|
|
@@ -28986,6 +28929,76 @@ var harnessAccountListResultSchema = external_exports.object({
|
|
|
28986
28929
|
accounts: external_exports.array(requireReportedQuota(harnessAccountSnapshotObject.extend(harnessAccountIdentityShape))).max(128)
|
|
28987
28930
|
}).strict();
|
|
28988
28931
|
|
|
28932
|
+
// ../../shared-contracts/dist/harness-plugins.js
|
|
28933
|
+
var HARNESS_PLUGIN_MANIFEST_MAX_BYTES = 32 * 1024;
|
|
28934
|
+
var HARNESS_PLUGIN_ICON_MAX_BYTES = 128 * 1024;
|
|
28935
|
+
var HARNESS_PLUGIN_LIMIT = 128;
|
|
28936
|
+
var installedHarnessPluginIdSchema = external_exports.string().min(1).max(128).regex(/^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$/u).pipe(harnessIdSchema);
|
|
28937
|
+
var harnessPluginIdSchema = installedHarnessPluginIdSchema.refine((id3) => id3 !== "codex", "The official Codex identity is reserved");
|
|
28938
|
+
var relativeResourceSchema = external_exports.string().min(1).max(512).refine((value) => !/[\\\u0000:#?]/u.test(value) && !value.startsWith("/") && !value.split("/").some((part) => part === ".." || part === ""), "Plugin resources must be relative paths inside the plugin");
|
|
28939
|
+
var documentationUrlSchema = external_exports.url().refine((value) => /^https:\/\/[^/?#@]+(?:[/?#]|$)/iu.test(value), "Plugin documentation links must be credential-free HTTPS URLs");
|
|
28940
|
+
var localizedTextSchema = external_exports.object({ en: external_exports.string().max(4096), "zh-CN": external_exports.string().max(4096).optional() }).strict();
|
|
28941
|
+
var harnessInstallationGuideSchema = external_exports.object({
|
|
28942
|
+
commands: external_exports.array(external_exports.object({ terminal: external_exports.string().max(256), command: external_exports.string().max(4096) }).strict()).max(8),
|
|
28943
|
+
before: localizedTextSchema.optional(),
|
|
28944
|
+
after: localizedTextSchema.optional(),
|
|
28945
|
+
downloads: external_exports.array(external_exports.object({ label: external_exports.string().max(128), url: documentationUrlSchema }).strict()).max(8).optional()
|
|
28946
|
+
}).strict();
|
|
28947
|
+
var pluginPresentationShape = {
|
|
28948
|
+
id: installedHarnessPluginIdSchema,
|
|
28949
|
+
name: external_exports.string().trim().min(1).max(128),
|
|
28950
|
+
version: external_exports.string().min(1).max(128),
|
|
28951
|
+
/** Capability-only plugin; omitted for existing session-capable plugins. */
|
|
28952
|
+
kind: external_exports.literal("usage").optional(),
|
|
28953
|
+
/** Original image styling or bounded vector paths; never arbitrary CSS/SVG markup. */
|
|
28954
|
+
iconStyle: external_exports.object({
|
|
28955
|
+
vector: external_exports.object({
|
|
28956
|
+
viewBox: external_exports.string().max(128).regex(/^-?\d+(?:\.\d+)?(?: +-?\d+(?:\.\d+)?){3}$/u),
|
|
28957
|
+
color: external_exports.string().regex(/^(?:currentColor|#[a-f0-9]{6})$/iu),
|
|
28958
|
+
paths: external_exports.array(external_exports.object({
|
|
28959
|
+
d: external_exports.string().min(1).max(32768).regex(/^[MmLlHhVvCcSsQqTtAaZz\d.,+eE\s-]+$/u),
|
|
28960
|
+
fillRule: external_exports.enum(["evenodd", "nonzero"]).optional(),
|
|
28961
|
+
fill: external_exports.string().regex(/^(?:currentColor|#[a-f0-9]{6})$/iu).optional()
|
|
28962
|
+
}).strict()).min(1).max(32)
|
|
28963
|
+
}).strict().optional(),
|
|
28964
|
+
background: external_exports.string().regex(/^#[a-f0-9]{6}$/iu).optional(),
|
|
28965
|
+
borderRadius: external_exports.number().min(0).max(50).optional(),
|
|
28966
|
+
paddingRatio: external_exports.number().min(0).max(0.25).optional()
|
|
28967
|
+
}).strict().optional(),
|
|
28968
|
+
installation: harnessInstallationGuideSchema.optional(),
|
|
28969
|
+
notice: localizedTextSchema.optional(),
|
|
28970
|
+
/** The factory accepts a persisted local entrypoint through its construction context. */
|
|
28971
|
+
launchCommand: external_exports.literal(true).optional(),
|
|
28972
|
+
links: external_exports.object({
|
|
28973
|
+
website: documentationUrlSchema.optional(),
|
|
28974
|
+
documentation: documentationUrlSchema.optional(),
|
|
28975
|
+
installation: documentationUrlSchema.optional()
|
|
28976
|
+
}).strict().optional()
|
|
28977
|
+
};
|
|
28978
|
+
var harnessPluginManifestSchema = external_exports.object({
|
|
28979
|
+
manifestVersion: external_exports.literal(1),
|
|
28980
|
+
...pluginPresentationShape,
|
|
28981
|
+
adapterApiVersion: external_exports.number().int().positive(),
|
|
28982
|
+
entry: relativeResourceSchema,
|
|
28983
|
+
icon: relativeResourceSchema.optional()
|
|
28984
|
+
}).strict();
|
|
28985
|
+
var harnessPluginIconSchema = external_exports.string().max(Math.ceil(HARNESS_PLUGIN_ICON_MAX_BYTES / 3) * 4 + 64).regex(/^data:image\/(?:png|jpeg|webp|svg\+xml);base64,[A-Za-z0-9+/]+={0,2}$/u);
|
|
28986
|
+
var harnessPluginDescriptorSchema = external_exports.object({
|
|
28987
|
+
...pluginPresentationShape,
|
|
28988
|
+
icon: harnessPluginIconSchema.optional()
|
|
28989
|
+
}).strict();
|
|
28990
|
+
var harnessPluginListParamsSchema = external_exports.object({}).strict();
|
|
28991
|
+
var harnessPluginListResultSchema = external_exports.object({
|
|
28992
|
+
plugins: external_exports.array(harnessPluginDescriptorSchema.extend({ id: harnessPluginIdSchema })).max(HARNESS_PLUGIN_LIMIT)
|
|
28993
|
+
}).strict();
|
|
28994
|
+
var harnessPluginConfigurationSchema = external_exports.object({
|
|
28995
|
+
version: external_exports.literal(1),
|
|
28996
|
+
enabled: external_exports.array(installedHarnessPluginIdSchema).max(HARNESS_PLUGIN_LIMIT)
|
|
28997
|
+
}).strict().refine((value) => new Set(value.enabled).size === value.enabled.length, {
|
|
28998
|
+
message: "Enabled plugin IDs must be unique",
|
|
28999
|
+
path: ["enabled"]
|
|
29000
|
+
});
|
|
29001
|
+
|
|
28989
29002
|
// ../../shared-contracts/dist/harness-route.js
|
|
28990
29003
|
var harnessPluginRouteSchema = external_exports.object({
|
|
28991
29004
|
harnessId: harnessPluginIdSchema,
|
|
@@ -29179,6 +29192,8 @@ var harnessCommandDescriptorSchema = external_exports.object({
|
|
|
29179
29192
|
}).strict();
|
|
29180
29193
|
var harnessCommandCatalogSchema = external_exports.object({
|
|
29181
29194
|
commands: external_exports.array(harnessCommandDescriptorSchema),
|
|
29195
|
+
/** Partial discovery failures; valid commands remain available. */
|
|
29196
|
+
warnings: external_exports.array(external_exports.string().min(1)).optional(),
|
|
29182
29197
|
/**
|
|
29183
29198
|
* `live` when the catalog includes what a native Session reports for its
|
|
29184
29199
|
* workspace (custom commands, skills); `static` for Adapter built-ins only.
|
|
@@ -29214,7 +29229,7 @@ var threadCommandExecuteParamsSchema = external_exports.object({
|
|
|
29214
29229
|
}).strict();
|
|
29215
29230
|
var threadCommandExecuteResultSchema = external_exports.object({
|
|
29216
29231
|
accepted: external_exports.literal(true),
|
|
29217
|
-
turnId: hostTurnIdSchema
|
|
29232
|
+
turnId: hostTurnIdSchema.optional()
|
|
29218
29233
|
}).strict();
|
|
29219
29234
|
|
|
29220
29235
|
// ../../shared-contracts/dist/json-rpc.js
|