@rho-workspace/rho 0.5.5 → 0.5.7

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 (250) hide show
  1. package/dist/agent-connect.d.ts +42 -0
  2. package/dist/agent-connect.js +68 -0
  3. package/dist/answer-board.js +3 -3
  4. package/dist/bridge.js +6 -1
  5. package/dist/browser-access.d.ts +1 -0
  6. package/dist/browser-access.js +5 -3
  7. package/dist/capabilities.d.ts +21 -5
  8. package/dist/capabilities.js +6 -4
  9. package/dist/cli.js +113 -18
  10. package/dist/composition.d.ts +1 -1
  11. package/dist/composition.js +13 -3
  12. package/dist/connect-cli.d.ts +50 -0
  13. package/dist/connect-cli.js +128 -0
  14. package/dist/contract.generated.d.ts +1437 -381
  15. package/dist/contract.generated.js +1 -1
  16. package/dist/contracts/owners.generated.js +1160 -267
  17. package/dist/conversation-presentation.d.ts +9 -2
  18. package/dist/conversation-presentation.js +3 -1
  19. package/dist/conversations.d.ts +306 -7
  20. package/dist/conversations.js +208 -22
  21. package/dist/discovery.js +3 -3
  22. package/dist/extension-contract.d.ts +19 -0
  23. package/dist/extension-contract.js +15 -6
  24. package/dist/extension-markets.d.ts +74 -0
  25. package/dist/extension-markets.js +166 -0
  26. package/dist/extensions.d.ts +29 -1
  27. package/dist/extensions.js +13 -4
  28. package/dist/external-work.d.ts +22 -0
  29. package/dist/external-work.js +91 -0
  30. package/dist/plugin-cli.js +75 -3
  31. package/dist/plugin-inventory.d.ts +56 -0
  32. package/dist/plugin-inventory.js +41 -0
  33. package/dist/plugin-inventory.json +1581 -102
  34. package/dist/plugin-presentation.d.ts +105 -2
  35. package/dist/plugin-presentation.js +59 -5
  36. package/dist/plugins.d.ts +14 -3
  37. package/dist/plugins.js +12 -6
  38. package/dist/project-notes.js +1 -1
  39. package/dist/protocol.d.ts +7 -0
  40. package/dist/protocol.js +40 -15
  41. package/dist/replay.js +4 -0
  42. package/dist/response-contracts.js +26 -11
  43. package/dist/running.d.ts +10 -0
  44. package/dist/running.js +45 -0
  45. package/dist/server.d.ts +4 -10
  46. package/dist/server.js +140 -14
  47. package/dist/state.d.ts +8 -0
  48. package/dist/state.js +8 -0
  49. package/dist/studio-layout.js +3 -3
  50. package/dist/task-frame.d.ts +1 -1
  51. package/dist/timeline-events.d.ts +1 -0
  52. package/dist/timeline-events.js +8 -1
  53. package/dist/ui-context.d.ts +73 -0
  54. package/dist/ui-context.js +98 -0
  55. package/dist/ui-contract.d.ts +23 -0
  56. package/dist/web/.vite/manifest.json +135 -76
  57. package/dist/web/assets/answer-board-CeYS8k8y.js +1 -0
  58. package/dist/web/assets/choices-D8vGwsl2.js +1 -0
  59. package/dist/web/assets/{console-BSjLGe0T.js → console-Dyuo1q4N.js} +4 -4
  60. package/dist/web/assets/{dist-Tzoe_zm-.js → dist-CSiCyBml.js} +1 -1
  61. package/dist/web/assets/{dist-Cw8hRIlT.js → dist-D9FLb9Hm.js} +1 -1
  62. package/dist/web/assets/{dist-foH9IKc6.js → dist-FXbTBwML.js} +1 -1
  63. package/dist/web/assets/{dist-Buk0lwzI.js → dist-l3DUhbw5.js} +1 -1
  64. package/dist/web/assets/{explore-in-BVUy3ZW_.js → explore-in-BfSFGRh2.js} +1 -1
  65. package/dist/web/assets/graph-BU2_o5uA.js +2 -0
  66. package/dist/web/assets/index-C16mXVvk.css +1 -0
  67. package/dist/web/assets/index-CWg9XYXx.js +952 -0
  68. package/dist/web/assets/markdown.reader-Ct2-e2Zt.png +0 -0
  69. package/dist/web/assets/{notes-meaning-pVbbQUGP.js → notes-meaning-T2m5zQfv.js} +1 -1
  70. package/dist/web/assets/overview-PzfLJCo-.js +6 -0
  71. package/dist/web/assets/preview-BguEdsza.js +1 -0
  72. package/dist/web/assets/previews-pWNik-2g.js +3 -0
  73. package/dist/web/assets/{review-CMxQlQ-C.js → review-Dy_85lcH.js} +1 -1
  74. package/dist/web/assets/rho.editor-CCJeyHma.png +0 -0
  75. package/dist/web/assets/rho.flow-WkMj6fRS.png +0 -0
  76. package/dist/web/assets/rho.media-Cc6amodO.png +0 -0
  77. package/dist/web/assets/rho.notebook-6vsZKGDq.png +0 -0
  78. package/dist/web/assets/rho.object-BGoeXjte.png +0 -0
  79. package/dist/web/assets/rho.plots-yIiISCkb.png +0 -0
  80. package/dist/web/assets/rho.scatter-DwHxesCs.png +0 -0
  81. package/dist/web/assets/rho.servers-DKf_mnNq.png +0 -0
  82. package/dist/web/assets/rho.table-DWOGaWDa.png +0 -0
  83. package/dist/web/assets/rho.variables-CKcWczhQ.png +0 -0
  84. package/dist/web/assets/{skills-BFNSyrnD.js → skills-Dyz7mBlc.js} +1 -1
  85. package/dist/web/assets/{skills-work-BGPSnF_I.js → skills-work-BEGqlCkx.js} +1 -1
  86. package/dist/web/assets/studio-process-D-ykbC4D.js +2 -0
  87. package/dist/web/assets/timeline-events-DKTho9fU.js +1 -0
  88. package/dist/web/assets/work-turns-DSabCogR.js +1 -0
  89. package/dist/web/assets/{workspace-CWlkjLNx.js → workspace-DfjBL--r.js} +2 -2
  90. package/dist/web/composition.json +135 -80
  91. package/dist/web/index.html +3 -3
  92. package/dist/web/renderer.json +1 -1
  93. package/dist/web-assets.js +2 -2
  94. package/dist/work-graph.d.ts +11 -1
  95. package/dist/work-graph.js +16 -5
  96. package/dist/workspace.d.ts +2 -2
  97. package/dist/workspace.js +8 -7
  98. package/docs/FRONTEND.md +71 -21
  99. package/docs/HEADLESS.md +127 -24
  100. package/docs/THIRD-PARTY-PLUGINS.md +75 -3
  101. package/node_modules/@rho-workspace/plugin-agent/README.md +34 -0
  102. package/node_modules/@rho-workspace/plugin-agent/dist/acp-command.d.ts +32 -0
  103. package/node_modules/@rho-workspace/plugin-agent/dist/acp-command.js +54 -11
  104. package/node_modules/@rho-workspace/plugin-agent/dist/acp-conversation.d.ts +1 -0
  105. package/node_modules/@rho-workspace/plugin-agent/dist/acp-conversation.js +29 -3
  106. package/node_modules/@rho-workspace/plugin-agent/dist/external-session-contract.js +11 -5
  107. package/node_modules/@rho-workspace/plugin-agent/dist/external-session.d.ts +12 -1
  108. package/node_modules/@rho-workspace/plugin-agent/dist/index.d.ts +8 -0
  109. package/node_modules/@rho-workspace/plugin-agent/dist/index.js +3 -2
  110. package/node_modules/@rho-workspace/plugin-agent/dist/mcp-entry.d.ts +13 -0
  111. package/node_modules/@rho-workspace/plugin-agent/dist/mcp-entry.js +13 -0
  112. package/node_modules/@rho-workspace/plugin-agent/dist/mcp.js +16 -8
  113. package/node_modules/@rho-workspace/plugin-agent/dist/native-sessions.d.ts +70 -0
  114. package/node_modules/@rho-workspace/plugin-agent/dist/native-sessions.js +538 -0
  115. package/node_modules/@rho-workspace/plugin-agent/package.json +2 -1
  116. package/node_modules/@rho-workspace/plugin-figures/LICENSE +661 -0
  117. package/node_modules/@rho-workspace/plugin-figures/README.md +191 -0
  118. package/node_modules/@rho-workspace/plugin-figures/dist/index.d.ts +236 -0
  119. package/node_modules/@rho-workspace/plugin-figures/dist/index.js +165 -0
  120. package/node_modules/@rho-workspace/plugin-figures/dist/operations.d.ts +44 -0
  121. package/node_modules/@rho-workspace/plugin-figures/dist/operations.js +39 -0
  122. package/node_modules/@rho-workspace/plugin-figures/dist/presentation.d.ts +19 -0
  123. package/node_modules/@rho-workspace/plugin-figures/dist/presentation.js +26 -0
  124. package/node_modules/@rho-workspace/plugin-figures/dist/record.d.ts +188 -0
  125. package/node_modules/@rho-workspace/plugin-figures/dist/record.js +143 -0
  126. package/node_modules/@rho-workspace/plugin-figures/dist/ui-styles.d.ts +1 -0
  127. package/node_modules/@rho-workspace/plugin-figures/dist/ui-styles.js +68 -0
  128. package/node_modules/@rho-workspace/plugin-figures/dist/ui.d.ts +56 -0
  129. package/node_modules/@rho-workspace/plugin-figures/dist/ui.js +363 -0
  130. package/node_modules/@rho-workspace/plugin-figures/package.json +41 -0
  131. package/node_modules/@rho-workspace/plugin-figures/py/figures.py +856 -0
  132. package/node_modules/@rho-workspace/plugin-figures/r/figures.R +775 -0
  133. package/node_modules/@rho-workspace/plugin-kernel/README.md +27 -3
  134. package/node_modules/@rho-workspace/plugin-kernel/dist/contract.d.ts +12 -0
  135. package/node_modules/@rho-workspace/plugin-kernel/dist/contract.js +8 -1
  136. package/node_modules/@rho-workspace/plugin-kernel/dist/index.d.ts +61 -0
  137. package/node_modules/@rho-workspace/plugin-kernel/dist/index.js +125 -9
  138. package/node_modules/@rho-workspace/plugin-kernel/dist/session-scope.d.ts +14 -0
  139. package/node_modules/@rho-workspace/plugin-kernel/dist/session-scope.js +9 -0
  140. package/node_modules/@rho-workspace/plugin-kernel/dist/ui-base.d.ts +23 -5
  141. package/node_modules/@rho-workspace/plugin-kernel/dist/ui-notebook-work.js +1 -1
  142. package/node_modules/@rho-workspace/plugin-kernel/dist/ui-notebook.d.ts +6 -4
  143. package/node_modules/@rho-workspace/plugin-kernel/dist/ui-notebook.js +44 -17
  144. package/node_modules/@rho-workspace/plugin-kernel/dist/ui-styles.js +6 -0
  145. package/node_modules/@rho-workspace/plugin-kernel/package.json +1 -1
  146. package/node_modules/@rho-workspace/plugin-kernel/runners/runner.R +144 -4
  147. package/node_modules/@rho-workspace/plugin-kernel/runners/runner.py +106 -1
  148. package/node_modules/@rho-workspace/plugin-tables/README.md +5 -0
  149. package/node_modules/@rho-workspace/plugin-tables/dist/index.d.ts +1 -0
  150. package/node_modules/@rho-workspace/plugin-tables/dist/index.js +19 -3
  151. package/node_modules/@rho-workspace/plugin-tables/dist/ui.js +1 -1
  152. package/node_modules/@rho-workspace/plugin-tables/package.json +1 -1
  153. package/node_modules/hono/dist/adapter/aws-lambda/handler.js +1 -1
  154. package/node_modules/hono/dist/cjs/adapter/aws-lambda/handler.js +1 -1
  155. package/node_modules/hono/dist/cjs/adapter/bun/serve-static.js +1 -1
  156. package/node_modules/hono/dist/cjs/adapter/bun/websocket.js +1 -1
  157. package/node_modules/hono/dist/cjs/client/fetch-result-please.js +1 -1
  158. package/node_modules/hono/dist/cjs/helper/accepts/accepts.js +2 -1
  159. package/node_modules/hono/dist/cjs/helper/ssg/ssg.js +5 -3
  160. package/node_modules/hono/dist/cjs/jsx/base.js +49 -30
  161. package/node_modules/hono/dist/cjs/jsx/components.js +2 -2
  162. package/node_modules/hono/dist/cjs/jsx/constants.js +2 -0
  163. package/node_modules/hono/dist/cjs/jsx/jsx-runtime.js +13 -17
  164. package/node_modules/hono/dist/cjs/middleware/etag/index.js +3 -1
  165. package/node_modules/hono/dist/cjs/middleware/pretty-json/index.js +1 -0
  166. package/node_modules/hono/dist/cjs/middleware/timing/timing.js +4 -3
  167. package/node_modules/hono/dist/cjs/utils/cookie.js +2 -2
  168. package/node_modules/hono/dist/cjs/utils/mime.js +1 -1
  169. package/node_modules/hono/dist/cjs/utils/url.js +1 -1
  170. package/node_modules/hono/dist/client/fetch-result-please.js +1 -1
  171. package/node_modules/hono/dist/helper/accepts/accepts.js +2 -1
  172. package/node_modules/hono/dist/helper/ssg/ssg.js +5 -3
  173. package/node_modules/hono/dist/jsx/base.js +49 -32
  174. package/node_modules/hono/dist/jsx/components.js +2 -2
  175. package/node_modules/hono/dist/jsx/constants.js +2 -1
  176. package/node_modules/hono/dist/jsx/jsx-runtime.js +15 -19
  177. package/node_modules/hono/dist/middleware/etag/index.js +3 -1
  178. package/node_modules/hono/dist/middleware/language/language.js +1 -1
  179. package/node_modules/hono/dist/middleware/pretty-json/index.js +1 -0
  180. package/node_modules/hono/dist/middleware/timing/timing.js +4 -3
  181. package/node_modules/hono/dist/utils/cookie.js +2 -2
  182. package/node_modules/hono/dist/utils/mime.js +1 -1
  183. package/node_modules/hono/dist/utils/url.js +1 -1
  184. package/node_modules/hono/package.json +1 -1
  185. package/node_modules/jose/dist/webapi/jwe/general/decrypt.js +3 -2
  186. package/node_modules/jose/dist/webapi/jwks/remote.js +1 -1
  187. package/node_modules/jose/dist/webapi/jws/general/verify.js +2 -8
  188. package/node_modules/jose/dist/webapi/lib/jwe_decrypt.js +11 -8
  189. package/node_modules/jose/dist/webapi/lib/key_management.js +0 -1
  190. package/node_modules/jose/package.json +1 -1
  191. package/package.json +6 -4
  192. package/protocol/index.json +106 -64
  193. package/protocol/operations/agent.sessions.list.json +57 -3
  194. package/protocol/operations/agent.sessions.read.json +61 -4
  195. package/protocol/operations/capability.list.json +382 -6
  196. package/protocol/operations/composition.apply.json +10 -2
  197. package/protocol/operations/composition.delete.json +845 -0
  198. package/protocol/operations/composition.read.json +10 -2
  199. package/protocol/operations/composition.undo.json +10 -2
  200. package/protocol/operations/conversation.agents.add.json +346 -0
  201. package/protocol/operations/conversation.agents.remove.json +340 -0
  202. package/protocol/operations/conversation.configure.json +29 -0
  203. package/protocol/operations/conversation.decide.json +225 -0
  204. package/protocol/operations/conversation.list.json +29 -0
  205. package/protocol/operations/conversation.permission.json +225 -0
  206. package/protocol/operations/conversation.read.json +225 -0
  207. package/protocol/operations/conversation.restore.json +29 -0
  208. package/protocol/operations/conversation.send.json +294 -0
  209. package/protocol/operations/conversation.settings.check.json +226 -416
  210. package/protocol/operations/conversation.settings.read.json +224 -411
  211. package/protocol/operations/conversation.settings.update.json +248 -475
  212. package/protocol/operations/conversation.start.json +313 -6
  213. package/protocol/operations/conversation.stop.json +225 -0
  214. package/protocol/operations/conversation.trash.json +29 -0
  215. package/protocol/operations/extension.describe.json +39 -0
  216. package/protocol/operations/extension.install.json +62 -0
  217. package/protocol/operations/extension.list.json +164 -1
  218. package/protocol/operations/extension.market.change.json +210 -0
  219. package/protocol/operations/figure.read.json +265 -0
  220. package/protocol/operations/figure.select.json +157 -0
  221. package/protocol/operations/kernel.interrupt.json +119 -0
  222. package/protocol/operations/kernel.read.json +119 -0
  223. package/protocol/operations/kernel.run.json +119 -0
  224. package/protocol/operations/observation.snapshot.json +445 -8
  225. package/protocol/operations/project.openFile.json +10 -2
  226. package/protocol/operations/session.grant.json +4 -0
  227. package/protocol/operations/session.instructions.json +43 -0
  228. package/protocol/operations/shared.json +1 -0
  229. package/protocol/operations/view.close.json +10 -2
  230. package/protocol/operations/view.protection.set.json +10 -2
  231. package/vendor/composition.json +174 -109
  232. package/vendor/rho-workspace-plugin-agent-0.4.33.tgz +0 -0
  233. package/vendor/rho-workspace-plugin-figures-0.5.1.tgz +0 -0
  234. package/vendor/rho-workspace-plugin-kernel-0.5.13.tgz +0 -0
  235. package/vendor/rho-workspace-plugin-tables-0.5.2.tgz +0 -0
  236. package/web/theme.css +17 -0
  237. package/dist/web/assets/answer-board-CBkGbSLD.js +0 -1
  238. package/dist/web/assets/canvas-D8rDdfDz.js +0 -1
  239. package/dist/web/assets/choices-b0XhrGQV.js +0 -1
  240. package/dist/web/assets/graph-1OdIJ9l7.js +0 -2
  241. package/dist/web/assets/index-CsC3sTRq.css +0 -1
  242. package/dist/web/assets/index-CxmItXqa.js +0 -891
  243. package/dist/web/assets/overview-B9UtVJ32.js +0 -6
  244. package/dist/web/assets/preview-CksD_5KS.js +0 -1
  245. package/dist/web/assets/studio-process-CsRoTHOh.js +0 -2
  246. package/dist/web/assets/timeline-events-BbuuFWHV.js +0 -1
  247. package/dist/web/assets/work-turns-BvJlIMmA.js +0 -1
  248. package/vendor/rho-workspace-plugin-agent-0.4.29.tgz +0 -0
  249. package/vendor/rho-workspace-plugin-kernel-0.5.5.tgz +0 -0
  250. package/vendor/rho-workspace-plugin-tables-0.5.0.tgz +0 -0
