@claudexor/schema 4.7.0 → 4.8.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 (196) hide show
  1. package/dist/account-resources.d.ts +37 -37
  2. package/dist/account-routing-evidence.d.ts +14 -14
  3. package/dist/attachment.d.ts +178 -0
  4. package/dist/attachment.d.ts.map +1 -1
  5. package/dist/attachment.js +46 -0
  6. package/dist/attachment.js.map +1 -1
  7. package/dist/captured-run-start.d.ts +1105 -0
  8. package/dist/captured-run-start.d.ts.map +1 -0
  9. package/dist/captured-run-start.js +41 -0
  10. package/dist/captured-run-start.js.map +1 -0
  11. package/dist/command-summary.d.ts +1 -1
  12. package/dist/command-summary.d.ts.map +1 -1
  13. package/dist/command-summary.js +1 -0
  14. package/dist/command-summary.js.map +1 -1
  15. package/dist/control-gc.d.ts +377 -0
  16. package/dist/control-gc.d.ts.map +1 -1
  17. package/dist/control-gc.js +74 -1
  18. package/dist/control-gc.js.map +1 -1
  19. package/dist/control-harness-models.js +1 -1
  20. package/dist/control-harness-models.js.map +1 -1
  21. package/dist/control-operation-responses.d.ts +201 -9
  22. package/dist/control-operation-responses.d.ts.map +1 -1
  23. package/dist/control-operation-responses.js +7 -1
  24. package/dist/control-operation-responses.js.map +1 -1
  25. package/dist/control-run-detail.d.ts +292 -19
  26. package/dist/control-run-detail.d.ts.map +1 -1
  27. package/dist/control-run-detail.js +2 -0
  28. package/dist/control-run-detail.js.map +1 -1
  29. package/dist/control-run-failure.d.ts +29 -4
  30. package/dist/control-run-failure.d.ts.map +1 -1
  31. package/dist/control-run-failure.js +3 -0
  32. package/dist/control-run-failure.js.map +1 -1
  33. package/dist/control-run-retry.d.ts +31 -0
  34. package/dist/control-run-retry.d.ts.map +1 -1
  35. package/dist/control-run-retry.js +12 -1
  36. package/dist/control-run-retry.js.map +1 -1
  37. package/dist/control-timeline.d.ts +9 -0
  38. package/dist/control-timeline.d.ts.map +1 -1
  39. package/dist/control-timeline.js +13 -0
  40. package/dist/control-timeline.js.map +1 -1
  41. package/dist/control.d.ts +78 -5
  42. package/dist/control.d.ts.map +1 -1
  43. package/dist/control.js +7 -9
  44. package/dist/control.js.map +1 -1
  45. package/dist/credential-profile-snapshot.d.ts +28 -28
  46. package/dist/credential-profile.d.ts +1 -1
  47. package/dist/credential-profile.js +2 -2
  48. package/dist/credential-profile.js.map +1 -1
  49. package/dist/credential-store.d.ts +3 -2
  50. package/dist/credential-store.d.ts.map +1 -1
  51. package/dist/credential-store.js +5 -4
  52. package/dist/credential-store.js.map +1 -1
  53. package/dist/daemon-status.d.ts +492 -0
  54. package/dist/daemon-status.d.ts.map +1 -1
  55. package/dist/daemon-status.js +22 -0
  56. package/dist/daemon-status.js.map +1 -1
  57. package/dist/deferred-message.d.ts +2450 -0
  58. package/dist/deferred-message.d.ts.map +1 -0
  59. package/dist/deferred-message.js +186 -0
  60. package/dist/deferred-message.js.map +1 -0
  61. package/dist/events.d.ts +3 -3
  62. package/dist/events.js +1 -1
  63. package/dist/events.js.map +1 -1
  64. package/dist/harness-input.d.ts +15 -0
  65. package/dist/harness-input.d.ts.map +1 -1
  66. package/dist/harness-input.js +10 -1
  67. package/dist/harness-input.js.map +1 -1
  68. package/dist/harness-model.d.ts +65 -0
  69. package/dist/harness-model.d.ts.map +1 -1
  70. package/dist/harness-model.js +42 -0
  71. package/dist/harness-model.js.map +1 -1
  72. package/dist/harness-quota.d.ts +3 -3
  73. package/dist/harness-speech.d.ts +36 -0
  74. package/dist/harness-speech.d.ts.map +1 -0
  75. package/dist/harness-speech.js +27 -0
  76. package/dist/harness-speech.js.map +1 -0
  77. package/dist/harness.d.ts +79 -9
  78. package/dist/harness.d.ts.map +1 -1
  79. package/dist/harness.js +5 -4
  80. package/dist/harness.js.map +1 -1
  81. package/dist/index.d.ts +9 -0
  82. package/dist/index.d.ts.map +1 -1
  83. package/dist/index.js +9 -0
  84. package/dist/index.js.map +1 -1
  85. package/dist/mcp-run-result.d.ts +356 -12
  86. package/dist/mcp-run-result.d.ts.map +1 -1
  87. package/dist/mcp-run-result.js +5 -0
  88. package/dist/mcp-run-result.js.map +1 -1
  89. package/dist/mcp-run-wait.d.ts +133 -0
  90. package/dist/mcp-run-wait.d.ts.map +1 -1
  91. package/dist/mcp-run-wait.js +4 -0
  92. package/dist/mcp-run-wait.js.map +1 -1
  93. package/dist/mcp-upload.d.ts +133 -0
  94. package/dist/mcp-upload.d.ts.map +1 -0
  95. package/dist/mcp-upload.js +40 -0
  96. package/dist/mcp-upload.js.map +1 -0
  97. package/dist/quota-read.d.ts +8 -8
  98. package/dist/quota.d.ts +26 -20
  99. package/dist/quota.d.ts.map +1 -1
  100. package/dist/quota.js +11 -1
  101. package/dist/quota.js.map +1 -1
  102. package/dist/run-observation.d.ts +189 -0
  103. package/dist/run-observation.d.ts.map +1 -0
  104. package/dist/run-observation.js +99 -0
  105. package/dist/run-observation.js.map +1 -0
  106. package/dist/setup-login.d.ts +5 -5
  107. package/dist/setup.d.ts +63 -63
  108. package/dist/setup.d.ts.map +1 -1
  109. package/dist/setup.js +1 -1
  110. package/dist/setup.js.map +1 -1
  111. package/dist/task-group-runs.d.ts +258 -0
  112. package/dist/task-group-runs.d.ts.map +1 -0
  113. package/dist/task-group-runs.js +94 -0
  114. package/dist/task-group-runs.js.map +1 -0
  115. package/dist/task-group.d.ts +23 -0
  116. package/dist/task-group.d.ts.map +1 -0
  117. package/dist/task-group.js +38 -0
  118. package/dist/task-group.js.map +1 -0
  119. package/dist/telemetry.d.ts +136 -8
  120. package/dist/telemetry.d.ts.map +1 -1
  121. package/dist/telemetry.js +2 -5
  122. package/dist/telemetry.js.map +1 -1
  123. package/dist/thread-history.d.ts +12553 -0
  124. package/dist/thread-history.d.ts.map +1 -0
  125. package/dist/thread-history.js +291 -0
  126. package/dist/thread-history.js.map +1 -0
  127. package/generated/ControlAccountResetResponse.schema.json +1 -0
  128. package/generated/ControlAccountResourcesFreshnessResponse.schema.json +1 -0
  129. package/generated/ControlAccountResourcesResponse.schema.json +1 -0
  130. package/generated/ControlCredentialProfileCreateRequest.schema.json +1 -1
  131. package/generated/ControlCredentialProfilesQueryResponse.schema.json +1 -0
  132. package/generated/ControlCredentialProfilesResourcesResponse.schema.json +1 -0
  133. package/generated/ControlCredentialProfilesSnapshotResponse.schema.json +1 -0
  134. package/generated/ControlDaemonStatus.schema.json +112 -43
  135. package/generated/ControlGcLastResponse.schema.json +184 -0
  136. package/generated/ControlGcReceipt.schema.json +60 -1
  137. package/generated/ControlGcRequest.schema.json +4 -0
  138. package/generated/ControlQueuedRunInfo.schema.json +10 -0
  139. package/generated/ControlQuotaFreshnessResponse.schema.json +1 -0
  140. package/generated/ControlQuotaQueryResponse.schema.json +1 -0
  141. package/generated/ControlQuotaResponse.schema.json +1 -0
  142. package/generated/ControlRunAgainDraft.schema.json +5 -0
  143. package/generated/ControlRunControlResponse.schema.json +169 -0
  144. package/generated/ControlRunDecisionResponse.schema.json +14 -0
  145. package/generated/ControlRunDetail.schema.json +240 -2
  146. package/generated/ControlRunListResponse.schema.json +32 -2
  147. package/generated/ControlRunRetryResponse.schema.json +10 -0
  148. package/generated/ControlRunStartInfo.schema.json +10 -0
  149. package/generated/ControlRunStartRequest.schema.json +5 -0
  150. package/generated/ControlRunStartResponse.schema.json +18 -0
  151. package/generated/ControlRunSummary.schema.json +32 -2
  152. package/generated/ControlSetupJob.schema.json +2 -1
  153. package/generated/ControlSetupJobCreateRequest.schema.json +2 -1
  154. package/generated/ControlSetupJobEvent.schema.json +2 -1
  155. package/generated/ControlSetupJobListFilter.schema.json +2 -1
  156. package/generated/ControlSetupJobListResponse.schema.json +2 -1
  157. package/generated/ControlSetupJobSnapshot.schema.json +2 -1
  158. package/generated/ControlThreadDetail.schema.json +1 -1
  159. package/generated/ControlUploadImport.schema.json +124 -0
  160. package/generated/ControlUploadImportRequest.schema.json +66 -0
  161. package/generated/DeferredMessageCall.schema.json +331 -0
  162. package/generated/DeferredMessageDetail.schema.json +917 -0
  163. package/generated/DeferredMessageMutation.schema.json +315 -0
  164. package/generated/DeferredMessageProjection.schema.json +177 -0
  165. package/generated/DeferredMessageReadInput.schema.json +20 -0
  166. package/generated/DeferredMessageReadResult.schema.json +399 -0
  167. package/generated/DeferredMessageReceipt.schema.json +193 -0
  168. package/generated/HarnessEvent.schema.json +100 -1
  169. package/generated/McpAccountsToolResult.schema.json +1 -0
  170. package/generated/McpRunHandleResult.schema.json +226 -19
  171. package/generated/McpRunToolResult.schema.json +228 -11
  172. package/generated/McpRunWaitResult.schema.json +180 -2
  173. package/generated/McpStoreIdentityInput.schema.json +11 -0
  174. package/generated/McpUploadCreateInput.schema.json +54 -0
  175. package/generated/McpUploadFinalizeInput.schema.json +40 -0
  176. package/generated/McpUploadImportInput.schema.json +52 -0
  177. package/generated/McpUploadImportLocalInput.schema.json +27 -0
  178. package/generated/McpUploadImportLocalResult.schema.json +45 -0
  179. package/generated/McpUploadTargetInput.schema.json +20 -0
  180. package/generated/ResourceAttachmentRef.schema.json +21 -0
  181. package/generated/RoutePrimaryDivergedPayload.schema.json +23 -14
  182. package/generated/RunFailure.schema.json +31 -1
  183. package/generated/RunObservationRecord.schema.json +64 -0
  184. package/generated/RunTelemetry.schema.json +83 -1
  185. package/generated/RunWaitManyInput.schema.json +54 -0
  186. package/generated/RunWaitManyResult.schema.json +110 -0
  187. package/generated/RunWaitManySummary.schema.json +75 -0
  188. package/generated/TaskGroupId.schema.json +11 -0
  189. package/generated/TaskGroupReceipt.schema.json +26 -0
  190. package/generated/TaskGroupRunsInput.schema.json +46 -0
  191. package/generated/TaskGroupRunsResult.schema.json +162 -0
  192. package/generated/ThreadHistoryInput.schema.json +48 -0
  193. package/generated/ThreadHistoryPage.schema.json +2857 -0
  194. package/generated/ThreadPromptPart.schema.json +57 -0
  195. package/generated/ThreadPromptPartInput.schema.json +41 -0
  196. package/package.json +2 -2
