@claudexor/schema 3.15.1 → 3.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (51) hide show
  1. package/dist/agent-capabilities.d.ts +8 -0
  2. package/dist/agent-capabilities.d.ts.map +1 -1
  3. package/dist/agent-capabilities.js +2 -1
  4. package/dist/agent-capabilities.js.map +1 -1
  5. package/dist/control-harness-list.d.ts +9 -0
  6. package/dist/control-harness-list.d.ts.map +1 -1
  7. package/dist/control-run-detail.d.ts +10 -0
  8. package/dist/control-run-detail.d.ts.map +1 -1
  9. package/dist/control-run-message.d.ts +98 -0
  10. package/dist/control-run-message.d.ts.map +1 -0
  11. package/dist/control-run-message.js +94 -0
  12. package/dist/control-run-message.js.map +1 -0
  13. package/dist/control-timeline.d.ts +6 -0
  14. package/dist/control-timeline.d.ts.map +1 -1
  15. package/dist/control-timeline.js +10 -0
  16. package/dist/control-timeline.js.map +1 -1
  17. package/dist/credential-profile-snapshot.d.ts +18 -0
  18. package/dist/credential-profile-snapshot.d.ts.map +1 -1
  19. package/dist/events.d.ts +4 -4
  20. package/dist/events.d.ts.map +1 -1
  21. package/dist/events.js +15 -0
  22. package/dist/events.js.map +1 -1
  23. package/dist/harness-interaction.d.ts +179 -0
  24. package/dist/harness-interaction.d.ts.map +1 -0
  25. package/dist/harness-interaction.js +81 -0
  26. package/dist/harness-interaction.js.map +1 -0
  27. package/dist/harness.d.ts +29 -169
  28. package/dist/harness.d.ts.map +1 -1
  29. package/dist/harness.js +16 -68
  30. package/dist/harness.js.map +1 -1
  31. package/dist/index.d.ts +1 -0
  32. package/dist/index.d.ts.map +1 -1
  33. package/dist/index.js +1 -0
  34. package/dist/index.js.map +1 -1
  35. package/dist/project.d.ts +4 -0
  36. package/dist/project.d.ts.map +1 -1
  37. package/dist/project.js +6 -0
  38. package/dist/project.js.map +1 -1
  39. package/dist/readiness.d.ts +7 -0
  40. package/dist/readiness.d.ts.map +1 -1
  41. package/generated/AgentCapabilityCatalog.schema.json +10 -0
  42. package/generated/ControlCredentialProfilesQueryResponse.schema.json +11 -1
  43. package/generated/ControlCredentialProfilesSnapshotResponse.schema.json +11 -1
  44. package/generated/ControlHarnessListResponse.schema.json +11 -1
  45. package/generated/ControlRunDetail.schema.json +16 -0
  46. package/generated/ControlRunMessageRequest.schema.json +27 -0
  47. package/generated/ControlRunMessageResponse.schema.json +88 -0
  48. package/generated/HarnessManifest.schema.json +11 -1
  49. package/generated/HarnessStatusDto.schema.json +11 -1
  50. package/generated/RunEvent.schema.json +3 -0
  51. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"readiness.d.ts","sourceRoot":"","sources":["../src/readiness.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAK3B,2EAA2E;AAC3E,eAAO,MAAM,oBAAoB;;;;;;EAS8C,CAAC;AAChF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAExE;;;;;;;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;;;;oCAIgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCjC,CAAC;AACJ,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
1
+ {"version":3,"file":"readiness.d.ts","sourceRoot":"","sources":["../src/readiness.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,QAAQ,CAAC;AAK3B,2EAA2E;AAC3E,eAAO,MAAM,oBAAoB;;;;;;EAS8C,CAAC;AAChF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAExE;;;;;;;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;;;;oCAIgC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAgCjC,CAAC;AACJ,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC"}
@@ -324,6 +324,16 @@
324
324
  "additionalProperties": false,
325
325
  "description": "Whether this installed runtime can offer Delegate through this harness."
326
326
  },
327
+ "liveInput": {
328
+ "type": "string",
329
+ "enum": [
330
+ "mid_turn",
331
+ "next_tool_boundary",
332
+ "none"
333
+ ],
334
+ "description": "How a live message enters one of this harness's RUNNING sessions (POST /v2/runs/:id/messages): mid_turn | next_tool_boundary | none. The harness maximum from its capability profile; the POST answers for the specific run. Omitted by engines older than 3.16.0 (= none).",
335
+ "default": "none"
336
+ },
327
337
  "setupLogin": {
328
338
  "anyOf": [
329
339
  {
@@ -755,11 +755,21 @@
755
755
  "type": "boolean",
756
756
  "default": false,
757
757
  "description": "An injected MCP server can only reach the daemon (belt) at full access; below it the harness sandbox cancels the call. true => Delegate below full access degrades to ordinary Agent with a durable typed receipt."
758
+ },
759
+ "live_input": {
760
+ "type": "string",
761
+ "enum": [
762
+ "mid_turn",
763
+ "next_tool_boundary",
764
+ "none"
765
+ ],
766
+ "description": "How a live message enters a running session: mid_turn (consumed inside the active turn), next_tool_boundary (queued until the same turn's next tool boundary), none (no truthful channel; the engine answers unsupported).",
767
+ "default": "none"
758
768
  }
759
769
  },
760
770
  "additionalProperties": false,
761
771
  "default": {},
762
- "description": "Structured per-harness facts the engine consumes: auth routing, isolation containment, readonly mechanism, finite attachment inputs, and MCP injection."
772
+ "description": "Structured per-harness facts the engine consumes: auth routing, isolation containment, readonly mechanism, finite attachment inputs, MCP injection, and live input into a running session."
763
773
  },
764
774
  "capabilities": {
765
775
  "type": "object",
@@ -734,11 +734,21 @@
734
734
  "type": "boolean",
735
735
  "default": false,
736
736
  "description": "An injected MCP server can only reach the daemon (belt) at full access; below it the harness sandbox cancels the call. true => Delegate below full access degrades to ordinary Agent with a durable typed receipt."
737
+ },
738
+ "live_input": {
739
+ "type": "string",
740
+ "enum": [
741
+ "mid_turn",
742
+ "next_tool_boundary",
743
+ "none"
744
+ ],
745
+ "description": "How a live message enters a running session: mid_turn (consumed inside the active turn), next_tool_boundary (queued until the same turn's next tool boundary), none (no truthful channel; the engine answers unsupported).",
746
+ "default": "none"
737
747
  }
738
748
  },
