@chinhae/codex-connect-linux-x64 0.11.0 → 0.12.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/host-runtime.mjs +5770 -549
- package/app/plugins/antigravity/plugin.mjs +326 -100
- package/app/plugins/claude-code/plugin.mjs +917 -308
- package/app/plugins/codebuddy/plugin.mjs +326 -100
- package/app/plugins/cursor-cli/plugin.mjs +326 -100
- package/app/plugins/deepseek-harness/plugin.mjs +326 -100
- package/app/plugins/grok/plugin.mjs +326 -100
- package/app/plugins/hermes/plugin.mjs +328 -100
- package/app/plugins/kimi-code/plugin.mjs +326 -100
- package/app/plugins/kiro-cli/plugin.mjs +326 -100
- package/app/plugins/omp/plugin.mjs +1130 -248
- package/app/plugins/opencode/plugin.mjs +326 -100
- package/app/plugins/pi/plugin.mjs +807 -245
- package/app/plugins/qoder/plugin.mjs +326 -100
- package/app/plugins/qoder-cn/plugin.mjs +326 -100
- package/app/plugins/workbuddy/plugin.mjs +326 -100
- package/app/renderer-extension.js +2489 -1884
- package/bin/codexhost +0 -0
- package/libexec/codexhost-shim +0 -0
- package/libexec/codexhost-updater +0 -0
- package/package.json +1 -1
|
@@ -14627,6 +14627,304 @@ var hostTurnIdSchema = opaqueIdSchema.brand();
|
|
|
14627
14627
|
var hostItemIdSchema = opaqueIdSchema.brand();
|
|
14628
14628
|
var hostInteractionIdSchema = opaqueIdSchema.brand();
|
|
14629
14629
|
|
|
14630
|
+
// ../../shared-contracts/dist/harness-plugins.js
|
|
14631
|
+
var HARNESS_PLUGIN_MANIFEST_MAX_BYTES = 32 * 1024;
|
|
14632
|
+
var HARNESS_PLUGIN_ICON_MAX_BYTES = 128 * 1024;
|
|
14633
|
+
var HARNESS_PLUGIN_LIMIT = 128;
|
|
14634
|
+
var harnessPluginIdSchema = external_exports.string().min(1).max(128).regex(/^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$/u).refine((id) => id !== "codex", "The official Codex identity is reserved").pipe(harnessIdSchema);
|
|
14635
|
+
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");
|
|
14636
|
+
var documentationUrlSchema = external_exports.url().refine((value) => /^https:\/\/[^/?#@]+(?:[/?#]|$)/iu.test(value), "Plugin documentation links must be credential-free HTTPS URLs");
|
|
14637
|
+
var pluginPresentationShape = {
|
|
14638
|
+
id: harnessPluginIdSchema,
|
|
14639
|
+
name: external_exports.string().trim().min(1).max(128),
|
|
14640
|
+
version: external_exports.string().min(1).max(128),
|
|
14641
|
+
/** The factory accepts a persisted local entrypoint through its construction context. */
|
|
14642
|
+
launchCommand: external_exports.literal(true).optional(),
|
|
14643
|
+
links: external_exports.object({
|
|
14644
|
+
documentation: documentationUrlSchema.optional(),
|
|
14645
|
+
installation: documentationUrlSchema.optional()
|
|
14646
|
+
}).strict().optional()
|
|
14647
|
+
};
|
|
14648
|
+
var harnessPluginManifestSchema = external_exports.object({
|
|
14649
|
+
manifestVersion: external_exports.literal(1),
|
|
14650
|
+
...pluginPresentationShape,
|
|
14651
|
+
adapterApiVersion: external_exports.number().int().positive(),
|
|
14652
|
+
entry: relativeResourceSchema,
|
|
14653
|
+
icon: relativeResourceSchema.optional()
|
|
14654
|
+
}).strict();
|
|
14655
|
+
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);
|
|
14656
|
+
var harnessPluginDescriptorSchema = external_exports.object({
|
|
14657
|
+
...pluginPresentationShape,
|
|
14658
|
+
icon: harnessPluginIconSchema.optional()
|
|
14659
|
+
}).strict();
|
|
14660
|
+
var harnessPluginListParamsSchema = external_exports.object({}).strict();
|
|
14661
|
+
var harnessPluginListResultSchema = external_exports.object({
|
|
14662
|
+
plugins: external_exports.array(harnessPluginDescriptorSchema).max(HARNESS_PLUGIN_LIMIT)
|
|
14663
|
+
}).strict();
|
|
14664
|
+
var harnessPluginConfigurationSchema = external_exports.object({
|
|
14665
|
+
version: external_exports.literal(1),
|
|
14666
|
+
enabled: external_exports.array(harnessPluginIdSchema).max(HARNESS_PLUGIN_LIMIT)
|
|
14667
|
+
}).strict().refine((value) => new Set(value.enabled).size === value.enabled.length, {
|
|
14668
|
+
message: "Enabled plugin IDs must be unique",
|
|
14669
|
+
path: ["enabled"]
|
|
14670
|
+
});
|
|
14671
|
+
|
|
14672
|
+
// ../../shared-contracts/dist/local-usage.js
|
|
14673
|
+
var LOCAL_USAGE_CUSTOM_RANGE_MAX_DAYS = 3660;
|
|
14674
|
+
var LOCAL_USAGE_DAILY_MAX_LENGTH = LOCAL_USAGE_CUSTOM_RANGE_MAX_DAYS + 1;
|
|
14675
|
+
var LOCAL_USAGE_HARNESS_MAX_LENGTH = 128;
|
|
14676
|
+
var LOCAL_USAGE_HARNESS_NAME_MAX_LENGTH = 128;
|
|
14677
|
+
var LOCAL_USAGE_PROVIDER_MAX_LENGTH = 128;
|
|
14678
|
+
var LOCAL_USAGE_PROVIDER_NAME_MAX_LENGTH = 1024;
|
|
14679
|
+
var LOCAL_USAGE_PROJECT_MAX_LENGTH = 1e3;
|
|
14680
|
+
var LOCAL_USAGE_PROJECT_NAME_MAX_LENGTH = 1024;
|
|
14681
|
+
var LOCAL_USAGE_TIME_ZONE_MAX_LENGTH = 64;
|
|
14682
|
+
var DAY_MS = 864e5;
|
|
14683
|
+
function dateValue(value) {
|
|
14684
|
+
return Date.parse(`${value}T00:00:00.000Z`);
|
|
14685
|
+
}
|
|
14686
|
+
var localUsageDateSchema = external_exports.string().regex(/^\d{4}-\d{2}-\d{2}$/u).refine((value) => {
|
|
14687
|
+
const time3 = dateValue(value);
|
|
14688
|
+
return Number.isFinite(time3) && new Date(time3).toISOString().slice(0, 10) === value;
|
|
14689
|
+
}, "Invalid calendar date");
|
|
14690
|
+
var timeZoneSchema = external_exports.string().min(1).max(LOCAL_USAGE_TIME_ZONE_MAX_LENGTH).refine((value) => {
|
|
14691
|
+
try {
|
|
14692
|
+
new Intl.DateTimeFormat("en-US", { timeZone: value });
|
|
14693
|
+
return true;
|
|
14694
|
+
} catch {
|
|
14695
|
+
return false;
|
|
14696
|
+
}
|
|
14697
|
+
}, "Unknown time zone");
|
|
14698
|
+
var localUsagePeriodSchema = external_exports.discriminatedUnion("kind", [
|
|
14699
|
+
external_exports.strictObject({ kind: external_exports.literal("day") }),
|
|
14700
|
+
// Weeks start on Monday.
|
|
14701
|
+
external_exports.strictObject({ kind: external_exports.literal("week") }),
|
|
14702
|
+
external_exports.strictObject({ kind: external_exports.literal("month") }),
|
|
14703
|
+
// The first day of the month 23 months ago through today.
|
|
14704
|
+
external_exports.strictObject({ kind: external_exports.literal("total") }),
|
|
14705
|
+
external_exports.strictObject({
|
|
14706
|
+
kind: external_exports.literal("custom"),
|
|
14707
|
+
from: localUsageDateSchema,
|
|
14708
|
+
to: localUsageDateSchema
|
|
14709
|
+
}).superRefine((period, context) => {
|
|
14710
|
+
const days = (dateValue(period.to) - dateValue(period.from)) / DAY_MS;
|
|
14711
|
+
if (days < 0) {
|
|
14712
|
+
context.addIssue({ code: "custom", path: ["to"], message: "Range ends before it starts" });
|
|
14713
|
+
} else if (days >= LOCAL_USAGE_CUSTOM_RANGE_MAX_DAYS) {
|
|
14714
|
+
context.addIssue({ code: "custom", path: ["to"], message: "Range is too long" });
|
|
14715
|
+
}
|
|
14716
|
+
})
|
|
14717
|
+
]);
|
|
14718
|
+
var localUsageQueryParamsSchema = external_exports.strictObject({
|
|
14719
|
+
period: localUsagePeriodSchema,
|
|
14720
|
+
/** IANA zone used to assign usage to calendar days. */
|
|
14721
|
+
timeZone: timeZoneSchema,
|
|
14722
|
+
/** Read new native records before answering; otherwise reuse this Host's last read. */
|
|
14723
|
+
refresh: external_exports.boolean()
|
|
14724
|
+
});
|
|
14725
|
+
var countSchema = external_exports.number().int().nonnegative().safe();
|
|
14726
|
+
var tokenTotalsShape = {
|
|
14727
|
+
total: countSchema,
|
|
14728
|
+
/** Input tokens excluding cache reads and writes. */
|
|
14729
|
+
input: countSchema,
|
|
14730
|
+
cacheRead: countSchema,
|
|
14731
|
+
cacheWrite: countSchema,
|
|
14732
|
+
output: countSchema,
|
|
14733
|
+
reasoning: countSchema
|
|
14734
|
+
};
|
|
14735
|
+
var usageHarnessIdSchema = external_exports.union([external_exports.literal("codex"), harnessPluginIdSchema]);
|
|
14736
|
+
var localUsageViewSchema = external_exports.strictObject({
|
|
14737
|
+
status: external_exports.literal("ready"),
|
|
14738
|
+
range: external_exports.strictObject({ from: localUsageDateSchema, to: localUsageDateSchema }),
|
|
14739
|
+
totals: external_exports.strictObject({ ...tokenTotalsShape, conversations: countSchema }).refine((totals) => totals.total === totals.input + totals.cacheRead + totals.cacheWrite + totals.output + totals.reasoning, { path: ["total"], message: "Total must equal its parts" }),
|
|
14740
|
+
/**
|
|
14741
|
+
* Estimated Cost of the range in USD: Harness-reported cost where present, otherwise public
|
|
14742
|
+
* model prices applied when queried. Models without a price add 0.
|
|
14743
|
+
*/
|
|
14744
|
+
estimatedCostUsd: external_exports.number().nonnegative().finite(),
|
|
14745
|
+
/** Distinct Models with usage in the range, across Harnesses. */
|
|
14746
|
+
models: countSchema,
|
|
14747
|
+
harnesses: external_exports.array(external_exports.strictObject({
|
|
14748
|
+
harnessId: usageHarnessIdSchema,
|
|
14749
|
+
name: external_exports.string().trim().min(1).max(LOCAL_USAGE_HARNESS_NAME_MAX_LENGTH),
|
|
14750
|
+
totalTokens: countSchema,
|
|
14751
|
+
models: countSchema,
|
|
14752
|
+
/** Providers the Harness recorded, by usage; empty when it records none. */
|
|
14753
|
+
providers: external_exports.array(external_exports.strictObject({
|
|
14754
|
+
provider: external_exports.string().min(1).max(LOCAL_USAGE_PROVIDER_NAME_MAX_LENGTH),
|
|
14755
|
+
totalTokens: countSchema,
|
|
14756
|
+
models: countSchema
|
|
14757
|
+
})).max(LOCAL_USAGE_PROVIDER_MAX_LENGTH)
|
|
14758
|
+
}).refine((harness) => harness.providers.reduce((sum, provider) => sum + provider.totalTokens, 0) <= harness.totalTokens, { path: ["providers"], message: "Providers are part of their Harness" })).max(LOCAL_USAGE_HARNESS_MAX_LENGTH),
|
|
14759
|
+
/** Days with usage, newest first. `cacheRead` is the daily cache column. */
|
|
14760
|
+
daily: external_exports.array(external_exports.strictObject({
|
|
14761
|
+
date: localUsageDateSchema,
|
|
14762
|
+
total: countSchema,
|
|
14763
|
+
input: countSchema,
|
|
14764
|
+
output: countSchema,
|
|
14765
|
+
cacheRead: countSchema,
|
|
14766
|
+
reasoning: countSchema,
|
|
14767
|
+
conversations: countSchema
|
|
14768
|
+
})).max(LOCAL_USAGE_DAILY_MAX_LENGTH),
|
|
14769
|
+
/**
|
|
14770
|
+
* Usage with a known working directory, by project, most used first: `owner/repo` from the Git
|
|
14771
|
+
* remote, otherwise the folder name. Only the most used projects are listed.
|
|
14772
|
+
*/
|
|
14773
|
+
projects: external_exports.array(external_exports.strictObject({
|
|
14774
|
+
project: external_exports.string().min(1).max(LOCAL_USAGE_PROJECT_NAME_MAX_LENGTH),
|
|
14775
|
+
totalTokens: countSchema,
|
|
14776
|
+
/** Harnesses used in the project, most used first. */
|
|
14777
|
+
harnessIds: external_exports.array(usageHarnessIdSchema).min(1).max(LOCAL_USAGE_HARNESS_MAX_LENGTH)
|
|
14778
|
+
})).max(LOCAL_USAGE_PROJECT_MAX_LENGTH),
|
|
14779
|
+
/** Harnesses whose last read failed; their totals are from their last successful read. */
|
|
14780
|
+
failures: external_exports.array(external_exports.strictObject({
|
|
14781
|
+
harnessId: usageHarnessIdSchema,
|
|
14782
|
+
name: external_exports.string().trim().min(1).max(LOCAL_USAGE_HARNESS_NAME_MAX_LENGTH)
|
|
14783
|
+
})).max(LOCAL_USAGE_HARNESS_MAX_LENGTH),
|
|
14784
|
+
/**
|
|
14785
|
+
* Independent of the selected period. Windows end today; an active day has tokens.
|
|
14786
|
+
* `dailyAverage` is the last 30 days' total over their active days, rounded.
|
|
14787
|
+
*/
|
|
14788
|
+
stats: external_exports.strictObject({
|
|
14789
|
+
last7Days: countSchema,
|
|
14790
|
+
last30Days: countSchema,
|
|
14791
|
+
dailyAverage: countSchema,
|
|
14792
|
+
/** Active days across all counted history, not only the "total" period. */
|
|
14793
|
+
activeDays: countSchema,
|
|
14794
|
+
firstActiveDate: localUsageDateSchema.nullable()
|
|
14795
|
+
}).superRefine((stats, context) => {
|
|
14796
|
+
if (stats.firstActiveDate === null !== (stats.activeDays === 0)) {
|
|
14797
|
+
context.addIssue({
|
|
14798
|
+
code: "custom",
|
|
14799
|
+
path: ["firstActiveDate"],
|
|
14800
|
+
message: "First active date exists exactly when there are active days"
|
|
14801
|
+
});
|
|
14802
|
+
}
|
|
14803
|
+
if (stats.last7Days > stats.last30Days) {
|
|
14804
|
+
context.addIssue({
|
|
14805
|
+
code: "custom",
|
|
14806
|
+
path: ["last7Days"],
|
|
14807
|
+
message: "The last 7 days are part of the last 30 days"
|
|
14808
|
+
});
|
|
14809
|
+
}
|
|
14810
|
+
})
|
|
14811
|
+
});
|
|
14812
|
+
var localUsageReadingSchema = external_exports.strictObject({
|
|
14813
|
+
status: external_exports.literal("reading"),
|
|
14814
|
+
/** Native record files read so far by the sources that report progress. */
|
|
14815
|
+
progress: external_exports.strictObject({ processed: countSchema, total: countSchema }).refine((progress) => progress.processed <= progress.total, {
|
|
14816
|
+
path: ["processed"],
|
|
14817
|
+
message: "Processed files are part of the total"
|
|
14818
|
+
})
|
|
14819
|
+
});
|
|
14820
|
+
var localUsageQueryResultSchema = external_exports.discriminatedUnion("status", [
|
|
14821
|
+
localUsageReadingSchema,
|
|
14822
|
+
localUsageViewSchema
|
|
14823
|
+
]);
|
|
14824
|
+
|
|
14825
|
+
// ../../shared-contracts/dist/harness-session-import.js
|
|
14826
|
+
var HARNESS_SESSION_IMPORT_ID_MAX_LENGTH = 1024;
|
|
14827
|
+
var HARNESS_SESSION_IMPORT_CWD_MAX_LENGTH = 16384;
|
|
14828
|
+
var HARNESS_SESSION_IMPORT_TITLE_MAX_LENGTH = 4096;
|
|
14829
|
+
var HARNESS_SESSION_IMPORT_LIST_MAX_LENGTH = 1e3;
|
|
14830
|
+
var HARNESS_SESSION_IMPORT_UPDATED_AT_MAX = 864e13;
|
|
14831
|
+
var nonBlankTextSchema = external_exports.string().refine((value) => value.trim().length > 0, "Value must not be empty or whitespace").refine((value) => !value.includes("\0"), "Value must not contain NUL");
|
|
14832
|
+
var harnessSessionImportIdSchema = nonBlankTextSchema.max(HARNESS_SESSION_IMPORT_ID_MAX_LENGTH);
|
|
14833
|
+
var harnessSessionImportCandidateSchema = external_exports.object({
|
|
14834
|
+
nativeSessionId: harnessSessionImportIdSchema,
|
|
14835
|
+
title: nonBlankTextSchema.max(HARNESS_SESSION_IMPORT_TITLE_MAX_LENGTH).nullable(),
|
|
14836
|
+
updatedAt: external_exports.number().int().nonnegative().max(HARNESS_SESSION_IMPORT_UPDATED_AT_MAX),
|
|
14837
|
+
cwd: nonBlankTextSchema.max(HARNESS_SESSION_IMPORT_CWD_MAX_LENGTH),
|
|
14838
|
+
// Native file discovery cannot reliably observe another process's activity.
|
|
14839
|
+
running: external_exports.boolean().nullable()
|
|
14840
|
+
}).strict();
|
|
14841
|
+
var harnessSessionImportSourcesParamsSchema = external_exports.object({}).strict();
|
|
14842
|
+
var harnessSessionImportSourcesResultSchema = external_exports.object({
|
|
14843
|
+
harnesses: external_exports.array(external_exports.object({
|
|
14844
|
+
harnessId: harnessPluginIdSchema,
|
|
14845
|
+
name: nonBlankTextSchema.max(128)
|
|
14846
|
+
}).strict()).max(128)
|
|
14847
|
+
}).strict();
|
|
14848
|
+
var harnessSessionListParamsSchema = external_exports.object({
|
|
14849
|
+
harnessId: harnessPluginIdSchema,
|
|
14850
|
+
query: external_exports.string().trim().max(4096).refine((value) => !value.includes("\0")).optional(),
|
|
14851
|
+
offset: external_exports.number().int().nonnegative().safe().optional(),
|
|
14852
|
+
limit: external_exports.number().int().min(1).max(HARNESS_SESSION_IMPORT_LIST_MAX_LENGTH).optional()
|
|
14853
|
+
}).strict();
|
|
14854
|
+
var harnessSessionListResultSchema = external_exports.object({
|
|
14855
|
+
candidates: external_exports.array(harnessSessionImportCandidateSchema).max(HARNESS_SESSION_IMPORT_LIST_MAX_LENGTH),
|
|
14856
|
+
total: external_exports.number().int().nonnegative().safe()
|
|
14857
|
+
}).strict();
|
|
14858
|
+
var harnessSessionImportParamsSchema = external_exports.object({
|
|
14859
|
+
harnessId: harnessPluginIdSchema,
|
|
14860
|
+
nativeSessionId: harnessSessionImportIdSchema
|
|
14861
|
+
}).strict();
|
|
14862
|
+
var harnessSessionImportResultSchema = external_exports.object({
|
|
14863
|
+
threadId: nonBlankTextSchema.max(1024).pipe(hostThreadIdSchema)
|
|
14864
|
+
}).strict();
|
|
14865
|
+
|
|
14866
|
+
// ../../shared-contracts/dist/local-sessions.js
|
|
14867
|
+
var LOCAL_SESSIONS_MAX_LENGTH = 1e5;
|
|
14868
|
+
var LOCAL_SESSIONS_MODEL_MAX_LENGTH = 1024;
|
|
14869
|
+
var LOCAL_SESSIONS_RESUME_COMMAND_MAX_LENGTH = 256;
|
|
14870
|
+
var LOCAL_SESSIONS_RESUME_COMMAND_PATTERN = /^[A-Za-z0-9][A-Za-z0-9 ._:=/-]*$/u;
|
|
14871
|
+
var countSchema2 = external_exports.number().int().nonnegative().safe();
|
|
14872
|
+
var timeSchema = countSchema2;
|
|
14873
|
+
var sessionHarnessIdSchema = external_exports.union([external_exports.literal("codex"), harnessPluginIdSchema]);
|
|
14874
|
+
var harnessNameSchema = external_exports.string().trim().min(1).max(LOCAL_USAGE_HARNESS_NAME_MAX_LENGTH);
|
|
14875
|
+
var localSessionsQueryParamsSchema = external_exports.strictObject({
|
|
14876
|
+
/** Read native records added since the last read before answering. */
|
|
14877
|
+
refresh: external_exports.boolean()
|
|
14878
|
+
});
|
|
14879
|
+
var localSessionSchema = external_exports.strictObject({
|
|
14880
|
+
harnessId: sessionHarnessIdSchema,
|
|
14881
|
+
nativeSessionId: harnessSessionImportIdSchema,
|
|
14882
|
+
/** The Harness's own name for the Session; null shows the project instead. */
|
|
14883
|
+
title: external_exports.string().min(1).max(HARNESS_SESSION_IMPORT_TITLE_MAX_LENGTH).nullable(),
|
|
14884
|
+
/** Working directory, used to copy the project path or a resume command. */
|
|
14885
|
+
cwd: external_exports.string().min(1).max(HARNESS_SESSION_IMPORT_CWD_MAX_LENGTH).nullable(),
|
|
14886
|
+
/** `owner/repo` from the Git remote, otherwise the folder name. */
|
|
14887
|
+
project: external_exports.string().min(1).max(LOCAL_USAGE_PROJECT_NAME_MAX_LENGTH).nullable(),
|
|
14888
|
+
model: external_exports.string().min(1).max(LOCAL_SESSIONS_MODEL_MAX_LENGTH).nullable(),
|
|
14889
|
+
startedAt: timeSchema.nullable(),
|
|
14890
|
+
lastActivityAt: timeSchema,
|
|
14891
|
+
/** Null for Sessions known only from Session import, which has no native usage. */
|
|
14892
|
+
activeMs: countSchema2.nullable(),
|
|
14893
|
+
usage: external_exports.strictObject({
|
|
14894
|
+
/** Includes folded subagents. */
|
|
14895
|
+
totalTokens: countSchema2,
|
|
14896
|
+
estimatedCostUsd: external_exports.number().nonnegative().finite()
|
|
14897
|
+
}).nullable(),
|
|
14898
|
+
turns: countSchema2.nullable(),
|
|
14899
|
+
edits: countSchema2.nullable(),
|
|
14900
|
+
/** Subagent and child Sessions folded into this one. */
|
|
14901
|
+
subagents: countSchema2,
|
|
14902
|
+
/** The Thread this Session is already mapped to. */
|
|
14903
|
+
threadId: hostThreadIdSchema.nullable(),
|
|
14904
|
+
/** Whether Resume can open it as a Thread. */
|
|
14905
|
+
resumable: external_exports.boolean(),
|
|
14906
|
+
/** Null when the Harness cannot tell whether another client is running it. */
|
|
14907
|
+
running: external_exports.boolean().nullable(),
|
|
14908
|
+
/**
|
|
14909
|
+
* Resumes the Session in its Harness's own CLI when run from `cwd`; null when the Harness has
|
|
14910
|
+
* no such command or the Session ID is not safe to paste into a terminal.
|
|
14911
|
+
*/
|
|
14912
|
+
resumeCommand: external_exports.string().max(LOCAL_SESSIONS_RESUME_COMMAND_MAX_LENGTH).regex(LOCAL_SESSIONS_RESUME_COMMAND_PATTERN).nullable()
|
|
14913
|
+
});
|
|
14914
|
+
var localSessionsViewSchema = external_exports.strictObject({
|
|
14915
|
+
status: external_exports.literal("ready"),
|
|
14916
|
+
/** Most recently active first. */
|
|
14917
|
+
sessions: external_exports.array(localSessionSchema).max(LOCAL_SESSIONS_MAX_LENGTH),
|
|
14918
|
+
/** Harnesses with listed Sessions, by name. */
|
|
14919
|
+
harnesses: external_exports.array(external_exports.strictObject({ harnessId: sessionHarnessIdSchema, name: harnessNameSchema })).max(LOCAL_USAGE_HARNESS_MAX_LENGTH),
|
|
14920
|
+
/** Sources whose last read failed; their Sessions are from their last successful read. */
|
|
14921
|
+
failures: external_exports.array(external_exports.strictObject({ harnessId: sessionHarnessIdSchema, name: harnessNameSchema })).max(LOCAL_USAGE_HARNESS_MAX_LENGTH)
|
|
14922
|
+
});
|
|
14923
|
+
var localSessionsQueryResultSchema = external_exports.discriminatedUnion("status", [
|
|
14924
|
+
localUsageReadingSchema,
|
|
14925
|
+
localSessionsViewSchema
|
|
14926
|
+
]);
|
|
14927
|
+
|
|
14630
14928
|
// ../../shared-contracts/dist/thread-usage.js
|
|
14631
14929
|
var nonNegativeSafeIntegerSchema = external_exports.number().int().safe().nonnegative();
|
|
14632
14930
|
var finiteNonNegativeNumberSchema = external_exports.number().finite().nonnegative();
|
|
@@ -14690,10 +14988,18 @@ var accountCreditsProductUsageSchema = external_exports.object({
|
|
|
14690
14988
|
usagePercent: usagePercentSchema,
|
|
14691
14989
|
resetsAt: external_exports.string().min(1).optional()
|
|
14692
14990
|
}).strict();
|
|
14991
|
+
var ACCOUNT_RESET_CREDITS_MAX_LENGTH = 32;
|
|
14992
|
+
var ACCOUNT_RESET_CREDIT_TIME_MAX_LENGTH = 64;
|
|
14993
|
+
var resetCreditTimeSchema = external_exports.string().min(1).max(ACCOUNT_RESET_CREDIT_TIME_MAX_LENGTH);
|
|
14994
|
+
var accountResetCreditSchema = external_exports.object({
|
|
14995
|
+
expiresAt: resetCreditTimeSchema,
|
|
14996
|
+
grantedAt: resetCreditTimeSchema.optional()
|
|
14997
|
+
}).strict();
|
|
14693
14998
|
var accountResetCreditsSchema = external_exports.object({
|
|
14694
14999
|
availableCount: external_exports.number().int().safe().positive(),
|
|
14695
15000
|
nextExpiresAt: external_exports.string().min(1).optional(),
|
|
14696
|
-
expiresAt: external_exports.array(external_exports.string().min(1)).min(1).max(
|
|
15001
|
+
expiresAt: external_exports.array(external_exports.string().min(1)).min(1).max(ACCOUNT_RESET_CREDITS_MAX_LENGTH).optional(),
|
|
15002
|
+
credits: external_exports.array(accountResetCreditSchema).min(1).max(ACCOUNT_RESET_CREDITS_MAX_LENGTH).optional()
|
|
14697
15003
|
}).strict();
|
|
14698
15004
|
var accountCreditsSnapshotSchema = external_exports.object({
|
|
14699
15005
|
/** Native label when the primary limit is scoped to a model or product group. */
|
|
@@ -14813,14 +15119,14 @@ var HARNESS_PERMISSION_MODE_ID_MAX_LENGTH = 128;
|
|
|
14813
15119
|
var HARNESS_PERMISSION_MODE_LABEL_MAX_LENGTH = 256;
|
|
14814
15120
|
var HARNESS_PERMISSION_MODE_DESCRIPTION_MAX_LENGTH = 1024;
|
|
14815
15121
|
var HARNESS_PERMISSION_MODE_CATALOG_MAX_LENGTH = 32;
|
|
14816
|
-
var
|
|
15122
|
+
var nonBlankTextSchema2 = external_exports.string().refine((value) => value.trim().length > 0, {
|
|
14817
15123
|
message: "Value must not be empty or whitespace"
|
|
14818
15124
|
});
|
|
14819
|
-
var harnessPermissionModeIdSchema =
|
|
15125
|
+
var harnessPermissionModeIdSchema = nonBlankTextSchema2.max(HARNESS_PERMISSION_MODE_ID_MAX_LENGTH).regex(/^[A-Za-z0-9._~-]+$/u, "Permission Mode ID must use transport-safe characters").brand();
|
|
14820
15126
|
var harnessPermissionModeSchema = external_exports.object({
|
|
14821
15127
|
id: harnessPermissionModeIdSchema,
|
|
14822
|
-
label:
|
|
14823
|
-
description:
|
|
15128
|
+
label: nonBlankTextSchema2.max(HARNESS_PERMISSION_MODE_LABEL_MAX_LENGTH),
|
|
15129
|
+
description: nonBlankTextSchema2.max(HARNESS_PERMISSION_MODE_DESCRIPTION_MAX_LENGTH).optional(),
|
|
14824
15130
|
dangerous: external_exports.boolean().optional()
|
|
14825
15131
|
}).strict();
|
|
14826
15132
|
var harnessPermissionModeCatalogSchema = external_exports.object({
|
|
@@ -14856,22 +15162,22 @@ var HARNESS_MODEL_REF_MAX_LENGTH = 512;
|
|
|
14856
15162
|
var HARNESS_MODEL_LABEL_MAX_LENGTH = 256;
|
|
14857
15163
|
var HARNESS_THINKING_OPTION_ID_MAX_LENGTH = 128;
|
|
14858
15164
|
var THREAD_OWNERSHIP_LIST_MAX_LENGTH = 100;
|
|
14859
|
-
var
|
|
15165
|
+
var nonBlankTextSchema3 = external_exports.string().refine((value) => value.trim().length > 0, {
|
|
14860
15166
|
message: "Value must not be empty or whitespace"
|
|
14861
15167
|
});
|
|
14862
|
-
var harnessModelRefIdSchema =
|
|
15168
|
+
var harnessModelRefIdSchema = nonBlankTextSchema3.max(HARNESS_MODEL_REF_MAX_LENGTH).regex(/^[A-Za-z0-9._~-]+$/u, "Model Ref must use transport-safe opaque characters").brand();
|
|
14863
15169
|
var harnessModelRefSchema = external_exports.object({
|
|
14864
15170
|
id: harnessModelRefIdSchema
|
|
14865
15171
|
}).strict();
|
|
14866
|
-
var harnessThinkingOptionIdSchema =
|
|
14867
|
-
var harnessResolvedModelLabelSchema =
|
|
15172
|
+
var harnessThinkingOptionIdSchema = nonBlankTextSchema3.max(HARNESS_THINKING_OPTION_ID_MAX_LENGTH).regex(/^[A-Za-z0-9._~-]+$/u, "Thinking option ID must use transport-safe characters").brand();
|
|
15173
|
+
var harnessResolvedModelLabelSchema = nonBlankTextSchema3.max(HARNESS_MODEL_LABEL_MAX_LENGTH);
|
|
14868
15174
|
var harnessThinkingOptionSchema = external_exports.object({
|
|
14869
15175
|
id: harnessThinkingOptionIdSchema,
|
|
14870
|
-
label:
|
|
15176
|
+
label: nonBlankTextSchema3.max(HARNESS_MODEL_LABEL_MAX_LENGTH)
|
|
14871
15177
|
}).strict();
|
|
14872
15178
|
var harnessModelSchema = external_exports.object({
|
|
14873
15179
|
ref: harnessModelRefSchema,
|
|
14874
|
-
label:
|
|
15180
|
+
label: nonBlankTextSchema3.max(HARNESS_MODEL_LABEL_MAX_LENGTH),
|
|
14875
15181
|
resolvedModelLabel: harnessResolvedModelLabelSchema.optional(),
|
|
14876
15182
|
supportedThinkingOptionIds: external_exports.array(harnessThinkingOptionIdSchema).optional()
|
|
14877
15183
|
}).strict();
|
|
@@ -15008,7 +15314,7 @@ var harnessInspectionSchema = external_exports.union([
|
|
|
15008
15314
|
]);
|
|
15009
15315
|
var harnessInspectParamsSchema = external_exports.object({
|
|
15010
15316
|
harnessId: harnessIdSchema,
|
|
15011
|
-
cwd:
|
|
15317
|
+
cwd: nonBlankTextSchema3.max(16384).optional(),
|
|
15012
15318
|
refresh: external_exports.boolean().optional()
|
|
15013
15319
|
}).strict();
|
|
15014
15320
|
var harnessWebUiOpenParamsSchema = external_exports.object({
|
|
@@ -15032,8 +15338,8 @@ var codexThreadInspectionSchema = external_exports.object({
|
|
|
15032
15338
|
}).strict();
|
|
15033
15339
|
var externalThreadInspectionSchema = external_exports.object({
|
|
15034
15340
|
owner: external_exports.literal("external"),
|
|
15035
|
-
harnessId:
|
|
15036
|
-
transportModelId:
|
|
15341
|
+
harnessId: nonBlankTextSchema3.max(256),
|
|
15342
|
+
transportModelId: nonBlankTextSchema3.max(1024),
|
|
15037
15343
|
effectiveModel: harnessModelRefSchema.optional(),
|
|
15038
15344
|
resolvedModelLabel: harnessResolvedModelLabelSchema.optional(),
|
|
15039
15345
|
effectiveThinkingOptionId: harnessThinkingOptionIdSchema.optional(),
|
|
@@ -15091,48 +15397,6 @@ var threadOwnershipListResultSchema = external_exports.object({
|
|
|
15091
15397
|
}
|
|
15092
15398
|
});
|
|
15093
15399
|
|
|
15094
|
-
// ../../shared-contracts/dist/harness-plugins.js
|
|
15095
|
-
var HARNESS_PLUGIN_MANIFEST_MAX_BYTES = 32 * 1024;
|
|
15096
|
-
var HARNESS_PLUGIN_ICON_MAX_BYTES = 128 * 1024;
|
|
15097
|
-
var HARNESS_PLUGIN_LIMIT = 128;
|
|
15098
|
-
var harnessPluginIdSchema = external_exports.string().min(1).max(128).regex(/^[a-z][a-z0-9]*(?:[._-][a-z0-9]+)*$/u).refine((id) => id !== "codex", "The official Codex identity is reserved").pipe(harnessIdSchema);
|
|
15099
|
-
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");
|
|
15100
|
-
var documentationUrlSchema = external_exports.url().refine((value) => /^https:\/\/[^/?#@]+(?:[/?#]|$)/iu.test(value), "Plugin documentation links must be credential-free HTTPS URLs");
|
|
15101
|
-
var pluginPresentationShape = {
|
|
15102
|
-
id: harnessPluginIdSchema,
|
|
15103
|
-
name: external_exports.string().trim().min(1).max(128),
|
|
15104
|
-
version: external_exports.string().min(1).max(128),
|
|
15105
|
-
/** The factory accepts a persisted local entrypoint through its construction context. */
|
|
15106
|
-
launchCommand: external_exports.literal(true).optional(),
|
|
15107
|
-
links: external_exports.object({
|
|
15108
|
-
documentation: documentationUrlSchema.optional(),
|
|
15109
|
-
installation: documentationUrlSchema.optional()
|
|
15110
|
-
}).strict().optional()
|
|
15111
|
-
};
|
|
15112
|
-
var harnessPluginManifestSchema = external_exports.object({
|
|
15113
|
-
manifestVersion: external_exports.literal(1),
|
|
15114
|
-
...pluginPresentationShape,
|
|
15115
|
-
adapterApiVersion: external_exports.number().int().positive(),
|
|
15116
|
-
entry: relativeResourceSchema,
|
|
15117
|
-
icon: relativeResourceSchema.optional()
|
|
15118
|
-
}).strict();
|
|
15119
|
-
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);
|
|
15120
|
-
var harnessPluginDescriptorSchema = external_exports.object({
|
|
15121
|
-
...pluginPresentationShape,
|
|
15122
|
-
icon: harnessPluginIconSchema.optional()
|
|
15123
|
-
}).strict();
|
|
15124
|
-
var harnessPluginListParamsSchema = external_exports.object({}).strict();
|
|
15125
|
-
var harnessPluginListResultSchema = external_exports.object({
|
|
15126
|
-
plugins: external_exports.array(harnessPluginDescriptorSchema).max(HARNESS_PLUGIN_LIMIT)
|
|
15127
|
-
}).strict();
|
|
15128
|
-
var harnessPluginConfigurationSchema = external_exports.object({
|
|
15129
|
-
version: external_exports.literal(1),
|
|
15130
|
-
enabled: external_exports.array(harnessPluginIdSchema).max(HARNESS_PLUGIN_LIMIT)
|
|
15131
|
-
}).strict().refine((value) => new Set(value.enabled).size === value.enabled.length, {
|
|
15132
|
-
message: "Enabled plugin IDs must be unique",
|
|
15133
|
-
path: ["enabled"]
|
|
15134
|
-
});
|
|
15135
|
-
|
|
15136
15400
|
// ../../shared-contracts/dist/harness-route.js
|
|
15137
15401
|
var harnessPluginRouteSchema = external_exports.object({
|
|
15138
15402
|
harnessId: harnessPluginIdSchema,
|
|
@@ -15156,7 +15420,7 @@ var harnessLaunchSettingsSchema = external_exports.object({
|
|
|
15156
15420
|
|
|
15157
15421
|
// ../../shared-contracts/dist/codex-accounts.js
|
|
15158
15422
|
var accountIdSchema = external_exports.string().min(1).max(256).regex(/^[A-Za-z0-9._~-]+$/u);
|
|
15159
|
-
var
|
|
15423
|
+
var nonBlankTextSchema4 = external_exports.string().trim().min(1);
|
|
15160
15424
|
var codexAccountPlanTypeSchema = external_exports.enum([
|
|
15161
15425
|
"free",
|
|
15162
15426
|
"go",
|
|
@@ -15178,7 +15442,7 @@ var codexAccountPlanTypeSchema = external_exports.enum([
|
|
|
15178
15442
|
]);
|
|
15179
15443
|
var codexAccountSchema = external_exports.object({
|
|
15180
15444
|
accountId: accountIdSchema,
|
|
15181
|
-
label:
|
|
15445
|
+
label: nonBlankTextSchema4.max(256),
|
|
15182
15446
|
email: external_exports.string().email().max(320).optional(),
|
|
15183
15447
|
planType: codexAccountPlanTypeSchema.optional()
|
|
15184
15448
|
}).strict();
|
|
@@ -15188,7 +15452,7 @@ var codexAccountListResultSchema = external_exports.object({
|
|
|
15188
15452
|
currentAccountId: accountIdSchema.nullable(),
|
|
15189
15453
|
phase: codexAccountPhaseSchema,
|
|
15190
15454
|
revision: external_exports.number().int().nonnegative(),
|
|
15191
|
-
instanceId:
|
|
15455
|
+
instanceId: nonBlankTextSchema4.max(1024).optional(),
|
|
15192
15456
|
accounts: external_exports.array(codexAccountSchema).max(1)
|
|
15193
15457
|
}).strict();
|
|
15194
15458
|
var codexAccountUsageParamsSchema = external_exports.object({ accountId: accountIdSchema, refresh: external_exports.boolean().optional() }).strict();
|
|
@@ -15200,47 +15464,6 @@ var codexAccountUsageResultSchema = external_exports.object({
|
|
|
15200
15464
|
observedAt: external_exports.string().datetime().nullable()
|
|
15201
15465
|
}).strict();
|
|
15202
15466
|
|
|
15203
|
-
// ../../shared-contracts/dist/harness-session-import.js
|
|
15204
|
-
var HARNESS_SESSION_IMPORT_ID_MAX_LENGTH = 1024;
|
|
15205
|
-
var HARNESS_SESSION_IMPORT_CWD_MAX_LENGTH = 16384;
|
|
15206
|
-
var HARNESS_SESSION_IMPORT_TITLE_MAX_LENGTH = 4096;
|
|
15207
|
-
var HARNESS_SESSION_IMPORT_LIST_MAX_LENGTH = 1e3;
|
|
15208
|
-
var HARNESS_SESSION_IMPORT_UPDATED_AT_MAX = 864e13;
|
|
15209
|
-
var nonBlankTextSchema4 = external_exports.string().refine((value) => value.trim().length > 0, "Value must not be empty or whitespace").refine((value) => !value.includes("\0"), "Value must not contain NUL");
|
|
15210
|
-
var harnessSessionImportIdSchema = nonBlankTextSchema4.max(HARNESS_SESSION_IMPORT_ID_MAX_LENGTH);
|
|
15211
|
-
var harnessSessionImportCandidateSchema = external_exports.object({
|
|
15212
|
-
nativeSessionId: harnessSessionImportIdSchema,
|
|
15213
|
-
title: nonBlankTextSchema4.max(HARNESS_SESSION_IMPORT_TITLE_MAX_LENGTH).nullable(),
|
|
15214
|
-
updatedAt: external_exports.number().int().nonnegative().max(HARNESS_SESSION_IMPORT_UPDATED_AT_MAX),
|
|
15215
|
-
cwd: nonBlankTextSchema4.max(HARNESS_SESSION_IMPORT_CWD_MAX_LENGTH),
|
|
15216
|
-
// Native file discovery cannot reliably observe another process's activity.
|
|
15217
|
-
running: external_exports.boolean().nullable()
|
|
15218
|
-
}).strict();
|
|
15219
|
-
var harnessSessionImportSourcesParamsSchema = external_exports.object({}).strict();
|
|
15220
|
-
var harnessSessionImportSourcesResultSchema = external_exports.object({
|
|
15221
|
-
harnesses: external_exports.array(external_exports.object({
|
|
15222
|
-
harnessId: harnessPluginIdSchema,
|
|
15223
|
-
name: nonBlankTextSchema4.max(128)
|
|
15224
|
-
}).strict()).max(128)
|
|
15225
|
-
}).strict();
|
|
15226
|
-
var harnessSessionListParamsSchema = external_exports.object({
|
|
15227
|
-
harnessId: harnessPluginIdSchema,
|
|
15228
|
-
query: external_exports.string().trim().max(4096).refine((value) => !value.includes("\0")).optional(),
|
|
15229
|
-
offset: external_exports.number().int().nonnegative().safe().optional(),
|
|
15230
|
-
limit: external_exports.number().int().min(1).max(HARNESS_SESSION_IMPORT_LIST_MAX_LENGTH).optional()
|
|
15231
|
-
}).strict();
|
|
15232
|
-
var harnessSessionListResultSchema = external_exports.object({
|
|
15233
|
-
candidates: external_exports.array(harnessSessionImportCandidateSchema).max(HARNESS_SESSION_IMPORT_LIST_MAX_LENGTH),
|
|
15234
|
-
total: external_exports.number().int().nonnegative().safe()
|
|
15235
|
-
}).strict();
|
|
15236
|
-
var harnessSessionImportParamsSchema = external_exports.object({
|
|
15237
|
-
harnessId: harnessPluginIdSchema,
|
|
15238
|
-
nativeSessionId: harnessSessionImportIdSchema
|
|
15239
|
-
}).strict();
|
|
15240
|
-
var harnessSessionImportResultSchema = external_exports.object({
|
|
15241
|
-
threadId: nonBlankTextSchema4.max(1024).pipe(hostThreadIdSchema)
|
|
15242
|
-
}).strict();
|
|
15243
|
-
|
|
15244
15467
|
// ../../shared-contracts/dist/deepseek-modern-sessions.js
|
|
15245
15468
|
var DEEPSEEK_MODERN_SESSION_LIST_MAX_LENGTH = HARNESS_SESSION_IMPORT_LIST_MAX_LENGTH;
|
|
15246
15469
|
var DEEPSEEK_MODERN_HOST_THREAD_ID_MAX_LENGTH = 1024;
|
|
@@ -15665,6 +15888,9 @@ function parseHostUsage(value) {
|
|
|
15665
15888
|
return { ...value };
|
|
15666
15889
|
}
|
|
15667
15890
|
|
|
15891
|
+
// ../../harness-adapter/dist/native-session-summary.js
|
|
15892
|
+
var NATIVE_SESSION_IDLE_GAP_MS = 30 * 6e4;
|
|
15893
|
+
|
|
15668
15894
|
// ../../harness-adapter/dist/live-command-catalog.js
|
|
15669
15895
|
var COMMON_EXCLUDED_LIVE_COMMANDS = /* @__PURE__ */ new Set([
|
|
15670
15896
|
// Session lifecycle
|