@@ -0,0 +1,124 @@
1
+ {
2
+ "$ref": "#/definitions/ControlUploadImport",
3
+ "definitions": {
4
+ "ControlUploadImport": {
5
+ "type": "object",
6
+ "properties": {
7
+ "storeId": {
8
+ "type": "string",
9
+ "minLength": 1,
10
+ "description": "Durable store that owns this import key and its resource."
11
+ },
12
+ "state": {
13
+ "type": "string",
14
+ "enum": [
15
+ "open",
16
+ "uploading",
17
+ "ready",
18
+ "cancelled"
19
+ ],
20
+ "description": "open: send the bound bytes; uploading: a transfer is in flight; ready: resource is published; cancelled: finished without a resource, a new attempt needs a new key."
21
+ },
22
+ "uploadId": {
23
+ "type": "string",
24
+ "minLength": 1,
25
+ "description": "Upload that receives this import's bytes."
26
+ },
27
+ "content": {
28
+ "type": "object",
29
+ "properties": {
30
+ "sizeBytes": {
31
+ "type": "integer",
32
+ "minimum": 0,
33
+ "description": "Exact byte length."
34
+ },
35
+ "sha256": {
36
+ "type": "string",
37
+ "pattern": "^sha256:[a-f0-9]{64}$",
38
+ "description": "Exact digest of the bytes: \"sha256:\" and 64 lowercase hex digits."
39
+ }
40
+ },
41
+ "required": [
42
+ "sizeBytes",
43
+ "sha256"
44
+ ],
45
+ "additionalProperties": false,
46
+ "description": "Exact bytes a keyed import owns, bound by its first accepted declaration."
47
+ },
48
+ "receivedBytes": {
49
+ "type": "integer",
50
+ "minimum": 0
51
+ },
52
+ "resource": {
53
+ "type": "object",
54
+ "properties": {
55
+ "resourceId": {
56
+ "type": "string",
57
+ "minLength": 1,
58
+ "description": "Non-empty identifier string."
59
+ },
60
+ "purpose": {
61
+ "type": "string",
62
+ "const": "model",
63
+ "description": "Immutable model-operation purpose; absent means a legacy or ordinary attachment."
64
+ },
65
+ "kind": {
66
+ "type": "string",
67
+ "enum": [
68
+ "image",
69
+ "file"
70
+ ],
71
+ "description": "Kind of attached resource: image input or generic file bytes."
72
+ },
73
+ "mime": {
74
+ "type": "string",
75
+ "minLength": 1
76
+ },
77
+ "name": {
78
+ "type": "string"
79
+ },
80
+ "sha256": {
81
+ "type": "string",
82
+ "minLength": 1,
83
+ "description": "Content hash in algo:hex form, e.g. \"sha256:abcd...\"."
84
+ },
85
+ "sizeBytes": {
86
+ "type": "integer",
87
+ "minimum": 0
88
+ },
89
+ "createdAt": {
90
+ "type": "string",
91
+ "minLength": 1,
92
+ "description": "ISO-8601 timestamp string."
93
+ },
94
+ "deduplicated": {
95
+ "type": "boolean"
96
+ }
97
+ },
98
+ "required": [
99
+ "resourceId",
100
+ "kind",
101
+ "mime",
102
+ "name",
103
+ "sha256",
104
+ "sizeBytes",
105
+ "createdAt",
106
+ "deduplicated"
107
+ ],
108
+ "additionalProperties": false,
109
+ "description": "The immutable resource, present exactly when state is ready."
110
+ }
111
+ },
112
+ "required": [
113
+ "storeId",
114
+ "state",
115
+ "uploadId",
116
+ "content",
117
+ "receivedBytes"
118
+ ],
119
+ "additionalProperties": false,
120
+ "description": "Current state of one keyed import, identical for its first call and every replay."
121
+ }
122
+ },
123
+ "$schema": "http://json-schema.org/draft-07/schema#"
124
+ }
@@ -0,0 +1,66 @@
1
+ {
2
+ "$ref": "#/definitions/ControlUploadImportRequest",
3
+ "definitions": {
4
+ "ControlUploadImportRequest": {
5
+ "type": "object",
6
+ "properties": {
7
+ "expectedStoreId": {
8
+ "type": "string",
9
+ "minLength": 1,
10
+ "description": "Store UUID from the opt-in handshake, saved with the key BEFORE the first import and replayed unchanged; never replaced by the current store. A different store is refused before any effect."
11
+ },
12
+ "kind": {
13
+ "type": "string",
14
+ "enum": [
15
+ "image",
16
+ "file"
17
+ ],
18
+ "description": "Kind of attached resource: image input or generic file bytes."
19
+ },
20
+ "mime": {
21
+ "type": "string",
22
+ "minLength": 1
23
+ },
24
+ "name": {
25
+ "type": "string",
26
+ "default": ""
27
+ },
28
+ "source": {
29
+ "type": "string",
30
+ "minLength": 1,
31
+ "maxLength": 4096,
32
+ "description": "Opaque caller identity of the selected source, such as the absolute path a local client read or a task artifact id. Bound into the key only; the daemon never reads, resolves, stores or returns it."
33
+ },
34
+ "content": {
35
+ "type": "object",
36
+ "properties": {
37
+ "sizeBytes": {
38
+ "type": "integer",
39
+ "minimum": 0,
40
+ "description": "Exact byte length."
41
+ },
42
+ "sha256": {
43
+ "type": "string",
44
+ "pattern": "^sha256:[a-f0-9]{64}$",
45
+ "description": "Exact digest of the bytes: \"sha256:\" and 64 lowercase hex digits."
46
+ }
47
+ },
48
+ "required": [
49
+ "sizeBytes",
50
+ "sha256"
51
+ ],
52
+ "additionalProperties": false,
53
+ "description": "Required to begin an import. Omit it to read or replay an already bound key without touching the source."
54
+ }
55
+ },
56
+ "required": [
57
+ "expectedStoreId",
58
+ "kind",
59
+ "mime"
60
+ ],
61
+ "additionalProperties": false,
62
+ "description": "Keyed import of one ordinary attachment through the upload owner."
63
+ }
64
+ },
65
+ "$schema": "http://json-schema.org/draft-07/schema#"
66
+ }
@@ -0,0 +1,331 @@
1
+ {
2
+ "$ref": "#/definitions/DeferredMessageCall",
3
+ "definitions": {
4
+ "DeferredMessageCall": {
5
+ "type": "object",
6
+ "properties": {
7
+ "request": {
8
+ "anyOf": [
9
+ {
10
+ "type": "object",
11
+ "properties": {
12
+ "action": {
13
+ "type": "string",
14
+ "const": "create"
15
+ },
16
+ "predecessorId": {
17
+ "type": "string",
18
+ "minLength": 1,
19
+ "description": "Non-empty identifier string."
20
+ },
21
+ "prompt": {
22
+ "type": "string"
23
+ },
24
+ "attachments": {
25
+ "type": "array",
26
+ "items": {
27
+ "type": "object",
28
+ "properties": {
29
+ "resourceId": {
30
+ "type": "string",
31
+ "minLength": 1,
32
+ "description": "Immutable daemon resource id returned by upload finalize."
33
+ }
34
+ },
35
+ "required": [
36
+ "resourceId"
37
+ ],
38
+ "additionalProperties": false,
39
+ "description": "Reference to an immutable daemon-owned uploaded resource."
40
+ }
41
+ },
42
+ "controls": {
43
+ "type": "object",
44
+ "properties": {
45
+ "access": {
46
+ "type": "string",
47
+ "enum": [
48
+ "readonly",
49
+ "workspace_write",
50
+ "full",
51
+ "inherit_native"
52
+ ],
53
+ "description": "Requested access profile; effective access is derived by the engine and never client-supplied."
54
+ },
55
+ "web": {
56
+ "type": "string",
57
+ "enum": [
58
+ "off",
59
+ "auto",
60
+ "cached",
61
+ "live"
62
+ ],
63
+ "description": "Web policy for the run (alias of externalContextPolicy; must match when both set)."
64
+ },
65
+ "externalContextPolicy": {
66
+ "$ref": "#/definitions/DeferredMessageCall/properties/request/anyOf/0/properties/controls/properties/web",
67
+ "description": "External web/context policy for the run."
68
+ },
69
+ "credentialProfileId": {
70
+ "anyOf": [
71
+ {
72
+ "type": "string",
73
+ "minLength": 1
74
+ },
75
+ {
76
+ "type": "null"
77
+ }
78
+ ],
79
+ "description": "Explicit per-run credential profile id; null FORCES the engine-default ladder past a thread-sticky profile; unknown/disabled ids refuse, never default."
80
+ },
81
+ "paidBudget": {
82
+ "anyOf": [
83
+ {
84
+ "type": "object",
85
+ "properties": {
86
+ "kind": {
87
+ "type": "string",
88
+ "const": "unlimited"
89
+ }
90
+ },
91
+ "required": [
92
+ "kind"
93
+ ],
94
+ "additionalProperties": false
95
+ },
96
+ {
97
+ "type": "object",
98
+ "properties": {
99
+ "kind": {
100
+ "type": "string",
101
+ "const": "finite"
102
+ },
103
+ "maxUsd": {
104
+ "type": "number",
105
+ "minimum": 0
106
+ }
107
+ },
108
+ "required": [
109
+ "kind",
110
+ "maxUsd"
111
+ ],
112
+ "additionalProperties": false
113
+ }
114
+ ],
115
+ "description": "Explicit incremental-cash budget for the run."
116
+ },
117
+ "maxSeconds": {
118
+ "type": "integer",
119
+ "exclusiveMinimum": 0,
120
+ "maximum": 604800,
121
+ "description": "Wall-clock limit for the whole run (seconds, max seven days). Omission disables the clock. Explicit limits cancel by default; soft mode warns and continues."
122
+ },
123
+ "timeLimitMode": {
124
+ "type": "string",
125
+ "enum": [
126
+ "soft",
127
+ "hard"
128
+ ],
129
+ "description": "Initial timer mode: soft warns and continues; hard cancels. Omission is hard with maxSeconds and soft without it."
130
+ },
131
+ "review": {
132
+ "type": "boolean",
133
+ "description": "Agent model review: ordinary runs default off; true selects an automatic panel. Explicit reviewer controls, best-of and untilClean request review. Capped attempts default to review unless explicitly false."
134
+ },
135
+ "reviewerPanel": {
136
+ "type": "array",
137
+ "items": {
138
+ "type": "object",
139
+ "properties": {
140
+ "harness": {
141
+ "type": "string",
142
+ "minLength": 1,
143
+ "pattern": "\\S",
144
+ "description": "Explicit reviewer harness id; repeated harness ids are allowed so one provider can review through multiple requested models."
145
+ },
146
+ "model": {
147
+ "type": "string",
148
+ "minLength": 1,
149
+ "pattern": "\\S",
150
+ "description": "Per-reviewer model hint, passed to that harness only."
151
+ },
152
+ "effort": {
153
+ "type": "string",
154
+ "minLength": 1,
155
+ "maxLength": 32,
156
+ "pattern": "^[a-z0-9]+(?:[_-][a-z0-9]+)*$",
157
+ "description": "Per-reviewer effort hint, passed to that harness only."
158
+ },
159
+ "credentialProfileId": {
160
+ "$ref": "#/definitions/DeferredMessageCall/properties/request/anyOf/0/properties/controls/properties/reviewerPanel/items/properties/model",
161
+ "description": "Per-reviewer credential profile id; explicit pins are strict and never fall back."
162
+ },
163
+ "processingPreference": {
164
+ "type": "string",
165
+ "enum": [
166
+ "standard",
167
+ "fast",
168
+ "economy"
169
+ ],
170
+ "description": "Advisory service preference. Fast or Economy may use ordinary Standard service; fallback never introduces Fast. Omission preserves native defaults. Explicit native serviceTier takes precedence."
171
+ }
172
+ },
173
+ "required": [
174
+ "harness"
175
+ ],
176
+ "additionalProperties": false,
177
+ "description": "One reviewer of an explicit reviewer panel — a harness plus optional model, effort, and strict credentialProfileId. Compact entries are unpinned; structured JSON carries pins."
178
+ },
179
+ "minItems": 1,
180
+ "description": "Explicit Agent reviewer panel — who reviews the change, one entry per reviewer as `harness=model:effort` (CLI `--reviewer-panel`, unpinned) or structured `--reviewer-panel-json` with optional strict credentialProfileId. Duplicate harness entries are kept so one provider can review through several models; overrides the legacy reviewerModels/reviewerEfforts maps."
181
+ },
182
+ "reviewerModels": {
183
+ "type": "object",
184
+ "additionalProperties": {
185
+ "$ref": "#/definitions/DeferredMessageCall/properties/request/anyOf/0/properties/controls/properties/reviewerPanel/items/properties/model"
186
+ },
187
+ "propertyNames": {
188
+ "enum": [
189
+ "openai",
190
+ "anthropic",
191
+ "google",
192
+ "cursor",
193
+ "opencode",
194
+ "xai",
195
+ "local",
196
+ "unknown"
197
+ ]
198
+ },
199
+ "description": "Per-provider-family reviewer model overrides (legacy; reviewerPanel wins when present)."
200
+ },
201
+ "reviewerEfforts": {
202
+ "type": "object",
203
+ "additionalProperties": {
204
+ "$ref": "#/definitions/DeferredMessageCall/properties/request/anyOf/0/properties/controls/properties/reviewerPanel/items/properties/effort"
205
+ },
206
+ "propertyNames": {
207
+ "enum": [
208
+ "openai",
209
+ "anthropic",
210
+ "google",
211
+ "cursor",
212
+ "opencode",
213
+ "xai",
214
+ "local",
215
+ "unknown"
216
+ ]
217
+ },
218
+ "description": "Per-provider-family reviewer effort overrides (legacy; reviewerPanel wins when present)."
219
+ },
220
+ "continueCarrier": {
221
+ "type": "string",
222
+ "enum": [
223
+ "auto",
224
+ "packet"
225
+ ],
226
+ "description": "Carrier preference for continueFrom; omitted = auto."
227
+ },
228
+ "effort": {
229
+ "$ref": "#/definitions/DeferredMessageCall/properties/request/anyOf/0/properties/controls/properties/reviewerPanel/items/properties/effort",
230
+ "description": "Requested reasoning effort."
231
+ },
232
+ "efforts": {
233
+ "type": "object",
234
+ "additionalProperties": {
235
+ "$ref": "#/definitions/DeferredMessageCall/properties/request/anyOf/0/properties/controls/properties/reviewerPanel/items/properties/effort"
236
+ },
237
+ "propertyNames": {
238
+ "minLength": 1,
239
+ "pattern": "\\S"
240
+ },
241
+ "description": "Harness-scoped effort map (harness id to effort); an entry here wins over the scalar effort and the per-harness settings default."
242
+ },
243
+ "taskGroupId": {
244
+ "type": "string",
245
+ "format": "uuid",
246
+ "description": "Caller-generated UUID saved before launching the first member. Each job still needs its own idempotency key; the group grants no execution authority."
247
+ }
248
+ },
249
+ "additionalProperties": false,
250
+ "description": "Request body for POST /runs: prompt, mode, scope, routing, strategy flags, budget, policies, and thread linkage."
251
+ }
252
+ },
253
+ "required": [
254
+ "action",
255
+ "predecessorId",
256
+ "prompt",
257
+ "attachments"
258
+ ],
259
+ "additionalProperties": false
260
+ },
261
+ {
262
+ "type": "object",
263
+ "properties": {
264
+ "action": {
265
+ "type": "string",
266
+ "const": "replace"
267
+ },
268
+ "draftId": {
269
+ "$ref": "#/definitions/DeferredMessageCall/properties/request/anyOf/0/properties/predecessorId"
270
+ },
271
+ "expectedRevision": {
272
+ "type": "integer",
273
+ "exclusiveMinimum": 0,
274
+ "maximum": 9007199254740991
275
+ },
276
+ "prompt": {
277
+ "$ref": "#/definitions/DeferredMessageCall/properties/request/anyOf/0/properties/prompt"
278
+ },
279
+ "attachments": {
280
+ "$ref": "#/definitions/DeferredMessageCall/properties/request/anyOf/0/properties/attachments"
281
+ }
282
+ },
283
+ "required": [
284
+ "action",
285
+ "draftId",
286
+ "expectedRevision",
287
+ "prompt",
288
+ "attachments"
289
+ ],
290
+ "additionalProperties": false
291
+ },
292
+ {
293
+ "type": "object",
294
+ "properties": {
295
+ "action": {
296
+ "type": "string",
297
+ "const": "clear"
298
+ },
299
+ "draftId": {
300
+ "$ref": "#/definitions/DeferredMessageCall/properties/request/anyOf/0/properties/predecessorId"
301
+ },
302
+ "expectedRevision": {
303
+ "$ref": "#/definitions/DeferredMessageCall/properties/request/anyOf/1/properties/expectedRevision"
304
+ }
305
+ },
306
+ "required": [
307
+ "action",
308
+ "draftId",
309
+ "expectedRevision"
310
+ ],
311
+ "additionalProperties": false
312
+ }
313
+ ],
314
+ "description": "One editable reserved next message of a daemon-owned one-shot Agent/Ask. Every mutation requires Idempotency-Key; replace/clear require the exact revision."
315
+ },
316
+ "idempotencyKey": {
317
+ "type": "string",
318
+ "minLength": 1,
319
+ "maxLength": 256,
320
+ "pattern": "\\S"
321
+ }
322
+ },
323
+ "required": [
324
+ "request",
325
+ "idempotencyKey"
326
+ ],
327
+ "additionalProperties": false
328
+ }
329
+ },
330
+ "$schema": "http://json-schema.org/draft-07/schema#"
331
+ }