739
749
  "additionalProperties": false,
740
750
  "default": {},
741
- "description": "Structured per-harness facts the engine consumes: auth routing, isolation containment, readonly mechanism, finite attachment inputs, and MCP injection."
751
+ "description": "Structured per-harness facts the engine consumes: auth routing, isolation containment, readonly mechanism, finite attachment inputs, MCP injection, and live input into a running session."
742
752
  },
743
753
  "capabilities": {
744
754
  "type": "object",
@@ -369,11 +369,21 @@
369
369
  "type": "boolean",
370
370
  "default": false,
371
371
  "description": "An injected MCP server can only reach the daemon (belt) at full access; below it the harness sandbox cancels the call. true => Delegate below full access degrades to ordinary Agent with a durable typed receipt."
372
+ },
373
+ "live_input": {
374
+ "type": "string",
375
+ "enum": [
376
+ "mid_turn",
377
+ "next_tool_boundary",
378
+ "none"
379
+ ],
380
+ "description": "How a live message enters a running session: mid_turn (consumed inside the active turn), next_tool_boundary (queued until the same turn's next tool boundary), none (no truthful channel; the engine answers unsupported).",
381
+ "default": "none"
372
382
  }
373
383
  },
374
384
  "additionalProperties": false,
375
385
  "default": {},
376
- "description": "Structured per-harness facts the engine consumes: auth routing, isolation containment, readonly mechanism, finite attachment inputs, and MCP injection."
386
+ "description": "Structured per-harness facts the engine consumes: auth routing, isolation containment, readonly mechanism, finite attachment inputs, MCP injection, and live input into a running session."
377
387
  },
378
388
  "capabilities": {
379
389
  "type": "object",
@@ -2199,6 +2199,22 @@
2199
2199
  "default": null,
2200
2200
  "description": "Attempt involved, when any."
2201
2201
  },
