@claudexor/schema 2.0.0 → 2.1.2

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.
Files changed (128) hide show
  1. package/dist/agent-capabilities.d.ts +24 -24
  2. package/dist/attachment.d.ts +13 -13
  3. package/dist/auth.d.ts +21 -0
  4. package/dist/auth.d.ts.map +1 -1
  5. package/dist/auth.js +54 -0
  6. package/dist/auth.js.map +1 -1
  7. package/dist/budget.d.ts +17 -5
  8. package/dist/budget.d.ts.map +1 -1
  9. package/dist/budget.js +15 -0
  10. package/dist/budget.js.map +1 -1
  11. package/dist/config.d.ts +380 -20
  12. package/dist/config.d.ts.map +1 -1
  13. package/dist/config.js +81 -0
  14. package/dist/config.js.map +1 -1
  15. package/dist/control-gc.d.ts +185 -0
  16. package/dist/control-gc.d.ts.map +1 -0
  17. package/dist/control-gc.js +81 -0
  18. package/dist/control-gc.js.map +1 -0
  19. package/dist/control-operation-responses.d.ts +155 -29
  20. package/dist/control-operation-responses.d.ts.map +1 -1
  21. package/dist/control-run-detail.d.ts +140 -32
  22. package/dist/control-run-detail.d.ts.map +1 -1
  23. package/dist/control-spec.d.ts +6 -6
  24. package/dist/control-thread-apply.d.ts +2 -2
  25. package/dist/control.d.ts +427 -586
  26. package/dist/control.d.ts.map +1 -1
  27. package/dist/control.js +155 -54
  28. package/dist/control.js.map +1 -1
  29. package/dist/credential-profile.d.ts +454 -0
  30. package/dist/credential-profile.d.ts.map +1 -0
  31. package/dist/credential-profile.js +140 -0
  32. package/dist/credential-profile.js.map +1 -0
  33. package/dist/events.d.ts +20 -6
  34. package/dist/events.d.ts.map +1 -1
  35. package/dist/events.js +22 -0
  36. package/dist/events.js.map +1 -1
  37. package/dist/gate.d.ts +3 -3
  38. package/dist/harness.d.ts +243 -88
  39. package/dist/harness.d.ts.map +1 -1
  40. package/dist/harness.js +124 -46
  41. package/dist/harness.js.map +1 -1
  42. package/dist/index.d.ts +4 -0
  43. package/dist/index.d.ts.map +1 -1
  44. package/dist/index.js +4 -0
  45. package/dist/index.js.map +1 -1
  46. package/dist/orchestrate.d.ts +23 -0
  47. package/dist/orchestrate.d.ts.map +1 -1
  48. package/dist/orchestrate.js +56 -0
  49. package/dist/orchestrate.js.map +1 -1
  50. package/dist/project.d.ts +2 -2
  51. package/dist/quota.d.ts +27 -9
  52. package/dist/quota.d.ts.map +1 -1
  53. package/dist/quota.js +14 -2
  54. package/dist/quota.js.map +1 -1
  55. package/dist/readiness.d.ts +596 -0
  56. package/dist/readiness.d.ts.map +1 -0
  57. package/dist/readiness.js +87 -0
  58. package/dist/readiness.js.map +1 -0
  59. package/dist/request-requirements.d.ts +8 -8
  60. package/dist/request-requirements.d.ts.map +1 -1
  61. package/dist/request-requirements.js +4 -1
  62. package/dist/request-requirements.js.map +1 -1
  63. package/dist/route.d.ts +4 -4
  64. package/dist/setup.d.ts +69 -24
  65. package/dist/setup.d.ts.map +1 -1
  66. package/dist/setup.js +25 -0
  67. package/dist/setup.js.map +1 -1
  68. package/dist/spec.d.ts +4 -4
  69. package/dist/task.d.ts +99 -4
  70. package/dist/task.d.ts.map +1 -1
  71. package/dist/task.js +48 -1
  72. package/dist/task.js.map +1 -1
  73. package/dist/telemetry.d.ts +309 -67
  74. package/dist/telemetry.d.ts.map +1 -1
  75. package/dist/telemetry.js +97 -1
  76. package/dist/telemetry.js.map +1 -1
  77. package/dist/thread.d.ts +26 -15
  78. package/dist/thread.d.ts.map +1 -1
  79. package/dist/thread.js +11 -0
  80. package/dist/thread.js.map +1 -1
  81. package/dist/tool-ref.d.ts +45 -0
  82. package/dist/tool-ref.d.ts.map +1 -0
  83. package/dist/tool-ref.js +45 -0
  84. package/dist/tool-ref.js.map +1 -0
  85. package/dist/workspace.d.ts +2 -2
  86. package/generated/BudgetObservation.schema.json +16 -0
  87. package/generated/ControlCredentialProfileCreateRequest.schema.json +32 -0
  88. package/generated/ControlCredentialProfileCreateResponse.schema.json +142 -0
  89. package/generated/ControlCredentialProfileDeleteResponse.schema.json +107 -0
  90. package/generated/ControlCredentialProfilesResponse.schema.json +155 -0
  91. package/generated/ControlGcReceipt.schema.json +170 -0
  92. package/generated/ControlGcRequest.schema.json +18 -0
  93. package/generated/ControlHarnessListResponse.schema.json +95 -2
  94. package/generated/ControlHarnessModelsResponse.schema.json +19 -0
  95. package/generated/ControlHarnessSettingsPatch.schema.json +9 -0
  96. package/generated/ControlQuotaResponse.schema.json +3 -2
  97. package/generated/ControlRunAgainDraft.schema.json +40 -0
  98. package/generated/ControlRunDetail.schema.json +178 -6
  99. package/generated/ControlRunListResponse.schema.json +174 -3
  100. package/generated/ControlRunStartRequest.schema.json +40 -0
  101. package/generated/ControlRunSummary.schema.json +174 -3
  102. package/generated/ControlSettingsSnapshot.schema.json +10 -0
  103. package/generated/ControlSettingsUpdateRequest.schema.json +9 -0
  104. package/generated/ControlSetupJob.schema.json +8 -0
  105. package/generated/ControlSetupJobCreateRequest.schema.json +5 -0
  106. package/generated/ControlSetupJobEvent.schema.json +8 -0
  107. package/generated/ControlSetupJobListResponse.schema.json +8 -0
  108. package/generated/ControlSetupJobSnapshot.schema.json +8 -0
  109. package/generated/ControlThread.schema.json +16 -4
  110. package/generated/ControlThreadCreateRequest.schema.json +6 -2
  111. package/generated/ControlThreadDetail.schema.json +32 -8
  112. package/generated/ControlThreadListResponse.schema.json +16 -4
  113. package/generated/ControlThreadTurnRequest.schema.json +40 -0
  114. package/generated/ControlThreadUpdateRequest.schema.json +11 -0
  115. package/generated/CredentialProfile.schema.json +78 -0
  116. package/generated/CredentialProfileStatus.schema.json +61 -0
  117. package/generated/GlobalConfig.schema.json +136 -0
  118. package/generated/HarnessEvent.schema.json +62 -5
  119. package/generated/HarnessManifest.schema.json +33 -2
  120. package/generated/HarnessModel.schema.json +19 -0
  121. package/generated/HarnessStatusDto.schema.json +95 -2
  122. package/generated/RunEvent.schema.json +3 -0
  123. package/generated/RunTelemetry.schema.json +202 -2
  124. package/generated/Session.schema.json +14 -0
  125. package/generated/TaskContract.schema.json +65 -4
  126. package/generated/Thread.schema.json +17 -5
  127. package/generated/ThreadHeadPing.schema.json +40 -0
  128. package/package.json +3 -2
