@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
@@ -9,11 +9,8 @@
9
9
  "pattern": "^[A-Za-z0-9._:@-]{1,128}$"
10
10
  },
11
11
  "backend": {
12
- "enum": [
13
- "claude-acp",
14
- "codex-acp",
15
- "acp"
16
- ]
12
+ "type": "string",
13
+ "pattern": "^(claude-acp|codex-acp|acp|acp:[a-z0-9][a-z0-9-]{0,39})$"
17
14
  }
18
15
  },
19
16
  "required": [
@@ -42,11 +39,8 @@
42
39
  "backend": {
43
40
  "anyOf": [
44
41
  {
45
- "enum": [
46
- "claude-acp",
47
- "codex-acp",
48
- "acp"
49
- ]
42
+ "type": "string",
43
+ "pattern": "^(claude-acp|codex-acp|acp|acp:[a-z0-9][a-z0-9-]{0,39})$"
50
44
  },
51
45
  {
52
46
  "type": "null"
@@ -63,443 +57,162 @@
63
57
  },
64
58
  "choices": {
65
59
  "type": "object",
66
- "properties": {
67
- "claude-acp": {
68
- "type": "object",
69
- "maxProperties": 12,
70
- "propertyNames": {
71
- "maxLength": 512
72
- },
73
- "additionalProperties": {
74
- "anyOf": [
75
- {
76
- "type": "string",
77
- "minLength": 1,
78
- "maxLength": 512
79
- },
80
- {
81
- "type": "boolean"
82
- }
83
- ]
84
- }
60
+ "propertyNames": {
61
+ "type": "string",
62
+ "pattern": "^(claude-acp|codex-acp|acp|acp:[a-z0-9][a-z0-9-]{0,39})$"
63
+ },
64
+ "additionalProperties": {
65
+ "type": "object",
66
+ "maxProperties": 12,
67
+ "propertyNames": {
68
+ "maxLength": 512
85
69
  },
86
- "codex-acp": {
87
- "type": "object",
88
- "maxProperties": 12,
89
- "propertyNames": {
90
- "maxLength": 512
70
+ "additionalProperties": {
71
+ "anyOf": [
72
+ {
73
+ "type": "string",
74
+ "minLength": 1,
75
+ "maxLength": 512
76
+ },
77
+ {
78
+ "type": "boolean"
79
+ }
80
+ ]
81
+ }
82
+ }
83
+ },
84
+ "offered": {
85
+ "type": "object",
86
+ "propertyNames": {
87
+ "type": "string",
88
+ "pattern": "^(claude-acp|codex-acp|acp|acp:[a-z0-9][a-z0-9-]{0,39})$"
89
+ },
90
+ "additionalProperties": {
91
+ "type": "object",
92
+ "properties": {
93
+ "at": {
94
+ "type": "string",
95
+ "minLength": 1
91
96
  },
92
- "additionalProperties": {
93
- "anyOf": [
94
- {
95
- "type": "string",
96
- "minLength": 1,
97
- "maxLength": 512
98
- },
99
- {
100
- "type": "boolean"
101
- }
97
+ "source": {
98
+ "enum": [
99
+ "check",
100
+ "conversation"
102
101
  ]
103
- }
104
- },
105
- "acp": {
106
- "type": "object",
107
- "maxProperties": 12,
108
- "propertyNames": {
109
- "maxLength": 512
110
102
  },
111
- "additionalProperties": {
103
+ "adapter": {
112
104
  "anyOf": [
113
105
  {
114
- "type": "string",
115
- "minLength": 1,
116
- "maxLength": 512
117
- },
118
- {
119
- "type": "boolean"
120
- }
121
- ]
122
- }
123
- }
124
- },
125
- "required": [],
126
- "additionalProperties": true
127
- },
128
- "offered": {
129
- "type": "object",
130
- "properties": {
131
- "claude-acp": {
132
- "type": "object",
133
- "properties": {
134
- "at": {
135
- "type": "string",
136
- "minLength": 1
137
- },
138
- "source": {
139
- "enum": [
140
- "check",
141
- "conversation"
142
- ]
143
- },
144
- "adapter": {
145
- "anyOf": [
146
- {
147
- "type": "object",
148
- "properties": {
149
- "name": {
150
- "type": "string",
151
- "minLength": 1
152
- },
153
- "version": {
154
- "type": "string",
155
- "minLength": 1
156
- }
157
- },
158
- "required": [
159
- "name"
160
- ],
161
- "additionalProperties": true
162
- },
163
- {
164
- "type": "null"
165
- }
166
- ]
167
- },
168
- "options": {
169
- "type": "array",
170
- "items": {
171
- "additionalProperties": false,
106
+ "type": "object",
172
107
  "properties": {
173
- "category": {
174
- "type": "string"
175
- },
176
- "current": {
177
- "anyOf": [
178
- {
179
- "type": "string"
180
- },
181
- {
182
- "type": "boolean"
183
- }
184
- ]
185
- },
186
- "description": {
187
- "type": "string"
188
- },
189
- "id": {
190
- "type": "string"
191
- },
192
108
  "name": {
193
- "type": "string"
109
+ "type": "string",
110
+ "minLength": 1
194
111
  },
195
- "type": {
196
- "enum": [
197
- "select",
198
- "boolean"
199
- ]
200
- },
201
- "values": {
202
- "items": {
203
- "additionalProperties": false,
204
- "properties": {
205
- "description": {
206
- "type": "string"
207
- },
208
- "group": {
209
- "type": "string"
210
- },
211
- "name": {
212
- "type": "string"
213
- },
214
- "value": {
215
- "type": "string"
216
- }
217
- },
218
- "required": [
219
- "value",
220
- "name"
221
- ],
222
- "type": "object"
223
- },
224
- "maxItems": 256,
225
- "type": "array"
112
+ "version": {
113
+ "type": "string",
114
+ "minLength": 1
226
115
  }
227
116
  },
228
117
  "required": [
229
- "id",
230
- "name",
231
- "type",
232
- "current"
118
+ "name"
233
119
  ],
234
- "type": "object"
120
+ "additionalProperties": true
121
+ },
122
+ {
123
+ "type": "null"
235
124
  }
236
- },
237
- "omitted": {
238
- "type": "integer",
239
- "minimum": 0
240
- }
125
+ ]
241
126
  },
242
- "required": [
243
- "at",
244
- "source",
245
- "adapter",
246
- "options",
247
- "omitted"
248
- ],
249
- "additionalProperties": true
250
- },
251
- "codex-acp": {
252
- "type": "object",
253
- "properties": {
254
- "at": {
255
- "type": "string",
256
- "minLength": 1
257
- },
258
- "source": {
259
- "enum": [
260
- "check",
261
- "conversation"
262
- ]
263
- },
264
- "adapter": {
265
- "anyOf": [
266
- {
267
- "type": "object",
268
- "properties": {
269
- "name": {
270
- "type": "string",
271
- "minLength": 1
127
+ "options": {
128
+ "type": "array",
129
+ "items": {
130
+ "additionalProperties": false,
131
+ "properties": {
132
+ "category": {
133
+ "type": "string"
134
+ },
135
+ "current": {
136
+ "anyOf": [
137
+ {
138
+ "type": "string"
272
139
  },
273
- "version": {
274
- "type": "string",
275
- "minLength": 1
140
+ {
141
+ "type": "boolean"
276
142
  }
277
- },
278
- "required": [
279
- "name"
280
- ],
281
- "additionalProperties": true
143
+ ]
282
144
  },
283
- {
284
- "type": "null"
285
- }
286
- ]
287
- },
288
- "options": {
289
- "type": "array",
290
- "items": {
291
- "additionalProperties": false,
292
- "properties": {
293
- "category": {
294
- "type": "string"
295
- },
296
- "current": {
297
- "anyOf": [
298
- {
145
+ "description": {
146
+ "type": "string"
147
+ },
148
+ "id": {
149
+ "type": "string"
150
+ },
151
+ "name": {
152
+ "type": "string"
153
+ },
154
+ "type": {
155
+ "enum": [
156
+ "select",
157
+ "boolean"
158
+ ]
159
+ },
160
+ "values": {
161
+ "items": {
162
+ "additionalProperties": false,
163
+ "properties": {
164
+ "description": {
299
165
  "type": "string"
300
166
  },
301
- {
302
- "type": "boolean"
303
- }
304
- ]
305
- },
306
- "description": {
307
- "type": "string"
308
- },
309
- "id": {
310
- "type": "string"
311
- },
312
- "name": {
313
- "type": "string"
314
- },
315
- "type": {
316
- "enum": [
317
- "select",
318
- "boolean"
319
- ]
320
- },
321
- "values": {
322
- "items": {
323
- "additionalProperties": false,
324
- "properties": {
325
- "description": {
326
- "type": "string"
327
- },
328
- "group": {
329
- "type": "string"
330
- },
331
- "name": {
332
- "type": "string"
333
- },
334
- "value": {
335
- "type": "string"
336
- }
167
+ "group": {
168
+ "type": "string"
337
169
  },
338
- "required": [
339
- "value",
340
- "name"
341
- ],
342
- "type": "object"
343
- },
344
- "maxItems": 256,
345
- "type": "array"
346
- }
347
- },
348
- "required": [
349
- "id",
350
- "name",
351
- "type",
352
- "current"
353
- ],
354
- "type": "object"
355
- }
356
- },
357
- "omitted": {
358
- "type": "integer",
359
- "minimum": 0
360
- }
361
- },
362
- "required": [
363
- "at",
364
- "source",
365
- "adapter",
366
- "options",
367
- "omitted"
368
- ],
369
- "additionalProperties": true
370
- },
371
- "acp": {
372
- "type": "object",
373
- "properties": {
374
- "at": {
375
- "type": "string",
376
- "minLength": 1
377
- },
378
- "source": {
379
- "enum": [
380
- "check",
381
- "conversation"
382
- ]
383
- },
384
- "adapter": {
385
- "anyOf": [
386
- {
387
- "type": "object",
388
- "properties": {
389
- "name": {
390
- "type": "string",
391
- "minLength": 1
392
- },
393
- "version": {
394
- "type": "string",
395
- "minLength": 1
396
- }
397
- },
398
- "required": [
399
- "name"
400
- ],
401
- "additionalProperties": true
402
- },
403
- {
404
- "type": "null"
405
- }
406
- ]
407
- },
408
- "options": {
409
- "type": "array",
410
- "items": {
411
- "additionalProperties": false,
412
- "properties": {
413
- "category": {
414
- "type": "string"
415
- },
416
- "current": {
417
- "anyOf": [
418
- {
170
+ "name": {
419
171
  "type": "string"
420
172
  },
421
- {
422
- "type": "boolean"
173
+ "value": {
174
+ "type": "string"
423
175
  }
424
- ]
425
- },
426
- "description": {
427
- "type": "string"
428
- },
429
- "id": {
430
- "type": "string"
431
- },
432
- "name": {
433
- "type": "string"
434
- },
435
- "type": {
436
- "enum": [
437
- "select",
438
- "boolean"
439
- ]
440
- },
441
- "values": {
442
- "items": {
443
- "additionalProperties": false,
444
- "properties": {
445
- "description": {
446
- "type": "string"
447
- },
448
- "group": {
449
- "type": "string"
450
- },
451
- "name": {
452
- "type": "string"
453
- },
454
- "value": {
455
- "type": "string"
456
- }
457
- },
458
- "required": [
459
- "value",
460
- "name"
461
- ],
462
- "type": "object"
463
176
  },
464
- "maxItems": 256,
465
- "type": "array"
466
- }
467
- },
468
- "required": [
469
- "id",
470
- "name",
471
- "type",
472
- "current"
473
- ],
474
- "type": "object"
475
- }
476
- },
477
- "omitted": {
478
- "type": "integer",
479
- "minimum": 0
177
+ "required": [
178
+ "value",
179
+ "name"
180
+ ],
181
+ "type": "object"
182
+ },
183
+ "maxItems": 256,
184
+ "type": "array"
185
+ }
186
+ },
187
+ "required": [
188
+ "id",
189
+ "name",
190
+ "type",
191
+ "current"
192
+ ],
193
+ "type": "object"
480
194
  }
481
195
  },
482
- "required": [
483
- "at",
484
- "source",
485
- "adapter",
486
- "options",
487
- "omitted"
488
- ],
489
- "additionalProperties": true
490
- }
491
- },
492
- "required": [],
493
- "additionalProperties": true
196
+ "omitted": {
197
+ "type": "integer",
198
+ "minimum": 0
199
+ }
200
+ },
201
+ "required": [
202
+ "at",
203
+ "source",
204
+ "adapter",
205
+ "options",
206
+ "omitted"
207
+ ],
208
+ "additionalProperties": true
209
+ }
494
210
  },
495
211
  "checking": {
496
212
  "type": "array",
497
213
  "items": {
498
- "enum": [
499
- "claude-acp",
500
- "codex-acp",
501
- "acp"
502
- ]
214
+ "type": "string",
215
+ "pattern": "^(claude-acp|codex-acp|acp|acp:[a-z0-9][a-z0-9-]{0,39})$"
503
216
  }
504
217
  },
505
218
  "describe": {
@@ -513,6 +226,103 @@
513
226
  "enabled"
514
227
  ],
515
228
  "additionalProperties": true
229
+ },
230
+ "agents": {
231
+ "type": "object",
232
+ "propertyNames": {
233
+ "type": "string",
234
+ "pattern": "^(claude-acp|codex-acp|acp|acp:[a-z0-9][a-z0-9-]{0,39})$"
235
+ },
236
+ "additionalProperties": {
237
+ "type": "object",
238
+ "properties": {
239
+ "found": {
240
+ "type": "boolean"
241
+ },
242
+ "problem": {
243
+ "type": "string",
244
+ "minLength": 1
245
+ },
246
+ "name": {
247
+ "anyOf": [
248
+ {
249
+ "type": "string",
250
+ "minLength": 1
251
+ },
252
+ {
253
+ "type": "null"
254
+ }
255
+ ]
256
+ }
257
+ },
258
+ "required": [
259
+ "found"
260
+ ],
261
+ "additionalProperties": true
262
+ }
263
+ },
264
+ "added": {
265
+ "type": "array",
266
+ "items": {
267
+ "type": "object",
268
+ "properties": {
269
+ "backend": {
270
+ "type": "string",
271
+ "pattern": "^(claude-acp|codex-acp|acp|acp:[a-z0-9][a-z0-9-]{0,39})$"
272
+ },
273
+ "name": {
274
+ "type": "string",
275
+ "minLength": 1
276
+ },
277
+ "command": {
278
+ "type": "array",
279
+ "items": {
280
+ "type": "string",
281
+ "minLength": 1
282
+ }
283
+ },
284
+ "addedAt": {
285
+ "type": "string",
286
+ "minLength": 1
287
+ }
288
+ },
289
+ "required": [
290
+ "backend",
291
+ "name",
292
+ "command",
293
+ "addedAt"
294
+ ],
295
+ "additionalProperties": true
296
+ }
297
+ },
298
+ "installed": {
299
+ "type": "array",
300
+ "items": {
301
+ "type": "object",
302
+ "properties": {
303
+ "id": {
304
+ "type": "string",
305
+ "minLength": 1
306
+ },
307
+ "name": {
308
+ "type": "string",
309
+ "minLength": 1
310
+ },
311
+ "command": {
312
+ "type": "array",
313
+ "items": {
314
+ "type": "string",
315
+ "minLength": 1
316
+ }
317
+ }
318
+ },
319
+ "required": [
320
+ "id",
321
+ "name",
322
+ "command"
323
+ ],
324
+ "additionalProperties": true
325
+ }
516
326
  }
517
327
  },
518
328
  "required": [