2202
+ "messageId": {
2203
+ "type": [
2204
+ "string",
2205
+ "null"
2206
+ ],
2207
+ "default": null,
2208
+ "description": "Live-message id on message.* receipt rows and on the adapter's live_input_delivered status row, when any."
2209
+ },
2210
+ "outcome": {
2211
+ "type": [
2212
+ "string",
2213
+ "null"
2214
+ ],
2215
+ "default": null,
2216
+ "description": "Typed live-message outcome on message.* rows (delivered | accepted | rejected | not_active | unsupported | delivery_unknown); `delivered` on the adapter's consumption status row; null elsewhere."
2217
+ },
2202
2218
  "title": {
2203
2219
  "type": "string",
2204
2220
  "description": "Human-readable event title."
@@ -0,0 +1,27 @@
1
+ {
2
+ "$ref": "#/definitions/ControlRunMessageRequest",
3
+ "definitions": {
4
+ "ControlRunMessageRequest": {
5
+ "type": "object",
6
+ "properties": {
7
+ "text": {
8
+ "type": "string",
9
+ "minLength": 1,
10
+ "maxLength": 65536,
11
+ "description": "The message to place into the run's active attempt. 1..65536 UTF-16 code units (the JS string length, not bytes or visible characters); an over-long body is a 400, never truncated. Secret-like values are refused (inline_secret_rejected) like every prompt ingress."
12
+ },
13
+ "expectedAttemptId": {
14
+ "type": "string",
15
+ "minLength": 1,
16
+ "description": "Target attempt id. Required when the run has several live attempts (race n>1): without it the daemon answers rejected/multi_attempt. A mismatch with the live attempt answers not_active/attempt_mismatch."
17
+ }
18
+ },
19
+ "required": [
20
+ "text"
21
+ ],
22
+ "additionalProperties": false,
23
+ "description": "Live message into a running run. Send with an Idempotency-Key (the message id): a replay under the same key returns the recorded receipt without a second delivery."
24
+ }
25
+ },
26
+ "$schema": "http://json-schema.org/draft-07/schema#"
27
+ }
@@ -0,0 +1,88 @@
1
+ {
2
+ "$ref": "#/definitions/ControlRunMessageResponse",
3
+ "definitions": {
4
+ "ControlRunMessageResponse": {
5
+ "type": "object",
6
+ "properties": {
7
+ "accepted": {
8
+ "type": "boolean",
9
+ "description": "True only for outcome delivered or accepted; false for every other outcome."
10
+ },
11
+ "outcome": {
12
+ "type": "string",
13
+ "enum": [
14
+ "delivered",
15
+ "accepted",
16
+ "rejected",
17
+ "not_active",
18
+ "unsupported",
19
+ "delivery_unknown"
20
+ ],
21
+ "description": "delivered = native consumption observed; accepted = native acceptance boundary observed (consumption unproved); rejected = explicit refusal of this submission; not_active = no eligible target before dispatch; unsupported = no live-input channel for this harness/transport/run scope; delivery_unknown = the message may have landed (never a safe-to-resend signal)."
22
+ },
23
+ "reason": {
24
+ "type": "string",
25
+ "enum": [
26
+ "no_active_turn",
27
+ "run_terminal",
28
+ "attempt_mismatch",
29
+ "no_live_session",
30
+ "multi_attempt",
31
+ "thread_bound",
32
+ "interaction_pending",
33
+ "rpc_refused",
34
+ "admission_persist_failed",
35
+ "transport_lost",
36
+ "response_timeout"
37
+ ],
38
+ "description": "Why the outcome is not delivered: no_active_turn (the harness has no active native turn), run_terminal, attempt_mismatch (expectedAttemptId is not the live attempt), no_live_session (no registered live attempt, no adapter channel, or no native session yet), multi_attempt (several live attempts and no expectedAttemptId), thread_bound (thread turns are not steerable in v1), interaction_pending (a question is open; the message was not sent), rpc_refused (the vendor refused the steer on a still-active turn), admission_persist_failed (the daemon could not journal admission; nothing was sent), transport_lost, response_timeout."
39
+ },
40
+ "runId": {
41
+ "type": "string",
42
+ "minLength": 1,
43
+ "description": "Run the message was addressed to."
44
+ },
45
+ "messageId": {
46
+ "type": "string",
47
+ "minLength": 1,
48
+ "maxLength": 256,
49
+ "description": "The submission's identity: the Idempotency-Key verbatim. Replaying it returns this receipt again; a new message needs a new key."
50
+ },
51
+ "attemptId": {
52
+ "type": "string",
53
+ "description": "Live attempt the message targeted, when one was selected."
54
+ },
55
+ "harnessId": {
56
+ "type": "string",
57
+ "description": "Harness of the targeted attempt."
58
+ },
59
+ "liveInput": {
60
+ "type": "string",
61
+ "enum": [
62
+ "mid_turn",
63
+ "next_tool_boundary",
64
+ "none"
65
+ ],
66
+ "description": "The targeted harness's declared live-input channel (its capability profile), when an attempt was selected."
67
+ },
68
+ "nativeTurnId": {
69
+ "type": "string",
70
+ "description": "Native turn id the harness reported on acceptance (Codex turn/steer result)."
71
+ },
72
+ "message": {
73
+ "type": "string",
74
+ "description": "Human-readable detail."
75
+ }
76
+ },
77
+ "required": [
78
+ "accepted",
79
+ "outcome",
80
+ "runId",
81
+ "messageId"
82
+ ],
83
+ "additionalProperties": false,
84
+ "description": "Receipt of a live message into a running run; every typed outcome answers HTTP 200 (unlike the answer/control routes), so read `outcome`, not the status code."
85
+ }
86
+ },
87
+ "$schema": "http://json-schema.org/draft-07/schema#"
88
+ }
@@ -346,11 +346,21 @@
346
346
  "type": "boolean",
347
347
  "default": false,
348
348
  "description": "An injected MCP server can only reach the daemon (belt) at full access; below it the harness sandbox cancels the call. true => Delegate below full access degrades to ordinary Agent with a durable typed receipt."
349
+ },
350
+ "live_input": {
351
+ "type": "string",
352
+ "enum": [
353
+ "mid_turn",
354
+ "next_tool_boundary",
355
+ "none"
356
+ ],
357
+ "description": "How a live message enters a running session: mid_turn (consumed inside the active turn), next_tool_boundary (queued until the same turn's next tool boundary), none (no truthful channel; the engine answers unsupported).",
358
+ "default": "none"
349
359
  }
