@chinhae/codex-connect-linux-x64 0.11.0 → 0.12.1

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