@@ -34,11 +34,8 @@
34
34
  "backend": {
35
35
  "anyOf": [
36
36
  {
37
- "enum": [
38
- "claude-acp",
39
- "codex-acp",
40
- "acp"
41
- ]
37
+ "type": "string",
38
+ "pattern": "^(claude-acp|codex-acp|acp|acp:[a-z0-9][a-z0-9-]{0,39})$"
42
39
  },
43
40
  {
44
41
  "type": "null"
@@ -55,443 +52,162 @@
55
52
  },
56
53
  "choices": {
57
54
  "type": "object",
58
- "properties": {
59
- "claude-acp": {
60
- "type": "object",
61
- "maxProperties": 12,
62
- "propertyNames": {
63
- "maxLength": 512
64
- },
65
- "additionalProperties": {
66
- "anyOf": [
67
- {
68
- "type": "string",
69
- "minLength": 1,
70
- "maxLength": 512
71
- },
72
- {
73
- "type": "boolean"
74
- }
75
- ]
76
- }
55
+ "propertyNames": {
56
+ "type": "string",
57
+ "pattern": "^(claude-acp|codex-acp|acp|acp:[a-z0-9][a-z0-9-]{0,39})$"
58
+ },
59
+ "additionalProperties": {
60
+ "type": "object",
61
+ "maxProperties": 12,
62
+ "propertyNames": {
63
+ "maxLength": 512
77
64
  },
78
- "codex-acp": {
79
- "type": "object",
80
- "maxProperties": 12,
81
- "propertyNames": {
82
- "maxLength": 512
65
+ "additionalProperties": {
66
+ "anyOf": [
67
+ {
68
+ "type": "string",
69
+ "minLength": 1,
70
+ "maxLength": 512
71
+ },
72
+ {
73
+ "type": "boolean"
74
+ }
75
+ ]
76
+ }
77
+ }
78
+ },
79
+ "offered": {
80
+ "type": "object",
81
+ "propertyNames": {
82
+ "type": "string",
83
+ "pattern": "^(claude-acp|codex-acp|acp|acp:[a-z0-9][a-z0-9-]{0,39})$"
84
+ },
85
+ "additionalProperties": {
86
+ "type": "object",
87
+ "properties": {
88
+ "at": {
89
+ "type": "string",
90
+ "minLength": 1
83
91
  },
84
- "additionalProperties": {
85
- "anyOf": [
86
- {
87
- "type": "string",
88
- "minLength": 1,
89
- "maxLength": 512
90
- },
91
- {
92
- "type": "boolean"
93
- }
92
+ "source": {
93
+ "enum": [
94
+ "check",
95
+ "conversation"
94
96
  ]
95
- }
96
- },
97
- "acp": {
98
- "type": "object",
99
- "maxProperties": 12,
100
- "propertyNames": {
101
- "maxLength": 512
102
97
  },
103
- "additionalProperties": {
98
+ "adapter": {
104
99
  "anyOf": [
105
100
  {
106
- "type": "string",
107
- "minLength": 1,
108
- "maxLength": 512
109
- },
110
- {
111
- "type": "boolean"
112
- }
113
- ]
114
- }
115
- }
116
- },
117
- "required": [],
118
- "additionalProperties": true
119
- },
120
- "offered": {
121
- "type": "object",
122
- "properties": {
123
- "claude-acp": {
124
- "type": "object",
125
- "properties": {
126
- "at": {
127
- "type": "string",
128
- "minLength": 1
129
- },
130
- "source": {
131
- "enum": [
132
- "check",
133
- "conversation"
134
- ]
135
- },
136
- "adapter": {
137
- "anyOf": [
138
- {
139
- "type": "object",
140
- "properties": {
141
- "name": {
142
- "type": "string",
143
- "minLength": 1
144
- },
145
- "version": {
146
- "type": "string",
147
- "minLength": 1
148
- }
149
- },
150
- "required": [
151
- "name"
152
- ],
153
- "additionalProperties": true
154
- },
155
- {
156
- "type": "null"
157
- }
158
- ]
159
- },
160
- "options": {
161
- "type": "array",
162
- "items": {
163
- "additionalProperties": false,
101
+ "type": "object",
164
102
  "properties": {
165
- "category": {
166
- "type": "string"
167
- },
168
- "current": {
169
- "anyOf": [
170
- {
171
- "type": "string"
172
- },
173
- {
174
- "type": "boolean"
175
- }
176
- ]
177
- },
178
- "description": {
179
- "type": "string"
180
- },
181
- "id": {
182
- "type": "string"
183
- },
184
103
  "name": {
185
- "type": "string"
104
+ "type": "string",
105
+ "minLength": 1
186
106
  },
187
- "type": {
188
- "enum": [
189
- "select",
190
- "boolean"
191
- ]
192
- },
193
- "values": {
194
- "items": {
195
- "additionalProperties": false,
196
- "properties": {
197
- "description": {
198
- "type": "string"
199
- },
200
- "group": {
201
- "type": "string"
202
- },
203
- "name": {
204
- "type": "string"
205
- },
206
- "value": {
207
- "type": "string"
208
- }
209
- },
210
- "required": [
211
- "value",
212
- "name"
213
- ],
214
- "type": "object"
215
- },
216
- "maxItems": 256,
217
- "type": "array"
107
+ "version": {
108
+ "type": "string",
109
+ "minLength": 1
218
110
  }
219
111
  },
220
112
  "required": [
221
- "id",
222
- "name",
223
- "type",
224
- "current"
113
+ "name"
225
114
  ],
226
- "type": "object"
115
+ "additionalProperties": true
116
+ },
117
+ {
118
+ "type": "null"
227
119
  }
228
- },
229
- "omitted": {
230
- "type": "integer",
231
- "minimum": 0
232
- }
120
+ ]
233
121
  },
234
- "required": [
235
- "at",
236
- "source",
237
- "adapter",
238
- "options",
239
- "omitted"
240
- ],
241
- "additionalProperties": true
242
- },
243
- "codex-acp": {
244
- "type": "object",
245
- "properties": {
246
- "at": {
247
- "type": "string",
248
- "minLength": 1
249
- },
250
- "source": {
251
- "enum": [
252
- "check",
253
- "conversation"
254
- ]
255
- },
256
- "adapter": {
257
- "anyOf": [
258
- {
259
- "type": "object",
260
- "properties": {
261
- "name": {
262
- "type": "string",
263
- "minLength": 1
122
+ "options": {
123
+ "type": "array",
124
+ "items": {
125
+ "additionalProperties": false,
126
+ "properties": {
127
+ "category": {
128
+ "type": "string"
129
+ },
130
+ "current": {
131
+ "anyOf": [
132
+ {
133
+ "type": "string"
264
134
  },
265
- "version": {
266
- "type": "string",
267
- "minLength": 1
135
+ {
136
+ "type": "boolean"
268
137
  }
269
- },
270
- "required": [
271
- "name"
272
- ],
273
- "additionalProperties": true
138
+ ]
274
139
  },
275
- {
276
- "type": "null"
277
- }
278
- ]
279
- },
280
- "options": {
281
- "type": "array",
282
- "items": {
283
- "additionalProperties": false,
284
- "properties": {
285
- "category": {
286
- "type": "string"
287
- },
288
- "current": {
289
- "anyOf": [
290
- {
140
+ "description": {
141
+ "type": "string"
142
+ },
143
+ "id": {
144
+ "type": "string"
145
+ },
146
+ "name": {
147
+ "type": "string"
148
+ },
149
+ "type": {
150
+ "enum": [
151
+ "select",
152
+ "boolean"
153
+ ]
154
+ },
155
+ "values": {
156
+ "items": {
157
+ "additionalProperties": false,
158
+ "properties": {
159
+ "description": {
291
160
  "type": "string"
292
161
  },
293
- {
294
- "type": "boolean"
295
- }
296
- ]
297
- },
298
- "description": {
299
- "type": "string"
300
- },
301
- "id": {
302
- "type": "string"
303
- },
304
- "name": {
305
- "type": "string"
306
- },
307
- "type": {
308
- "enum": [
309
- "select",
310
- "boolean"
311
- ]
312
- },
313
- "values": {
314
- "items": {
315
- "additionalProperties": false,
316
- "properties": {
317
- "description": {
318
- "type": "string"
319
- },
320
- "group": {
321
- "type": "string"
322
- },
323
- "name": {
324
- "type": "string"
325
- },
326
- "value": {
327
- "type": "string"
328
- }
162
+ "group": {
163
+ "type": "string"
329
164
  },
330
- "required": [
331
- "value",
332
- "name"
333
- ],
334
- "type": "object"
335
- },
336
- "maxItems": 256,
337
- "type": "array"
338
- }
339
- },
340
- "required": [
341
- "id",
342
- "name",
343
- "type",
344
- "current"
345
- ],
346
- "type": "object"
347
- }
348
- },
349
- "omitted": {
350
- "type": "integer",
351
- "minimum": 0
352
- }
353
- },
354
- "required": [
355
- "at",
356
- "source",
357
- "adapter",
358
- "options",
359
- "omitted"
360
- ],
361
- "additionalProperties": true
362
- },
363
- "acp": {
364
- "type": "object",
365
- "properties": {
366
- "at": {
367
- "type": "string",
368
- "minLength": 1
369
- },
370
- "source": {
371
- "enum": [
372
- "check",
373
- "conversation"
374
- ]
375
- },
376
- "adapter": {
377
- "anyOf": [
378
- {
379
- "type": "object",
380
- "properties": {
381
- "name": {
382
- "type": "string",
383
- "minLength": 1
384
- },
385
- "version": {
386
- "type": "string",
387
- "minLength": 1
388
- }
389
- },
390
- "required": [
391
- "name"
392
- ],
393
- "additionalProperties": true
394
- },
395
- {
396
- "type": "null"
397
- }
398
- ]
399
- },
400
- "options": {
401
- "type": "array",
402
- "items": {
403
- "additionalProperties": false,
404
- "properties": {
405
- "category": {
406
- "type": "string"
407
- },
408
- "current": {
409
- "anyOf": [
410
- {
165
+ "name": {
411
166
  "type": "string"
412
167
  },
413
- {
414
- "type": "boolean"
168
+ "value": {
169
+ "type": "string"
415
170
  }
416
- ]
417
- },
418
- "description": {
419
- "type": "string"
420
- },
421
- "id": {
422
- "type": "string"
423
- },
424
- "name": {
425
- "type": "string"
426
- },
427
- "type": {
428
- "enum": [
429
- "select",
430
- "boolean"
431
- ]
432
- },
433
- "values": {
434
- "items": {
435
- "additionalProperties": false,
436
- "properties": {
437
- "description": {
438
- "type": "string"
439
- },
440
- "group": {
441
- "type": "string"
442
- },
443
- "name": {
444
- "type": "string"
445
- },
446
- "value": {
447
- "type": "string"
448
- }
449
- },
450
- "required": [
451
- "value",
452
- "name"
453
- ],
454
- "type": "object"
455
171
  },
456
- "maxItems": 256,
457
- "type": "array"
458
- }
459
- },
460
- "required": [
461
- "id",
462
- "name",
463
- "type",
464
- "current"
465
- ],
466
- "type": "object"
467
- }
468
- },
469
- "omitted": {
470
- "type": "integer",
471
- "minimum": 0
172
+ "required": [
173
+ "value",
174
+ "name"
175
+ ],
176
+ "type": "object"
177
+ },
178
+ "maxItems": 256,
179
+ "type": "array"
180
+ }
181
+ },
182
+ "required": [
183
+ "id",
184
+ "name",
185
+ "type",
186
+ "current"
187
+ ],
188
+ "type": "object"
472
189
  }
473
190
  },
474
- "required": [
475
- "at",
476
- "source",
477
- "adapter",
478
- "options",
479
- "omitted"
480
- ],
481
- "additionalProperties": true
482
- }
483
- },
484
- "required": [],
485
- "additionalProperties": true
191
+ "omitted": {
192
+ "type": "integer",
193
+ "minimum": 0
194
+ }
195
+ },
196
+ "required": [
197
+ "at",
198
+ "source",
199
+ "adapter",
200
+ "options",
201
+ "omitted"
202
+ ],
203
+ "additionalProperties": true
204
+ }
486
205
  },
487
206
  "checking": {
488
207
  "type": "array",
489
208
  "items": {
490
- "enum": [
491
- "claude-acp",
492
- "codex-acp",
493
- "acp"
494
- ]
209
+ "type": "string",
210
+ "pattern": "^(claude-acp|codex-acp|acp|acp:[a-z0-9][a-z0-9-]{0,39})$"
495
211
  }
496
212
  },
497
213
  "describe": {
@@ -505,6 +221,103 @@
505
221
  "enabled"
506
222
  ],
507
223
  "additionalProperties": true
224
+ },
225
+ "agents": {
226
+ "type": "object",
227
+ "propertyNames": {
228
+ "type": "string",
229
+ "pattern": "^(claude-acp|codex-acp|acp|acp:[a-z0-9][a-z0-9-]{0,39})$"
230
+ },
231
+ "additionalProperties": {
232
+ "type": "object",
233
+ "properties": {
234
+ "found": {
235
+ "type": "boolean"
236
+ },
237
+ "problem": {
238
+ "type": "string",
239
+ "minLength": 1
240
+ },
241
+ "name": {
242
+ "anyOf": [
243
+ {
244
+ "type": "string",
245
+ "minLength": 1
246
+ },
247
+ {
248
+ "type": "null"
249
+ }
250
+ ]
251
+ }
252
+ },
253
+ "required": [
254
+ "found"
255
+ ],
256
+ "additionalProperties": true
257
+ }
258
+ },
259
+ "added": {
260
+ "type": "array",
261
+ "items": {
262
+ "type": "object",
263
+ "properties": {
264
+ "backend": {
265
+ "type": "string",
266
+ "pattern": "^(claude-acp|codex-acp|acp|acp:[a-z0-9][a-z0-9-]{0,39})$"
267
+ },
268
+ "name": {
269
+ "type": "string",
270
+ "minLength": 1
271
+ },
272
+ "command": {
273
+ "type": "array",
274
+ "items": {
275
+ "type": "string",
276
+ "minLength": 1
277
+ }
278
+ },
279
+ "addedAt": {
280
+ "type": "string",
281
+ "minLength": 1
282
+ }
283
+ },
284
+ "required": [
285
+ "backend",
286
+ "name",
287
+ "command",
288
+ "addedAt"
289
+ ],
290
+ "additionalProperties": true
291
+ }
292
+ },
293
+ "installed": {
294
+ "type": "array",
295
+ "items": {
296
+ "type": "object",
297
+ "properties": {
298
+ "id": {
299
+ "type": "string",
300
+ "minLength": 1
301
+ },
302
+ "name": {
303
+ "type": "string",
304
+ "minLength": 1
305
+ },
306
+ "command": {
307
+ "type": "array",
308
+ "items": {
309
+ "type": "string",
310
+ "minLength": 1
311
+ }
312
+ }
313
+ },
314
+ "required": [
315
+ "id",
316
+ "name",
317
+ "command"
318
+ ],
319
+ "additionalProperties": true
320
+ }
508
321
  }
509
322
  },
510
323
  "required": [