350
360
  },
351
361
  "additionalProperties": false,
352
362
  "default": {},
353
- "description": "Structured per-harness facts the engine consumes: auth routing, isolation containment, readonly mechanism, finite attachment inputs, and MCP injection."
363
+ "description": "Structured per-harness facts the engine consumes: auth routing, isolation containment, readonly mechanism, finite attachment inputs, MCP injection, and live input into a running session."
354
364
  },
355
365
  "capabilities": {
356
366
  "type": "object",
@@ -364,11 +364,21 @@
364
364
  "type": "boolean",
365
365
  "default": false,
366
366
  "description": "An injected MCP server can only reach the daemon (belt) at full access; below it the harness sandbox cancels the call. true => Delegate below full access degrades to ordinary Agent with a durable typed receipt."
367
+ },
368
+ "live_input": {
369
+ "type": "string",
370
+ "enum": [
371
+ "mid_turn",
372
+ "next_tool_boundary",
373
+ "none"
374
+ ],
375
+ "description": "How a live message enters a running session: mid_turn (consumed inside the active turn), next_tool_boundary (queued until the same turn's next tool boundary), none (no truthful channel; the engine answers unsupported).",
376
+ "default": "none"
367
377
  }
368
378
  },
369
379
  "additionalProperties": false,
370
380
  "default": {},
371
- "description": "Structured per-harness facts the engine consumes: auth routing, isolation containment, readonly mechanism, finite attachment inputs, and MCP injection."
381
+ "description": "Structured per-harness facts the engine consumes: auth routing, isolation containment, readonly mechanism, finite attachment inputs, MCP injection, and live input into a running session."
372
382
  },
373
383
  "capabilities": {
374
384
  "type": "object",
@@ -64,6 +64,9 @@
64
64
  "interaction.answered",
65
65
  "interaction.timeout",
66
66
  "interaction.answer_discarded",
67
+ "message.accepted",
68
+ "message.delivered",
69
+ "message.refused",
67
70
  "plan.progress",
68
71
  "plan.questions",
69
72
  "plan.brief.materialized",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@claudexor/schema",
3
- "version": "3.15.1",
3
+ "version": "3.17.0",
4
4
  "license": "MIT",
5
5
  "description": "Single source of truth for all Claudexor data shapes (Zod + generated JSON Schema).",
6
6
  "type": "module",
@@ -20,7 +20,7 @@
20
20
  "dependencies": {
21
21
  "zod": "^4.4.3",
22
22
  "zod-to-json-schema": "^3.24.1",
23
- "@claudexor/util": "3.15.1"
23
+ "@claudexor/util": "3.17.0"
24
24
  },
25
25
  "repository": {
26
26
  "type": "git",