@@ -0,0 +1,596 @@
1
+ import { z } from "zod";
2
+ /**
3
+ * ONE display-ready readiness check (W4.7 sol #18): the daemon normalizes raw
4
+ * doctor probes, auth-source readiness, and the configured-model verdict into
5
+ * this typed list so every surface (Settings, Onboarding, AuthSheet) renders
6
+ * the SAME rows — icon from `status`, name from `title`, evidence from
7
+ * `detail` — and never parses strings or matches id substrings again. Raw
8
+ * checks/reasons stay on the DTO for "copy raw" evidence.
9
+ */
10
+ export declare const ReadinessCheckDto: z.ZodObject<{
11
+ id: z.ZodString;
12
+ kind: z.ZodEnum<["binary", "auth", "smoke", "model", "probe"]>;
13
+ title: z.ZodString;
14
+ status: z.ZodEnum<["pass", "fail", "skip"]>;
15
+ detail: z.ZodDefault<z.ZodNullable<z.ZodString>>;
16
+ }, "strip", z.ZodTypeAny, {
17
+ status: "pass" | "fail" | "skip";
18
+ detail: string | null;
19
+ kind: "binary" | "auth" | "model" | "smoke" | "probe";
20
+ id: string;
21
+ title: string;
22
+ }, {
23
+ status: "pass" | "fail" | "skip";
24
+ kind: "binary" | "auth" | "model" | "smoke" | "probe";
25
+ id: string;
26
+ title: string;
27
+ detail?: string | null | undefined;
28
+ }>;
29
+ export type ReadinessCheckDto = z.infer<typeof ReadinessCheckDto>;
30
+ export declare const HarnessStatusDto: z.ZodObject<{
31
+ id: z.ZodString;
32
+ status: z.ZodEnum<["ok", "degraded", "unavailable"]>;
33
+ manifest: z.ZodOptional<z.ZodNullable<z.ZodObject<{
34
+ id: z.ZodString;
35
+ display_name: z.ZodString;
36
+ kind: z.ZodEnum<["local_cli", "remote_api", "fake"]>;
37
+ version: z.ZodOptional<z.ZodString>;
38
+ adapter_version: z.ZodOptional<z.ZodString>;
39
+ provider_family: z.ZodDefault<z.ZodEnum<["openai", "anthropic", "google", "cursor", "opencode", "xai", "local", "unknown"]>>;
40
+ capability_profile: z.ZodDefault<z.ZodObject<{
41
+ auth: z.ZodDefault<z.ZodObject<{
42
+ supported_sources: z.ZodDefault<z.ZodArray<z.ZodEnum<["native_session", "oauth_token_env", "api_key_env", "api_key_flag", "provider_auth_file", "none"]>, "many">>;
43
+ preferred_source: z.ZodDefault<z.ZodNullable<z.ZodEnum<["native_session", "oauth_token_env", "api_key_env", "api_key_flag", "provider_auth_file", "none"]>>>;
44
+ credential_transports: z.ZodDefault<z.ZodArray<z.ZodObject<{
45
+ source: z.ZodEnum<["native_session", "oauth_token_env", "api_key_env", "api_key_flag", "provider_auth_file", "none"]>;
46
+ kind: z.ZodEnum<["config_file", "env_var", "oauth_token_env", "os_keychain", "http_header", "none"]>;
47
+ relocatable_by: z.ZodDefault<z.ZodArray<z.ZodEnum<["HOME", "CONFIG_DIR", "ENV", "none"]>, "many">>;
48
+ }, "strip", z.ZodTypeAny, {
49
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none";
50
+ kind: "oauth_token_env" | "none" | "config_file" | "env_var" | "os_keychain" | "http_header";
51
+ relocatable_by: ("none" | "HOME" | "CONFIG_DIR" | "ENV")[];
52
+ }, {
53
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none";
54
+ kind: "oauth_token_env" | "none" | "config_file" | "env_var" | "os_keychain" | "http_header";
55
+ relocatable_by?: ("none" | "HOME" | "CONFIG_DIR" | "ENV")[] | undefined;
56
+ }>, "many">>;
57
+ }, "strip", z.ZodTypeAny, {
58
+ supported_sources: ("native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none")[];
59
+ preferred_source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none" | null;
60
+ credential_transports: {
61
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none";
62
+ kind: "oauth_token_env" | "none" | "config_file" | "env_var" | "os_keychain" | "http_header";
63
+ relocatable_by: ("none" | "HOME" | "CONFIG_DIR" | "ENV")[];
64
+ }[];
65
+ }, {
66
+ supported_sources?: ("native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none")[] | undefined;
67
+ preferred_source?: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none" | null | undefined;
68
+ credential_transports?: {
69
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none";
70
+ kind: "oauth_token_env" | "none" | "config_file" | "env_var" | "os_keychain" | "http_header";
71
+ relocatable_by?: ("none" | "HOME" | "CONFIG_DIR" | "ENV")[] | undefined;
72
+ }[] | undefined;
73
+ }>>;
74
+ access_control: z.ZodDefault<z.ZodObject<{
75
+ readonly_mechanism: z.ZodDefault<z.ZodEnum<["fs_sandbox", "permission_deny", "tool_allowlist", "none"]>>;
76
+ }, "strip", z.ZodTypeAny, {
77
+ readonly_mechanism: "none" | "fs_sandbox" | "permission_deny" | "tool_allowlist";
78
+ }, {
79
+ readonly_mechanism?: "none" | "fs_sandbox" | "permission_deny" | "tool_allowlist" | undefined;
80
+ }>>;
81
+ isolation: z.ZodDefault<z.ZodObject<{
82
+ supported_containment: z.ZodDefault<z.ZodArray<z.ZodEnum<["env_or_file_injection", "scoped_home_keychain_bridge", "host_user_context", "process_sandbox", "container"]>, "many">>;
83
+ }, "strip", z.ZodTypeAny, {
84
+ supported_containment: ("env_or_file_injection" | "scoped_home_keychain_bridge" | "host_user_context" | "process_sandbox" | "container")[];
85
+ }, {
86
+ supported_containment?: ("env_or_file_injection" | "scoped_home_keychain_bridge" | "host_user_context" | "process_sandbox" | "container")[] | undefined;
87
+ }>>;
88
+ attachment_inputs: z.ZodDefault<z.ZodArray<z.ZodObject<{
89
+ kind: z.ZodEnum<["image", "file"]>;
90
+ mime_types: z.ZodArray<z.ZodString, "many">;
91
+ max_bytes: z.ZodNumber;
92
+ max_count: z.ZodNumber;
93
+ transport: z.ZodEnum<["file_path", "base64_stream", "base64_inline", "text_inline"]>;
94
+ }, "strict", z.ZodTypeAny, {
95
+ kind: "file" | "image";
96
+ mime_types: string[];
97
+ max_bytes: number;
98
+ max_count: number;
99
+ transport: "file_path" | "base64_stream" | "base64_inline" | "text_inline";
100
+ }, {
101
+ kind: "file" | "image";
102
+ mime_types: string[];
103
+ max_bytes: number;
104
+ max_count: number;
105
+ transport: "file_path" | "base64_stream" | "base64_inline" | "text_inline";
106
+ }>, "many">>;
107
+ }, "strip", z.ZodTypeAny, {
108
+ auth: {
109
+ supported_sources: ("native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none")[];
110
+ preferred_source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none" | null;
111
+ credential_transports: {
112
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none";
113
+ kind: "oauth_token_env" | "none" | "config_file" | "env_var" | "os_keychain" | "http_header";
114
+ relocatable_by: ("none" | "HOME" | "CONFIG_DIR" | "ENV")[];
115
+ }[];
116
+ };
117
+ access_control: {
118
+ readonly_mechanism: "none" | "fs_sandbox" | "permission_deny" | "tool_allowlist";
119
+ };
120
+ isolation: {
121
+ supported_containment: ("env_or_file_injection" | "scoped_home_keychain_bridge" | "host_user_context" | "process_sandbox" | "container")[];
122
+ };
123
+ attachment_inputs: {
124
+ kind: "file" | "image";
125
+ mime_types: string[];
126
+ max_bytes: number;
127
+ max_count: number;
128
+ transport: "file_path" | "base64_stream" | "base64_inline" | "text_inline";
129
+ }[];
130
+ }, {
131
+ auth?: {
132
+ supported_sources?: ("native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none")[] | undefined;
133
+ preferred_source?: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none" | null | undefined;
134
+ credential_transports?: {
135
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none";
136
+ kind: "oauth_token_env" | "none" | "config_file" | "env_var" | "os_keychain" | "http_header";
137
+ relocatable_by?: ("none" | "HOME" | "CONFIG_DIR" | "ENV")[] | undefined;
138
+ }[] | undefined;
139
+ } | undefined;
140
+ access_control?: {
141
+ readonly_mechanism?: "none" | "fs_sandbox" | "permission_deny" | "tool_allowlist" | undefined;
142
+ } | undefined;
143
+ isolation?: {
144
+ supported_containment?: ("env_or_file_injection" | "scoped_home_keychain_bridge" | "host_user_context" | "process_sandbox" | "container")[] | undefined;
145
+ } | undefined;
146
+ attachment_inputs?: {
147
+ kind: "file" | "image";
148
+ mime_types: string[];
149
+ max_bytes: number;
150
+ max_count: number;
151
+ transport: "file_path" | "base64_stream" | "base64_inline" | "text_inline";
152
+ }[] | undefined;
153
+ }>>;
154
+ capabilities: z.ZodObject<{
155
+ plan: z.ZodDefault<z.ZodBoolean>;
156
+ implement: z.ZodDefault<z.ZodBoolean>;
157
+ implementation_transport: z.ZodDefault<z.ZodEnum<["workspace", "git_patch_envelope"]>>;
158
+ create_from_scratch: z.ZodDefault<z.ZodBoolean>;
159
+ review: z.ZodDefault<z.ZodBoolean>;
160
+ verify: z.ZodDefault<z.ZodBoolean>;
161
+ synthesize: z.ZodDefault<z.ZodBoolean>;
162
+ read_files: z.ZodDefault<z.ZodBoolean>;
163
+ browser_tool: z.ZodDefault<z.ZodBoolean>;
164
+ web_policy: z.ZodDefault<z.ZodEnum<["native", "tools", "uncontrolled", "none"]>>;
165
+ max_turns: z.ZodDefault<z.ZodBoolean>;
166
+ tool_lists: z.ZodDefault<z.ZodBoolean>;
167
+ interactive: z.ZodDefault<z.ZodBoolean>;
168
+ orchestrate: z.ZodDefault<z.ZodBoolean>;
169
+ json_schema_output: z.ZodDefault<z.ZodBoolean>;
170
+ effort_levels: z.ZodDefault<z.ZodArray<z.ZodEnum<["low", "medium", "high", "xhigh", "max"]>, "many">>;
171
+ known_models: z.ZodDefault<z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodObject<{
172
+ id: z.ZodString;
173
+ routes: z.ZodArray<z.ZodEnum<["local_session", "api_key"]>, "many">;
174
+ }, "strict", z.ZodTypeAny, {
175
+ id: string;
176
+ routes: ("api_key" | "local_session")[];
177
+ }, {
178
+ id: string;
179
+ routes: ("api_key" | "local_session")[];
180
+ }>]>, "many">>;
181
+ known_models_verified_against: z.ZodDefault<z.ZodNullable<z.ZodString>>;
182
+ }, "strip", z.ZodTypeAny, {
183
+ plan: boolean;
184
+ orchestrate: boolean;
185
+ implement: boolean;
186
+ create_from_scratch: boolean;
187
+ review: boolean;
188
+ verify: boolean;
189
+ synthesize: boolean;
190
+ implementation_transport: "workspace" | "git_patch_envelope";
191
+ read_files: boolean;
192
+ browser_tool: boolean;
193
+ web_policy: "none" | "native" | "tools" | "uncontrolled";
194
+ max_turns: boolean;
195
+ tool_lists: boolean;
196
+ interactive: boolean;
197
+ json_schema_output: boolean;
198
+ effort_levels: ("low" | "medium" | "high" | "xhigh" | "max")[];
199
+ known_models: (string | {
200
+ id: string;
201
+ routes: ("api_key" | "local_session")[];
202
+ })[];
203
+ known_models_verified_against: string | null;
204
+ }, {
205
+ plan?: boolean | undefined;
206
+ orchestrate?: boolean | undefined;
207
+ implement?: boolean | undefined;
208
+ create_from_scratch?: boolean | undefined;
209
+ review?: boolean | undefined;
210
+ verify?: boolean | undefined;
211
+ synthesize?: boolean | undefined;
212
+ implementation_transport?: "workspace" | "git_patch_envelope" | undefined;
213
+ read_files?: boolean | undefined;
214
+ browser_tool?: boolean | undefined;
215
+ web_policy?: "none" | "native" | "tools" | "uncontrolled" | undefined;
216
+ max_turns?: boolean | undefined;
217
+ tool_lists?: boolean | undefined;
218
+ interactive?: boolean | undefined;
219
+ json_schema_output?: boolean | undefined;
220
+ effort_levels?: ("low" | "medium" | "high" | "xhigh" | "max")[] | undefined;
221
+ known_models?: (string | {
222
+ id: string;
223
+ routes: ("api_key" | "local_session")[];
224
+ })[] | undefined;
225
+ known_models_verified_against?: string | null | undefined;
226
+ }>;
227
+ auth_modes: z.ZodDefault<z.ZodArray<z.ZodEnum<["local_session", "api_key", "none"]>, "many">>;
228
+ access_profiles_supported: z.ZodDefault<z.ZodArray<z.ZodEnum<["readonly", "workspace_write", "full", "external_sandbox_full", "inherit_native"]>, "many">>;
229
+ }, "strip", z.ZodTypeAny, {
230
+ display_name: string;
231
+ kind: "local_cli" | "remote_api" | "fake";
232
+ id: string;
233
+ provider_family: "openai" | "anthropic" | "google" | "cursor" | "opencode" | "xai" | "local" | "unknown";
234
+ capability_profile: {
235
+ auth: {
236
+ supported_sources: ("native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none")[];
237
+ preferred_source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none" | null;
238
+ credential_transports: {
239
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none";
240
+ kind: "oauth_token_env" | "none" | "config_file" | "env_var" | "os_keychain" | "http_header";
241
+ relocatable_by: ("none" | "HOME" | "CONFIG_DIR" | "ENV")[];
242
+ }[];
243
+ };
244
+ access_control: {
245
+ readonly_mechanism: "none" | "fs_sandbox" | "permission_deny" | "tool_allowlist";
246
+ };
247
+ isolation: {
248
+ supported_containment: ("env_or_file_injection" | "scoped_home_keychain_bridge" | "host_user_context" | "process_sandbox" | "container")[];
249
+ };
250
+ attachment_inputs: {
251
+ kind: "file" | "image";
252
+ mime_types: string[];
253
+ max_bytes: number;
254
+ max_count: number;
255
+ transport: "file_path" | "base64_stream" | "base64_inline" | "text_inline";
256
+ }[];
257
+ };
258
+ capabilities: {
259
+ plan: boolean;
260
+ orchestrate: boolean;
261
+ implement: boolean;
262
+ create_from_scratch: boolean;
263
+ review: boolean;
264
+ verify: boolean;
265
+ synthesize: boolean;
266
+ implementation_transport: "workspace" | "git_patch_envelope";
267
+ read_files: boolean;
268
+ browser_tool: boolean;
269
+ web_policy: "none" | "native" | "tools" | "uncontrolled";
270
+ max_turns: boolean;
271
+ tool_lists: boolean;
272
+ interactive: boolean;
273
+ json_schema_output: boolean;
274
+ effort_levels: ("low" | "medium" | "high" | "xhigh" | "max")[];
275
+ known_models: (string | {
276
+ id: string;
277
+ routes: ("api_key" | "local_session")[];
278
+ })[];
279
+ known_models_verified_against: string | null;
280
+ };
281
+ auth_modes: ("api_key" | "none" | "local_session")[];
282
+ access_profiles_supported: ("readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native")[];
283
+ version?: string | undefined;
284
+ adapter_version?: string | undefined;
285
+ }, {
286
+ display_name: string;
287
+ kind: "local_cli" | "remote_api" | "fake";
288
+ id: string;
289
+ capabilities: {
290
+ plan?: boolean | undefined;
291
+ orchestrate?: boolean | undefined;
292
+ implement?: boolean | undefined;
293
+ create_from_scratch?: boolean | undefined;
294
+ review?: boolean | undefined;
295
+ verify?: boolean | undefined;
296
+ synthesize?: boolean | undefined;
297
+ implementation_transport?: "workspace" | "git_patch_envelope" | undefined;
298
+ read_files?: boolean | undefined;
299
+ browser_tool?: boolean | undefined;
300
+ web_policy?: "none" | "native" | "tools" | "uncontrolled" | undefined;
301
+ max_turns?: boolean | undefined;
302
+ tool_lists?: boolean | undefined;
303
+ interactive?: boolean | undefined;
304
+ json_schema_output?: boolean | undefined;
305
+ effort_levels?: ("low" | "medium" | "high" | "xhigh" | "max")[] | undefined;
306
+ known_models?: (string | {
307
+ id: string;
308
+ routes: ("api_key" | "local_session")[];
309
+ })[] | undefined;
310
+ known_models_verified_against?: string | null | undefined;
311
+ };
312
+ version?: string | undefined;
313
+ adapter_version?: string | undefined;
314
+ provider_family?: "openai" | "anthropic" | "google" | "cursor" | "opencode" | "xai" | "local" | "unknown" | undefined;
315
+ capability_profile?: {
316
+ auth?: {
317
+ supported_sources?: ("native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none")[] | undefined;
318
+ preferred_source?: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none" | null | undefined;
319
+ credential_transports?: {
320
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none";
321
+ kind: "oauth_token_env" | "none" | "config_file" | "env_var" | "os_keychain" | "http_header";
322
+ relocatable_by?: ("none" | "HOME" | "CONFIG_DIR" | "ENV")[] | undefined;
323
+ }[] | undefined;
324
+ } | undefined;
325
+ access_control?: {
326
+ readonly_mechanism?: "none" | "fs_sandbox" | "permission_deny" | "tool_allowlist" | undefined;
327
+ } | undefined;
328
+ isolation?: {
329
+ supported_containment?: ("env_or_file_injection" | "scoped_home_keychain_bridge" | "host_user_context" | "process_sandbox" | "container")[] | undefined;
330
+ } | undefined;
331
+ attachment_inputs?: {
332
+ kind: "file" | "image";
333
+ mime_types: string[];
334
+ max_bytes: number;
335
+ max_count: number;
336
+ transport: "file_path" | "base64_stream" | "base64_inline" | "text_inline";
337
+ }[] | undefined;
338
+ } | undefined;
339
+ auth_modes?: ("api_key" | "none" | "local_session")[] | undefined;
340
+ access_profiles_supported?: ("readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native")[] | undefined;
341
+ }>>>;
342
+ enabledIntents: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
343
+ /** Intents this harness is ACTUALLY routable for right now: enabledIntents
344
+ * gated by doctor readiness (a degraded/unauth'd harness routes nothing).
345
+ * The SERVER-side availability truth — surfaces read this field and never
346
+ * re-derive availability from status+intents business logic (R8). */
347
+ routableIntents: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
348
+ disabledIntents: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
349
+ checks: z.ZodDefault<z.ZodArray<z.ZodObject<{
350
+ id: z.ZodString;
351
+ status: z.ZodEnum<["pass", "fail", "skip"]>;
352
+ detail: z.ZodOptional<z.ZodString>;
353
+ duration_ms: z.ZodOptional<z.ZodNumber>;
354
+ }, "strip", z.ZodTypeAny, {
355
+ status: "pass" | "fail" | "skip";
356
+ id: string;
357
+ detail?: string | undefined;
358
+ duration_ms?: number | undefined;
359
+ }, {
360
+ status: "pass" | "fail" | "skip";
361
+ id: string;
362
+ detail?: string | undefined;
363
+ duration_ms?: number | undefined;
364
+ }>, "many">>;
365
+ reasons: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
366
+ authSources: z.ZodDefault<z.ZodArray<z.ZodObject<{
367
+ source: z.ZodEnum<["native_session", "oauth_token_env", "api_key_env", "api_key_flag", "provider_auth_file", "none"]>;
368
+ availability: z.ZodEnum<["available", "unavailable", "unknown"]>;
369
+ verification: z.ZodEnum<["passed", "failed", "not_run"]>;
370
+ detail: z.ZodOptional<z.ZodString>;
371
+ }, "strict", z.ZodTypeAny, {
372
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none";
373
+ availability: "unknown" | "available" | "unavailable";
374
+ verification: "passed" | "failed" | "not_run";
375
+ detail?: string | undefined;
376
+ }, {
377
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none";
378
+ availability: "unknown" | "available" | "unavailable";
379
+ verification: "passed" | "failed" | "not_run";
380
+ detail?: string | undefined;
381
+ }>, "many">>;
382
+ /** Daemon-normalized display list (W4.7): what surfaces RENDER. Derived
383
+ * from checks + authSources + configuredModelCheck by one producer. */
384
+ readiness: z.ZodDefault<z.ZodArray<z.ZodObject<{
385
+ id: z.ZodString;
386
+ kind: z.ZodEnum<["binary", "auth", "smoke", "model", "probe"]>;
387
+ title: z.ZodString;
388
+ status: z.ZodEnum<["pass", "fail", "skip"]>;
389
+ detail: z.ZodDefault<z.ZodNullable<z.ZodString>>;
390
+ }, "strip", z.ZodTypeAny, {
391
+ status: "pass" | "fail" | "skip";
392
+ detail: string | null;
393
+ kind: "binary" | "auth" | "model" | "smoke" | "probe";
394
+ id: string;
395
+ title: string;
396
+ }, {
397
+ status: "pass" | "fail" | "skip";
398
+ kind: "binary" | "auth" | "model" | "smoke" | "probe";
399
+ id: string;
400
+ title: string;
401
+ detail?: string | null | undefined;
402
+ }>, "many">>;
403
+ /** The user's configured per-harness default model, if any. */
404
+ configuredModel: z.ZodDefault<z.ZodNullable<z.ZodString>>;
405
+ /** Strict truth-source check of `configuredModel`: null when no model
406
+ * is configured; a rejection carries the actionable message so UIs render
407
+ * the same honesty `claudexor doctor` prints. */
408
+ configuredModelCheck: z.ZodDefault<z.ZodNullable<z.ZodObject<{
409
+ status: z.ZodEnum<["ok", "rejected"]>;
410
+ message: z.ZodDefault<z.ZodNullable<z.ZodString>>;
411
+ }, "strip", z.ZodTypeAny, {
412
+ message: string | null;
413
+ status: "ok" | "rejected";
414
+ }, {
415
+ status: "ok" | "rejected";
416
+ message?: string | null | undefined;
417
+ }>>>;
418
+ }, "strip", z.ZodTypeAny, {
419
+ status: "unavailable" | "ok" | "degraded";
420
+ readiness: {
421
+ status: "pass" | "fail" | "skip";
422
+ detail: string | null;
423
+ kind: "binary" | "auth" | "model" | "smoke" | "probe";
424
+ id: string;
425
+ title: string;
426
+ }[];
427
+ id: string;
428
+ checks: {
429
+ status: "pass" | "fail" | "skip";
430
+ id: string;
431
+ detail?: string | undefined;
432
+ duration_ms?: number | undefined;
433
+ }[];
434
+ reasons: string[];
435
+ enabledIntents: string[];
436
+ disabledIntents: string[];
437
+ configuredModel: string | null;
438
+ routableIntents: string[];
439
+ authSources: {
440
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none";
441
+ availability: "unknown" | "available" | "unavailable";
442
+ verification: "passed" | "failed" | "not_run";
443
+ detail?: string | undefined;
444
+ }[];
445
+ configuredModelCheck: {
446
+ message: string | null;
447
+ status: "ok" | "rejected";
448
+ } | null;
449
+ manifest?: {
450
+ display_name: string;
451
+ kind: "local_cli" | "remote_api" | "fake";
452
+ id: string;
453
+ provider_family: "openai" | "anthropic" | "google" | "cursor" | "opencode" | "xai" | "local" | "unknown";
454
+ capability_profile: {
455
+ auth: {
456
+ supported_sources: ("native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none")[];
457
+ preferred_source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none" | null;
458
+ credential_transports: {
459
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none";
460
+ kind: "oauth_token_env" | "none" | "config_file" | "env_var" | "os_keychain" | "http_header";
461
+ relocatable_by: ("none" | "HOME" | "CONFIG_DIR" | "ENV")[];
462
+ }[];
463
+ };
464
+ access_control: {
465
+ readonly_mechanism: "none" | "fs_sandbox" | "permission_deny" | "tool_allowlist";
466
+ };
467
+ isolation: {
468
+ supported_containment: ("env_or_file_injection" | "scoped_home_keychain_bridge" | "host_user_context" | "process_sandbox" | "container")[];
469
+ };
470
+ attachment_inputs: {
471
+ kind: "file" | "image";
472
+ mime_types: string[];
473
+ max_bytes: number;
474
+ max_count: number;
475
+ transport: "file_path" | "base64_stream" | "base64_inline" | "text_inline";
476
+ }[];
477
+ };
478
+ capabilities: {
479
+ plan: boolean;
480
+ orchestrate: boolean;
481
+ implement: boolean;
482
+ create_from_scratch: boolean;
483
+ review: boolean;
484
+ verify: boolean;
485
+ synthesize: boolean;
486
+ implementation_transport: "workspace" | "git_patch_envelope";
487
+ read_files: boolean;
488
+ browser_tool: boolean;
489
+ web_policy: "none" | "native" | "tools" | "uncontrolled";
490
+ max_turns: boolean;
491
+ tool_lists: boolean;
492
+ interactive: boolean;
493
+ json_schema_output: boolean;
494
+ effort_levels: ("low" | "medium" | "high" | "xhigh" | "max")[];
495
+ known_models: (string | {
496
+ id: string;
497
+ routes: ("api_key" | "local_session")[];
498
+ })[];
499
+ known_models_verified_against: string | null;
500
+ };
501
+ auth_modes: ("api_key" | "none" | "local_session")[];
502
+ access_profiles_supported: ("readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native")[];
503
+ version?: string | undefined;
504
+ adapter_version?: string | undefined;
505
+ } | null | undefined;
506
+ }, {
507
+ status: "unavailable" | "ok" | "degraded";
508
+ id: string;
509
+ readiness?: {
510
+ status: "pass" | "fail" | "skip";
511
+ kind: "binary" | "auth" | "model" | "smoke" | "probe";
512
+ id: string;
513
+ title: string;
514
+ detail?: string | null | undefined;
515
+ }[] | undefined;
516
+ checks?: {
517
+ status: "pass" | "fail" | "skip";
518
+ id: string;
519
+ detail?: string | undefined;
520
+ duration_ms?: number | undefined;
521
+ }[] | undefined;
522
+ reasons?: string[] | undefined;
523
+ manifest?: {
524
+ display_name: string;
525
+ kind: "local_cli" | "remote_api" | "fake";
526
+ id: string;
527
+ capabilities: {
528
+ plan?: boolean | undefined;
529
+ orchestrate?: boolean | undefined;
530
+ implement?: boolean | undefined;
531
+ create_from_scratch?: boolean | undefined;
532
+ review?: boolean | undefined;
533
+ verify?: boolean | undefined;
534
+ synthesize?: boolean | undefined;
535
+ implementation_transport?: "workspace" | "git_patch_envelope" | undefined;
536
+ read_files?: boolean | undefined;
537
+ browser_tool?: boolean | undefined;
538
+ web_policy?: "none" | "native" | "tools" | "uncontrolled" | undefined;
539
+ max_turns?: boolean | undefined;
540
+ tool_lists?: boolean | undefined;
541
+ interactive?: boolean | undefined;
542
+ json_schema_output?: boolean | undefined;
543
+ effort_levels?: ("low" | "medium" | "high" | "xhigh" | "max")[] | undefined;
544
+ known_models?: (string | {
545
+ id: string;
546
+ routes: ("api_key" | "local_session")[];
547
+ })[] | undefined;
548
+ known_models_verified_against?: string | null | undefined;
549
+ };
550
+ version?: string | undefined;
551
+ adapter_version?: string | undefined;
552
+ provider_family?: "openai" | "anthropic" | "google" | "cursor" | "opencode" | "xai" | "local" | "unknown" | undefined;
553
+ capability_profile?: {
554
+ auth?: {
555
+ supported_sources?: ("native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none")[] | undefined;
556
+ preferred_source?: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none" | null | undefined;
557
+ credential_transports?: {
558
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none";
559
+ kind: "oauth_token_env" | "none" | "config_file" | "env_var" | "os_keychain" | "http_header";
560
+ relocatable_by?: ("none" | "HOME" | "CONFIG_DIR" | "ENV")[] | undefined;
561
+ }[] | undefined;
562
+ } | undefined;
563
+ access_control?: {
564
+ readonly_mechanism?: "none" | "fs_sandbox" | "permission_deny" | "tool_allowlist" | undefined;
565
+ } | undefined;
566
+ isolation?: {
567
+ supported_containment?: ("env_or_file_injection" | "scoped_home_keychain_bridge" | "host_user_context" | "process_sandbox" | "container")[] | undefined;
568
+ } | undefined;
569
+ attachment_inputs?: {
570
+ kind: "file" | "image";
571
+ mime_types: string[];
572
+ max_bytes: number;
573
+ max_count: number;
574
+ transport: "file_path" | "base64_stream" | "base64_inline" | "text_inline";
575
+ }[] | undefined;
576
+ } | undefined;
577
+ auth_modes?: ("api_key" | "none" | "local_session")[] | undefined;
578
+ access_profiles_supported?: ("readonly" | "workspace_write" | "full" | "external_sandbox_full" | "inherit_native")[] | undefined;
579
+ } | null | undefined;
580
+ enabledIntents?: string[] | undefined;
581
+ disabledIntents?: string[] | undefined;
582
+ configuredModel?: string | null | undefined;
583
+ routableIntents?: string[] | undefined;
584
+ authSources?: {
585
+ source: "native_session" | "oauth_token_env" | "api_key_env" | "api_key_flag" | "provider_auth_file" | "none";
586
+ availability: "unknown" | "available" | "unavailable";
587
+ verification: "passed" | "failed" | "not_run";
588
+ detail?: string | undefined;
589
+ }[] | undefined;
590
+ configuredModelCheck?: {
591
+ status: "ok" | "rejected";
592
+ message?: string | null | undefined;
593
+ } | null | undefined;
594
+ }>;
595
+ export type HarnessStatusDto = z.infer<typeof HarnessStatusDto>;
596
+ //# sourceMappingURL=readiness.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"readiness.d.ts","sourceRoot":"","sources":["../src/readiness.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB;;;;;;;GAOG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;EAgB2C,CAAC;AAC1E,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAElE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAWzB;;;yEAGqE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmBrE;2EACuE;;;;;;;;;;;;;;;;;;;;IAKvE,+DAA+D;;IAM/D;;qDAEiD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAkBlD,CAAC;AACJ,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC"}