@jinion/core 0.5.0 → 0.5.1

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 (217) hide show
  1. package/dist/agent/agent.d.ts +3 -0
  2. package/dist/agent/agent.d.ts.map +1 -1
  3. package/dist/agent/agent.js.map +1 -1
  4. package/dist/agent/claude/backend.d.ts +1 -1
  5. package/dist/agent/claude/backend.d.ts.map +1 -1
  6. package/dist/agent/claude/backend.js +2 -1
  7. package/dist/agent/claude/backend.js.map +1 -1
  8. package/dist/agent/claude/jinion-tools.d.ts +3 -1
  9. package/dist/agent/claude/jinion-tools.d.ts.map +1 -1
  10. package/dist/agent/claude/jinion-tools.js +10 -1
  11. package/dist/agent/claude/jinion-tools.js.map +1 -1
  12. package/dist/agent/claude/options.d.ts +4 -1
  13. package/dist/agent/claude/options.d.ts.map +1 -1
  14. package/dist/agent/claude/options.js +4 -4
  15. package/dist/agent/claude/options.js.map +1 -1
  16. package/dist/agent/claude/prompt.d.ts +2 -1
  17. package/dist/agent/claude/prompt.d.ts.map +1 -1
  18. package/dist/agent/claude/prompt.js +3 -1
  19. package/dist/agent/claude/prompt.js.map +1 -1
  20. package/dist/agent/claude/session.d.ts +9 -1
  21. package/dist/agent/claude/session.d.ts.map +1 -1
  22. package/dist/agent/claude/session.js +13 -3
  23. package/dist/agent/claude/session.js.map +1 -1
  24. package/dist/agent/claude/tool-calls.d.ts.map +1 -1
  25. package/dist/agent/claude/tool-calls.js +11 -2
  26. package/dist/agent/claude/tool-calls.js.map +1 -1
  27. package/dist/agent/codex/backend.d.ts +1 -1
  28. package/dist/agent/codex/backend.d.ts.map +1 -1
  29. package/dist/agent/codex/backend.js +2 -1
  30. package/dist/agent/codex/backend.js.map +1 -1
  31. package/dist/agent/codex/events.d.ts.map +1 -1
  32. package/dist/agent/codex/events.js +7 -4
  33. package/dist/agent/codex/events.js.map +1 -1
  34. package/dist/agent/codex/jinion-tools.d.ts +27 -4
  35. package/dist/agent/codex/jinion-tools.d.ts.map +1 -1
  36. package/dist/agent/codex/jinion-tools.js +18 -4
  37. package/dist/agent/codex/jinion-tools.js.map +1 -1
  38. package/dist/agent/codex/session.d.ts +3 -0
  39. package/dist/agent/codex/session.d.ts.map +1 -1
  40. package/dist/agent/codex/session.js +5 -2
  41. package/dist/agent/codex/session.js.map +1 -1
  42. package/dist/agent/demo/scenarios/pricing-card.d.ts +3 -0
  43. package/dist/agent/demo/scenarios/pricing-card.d.ts.map +1 -0
  44. package/dist/agent/demo/scenarios/pricing-card.js +43 -0
  45. package/dist/agent/demo/scenarios/pricing-card.js.map +1 -0
  46. package/dist/agent/demo/sessions.d.ts.map +1 -1
  47. package/dist/agent/demo/sessions.js +26 -1
  48. package/dist/agent/demo/sessions.js.map +1 -1
  49. package/dist/agent/review.d.ts +8 -2
  50. package/dist/agent/review.d.ts.map +1 -1
  51. package/dist/agent/review.js +27 -7
  52. package/dist/agent/review.js.map +1 -1
  53. package/dist/api/client.d.ts +212 -0
  54. package/dist/api/client.d.ts.map +1 -1
  55. package/dist/api/connection.d.ts +52 -0
  56. package/dist/api/connection.d.ts.map +1 -1
  57. package/dist/api/connection.js +2 -0
  58. package/dist/api/connection.js.map +1 -1
  59. package/dist/api/fields.d.ts +229 -1
  60. package/dist/api/fields.d.ts.map +1 -1
  61. package/dist/api/fields.js +3 -1
  62. package/dist/api/fields.js.map +1 -1
  63. package/dist/api/json-schema.d.ts +819 -181
  64. package/dist/api/json-schema.d.ts.map +1 -1
  65. package/dist/api/methods/git.js +1 -1
  66. package/dist/api/methods/git.js.map +1 -1
  67. package/dist/api/methods/sessions.d.ts.map +1 -1
  68. package/dist/api/methods/sessions.js +3 -2
  69. package/dist/api/methods/sessions.js.map +1 -1
  70. package/dist/api/methods/team.d.ts +4 -0
  71. package/dist/api/methods/team.d.ts.map +1 -0
  72. package/dist/api/methods/team.js +30 -0
  73. package/dist/api/methods/team.js.map +1 -0
  74. package/dist/api/protocol.d.ts +779 -2
  75. package/dist/api/protocol.d.ts.map +1 -1
  76. package/dist/api/protocol.js +36 -5
  77. package/dist/api/protocol.js.map +1 -1
  78. package/dist/api/schemas.d.ts +496 -0
  79. package/dist/api/schemas.d.ts.map +1 -1
  80. package/dist/api/schemas.js +6 -0
  81. package/dist/api/schemas.js.map +1 -1
  82. package/dist/commands/builtin.d.ts.map +1 -1
  83. package/dist/commands/builtin.js +3 -0
  84. package/dist/commands/builtin.js.map +1 -1
  85. package/dist/commands/team.d.ts +4 -0
  86. package/dist/commands/team.d.ts.map +1 -0
  87. package/dist/commands/team.js +11 -0
  88. package/dist/commands/team.js.map +1 -0
  89. package/dist/controllers/context.d.ts +4 -0
  90. package/dist/controllers/context.d.ts.map +1 -1
  91. package/dist/controllers/context.js +4 -0
  92. package/dist/controllers/context.js.map +1 -1
  93. package/dist/controllers/conversation.d.ts +16 -0
  94. package/dist/controllers/conversation.d.ts.map +1 -1
  95. package/dist/controllers/decision-view.d.ts +20 -0
  96. package/dist/controllers/decision-view.d.ts.map +1 -0
  97. package/dist/controllers/decision-view.js +59 -0
  98. package/dist/controllers/decision-view.js.map +1 -0
  99. package/dist/controllers/decisions.d.ts +29 -0
  100. package/dist/controllers/decisions.d.ts.map +1 -0
  101. package/dist/controllers/decisions.js +199 -0
  102. package/dist/controllers/decisions.js.map +1 -0
  103. package/dist/controllers/jinion.d.ts +17 -1
  104. package/dist/controllers/jinion.d.ts.map +1 -1
  105. package/dist/controllers/jinion.js +89 -5
  106. package/dist/controllers/jinion.js.map +1 -1
  107. package/dist/controllers/session.d.ts +21 -1
  108. package/dist/controllers/session.d.ts.map +1 -1
  109. package/dist/controllers/session.js +63 -1
  110. package/dist/controllers/session.js.map +1 -1
  111. package/dist/controllers/team.d.ts +216 -0
  112. package/dist/controllers/team.d.ts.map +1 -0
  113. package/dist/controllers/team.js +208 -0
  114. package/dist/controllers/team.js.map +1 -0
  115. package/dist/controllers/turns.d.ts +6 -0
  116. package/dist/controllers/turns.d.ts.map +1 -1
  117. package/dist/controllers/turns.js +17 -7
  118. package/dist/controllers/turns.js.map +1 -1
  119. package/dist/conversation/entries.d.ts +36 -0
  120. package/dist/conversation/entries.d.ts.map +1 -1
  121. package/dist/conversation/entries.js +26 -0
  122. package/dist/conversation/entries.js.map +1 -1
  123. package/dist/conversation/reducer.d.ts +132 -0
  124. package/dist/conversation/reducer.d.ts.map +1 -1
  125. package/dist/conversation/reducer.js +30 -1
  126. package/dist/conversation/reducer.js.map +1 -1
  127. package/dist/conversation/session.d.ts +24 -0
  128. package/dist/conversation/session.d.ts.map +1 -1
  129. package/dist/conversation/store.d.ts +13 -0
  130. package/dist/conversation/store.d.ts.map +1 -1
  131. package/dist/conversation/store.js +31 -7
  132. package/dist/conversation/store.js.map +1 -1
  133. package/dist/feedback/shared.d.ts +16 -0
  134. package/dist/feedback/shared.d.ts.map +1 -1
  135. package/dist/git/repos.d.ts.map +1 -1
  136. package/dist/git/repos.js +3 -1
  137. package/dist/git/repos.js.map +1 -1
  138. package/dist/git/staging.d.ts +2 -2
  139. package/dist/git/staging.d.ts.map +1 -1
  140. package/dist/git/staging.js +3 -3
  141. package/dist/git/staging.js.map +1 -1
  142. package/dist/git/types.d.ts +2 -0
  143. package/dist/git/types.d.ts.map +1 -1
  144. package/dist/git/types.js +2 -0
  145. package/dist/git/types.js.map +1 -1
  146. package/dist/jinion-account/account.d.ts +178 -0
  147. package/dist/jinion-account/account.d.ts.map +1 -1
  148. package/dist/jinion-account/account.js +30 -0
  149. package/dist/jinion-account/account.js.map +1 -1
  150. package/dist/jinion-account/api.d.ts +169 -0
  151. package/dist/jinion-account/api.d.ts.map +1 -1
  152. package/dist/jinion-account/api.js +39 -1
  153. package/dist/jinion-account/api.js.map +1 -1
  154. package/dist/jinion-account/user.d.ts +22 -0
  155. package/dist/jinion-account/user.d.ts.map +1 -1
  156. package/dist/jinion-account/user.js +9 -0
  157. package/dist/jinion-account/user.js.map +1 -1
  158. package/dist/map/review.d.ts +6 -4
  159. package/dist/map/review.d.ts.map +1 -1
  160. package/dist/map/review.js +21 -7
  161. package/dist/map/review.js.map +1 -1
  162. package/dist/state/jinion-account.d.ts +6 -0
  163. package/dist/state/jinion-account.d.ts.map +1 -1
  164. package/dist/state/session.d.ts +150 -0
  165. package/dist/state/session.d.ts.map +1 -1
  166. package/dist/state/session.js +2 -0
  167. package/dist/state/session.js.map +1 -1
  168. package/dist/state/team.d.ts +151 -0
  169. package/dist/state/team.d.ts.map +1 -0
  170. package/dist/state/team.js +4 -0
  171. package/dist/state/team.js.map +1 -0
  172. package/dist/team/anchoring.d.ts +9 -0
  173. package/dist/team/anchoring.d.ts.map +1 -0
  174. package/dist/team/anchoring.js +26 -0
  175. package/dist/team/anchoring.js.map +1 -0
  176. package/dist/team/config.d.ts +16 -0
  177. package/dist/team/config.d.ts.map +1 -0
  178. package/dist/team/config.js +37 -0
  179. package/dist/team/config.js.map +1 -0
  180. package/dist/team/decision.d.ts +255 -0
  181. package/dist/team/decision.d.ts.map +1 -0
  182. package/dist/team/decision.js +82 -0
  183. package/dist/team/decision.js.map +1 -0
  184. package/dist/team/decisions.d.ts +98 -0
  185. package/dist/team/decisions.d.ts.map +1 -0
  186. package/dist/team/decisions.js +166 -0
  187. package/dist/team/decisions.js.map +1 -0
  188. package/dist/team/history.d.ts +27 -0
  189. package/dist/team/history.d.ts.map +1 -0
  190. package/dist/team/history.js +49 -0
  191. package/dist/team/history.js.map +1 -0
  192. package/dist/team/prompt.d.ts +20 -0
  193. package/dist/team/prompt.d.ts.map +1 -0
  194. package/dist/team/prompt.js +44 -0
  195. package/dist/team/prompt.js.map +1 -0
  196. package/dist/team/repository.d.ts +12 -0
  197. package/dist/team/repository.d.ts.map +1 -0
  198. package/dist/team/repository.js +32 -0
  199. package/dist/team/repository.js.map +1 -0
  200. package/dist/team/secrets.d.ts +3 -0
  201. package/dist/team/secrets.d.ts.map +1 -0
  202. package/dist/team/secrets.js +18 -0
  203. package/dist/team/secrets.js.map +1 -0
  204. package/dist/team/tools.d.ts +82 -0
  205. package/dist/team/tools.d.ts.map +1 -0
  206. package/dist/team/tools.js +46 -0
  207. package/dist/team/tools.js.map +1 -0
  208. package/dist/team/types.d.ts +178 -0
  209. package/dist/team/types.d.ts.map +1 -0
  210. package/dist/team/types.js +60 -0
  211. package/dist/team/types.js.map +1 -0
  212. package/dist/team/visibility.d.ts +9 -0
  213. package/dist/team/visibility.d.ts.map +1 -0
  214. package/dist/team/visibility.js +36 -0
  215. package/dist/team/visibility.js.map +1 -0
  216. package/package.json +1 -1
  217. package/schema/api.json +3371 -503
package/schema/api.json CHANGED
@@ -91,6 +91,9 @@
91
91
  },
92
92
  "activate": {
93
93
  "type": "boolean"
94
+ },
95
+ "takeOver": {
96
+ "type": "boolean"
94
97
  }
95
98
  }
96
99
  },
@@ -1054,6 +1057,9 @@
1054
1057
  "message": {
1055
1058
  "type": "string",
1056
1059
  "minLength": 1
1060
+ },
1061
+ "amend": {
1062
+ "type": "boolean"
1057
1063
  }
1058
1064
  },
1059
1065
  "required": [
@@ -4891,6 +4897,37 @@
4891
4897
  },
4892
4898
  "activated": {
4893
4899
  "type": "boolean"
4900
+ },
4901
+ "workspaces": {
4902
+ "type": "array",
4903
+ "items": {
4904
+ "type": "object",
4905
+ "properties": {
4906
+ "id": {
4907
+ "type": "string"
4908
+ },
4909
+ "name": {
4910
+ "type": "string"
4911
+ },
4912
+ "slug": {
4913
+ "type": "string"
4914
+ },
4915
+ "role": {
4916
+ "type": "string",
4917
+ "enum": [
4918
+ "owner",
4919
+ "admin",
4920
+ "member"
4921
+ ]
4922
+ }
4923
+ },
4924
+ "required": [
4925
+ "id",
4926
+ "name",
4927
+ "slug",
4928
+ "role"
4929
+ ]
4930
+ }
4894
4931
  }
4895
4932
  },
4896
4933
  "required": [
@@ -4944,6 +4981,37 @@
4944
4981
  },
4945
4982
  "activated": {
4946
4983
  "type": "boolean"
4984
+ },
4985
+ "workspaces": {
4986
+ "type": "array",
4987
+ "items": {
4988
+ "type": "object",
4989
+ "properties": {
4990
+ "id": {
4991
+ "type": "string"
4992
+ },
4993
+ "name": {
4994
+ "type": "string"
4995
+ },
4996
+ "slug": {
4997
+ "type": "string"
4998
+ },
4999
+ "role": {
5000
+ "type": "string",
5001
+ "enum": [
5002
+ "owner",
5003
+ "admin",
5004
+ "member"
5005
+ ]
5006
+ }
5007
+ },
5008
+ "required": [
5009
+ "id",
5010
+ "name",
5011
+ "slug",
5012
+ "role"
5013
+ ]
5014
+ }
4947
5015
  }
4948
5016
  },
4949
5017
  "required": [
@@ -5137,6 +5205,37 @@
5137
5205
  },
5138
5206
  "activated": {
5139
5207
  "type": "boolean"
5208
+ },
5209
+ "workspaces": {
5210
+ "type": "array",
5211
+ "items": {
5212
+ "type": "object",
5213
+ "properties": {
5214
+ "id": {
5215
+ "type": "string"
5216
+ },
5217
+ "name": {
5218
+ "type": "string"
5219
+ },
5220
+ "slug": {
5221
+ "type": "string"
5222
+ },
5223
+ "role": {
5224
+ "type": "string",
5225
+ "enum": [
5226
+ "owner",
5227
+ "admin",
5228
+ "member"
5229
+ ]
5230
+ }
5231
+ },
5232
+ "required": [
5233
+ "id",
5234
+ "name",
5235
+ "slug",
5236
+ "role"
5237
+ ]
5238
+ }
5140
5239
  }
5141
5240
  },
5142
5241
  "required": [
@@ -5192,131 +5291,384 @@
5192
5291
  "result"
5193
5292
  ]
5194
5293
  },
5195
- "skills/read": {
5294
+ "team/state": {
5196
5295
  "type": "object",
5197
5296
  "properties": {
5198
5297
  "params": {
5199
5298
  "type": "object",
5200
- "properties": {
5201
- "name": {
5202
- "type": "string"
5203
- },
5204
- "agent": {
5205
- "type": "string"
5206
- }
5207
- },
5208
- "required": [
5209
- "name"
5210
- ]
5299
+ "properties": {}
5211
5300
  },
5212
5301
  "result": {
5213
- "type": "object",
5214
- "properties": {
5215
- "name": {
5216
- "type": "string"
5217
- },
5218
- "description": {
5219
- "type": "string"
5220
- },
5221
- "instructions": {
5222
- "type": "string"
5223
- },
5224
- "files": {
5225
- "type": "array",
5226
- "items": {
5227
- "type": "string"
5228
- }
5229
- },
5230
- "editable": {
5231
- "type": "boolean"
5232
- }
5233
- },
5234
- "required": [
5235
- "name",
5236
- "description",
5237
- "instructions",
5238
- "files",
5239
- "editable"
5240
- ]
5241
- }
5242
- },
5243
- "required": [
5244
- "params",
5245
- "result"
5246
- ]
5247
- },
5248
- "skills/read-file": {
5249
- "type": "object",
5250
- "properties": {
5251
- "params": {
5252
- "type": "object",
5253
- "properties": {
5254
- "name": {
5255
- "type": "string"
5256
- },
5257
- "agent": {
5258
- "type": "string"
5302
+ "oneOf": [
5303
+ {
5304
+ "type": "object",
5305
+ "properties": {
5306
+ "state": {
5307
+ "type": "string",
5308
+ "const": "unlinked"
5309
+ }
5310
+ },
5311
+ "required": [
5312
+ "state"
5313
+ ]
5259
5314
  },
5260
- "file": {
5261
- "type": "string"
5262
- }
5263
- },
5264
- "required": [
5265
- "name",
5266
- "file"
5267
- ]
5268
- },
5269
- "result": {
5270
- "type": "object",
5271
- "properties": {
5272
- "content": {
5273
- "type": "string"
5274
- }
5275
- },
5276
- "required": [
5277
- "content"
5278
- ]
5279
- }
5280
- },
5281
- "required": [
5282
- "params",
5283
- "result"
5284
- ]
5285
- },
5286
- "skills/write": {
5287
- "type": "object",
5288
- "properties": {
5289
- "params": {
5290
- "type": "object",
5291
- "properties": {
5292
- "name": {
5293
- "type": "string"
5315
+ {
5316
+ "type": "object",
5317
+ "properties": {
5318
+ "state": {
5319
+ "type": "string",
5320
+ "const": "invalid"
5321
+ },
5322
+ "problem": {
5323
+ "type": "string"
5324
+ }
5325
+ },
5326
+ "required": [
5327
+ "state",
5328
+ "problem"
5329
+ ]
5294
5330
  },
5295
- "description": {
5296
- "type": "string"
5331
+ {
5332
+ "type": "object",
5333
+ "properties": {
5334
+ "state": {
5335
+ "type": "string",
5336
+ "const": "signed-out"
5337
+ }
5338
+ },
5339
+ "required": [
5340
+ "state"
5341
+ ]
5297
5342
  },
5298
- "instructions": {
5299
- "type": "string"
5343
+ {
5344
+ "type": "object",
5345
+ "properties": {
5346
+ "state": {
5347
+ "type": "string",
5348
+ "const": "member"
5349
+ },
5350
+ "role": {
5351
+ "type": "string",
5352
+ "enum": [
5353
+ "owner",
5354
+ "admin",
5355
+ "member"
5356
+ ]
5357
+ },
5358
+ "workspace": {
5359
+ "type": "object",
5360
+ "properties": {
5361
+ "id": {
5362
+ "type": "string"
5363
+ },
5364
+ "name": {
5365
+ "type": "string"
5366
+ },
5367
+ "slug": {
5368
+ "type": "string"
5369
+ }
5370
+ },
5371
+ "required": [
5372
+ "id",
5373
+ "name",
5374
+ "slug"
5375
+ ]
5376
+ },
5377
+ "project": {
5378
+ "type": "object",
5379
+ "properties": {
5380
+ "id": {
5381
+ "type": "string"
5382
+ },
5383
+ "name": {
5384
+ "type": "string"
5385
+ },
5386
+ "remoteUrl": {
5387
+ "type": "string"
5388
+ }
5389
+ },
5390
+ "required": [
5391
+ "id",
5392
+ "name"
5393
+ ]
5394
+ }
5395
+ },
5396
+ "required": [
5397
+ "state",
5398
+ "role",
5399
+ "workspace",
5400
+ "project"
5401
+ ]
5300
5402
  },
5301
- "scope": {
5302
- "type": "string",
5303
- "enum": [
5304
- "project",
5305
- "user"
5403
+ {
5404
+ "type": "object",
5405
+ "properties": {
5406
+ "state": {
5407
+ "type": "string",
5408
+ "const": "requested"
5409
+ },
5410
+ "workspace": {
5411
+ "type": "object",
5412
+ "properties": {
5413
+ "name": {
5414
+ "type": "string"
5415
+ }
5416
+ },
5417
+ "required": [
5418
+ "name"
5419
+ ]
5420
+ }
5421
+ },
5422
+ "required": [
5423
+ "state",
5424
+ "workspace"
5306
5425
  ]
5307
5426
  },
5308
- "agent": {
5309
- "type": "string"
5310
- }
5311
- },
5312
- "required": [
5313
- "name",
5314
- "description",
5315
- "instructions"
5316
- ]
5317
- },
5318
- "result": {
5319
- "type": "null"
5427
+ {
5428
+ "type": "object",
5429
+ "properties": {
5430
+ "state": {
5431
+ "type": "string",
5432
+ "const": "no-access"
5433
+ },
5434
+ "workspace": {
5435
+ "type": "object",
5436
+ "properties": {
5437
+ "name": {
5438
+ "type": "string"
5439
+ }
5440
+ },
5441
+ "required": [
5442
+ "name"
5443
+ ]
5444
+ },
5445
+ "canRequest": {
5446
+ "type": "boolean"
5447
+ }
5448
+ },
5449
+ "required": [
5450
+ "state",
5451
+ "workspace",
5452
+ "canRequest"
5453
+ ]
5454
+ },
5455
+ {
5456
+ "type": "object",
5457
+ "properties": {
5458
+ "state": {
5459
+ "type": "string",
5460
+ "const": "not-found"
5461
+ }
5462
+ },
5463
+ "required": [
5464
+ "state"
5465
+ ]
5466
+ },
5467
+ {
5468
+ "type": "object",
5469
+ "properties": {
5470
+ "state": {
5471
+ "type": "string",
5472
+ "const": "mismatch"
5473
+ }
5474
+ },
5475
+ "required": [
5476
+ "state"
5477
+ ]
5478
+ },
5479
+ {
5480
+ "type": "object",
5481
+ "properties": {
5482
+ "state": {
5483
+ "type": "string",
5484
+ "const": "offline"
5485
+ },
5486
+ "known": {
5487
+ "oneOf": [
5488
+ {
5489
+ "type": "object",
5490
+ "properties": {
5491
+ "state": {
5492
+ "type": "string",
5493
+ "const": "unlinked"
5494
+ }
5495
+ },
5496
+ "required": [
5497
+ "state"
5498
+ ]
5499
+ },
5500
+ {
5501
+ "type": "object",
5502
+ "properties": {
5503
+ "state": {
5504
+ "type": "string",
5505
+ "const": "invalid"
5506
+ },
5507
+ "problem": {
5508
+ "type": "string"
5509
+ }
5510
+ },
5511
+ "required": [
5512
+ "state",
5513
+ "problem"
5514
+ ]
5515
+ },
5516
+ {
5517
+ "type": "object",
5518
+ "properties": {
5519
+ "state": {
5520
+ "type": "string",
5521
+ "const": "signed-out"
5522
+ }
5523
+ },
5524
+ "required": [
5525
+ "state"
5526
+ ]
5527
+ },
5528
+ {
5529
+ "type": "object",
5530
+ "properties": {
5531
+ "state": {
5532
+ "type": "string",
5533
+ "const": "member"
5534
+ },
5535
+ "role": {
5536
+ "type": "string",
5537
+ "enum": [
5538
+ "owner",
5539
+ "admin",
5540
+ "member"
5541
+ ]
5542
+ },
5543
+ "workspace": {
5544
+ "type": "object",
5545
+ "properties": {
5546
+ "id": {
5547
+ "type": "string"
5548
+ },
5549
+ "name": {
5550
+ "type": "string"
5551
+ },
5552
+ "slug": {
5553
+ "type": "string"
5554
+ }
5555
+ },
5556
+ "required": [
5557
+ "id",
5558
+ "name",
5559
+ "slug"
5560
+ ]
5561
+ },
5562
+ "project": {
5563
+ "type": "object",
5564
+ "properties": {
5565
+ "id": {
5566
+ "type": "string"
5567
+ },
5568
+ "name": {
5569
+ "type": "string"
5570
+ },
5571
+ "remoteUrl": {
5572
+ "type": "string"
5573
+ }
5574
+ },
5575
+ "required": [
5576
+ "id",
5577
+ "name"
5578
+ ]
5579
+ }
5580
+ },
5581
+ "required": [
5582
+ "state",
5583
+ "role",
5584
+ "workspace",
5585
+ "project"
5586
+ ]
5587
+ },
5588
+ {
5589
+ "type": "object",
5590
+ "properties": {
5591
+ "state": {
5592
+ "type": "string",
5593
+ "const": "requested"
5594
+ },
5595
+ "workspace": {
5596
+ "type": "object",
5597
+ "properties": {
5598
+ "name": {
5599
+ "type": "string"
5600
+ }
5601
+ },
5602
+ "required": [
5603
+ "name"
5604
+ ]
5605
+ }
5606
+ },
5607
+ "required": [
5608
+ "state",
5609
+ "workspace"
5610
+ ]
5611
+ },
5612
+ {
5613
+ "type": "object",
5614
+ "properties": {
5615
+ "state": {
5616
+ "type": "string",
5617
+ "const": "no-access"
5618
+ },
5619
+ "workspace": {
5620
+ "type": "object",
5621
+ "properties": {
5622
+ "name": {
5623
+ "type": "string"
5624
+ }
5625
+ },
5626
+ "required": [
5627
+ "name"
5628
+ ]
5629
+ },
5630
+ "canRequest": {
5631
+ "type": "boolean"
5632
+ }
5633
+ },
5634
+ "required": [
5635
+ "state",
5636
+ "workspace",
5637
+ "canRequest"
5638
+ ]
5639
+ },
5640
+ {
5641
+ "type": "object",
5642
+ "properties": {
5643
+ "state": {
5644
+ "type": "string",
5645
+ "const": "not-found"
5646
+ }
5647
+ },
5648
+ "required": [
5649
+ "state"
5650
+ ]
5651
+ },
5652
+ {
5653
+ "type": "object",
5654
+ "properties": {
5655
+ "state": {
5656
+ "type": "string",
5657
+ "const": "mismatch"
5658
+ }
5659
+ },
5660
+ "required": [
5661
+ "state"
5662
+ ]
5663
+ }
5664
+ ]
5665
+ }
5666
+ },
5667
+ "required": [
5668
+ "state"
5669
+ ]
5670
+ }
5671
+ ]
5320
5672
  }
5321
5673
  },
5322
5674
  "required": [
@@ -5324,33 +5676,55 @@
5324
5676
  "result"
5325
5677
  ]
5326
5678
  },
5327
- "skills/write-file": {
5679
+ "team/workspaces": {
5328
5680
  "type": "object",
5329
5681
  "properties": {
5330
5682
  "params": {
5683
+ "type": "object",
5684
+ "properties": {}
5685
+ },
5686
+ "result": {
5331
5687
  "type": "object",
5332
5688
  "properties": {
5333
- "name": {
5334
- "type": "string"
5335
- },
5336
- "agent": {
5337
- "type": "string"
5338
- },
5339
- "file": {
5340
- "type": "string"
5689
+ "workspaces": {
5690
+ "type": "array",
5691
+ "items": {
5692
+ "type": "object",
5693
+ "properties": {
5694
+ "id": {
5695
+ "type": "string"
5696
+ },
5697
+ "name": {
5698
+ "type": "string"
5699
+ },
5700
+ "slug": {
5701
+ "type": "string"
5702
+ },
5703
+ "role": {
5704
+ "type": "string",
5705
+ "enum": [
5706
+ "owner",
5707
+ "admin",
5708
+ "member"
5709
+ ]
5710
+ }
5711
+ },
5712
+ "required": [
5713
+ "id",
5714
+ "name",
5715
+ "slug",
5716
+ "role"
5717
+ ]
5718
+ }
5341
5719
  },
5342
- "content": {
5720
+ "consent": {
5343
5721
  "type": "string"
5344
5722
  }
5345
5723
  },
5346
5724
  "required": [
5347
- "name",
5348
- "file",
5349
- "content"
5725
+ "workspaces",
5726
+ "consent"
5350
5727
  ]
5351
- },
5352
- "result": {
5353
- "type": "null"
5354
5728
  }
5355
5729
  },
5356
5730
  "required": [
@@ -5358,43 +5732,40 @@
5358
5732
  "result"
5359
5733
  ]
5360
5734
  },
5361
- "skills/delete": {
5735
+ "team/projects": {
5362
5736
  "type": "object",
5363
5737
  "properties": {
5364
5738
  "params": {
5365
5739
  "type": "object",
5366
5740
  "properties": {
5367
- "name": {
5368
- "type": "string"
5369
- },
5370
- "agent": {
5741
+ "workspace": {
5371
5742
  "type": "string"
5372
5743
  }
5373
5744
  },
5374
5745
  "required": [
5375
- "name"
5746
+ "workspace"
5376
5747
  ]
5377
5748
  },
5378
- "result": {
5379
- "type": "null"
5380
- }
5381
- },
5382
- "required": [
5383
- "params",
5384
- "result"
5385
- ]
5386
- },
5387
- "memory/list": {
5388
- "type": "object",
5389
- "properties": {
5390
- "params": {
5391
- "type": "object",
5392
- "properties": {}
5393
- },
5394
5749
  "result": {
5395
5750
  "type": "array",
5396
5751
  "items": {
5397
- "$ref": "#/$defs/MemoryNote"
5752
+ "type": "object",
5753
+ "properties": {
5754
+ "id": {
5755
+ "type": "string"
5756
+ },
5757
+ "name": {
5758
+ "type": "string"
5759
+ },
5760
+ "remoteUrl": {
5761
+ "type": "string"
5762
+ }
5763
+ },
5764
+ "required": [
5765
+ "id",
5766
+ "name",
5767
+ "remoteUrl"
5768
+ ]
5398
5769
  }
5399
5770
  }
5400
5771
  },
@@ -5403,57 +5774,58 @@
5403
5774
  "result"
5404
5775
  ]
5405
5776
  },
5406
- "memory/forget": {
5777
+ "team/link": {
5407
5778
  "type": "object",
5408
5779
  "properties": {
5409
5780
  "params": {
5410
5781
  "type": "object",
5411
5782
  "properties": {
5412
- "scope": {
5413
- "$ref": "#/$defs/MemoryScope"
5783
+ "workspace": {
5784
+ "type": "string"
5414
5785
  },
5415
- "id": {
5786
+ "project": {
5787
+ "type": "string"
5788
+ },
5789
+ "name": {
5416
5790
  "type": "string"
5791
+ },
5792
+ "overwrite": {
5793
+ "type": "boolean"
5417
5794
  }
5418
5795
  },
5419
5796
  "required": [
5420
- "scope",
5421
- "id"
5797
+ "workspace"
5422
5798
  ]
5423
5799
  },
5424
- "result": {
5425
- "type": "null"
5426
- }
5427
- },
5428
- "required": [
5429
- "params",
5430
- "result"
5431
- ]
5432
- },
5433
- "memory/import": {
5434
- "type": "object",
5435
- "properties": {
5436
- "params": {
5437
- "type": "object",
5438
- "properties": {}
5439
- },
5440
5800
  "result": {
5441
5801
  "type": "object",
5442
5802
  "properties": {
5443
- "added": {
5444
- "type": "integer",
5445
- "minimum": -9007199254740991,
5446
- "maximum": 9007199254740991
5803
+ "path": {
5804
+ "type": "string"
5447
5805
  },
5448
- "skipped": {
5449
- "type": "integer",
5450
- "minimum": -9007199254740991,
5451
- "maximum": 9007199254740991
5806
+ "project": {
5807
+ "type": "object",
5808
+ "properties": {
5809
+ "id": {
5810
+ "type": "string"
5811
+ },
5812
+ "name": {
5813
+ "type": "string"
5814
+ },
5815
+ "remoteUrl": {
5816
+ "type": "string"
5817
+ }
5818
+ },
5819
+ "required": [
5820
+ "id",
5821
+ "name",
5822
+ "remoteUrl"
5823
+ ]
5452
5824
  }
5453
5825
  },
5454
5826
  "required": [
5455
- "added",
5456
- "skipped"
5827
+ "path",
5828
+ "project"
5457
5829
  ]
5458
5830
  }
5459
5831
  },
@@ -5462,150 +5834,1062 @@
5462
5834
  "result"
5463
5835
  ]
5464
5836
  },
5465
- "setup/claude": {
5837
+ "team/request-access": {
5466
5838
  "type": "object",
5467
5839
  "properties": {
5468
5840
  "params": {
5469
5841
  "type": "object",
5470
5842
  "properties": {
5471
- "login": {
5472
- "type": "boolean"
5843
+ "message": {
5844
+ "type": "string"
5473
5845
  }
5474
5846
  }
5475
5847
  },
5476
5848
  "result": {
5477
- "type": "object",
5478
- "properties": {
5479
- "login": {
5849
+ "oneOf": [
5850
+ {
5480
5851
  "type": "object",
5481
5852
  "properties": {
5482
- "email": {
5483
- "type": "string"
5853
+ "state": {
5854
+ "type": "string",
5855
+ "const": "unlinked"
5856
+ }
5857
+ },
5858
+ "required": [
5859
+ "state"
5860
+ ]
5861
+ },
5862
+ {
5863
+ "type": "object",
5864
+ "properties": {
5865
+ "state": {
5866
+ "type": "string",
5867
+ "const": "invalid"
5484
5868
  },
5485
- "plan": {
5869
+ "problem": {
5486
5870
  "type": "string"
5487
5871
  }
5488
- }
5489
- },
5490
- "skills": {
5491
- "type": "integer",
5492
- "minimum": -9007199254740991,
5493
- "maximum": 9007199254740991
5872
+ },
5873
+ "required": [
5874
+ "state",
5875
+ "problem"
5876
+ ]
5494
5877
  },
5495
- "plugins": {
5496
- "type": "integer",
5497
- "minimum": -9007199254740991,
5498
- "maximum": 9007199254740991
5878
+ {
5879
+ "type": "object",
5880
+ "properties": {
5881
+ "state": {
5882
+ "type": "string",
5883
+ "const": "signed-out"
5884
+ }
5885
+ },
5886
+ "required": [
5887
+ "state"
5888
+ ]
5499
5889
  },
5500
- "mcpServers": {
5501
- "type": "integer",
5502
- "minimum": -9007199254740991,
5503
- "maximum": 9007199254740991
5890
+ {
5891
+ "type": "object",
5892
+ "properties": {
5893
+ "state": {
5894
+ "type": "string",
5895
+ "const": "member"
5896
+ },
5897
+ "role": {
5898
+ "type": "string",
5899
+ "enum": [
5900
+ "owner",
5901
+ "admin",
5902
+ "member"
5903
+ ]
5904
+ },
5905
+ "workspace": {
5906
+ "type": "object",
5907
+ "properties": {
5908
+ "id": {
5909
+ "type": "string"
5910
+ },
5911
+ "name": {
5912
+ "type": "string"
5913
+ },
5914
+ "slug": {
5915
+ "type": "string"
5916
+ }
5917
+ },
5918
+ "required": [
5919
+ "id",
5920
+ "name",
5921
+ "slug"
5922
+ ]
5923
+ },
5924
+ "project": {
5925
+ "type": "object",
5926
+ "properties": {
5927
+ "id": {
5928
+ "type": "string"
5929
+ },
5930
+ "name": {
5931
+ "type": "string"
5932
+ },
5933
+ "remoteUrl": {
5934
+ "type": "string"
5935
+ }
5936
+ },
5937
+ "required": [
5938
+ "id",
5939
+ "name"
5940
+ ]
5941
+ }
5942
+ },
5943
+ "required": [
5944
+ "state",
5945
+ "role",
5946
+ "workspace",
5947
+ "project"
5948
+ ]
5504
5949
  },
5505
- "instructions": {
5506
- "type": "boolean"
5950
+ {
5951
+ "type": "object",
5952
+ "properties": {
5953
+ "state": {
5954
+ "type": "string",
5955
+ "const": "requested"
5956
+ },
5957
+ "workspace": {
5958
+ "type": "object",
5959
+ "properties": {
5960
+ "name": {
5961
+ "type": "string"
5962
+ }
5963
+ },
5964
+ "required": [
5965
+ "name"
5966
+ ]
5967
+ }
5968
+ },
5969
+ "required": [
5970
+ "state",
5971
+ "workspace"
5972
+ ]
5507
5973
  },
5508
- "notes": {
5974
+ {
5509
5975
  "type": "object",
5510
5976
  "properties": {
5511
- "user": {
5512
- "type": "integer",
5513
- "minimum": -9007199254740991,
5514
- "maximum": 9007199254740991
5977
+ "state": {
5978
+ "type": "string",
5979
+ "const": "no-access"
5515
5980
  },
5516
- "project": {
5517
- "type": "integer",
5518
- "minimum": -9007199254740991,
5519
- "maximum": 9007199254740991
5981
+ "workspace": {
5982
+ "type": "object",
5983
+ "properties": {
5984
+ "name": {
5985
+ "type": "string"
5986
+ }
5987
+ },
5988
+ "required": [
5989
+ "name"
5990
+ ]
5520
5991
  },
5521
- "already": {
5522
- "type": "integer",
5523
- "minimum": -9007199254740991,
5524
- "maximum": 9007199254740991
5992
+ "canRequest": {
5993
+ "type": "boolean"
5525
5994
  }
5526
5995
  },
5527
5996
  "required": [
5528
- "user",
5529
- "project",
5530
- "already"
5997
+ "state",
5998
+ "workspace",
5999
+ "canRequest"
5531
6000
  ]
5532
6001
  },
5533
- "offered": {
5534
- "type": "boolean"
6002
+ {
6003
+ "type": "object",
6004
+ "properties": {
6005
+ "state": {
6006
+ "type": "string",
6007
+ "const": "not-found"
6008
+ }
6009
+ },
6010
+ "required": [
6011
+ "state"
6012
+ ]
5535
6013
  },
5536
- "projectOffered": {
5537
- "type": "boolean"
5538
- }
5539
- },
5540
- "required": [
5541
- "skills",
5542
- "plugins",
5543
- "mcpServers",
5544
- "instructions",
5545
- "notes",
5546
- "offered",
5547
- "projectOffered"
5548
- ]
5549
- }
5550
- },
5551
- "required": [
5552
- "params",
5553
- "result"
5554
- ]
5555
- },
5556
- "setup/claude-done": {
5557
- "type": "object",
5558
- "properties": {
5559
- "params": {
5560
- "type": "object",
5561
- "properties": {}
5562
- },
5563
- "result": {
5564
- "type": "null"
5565
- }
5566
- },
5567
- "required": [
5568
- "params",
5569
- "result"
5570
- ]
5571
- },
5572
- "usage/limits": {
5573
- "type": "object",
5574
- "properties": {
5575
- "params": {
5576
- "type": "object",
5577
- "properties": {
5578
- "drivers": {
5579
- "type": "boolean"
5580
- }
5581
- }
5582
- },
5583
- "result": {
5584
- "$ref": "#/$defs/AgentUsage"
5585
- }
5586
- },
5587
- "required": [
5588
- "params",
5589
- "result"
5590
- ]
5591
- },
5592
- "usage/history": {
5593
- "type": "object",
5594
- "properties": {
5595
- "params": {
5596
- "type": "object",
5597
- "properties": {}
5598
- },
5599
- "result": {
5600
- "$ref": "#/$defs/UsageHistory"
5601
- }
5602
- },
5603
- "required": [
5604
- "params",
5605
- "result"
5606
- ]
5607
- },
5608
- "profile/read": {
6014
+ {
6015
+ "type": "object",
6016
+ "properties": {
6017
+ "state": {
6018
+ "type": "string",
6019
+ "const": "mismatch"
6020
+ }
6021
+ },
6022
+ "required": [
6023
+ "state"
6024
+ ]
6025
+ },
6026
+ {
6027
+ "type": "object",
6028
+ "properties": {
6029
+ "state": {
6030
+ "type": "string",
6031
+ "const": "offline"
6032
+ },
6033
+ "known": {
6034
+ "oneOf": [
6035
+ {
6036
+ "type": "object",
6037
+ "properties": {
6038
+ "state": {
6039
+ "type": "string",
6040
+ "const": "unlinked"
6041
+ }
6042
+ },
6043
+ "required": [
6044
+ "state"
6045
+ ]
6046
+ },
6047
+ {
6048
+ "type": "object",
6049
+ "properties": {
6050
+ "state": {
6051
+ "type": "string",
6052
+ "const": "invalid"
6053
+ },
6054
+ "problem": {
6055
+ "type": "string"
6056
+ }
6057
+ },
6058
+ "required": [
6059
+ "state",
6060
+ "problem"
6061
+ ]
6062
+ },
6063
+ {
6064
+ "type": "object",
6065
+ "properties": {
6066
+ "state": {
6067
+ "type": "string",
6068
+ "const": "signed-out"
6069
+ }
6070
+ },
6071
+ "required": [
6072
+ "state"
6073
+ ]
6074
+ },
6075
+ {
6076
+ "type": "object",
6077
+ "properties": {
6078
+ "state": {
6079
+ "type": "string",
6080
+ "const": "member"
6081
+ },
6082
+ "role": {
6083
+ "type": "string",
6084
+ "enum": [
6085
+ "owner",
6086
+ "admin",
6087
+ "member"
6088
+ ]
6089
+ },
6090
+ "workspace": {
6091
+ "type": "object",
6092
+ "properties": {
6093
+ "id": {
6094
+ "type": "string"
6095
+ },
6096
+ "name": {
6097
+ "type": "string"
6098
+ },
6099
+ "slug": {
6100
+ "type": "string"
6101
+ }
6102
+ },
6103
+ "required": [
6104
+ "id",
6105
+ "name",
6106
+ "slug"
6107
+ ]
6108
+ },
6109
+ "project": {
6110
+ "type": "object",
6111
+ "properties": {
6112
+ "id": {
6113
+ "type": "string"
6114
+ },
6115
+ "name": {
6116
+ "type": "string"
6117
+ },
6118
+ "remoteUrl": {
6119
+ "type": "string"
6120
+ }
6121
+ },
6122
+ "required": [
6123
+ "id",
6124
+ "name"
6125
+ ]
6126
+ }
6127
+ },
6128
+ "required": [
6129
+ "state",
6130
+ "role",
6131
+ "workspace",
6132
+ "project"
6133
+ ]
6134
+ },
6135
+ {
6136
+ "type": "object",
6137
+ "properties": {
6138
+ "state": {
6139
+ "type": "string",
6140
+ "const": "requested"
6141
+ },
6142
+ "workspace": {
6143
+ "type": "object",
6144
+ "properties": {
6145
+ "name": {
6146
+ "type": "string"
6147
+ }
6148
+ },
6149
+ "required": [
6150
+ "name"
6151
+ ]
6152
+ }
6153
+ },
6154
+ "required": [
6155
+ "state",
6156
+ "workspace"
6157
+ ]
6158
+ },
6159
+ {
6160
+ "type": "object",
6161
+ "properties": {
6162
+ "state": {
6163
+ "type": "string",
6164
+ "const": "no-access"
6165
+ },
6166
+ "workspace": {
6167
+ "type": "object",
6168
+ "properties": {
6169
+ "name": {
6170
+ "type": "string"
6171
+ }
6172
+ },
6173
+ "required": [
6174
+ "name"
6175
+ ]
6176
+ },
6177
+ "canRequest": {
6178
+ "type": "boolean"
6179
+ }
6180
+ },
6181
+ "required": [
6182
+ "state",
6183
+ "workspace",
6184
+ "canRequest"
6185
+ ]
6186
+ },
6187
+ {
6188
+ "type": "object",
6189
+ "properties": {
6190
+ "state": {
6191
+ "type": "string",
6192
+ "const": "not-found"
6193
+ }
6194
+ },
6195
+ "required": [
6196
+ "state"
6197
+ ]
6198
+ },
6199
+ {
6200
+ "type": "object",
6201
+ "properties": {
6202
+ "state": {
6203
+ "type": "string",
6204
+ "const": "mismatch"
6205
+ }
6206
+ },
6207
+ "required": [
6208
+ "state"
6209
+ ]
6210
+ }
6211
+ ]
6212
+ }
6213
+ },
6214
+ "required": [
6215
+ "state"
6216
+ ]
6217
+ }
6218
+ ]
6219
+ }
6220
+ },
6221
+ "required": [
6222
+ "params",
6223
+ "result"
6224
+ ]
6225
+ },
6226
+ "team/decision": {
6227
+ "type": "object",
6228
+ "properties": {
6229
+ "params": {
6230
+ "type": "object",
6231
+ "properties": {
6232
+ "id": {
6233
+ "type": "string"
6234
+ }
6235
+ },
6236
+ "required": [
6237
+ "id"
6238
+ ]
6239
+ },
6240
+ "result": {
6241
+ "anyOf": [
6242
+ {
6243
+ "type": "object",
6244
+ "properties": {
6245
+ "id": {
6246
+ "type": "string"
6247
+ },
6248
+ "title": {
6249
+ "type": "string"
6250
+ },
6251
+ "decision": {
6252
+ "type": "string"
6253
+ },
6254
+ "reason": {
6255
+ "type": "string"
6256
+ },
6257
+ "turnedDown": {
6258
+ "type": [
6259
+ "string",
6260
+ "null"
6261
+ ]
6262
+ },
6263
+ "origin": {
6264
+ "type": "string",
6265
+ "enum": [
6266
+ "asked",
6267
+ "requested",
6268
+ "agent"
6269
+ ]
6270
+ },
6271
+ "status": {
6272
+ "type": "string",
6273
+ "enum": [
6274
+ "draft",
6275
+ "active",
6276
+ "superseded",
6277
+ "archived"
6278
+ ]
6279
+ },
6280
+ "author": {
6281
+ "anyOf": [
6282
+ {
6283
+ "type": "object",
6284
+ "properties": {
6285
+ "id": {
6286
+ "type": "number"
6287
+ },
6288
+ "name": {
6289
+ "type": [
6290
+ "string",
6291
+ "null"
6292
+ ]
6293
+ },
6294
+ "email": {
6295
+ "type": "string"
6296
+ }
6297
+ },
6298
+ "required": [
6299
+ "id",
6300
+ "name",
6301
+ "email"
6302
+ ]
6303
+ },
6304
+ {
6305
+ "type": "null"
6306
+ }
6307
+ ]
6308
+ },
6309
+ "backend": {
6310
+ "type": "string"
6311
+ },
6312
+ "model": {
6313
+ "type": "string"
6314
+ },
6315
+ "branch": {
6316
+ "type": [
6317
+ "string",
6318
+ "null"
6319
+ ]
6320
+ },
6321
+ "baseCommit": {
6322
+ "type": [
6323
+ "string",
6324
+ "null"
6325
+ ]
6326
+ },
6327
+ "paths": {
6328
+ "type": "array",
6329
+ "items": {
6330
+ "type": "string"
6331
+ }
6332
+ },
6333
+ "symbols": {
6334
+ "type": "array",
6335
+ "items": {
6336
+ "type": "string"
6337
+ }
6338
+ },
6339
+ "supersedes": {
6340
+ "type": [
6341
+ "string",
6342
+ "null"
6343
+ ]
6344
+ },
6345
+ "supersededBy": {
6346
+ "type": [
6347
+ "string",
6348
+ "null"
6349
+ ]
6350
+ },
6351
+ "anchors": {
6352
+ "type": "array",
6353
+ "items": {
6354
+ "type": "object",
6355
+ "properties": {
6356
+ "sha": {
6357
+ "type": "string"
6358
+ },
6359
+ "kind": {
6360
+ "type": "string",
6361
+ "enum": [
6362
+ "commit",
6363
+ "merge"
6364
+ ]
6365
+ },
6366
+ "pullRequest": {
6367
+ "anyOf": [
6368
+ {
6369
+ "type": "integer",
6370
+ "minimum": -9007199254740991,
6371
+ "maximum": 9007199254740991
6372
+ },
6373
+ {
6374
+ "type": "null"
6375
+ }
6376
+ ]
6377
+ },
6378
+ "pullRequestState": {
6379
+ "anyOf": [
6380
+ {
6381
+ "type": "string",
6382
+ "enum": [
6383
+ "open",
6384
+ "merged",
6385
+ "closed"
6386
+ ]
6387
+ },
6388
+ {
6389
+ "type": "null"
6390
+ }
6391
+ ]
6392
+ },
6393
+ "baseBranch": {
6394
+ "type": [
6395
+ "string",
6396
+ "null"
6397
+ ]
6398
+ }
6399
+ },
6400
+ "required": [
6401
+ "sha",
6402
+ "kind",
6403
+ "pullRequest",
6404
+ "pullRequestState",
6405
+ "baseBranch"
6406
+ ]
6407
+ }
6408
+ },
6409
+ "createdAt": {
6410
+ "type": "string"
6411
+ },
6412
+ "updatedAt": {
6413
+ "type": "string"
6414
+ },
6415
+ "version": {
6416
+ "type": "string"
6417
+ }
6418
+ },
6419
+ "required": [
6420
+ "id",
6421
+ "title",
6422
+ "decision",
6423
+ "reason",
6424
+ "turnedDown",
6425
+ "origin",
6426
+ "status",
6427
+ "author",
6428
+ "backend",
6429
+ "model",
6430
+ "branch",
6431
+ "baseCommit",
6432
+ "paths",
6433
+ "symbols",
6434
+ "supersedes",
6435
+ "supersededBy",
6436
+ "anchors",
6437
+ "createdAt",
6438
+ "updatedAt",
6439
+ "version"
6440
+ ]
6441
+ },
6442
+ {
6443
+ "type": "null"
6444
+ }
6445
+ ]
6446
+ }
6447
+ },
6448
+ "required": [
6449
+ "params",
6450
+ "result"
6451
+ ]
6452
+ },
6453
+ "team/delete-decision": {
6454
+ "type": "object",
6455
+ "properties": {
6456
+ "params": {
6457
+ "type": "object",
6458
+ "properties": {
6459
+ "id": {
6460
+ "type": "string"
6461
+ },
6462
+ "session": {
6463
+ "type": "string"
6464
+ }
6465
+ },
6466
+ "required": [
6467
+ "id"
6468
+ ]
6469
+ },
6470
+ "result": {
6471
+ "type": "null"
6472
+ }
6473
+ },
6474
+ "required": [
6475
+ "params",
6476
+ "result"
6477
+ ]
6478
+ },
6479
+ "skills/read": {
6480
+ "type": "object",
6481
+ "properties": {
6482
+ "params": {
6483
+ "type": "object",
6484
+ "properties": {
6485
+ "name": {
6486
+ "type": "string"
6487
+ },
6488
+ "agent": {
6489
+ "type": "string"
6490
+ }
6491
+ },
6492
+ "required": [
6493
+ "name"
6494
+ ]
6495
+ },
6496
+ "result": {
6497
+ "type": "object",
6498
+ "properties": {
6499
+ "name": {
6500
+ "type": "string"
6501
+ },
6502
+ "description": {
6503
+ "type": "string"
6504
+ },
6505
+ "instructions": {
6506
+ "type": "string"
6507
+ },
6508
+ "files": {
6509
+ "type": "array",
6510
+ "items": {
6511
+ "type": "string"
6512
+ }
6513
+ },
6514
+ "editable": {
6515
+ "type": "boolean"
6516
+ }
6517
+ },
6518
+ "required": [
6519
+ "name",
6520
+ "description",
6521
+ "instructions",
6522
+ "files",
6523
+ "editable"
6524
+ ]
6525
+ }
6526
+ },
6527
+ "required": [
6528
+ "params",
6529
+ "result"
6530
+ ]
6531
+ },
6532
+ "skills/read-file": {
6533
+ "type": "object",
6534
+ "properties": {
6535
+ "params": {
6536
+ "type": "object",
6537
+ "properties": {
6538
+ "name": {
6539
+ "type": "string"
6540
+ },
6541
+ "agent": {
6542
+ "type": "string"
6543
+ },
6544
+ "file": {
6545
+ "type": "string"
6546
+ }
6547
+ },
6548
+ "required": [
6549
+ "name",
6550
+ "file"
6551
+ ]
6552
+ },
6553
+ "result": {
6554
+ "type": "object",
6555
+ "properties": {
6556
+ "content": {
6557
+ "type": "string"
6558
+ }
6559
+ },
6560
+ "required": [
6561
+ "content"
6562
+ ]
6563
+ }
6564
+ },
6565
+ "required": [
6566
+ "params",
6567
+ "result"
6568
+ ]
6569
+ },
6570
+ "skills/write": {
6571
+ "type": "object",
6572
+ "properties": {
6573
+ "params": {
6574
+ "type": "object",
6575
+ "properties": {
6576
+ "name": {
6577
+ "type": "string"
6578
+ },
6579
+ "description": {
6580
+ "type": "string"
6581
+ },
6582
+ "instructions": {
6583
+ "type": "string"
6584
+ },
6585
+ "scope": {
6586
+ "type": "string",
6587
+ "enum": [
6588
+ "project",
6589
+ "user"
6590
+ ]
6591
+ },
6592
+ "agent": {
6593
+ "type": "string"
6594
+ }
6595
+ },
6596
+ "required": [
6597
+ "name",
6598
+ "description",
6599
+ "instructions"
6600
+ ]
6601
+ },
6602
+ "result": {
6603
+ "type": "null"
6604
+ }
6605
+ },
6606
+ "required": [
6607
+ "params",
6608
+ "result"
6609
+ ]
6610
+ },
6611
+ "skills/write-file": {
6612
+ "type": "object",
6613
+ "properties": {
6614
+ "params": {
6615
+ "type": "object",
6616
+ "properties": {
6617
+ "name": {
6618
+ "type": "string"
6619
+ },
6620
+ "agent": {
6621
+ "type": "string"
6622
+ },
6623
+ "file": {
6624
+ "type": "string"
6625
+ },
6626
+ "content": {
6627
+ "type": "string"
6628
+ }
6629
+ },
6630
+ "required": [
6631
+ "name",
6632
+ "file",
6633
+ "content"
6634
+ ]
6635
+ },
6636
+ "result": {
6637
+ "type": "null"
6638
+ }
6639
+ },
6640
+ "required": [
6641
+ "params",
6642
+ "result"
6643
+ ]
6644
+ },
6645
+ "skills/delete": {
6646
+ "type": "object",
6647
+ "properties": {
6648
+ "params": {
6649
+ "type": "object",
6650
+ "properties": {
6651
+ "name": {
6652
+ "type": "string"
6653
+ },
6654
+ "agent": {
6655
+ "type": "string"
6656
+ }
6657
+ },
6658
+ "required": [
6659
+ "name"
6660
+ ]
6661
+ },
6662
+ "result": {
6663
+ "type": "null"
6664
+ }
6665
+ },
6666
+ "required": [
6667
+ "params",
6668
+ "result"
6669
+ ]
6670
+ },
6671
+ "memory/list": {
6672
+ "type": "object",
6673
+ "properties": {
6674
+ "params": {
6675
+ "type": "object",
6676
+ "properties": {}
6677
+ },
6678
+ "result": {
6679
+ "type": "array",
6680
+ "items": {
6681
+ "$ref": "#/$defs/MemoryNote"
6682
+ }
6683
+ }
6684
+ },
6685
+ "required": [
6686
+ "params",
6687
+ "result"
6688
+ ]
6689
+ },
6690
+ "memory/forget": {
6691
+ "type": "object",
6692
+ "properties": {
6693
+ "params": {
6694
+ "type": "object",
6695
+ "properties": {
6696
+ "scope": {
6697
+ "$ref": "#/$defs/MemoryScope"
6698
+ },
6699
+ "id": {
6700
+ "type": "string"
6701
+ }
6702
+ },
6703
+ "required": [
6704
+ "scope",
6705
+ "id"
6706
+ ]
6707
+ },
6708
+ "result": {
6709
+ "type": "null"
6710
+ }
6711
+ },
6712
+ "required": [
6713
+ "params",
6714
+ "result"
6715
+ ]
6716
+ },
6717
+ "memory/import": {
6718
+ "type": "object",
6719
+ "properties": {
6720
+ "params": {
6721
+ "type": "object",
6722
+ "properties": {}
6723
+ },
6724
+ "result": {
6725
+ "type": "object",
6726
+ "properties": {
6727
+ "added": {
6728
+ "type": "integer",
6729
+ "minimum": -9007199254740991,
6730
+ "maximum": 9007199254740991
6731
+ },
6732
+ "skipped": {
6733
+ "type": "integer",
6734
+ "minimum": -9007199254740991,
6735
+ "maximum": 9007199254740991
6736
+ }
6737
+ },
6738
+ "required": [
6739
+ "added",
6740
+ "skipped"
6741
+ ]
6742
+ }
6743
+ },
6744
+ "required": [
6745
+ "params",
6746
+ "result"
6747
+ ]
6748
+ },
6749
+ "setup/claude": {
6750
+ "type": "object",
6751
+ "properties": {
6752
+ "params": {
6753
+ "type": "object",
6754
+ "properties": {
6755
+ "login": {
6756
+ "type": "boolean"
6757
+ }
6758
+ }
6759
+ },
6760
+ "result": {
6761
+ "type": "object",
6762
+ "properties": {
6763
+ "login": {
6764
+ "type": "object",
6765
+ "properties": {
6766
+ "email": {
6767
+ "type": "string"
6768
+ },
6769
+ "plan": {
6770
+ "type": "string"
6771
+ }
6772
+ }
6773
+ },
6774
+ "skills": {
6775
+ "type": "integer",
6776
+ "minimum": -9007199254740991,
6777
+ "maximum": 9007199254740991
6778
+ },
6779
+ "plugins": {
6780
+ "type": "integer",
6781
+ "minimum": -9007199254740991,
6782
+ "maximum": 9007199254740991
6783
+ },
6784
+ "mcpServers": {
6785
+ "type": "integer",
6786
+ "minimum": -9007199254740991,
6787
+ "maximum": 9007199254740991
6788
+ },
6789
+ "instructions": {
6790
+ "type": "boolean"
6791
+ },
6792
+ "notes": {
6793
+ "type": "object",
6794
+ "properties": {
6795
+ "user": {
6796
+ "type": "integer",
6797
+ "minimum": -9007199254740991,
6798
+ "maximum": 9007199254740991
6799
+ },
6800
+ "project": {
6801
+ "type": "integer",
6802
+ "minimum": -9007199254740991,
6803
+ "maximum": 9007199254740991
6804
+ },
6805
+ "already": {
6806
+ "type": "integer",
6807
+ "minimum": -9007199254740991,
6808
+ "maximum": 9007199254740991
6809
+ }
6810
+ },
6811
+ "required": [
6812
+ "user",
6813
+ "project",
6814
+ "already"
6815
+ ]
6816
+ },
6817
+ "offered": {
6818
+ "type": "boolean"
6819
+ },
6820
+ "projectOffered": {
6821
+ "type": "boolean"
6822
+ }
6823
+ },
6824
+ "required": [
6825
+ "skills",
6826
+ "plugins",
6827
+ "mcpServers",
6828
+ "instructions",
6829
+ "notes",
6830
+ "offered",
6831
+ "projectOffered"
6832
+ ]
6833
+ }
6834
+ },
6835
+ "required": [
6836
+ "params",
6837
+ "result"
6838
+ ]
6839
+ },
6840
+ "setup/claude-done": {
6841
+ "type": "object",
6842
+ "properties": {
6843
+ "params": {
6844
+ "type": "object",
6845
+ "properties": {}
6846
+ },
6847
+ "result": {
6848
+ "type": "null"
6849
+ }
6850
+ },
6851
+ "required": [
6852
+ "params",
6853
+ "result"
6854
+ ]
6855
+ },
6856
+ "usage/limits": {
6857
+ "type": "object",
6858
+ "properties": {
6859
+ "params": {
6860
+ "type": "object",
6861
+ "properties": {
6862
+ "drivers": {
6863
+ "type": "boolean"
6864
+ }
6865
+ }
6866
+ },
6867
+ "result": {
6868
+ "$ref": "#/$defs/AgentUsage"
6869
+ }
6870
+ },
6871
+ "required": [
6872
+ "params",
6873
+ "result"
6874
+ ]
6875
+ },
6876
+ "usage/history": {
6877
+ "type": "object",
6878
+ "properties": {
6879
+ "params": {
6880
+ "type": "object",
6881
+ "properties": {}
6882
+ },
6883
+ "result": {
6884
+ "$ref": "#/$defs/UsageHistory"
6885
+ }
6886
+ },
6887
+ "required": [
6888
+ "params",
6889
+ "result"
6890
+ ]
6891
+ },
6892
+ "profile/read": {
5609
6893
  "type": "object",
5610
6894
  "properties": {
5611
6895
  "params": {
@@ -5742,6 +7026,13 @@
5742
7026
  "jinion/check-invite",
5743
7027
  "jinion/activate",
5744
7028
  "jinion/invites",
7029
+ "team/state",
7030
+ "team/workspaces",
7031
+ "team/projects",
7032
+ "team/link",
7033
+ "team/request-access",
7034
+ "team/decision",
7035
+ "team/delete-decision",
5745
7036
  "skills/read",
5746
7037
  "skills/read-file",
5747
7038
  "skills/write",
@@ -6476,89 +7767,492 @@
6476
7767
  {
6477
7768
  "type": "object",
6478
7769
  "properties": {
6479
- "id": {
6480
- "type": "number"
6481
- },
6482
- "email": {
6483
- "type": "string"
6484
- },
6485
- "name": {
6486
- "type": [
6487
- "string",
6488
- "null"
6489
- ]
7770
+ "id": {
7771
+ "type": "number"
7772
+ },
7773
+ "email": {
7774
+ "type": "string"
7775
+ },
7776
+ "name": {
7777
+ "type": [
7778
+ "string",
7779
+ "null"
7780
+ ]
7781
+ },
7782
+ "avatarUrl": {
7783
+ "type": [
7784
+ "string",
7785
+ "null"
7786
+ ]
7787
+ },
7788
+ "role": {
7789
+ "type": "string",
7790
+ "enum": [
7791
+ "user",
7792
+ "admin",
7793
+ "superadmin"
7794
+ ]
7795
+ },
7796
+ "activated": {
7797
+ "type": "boolean"
7798
+ },
7799
+ "workspaces": {
7800
+ "type": "array",
7801
+ "items": {
7802
+ "type": "object",
7803
+ "properties": {
7804
+ "id": {
7805
+ "type": "string"
7806
+ },
7807
+ "name": {
7808
+ "type": "string"
7809
+ },
7810
+ "slug": {
7811
+ "type": "string"
7812
+ },
7813
+ "role": {
7814
+ "type": "string",
7815
+ "enum": [
7816
+ "owner",
7817
+ "admin",
7818
+ "member"
7819
+ ]
7820
+ }
7821
+ },
7822
+ "required": [
7823
+ "id",
7824
+ "name",
7825
+ "slug",
7826
+ "role"
7827
+ ]
7828
+ }
7829
+ }
7830
+ },
7831
+ "required": [
7832
+ "id",
7833
+ "email",
7834
+ "name",
7835
+ "avatarUrl"
7836
+ ]
7837
+ },
7838
+ {
7839
+ "type": "null"
7840
+ }
7841
+ ]
7842
+ },
7843
+ "signals": {
7844
+ "type": "boolean"
7845
+ },
7846
+ "notifications": {
7847
+ "type": "boolean"
7848
+ },
7849
+ "claudeSetupOffered": {
7850
+ "type": "boolean"
7851
+ },
7852
+ "announcements": {
7853
+ "type": "array",
7854
+ "items": {
7855
+ "type": "object",
7856
+ "properties": {
7857
+ "id": {
7858
+ "type": "number"
7859
+ },
7860
+ "text": {
7861
+ "type": "string"
7862
+ },
7863
+ "link": {
7864
+ "type": "object",
7865
+ "properties": {
7866
+ "url": {
7867
+ "type": "string"
7868
+ },
7869
+ "label": {
7870
+ "type": "string"
7871
+ }
7872
+ },
7873
+ "required": [
7874
+ "url",
7875
+ "label"
7876
+ ]
7877
+ }
7878
+ },
7879
+ "required": [
7880
+ "id",
7881
+ "text"
7882
+ ]
7883
+ }
7884
+ },
7885
+ "team": {
7886
+ "oneOf": [
7887
+ {
7888
+ "type": "object",
7889
+ "properties": {
7890
+ "state": {
7891
+ "type": "string",
7892
+ "const": "unlinked"
7893
+ }
7894
+ },
7895
+ "required": [
7896
+ "state"
7897
+ ]
7898
+ },
7899
+ {
7900
+ "type": "object",
7901
+ "properties": {
7902
+ "state": {
7903
+ "type": "string",
7904
+ "const": "invalid"
7905
+ },
7906
+ "problem": {
7907
+ "type": "string"
7908
+ }
7909
+ },
7910
+ "required": [
7911
+ "state",
7912
+ "problem"
7913
+ ]
7914
+ },
7915
+ {
7916
+ "type": "object",
7917
+ "properties": {
7918
+ "state": {
7919
+ "type": "string",
7920
+ "const": "signed-out"
7921
+ }
7922
+ },
7923
+ "required": [
7924
+ "state"
7925
+ ]
7926
+ },
7927
+ {
7928
+ "type": "object",
7929
+ "properties": {
7930
+ "state": {
7931
+ "type": "string",
7932
+ "const": "member"
7933
+ },
7934
+ "role": {
7935
+ "type": "string",
7936
+ "enum": [
7937
+ "owner",
7938
+ "admin",
7939
+ "member"
7940
+ ]
7941
+ },
7942
+ "workspace": {
7943
+ "type": "object",
7944
+ "properties": {
7945
+ "id": {
7946
+ "type": "string"
7947
+ },
7948
+ "name": {
7949
+ "type": "string"
7950
+ },
7951
+ "slug": {
7952
+ "type": "string"
7953
+ }
7954
+ },
7955
+ "required": [
7956
+ "id",
7957
+ "name",
7958
+ "slug"
7959
+ ]
7960
+ },
7961
+ "project": {
7962
+ "type": "object",
7963
+ "properties": {
7964
+ "id": {
7965
+ "type": "string"
7966
+ },
7967
+ "name": {
7968
+ "type": "string"
7969
+ },
7970
+ "remoteUrl": {
7971
+ "type": "string"
7972
+ }
7973
+ },
7974
+ "required": [
7975
+ "id",
7976
+ "name"
7977
+ ]
7978
+ }
7979
+ },
7980
+ "required": [
7981
+ "state",
7982
+ "role",
7983
+ "workspace",
7984
+ "project"
7985
+ ]
7986
+ },
7987
+ {
7988
+ "type": "object",
7989
+ "properties": {
7990
+ "state": {
7991
+ "type": "string",
7992
+ "const": "requested"
6490
7993
  },
6491
- "avatarUrl": {
6492
- "type": [
6493
- "string",
6494
- "null"
7994
+ "workspace": {
7995
+ "type": "object",
7996
+ "properties": {
7997
+ "name": {
7998
+ "type": "string"
7999
+ }
8000
+ },
8001
+ "required": [
8002
+ "name"
6495
8003
  ]
6496
- },
6497
- "role": {
8004
+ }
8005
+ },
8006
+ "required": [
8007
+ "state",
8008
+ "workspace"
8009
+ ]
8010
+ },
8011
+ {
8012
+ "type": "object",
8013
+ "properties": {
8014
+ "state": {
6498
8015
  "type": "string",
6499
- "enum": [
6500
- "user",
6501
- "admin",
6502
- "superadmin"
8016
+ "const": "no-access"
8017
+ },
8018
+ "workspace": {
8019
+ "type": "object",
8020
+ "properties": {
8021
+ "name": {
8022
+ "type": "string"
8023
+ }
8024
+ },
8025
+ "required": [
8026
+ "name"
6503
8027
  ]
6504
8028
  },
6505
- "activated": {
8029
+ "canRequest": {
6506
8030
  "type": "boolean"
6507
8031
  }
6508
8032
  },
6509
8033
  "required": [
6510
- "id",
6511
- "email",
6512
- "name",
6513
- "avatarUrl"
8034
+ "state",
8035
+ "workspace",
8036
+ "canRequest"
6514
8037
  ]
6515
8038
  },
6516
8039
  {
6517
- "type": "null"
6518
- }
6519
- ]
6520
- },
6521
- "signals": {
6522
- "type": "boolean"
6523
- },
6524
- "notifications": {
6525
- "type": "boolean"
6526
- },
6527
- "claudeSetupOffered": {
6528
- "type": "boolean"
6529
- },
6530
- "announcements": {
6531
- "type": "array",
6532
- "items": {
6533
- "type": "object",
6534
- "properties": {
6535
- "id": {
6536
- "type": "number"
8040
+ "type": "object",
8041
+ "properties": {
8042
+ "state": {
8043
+ "type": "string",
8044
+ "const": "not-found"
8045
+ }
6537
8046
  },
6538
- "text": {
6539
- "type": "string"
8047
+ "required": [
8048
+ "state"
8049
+ ]
8050
+ },
8051
+ {
8052
+ "type": "object",
8053
+ "properties": {
8054
+ "state": {
8055
+ "type": "string",
8056
+ "const": "mismatch"
8057
+ }
6540
8058
  },
6541
- "link": {
6542
- "type": "object",
6543
- "properties": {
6544
- "url": {
6545
- "type": "string"
6546
- },
6547
- "label": {
6548
- "type": "string"
6549
- }
6550
- },
6551
- "required": [
6552
- "url",
6553
- "label"
6554
- ]
6555
- }
8059
+ "required": [
8060
+ "state"
8061
+ ]
6556
8062
  },
6557
- "required": [
6558
- "id",
6559
- "text"
6560
- ]
6561
- }
8063
+ {
8064
+ "type": "object",
8065
+ "properties": {
8066
+ "state": {
8067
+ "type": "string",
8068
+ "const": "offline"
8069
+ },
8070
+ "known": {
8071
+ "oneOf": [
8072
+ {
8073
+ "type": "object",
8074
+ "properties": {
8075
+ "state": {
8076
+ "type": "string",
8077
+ "const": "unlinked"
8078
+ }
8079
+ },
8080
+ "required": [
8081
+ "state"
8082
+ ]
8083
+ },
8084
+ {
8085
+ "type": "object",
8086
+ "properties": {
8087
+ "state": {
8088
+ "type": "string",
8089
+ "const": "invalid"
8090
+ },
8091
+ "problem": {
8092
+ "type": "string"
8093
+ }
8094
+ },
8095
+ "required": [
8096
+ "state",
8097
+ "problem"
8098
+ ]
8099
+ },
8100
+ {
8101
+ "type": "object",
8102
+ "properties": {
8103
+ "state": {
8104
+ "type": "string",
8105
+ "const": "signed-out"
8106
+ }
8107
+ },
8108
+ "required": [
8109
+ "state"
8110
+ ]
8111
+ },
8112
+ {
8113
+ "type": "object",
8114
+ "properties": {
8115
+ "state": {
8116
+ "type": "string",
8117
+ "const": "member"
8118
+ },
8119
+ "role": {
8120
+ "type": "string",
8121
+ "enum": [
8122
+ "owner",
8123
+ "admin",
8124
+ "member"
8125
+ ]
8126
+ },
8127
+ "workspace": {
8128
+ "type": "object",
8129
+ "properties": {
8130
+ "id": {
8131
+ "type": "string"
8132
+ },
8133
+ "name": {
8134
+ "type": "string"
8135
+ },
8136
+ "slug": {
8137
+ "type": "string"
8138
+ }
8139
+ },
8140
+ "required": [
8141
+ "id",
8142
+ "name",
8143
+ "slug"
8144
+ ]
8145
+ },
8146
+ "project": {
8147
+ "type": "object",
8148
+ "properties": {
8149
+ "id": {
8150
+ "type": "string"
8151
+ },
8152
+ "name": {
8153
+ "type": "string"
8154
+ },
8155
+ "remoteUrl": {
8156
+ "type": "string"
8157
+ }
8158
+ },
8159
+ "required": [
8160
+ "id",
8161
+ "name"
8162
+ ]
8163
+ }
8164
+ },
8165
+ "required": [
8166
+ "state",
8167
+ "role",
8168
+ "workspace",
8169
+ "project"
8170
+ ]
8171
+ },
8172
+ {
8173
+ "type": "object",
8174
+ "properties": {
8175
+ "state": {
8176
+ "type": "string",
8177
+ "const": "requested"
8178
+ },
8179
+ "workspace": {
8180
+ "type": "object",
8181
+ "properties": {
8182
+ "name": {
8183
+ "type": "string"
8184
+ }
8185
+ },
8186
+ "required": [
8187
+ "name"
8188
+ ]
8189
+ }
8190
+ },
8191
+ "required": [
8192
+ "state",
8193
+ "workspace"
8194
+ ]
8195
+ },
8196
+ {
8197
+ "type": "object",
8198
+ "properties": {
8199
+ "state": {
8200
+ "type": "string",
8201
+ "const": "no-access"
8202
+ },
8203
+ "workspace": {
8204
+ "type": "object",
8205
+ "properties": {
8206
+ "name": {
8207
+ "type": "string"
8208
+ }
8209
+ },
8210
+ "required": [
8211
+ "name"
8212
+ ]
8213
+ },
8214
+ "canRequest": {
8215
+ "type": "boolean"
8216
+ }
8217
+ },
8218
+ "required": [
8219
+ "state",
8220
+ "workspace",
8221
+ "canRequest"
8222
+ ]
8223
+ },
8224
+ {
8225
+ "type": "object",
8226
+ "properties": {
8227
+ "state": {
8228
+ "type": "string",
8229
+ "const": "not-found"
8230
+ }
8231
+ },
8232
+ "required": [
8233
+ "state"
8234
+ ]
8235
+ },
8236
+ {
8237
+ "type": "object",
8238
+ "properties": {
8239
+ "state": {
8240
+ "type": "string",
8241
+ "const": "mismatch"
8242
+ }
8243
+ },
8244
+ "required": [
8245
+ "state"
8246
+ ]
8247
+ }
8248
+ ]
8249
+ }
8250
+ },
8251
+ "required": [
8252
+ "state"
8253
+ ]
8254
+ }
8255
+ ]
6562
8256
  }
6563
8257
  },
6564
8258
  "required": [
@@ -7100,6 +8794,54 @@
7100
8794
  "files"
7101
8795
  ]
7102
8796
  },
8797
+ {
8798
+ "type": "object",
8799
+ "properties": {
8800
+ "id": {
8801
+ "type": "string"
8802
+ },
8803
+ "kind": {
8804
+ "type": "string",
8805
+ "const": "decision"
8806
+ },
8807
+ "decision": {
8808
+ "type": "string"
8809
+ },
8810
+ "title": {
8811
+ "type": "string"
8812
+ },
8813
+ "origin": {
8814
+ "type": "string",
8815
+ "enum": [
8816
+ "asked",
8817
+ "requested",
8818
+ "agent"
8819
+ ]
8820
+ },
8821
+ "deleted": {
8822
+ "type": "boolean"
8823
+ },
8824
+ "kept": {
8825
+ "type": "boolean"
8826
+ },
8827
+ "by": {
8828
+ "type": "string"
8829
+ },
8830
+ "madeAt": {
8831
+ "type": "string"
8832
+ },
8833
+ "elsewhere": {
8834
+ "$ref": "#/$defs/DecisionElsewhere"
8835
+ }
8836
+ },
8837
+ "required": [
8838
+ "id",
8839
+ "kind",
8840
+ "decision",
8841
+ "title",
8842
+ "origin"
8843
+ ]
8844
+ },
7103
8845
  {
7104
8846
  "type": "object",
7105
8847
  "properties": {
@@ -7237,6 +8979,56 @@
7237
8979
  "removed"
7238
8980
  ]
7239
8981
  },
8982
+ "DecisionElsewhere": {
8983
+ "type": "object",
8984
+ "properties": {
8985
+ "branch": {
8986
+ "type": [
8987
+ "string",
8988
+ "null"
8989
+ ]
8990
+ },
8991
+ "pullRequest": {
8992
+ "anyOf": [
8993
+ {
8994
+ "type": "integer",
8995
+ "minimum": -9007199254740991,
8996
+ "maximum": 9007199254740991
8997
+ },
8998
+ {
8999
+ "type": "null"
9000
+ }
9001
+ ]
9002
+ },
9003
+ "pullRequestState": {
9004
+ "anyOf": [
9005
+ {
9006
+ "type": "string",
9007
+ "enum": [
9008
+ "open",
9009
+ "merged",
9010
+ "closed"
9011
+ ]
9012
+ },
9013
+ {
9014
+ "type": "null"
9015
+ }
9016
+ ]
9017
+ },
9018
+ "paths": {
9019
+ "type": "array",
9020
+ "items": {
9021
+ "type": "string"
9022
+ }
9023
+ }
9024
+ },
9025
+ "required": [
9026
+ "branch",
9027
+ "pullRequest",
9028
+ "pullRequestState",
9029
+ "paths"
9030
+ ]
9031
+ },
7240
9032
  "ToolRun": {
7241
9033
  "oneOf": [
7242
9034
  {
@@ -8076,40 +9868,288 @@
8076
9868
  "minimum": -9007199254740991,
8077
9869
  "maximum": 9007199254740991
8078
9870
  },
8079
- "reading": {
8080
- "type": "string"
8081
- }
8082
- },
8083
- "required": [
8084
- "id",
8085
- "name",
8086
- "path",
8087
- "kind",
8088
- "size"
8089
- ]
8090
- }
8091
- },
8092
- "folder": {
8093
- "type": "string"
8094
- },
8095
- "wantsWorktree": {
8096
- "type": "boolean"
8097
- },
8098
- "working": {
8099
- "type": "boolean"
8100
- },
8101
- "ratings": {
8102
- "type": "object",
8103
- "propertyNames": {
8104
- "type": "string"
9871
+ "reading": {
9872
+ "type": "string"
9873
+ }
9874
+ },
9875
+ "required": [
9876
+ "id",
9877
+ "name",
9878
+ "path",
9879
+ "kind",
9880
+ "size"
9881
+ ]
9882
+ }
9883
+ },
9884
+ "folder": {
9885
+ "type": "string"
9886
+ },
9887
+ "wantsWorktree": {
9888
+ "type": "boolean"
9889
+ },
9890
+ "working": {
9891
+ "type": "boolean"
9892
+ },
9893
+ "ratings": {
9894
+ "type": "object",
9895
+ "propertyNames": {
9896
+ "type": "string"
9897
+ },
9898
+ "additionalProperties": {
9899
+ "type": "string",
9900
+ "enum": [
9901
+ "liked",
9902
+ "disliked"
9903
+ ]
9904
+ }
9905
+ },
9906
+ "decisions": {
9907
+ "type": "object",
9908
+ "properties": {
9909
+ "decisions": {
9910
+ "type": "array",
9911
+ "items": {
9912
+ "type": "object",
9913
+ "properties": {
9914
+ "id": {
9915
+ "type": "string"
9916
+ },
9917
+ "title": {
9918
+ "type": "string"
9919
+ },
9920
+ "decision": {
9921
+ "type": "string"
9922
+ },
9923
+ "reason": {
9924
+ "type": "string"
9925
+ },
9926
+ "turnedDown": {
9927
+ "type": [
9928
+ "string",
9929
+ "null"
9930
+ ]
9931
+ },
9932
+ "origin": {
9933
+ "type": "string",
9934
+ "enum": [
9935
+ "asked",
9936
+ "requested",
9937
+ "agent"
9938
+ ]
9939
+ },
9940
+ "status": {
9941
+ "type": "string",
9942
+ "enum": [
9943
+ "draft",
9944
+ "active",
9945
+ "superseded",
9946
+ "archived"
9947
+ ]
9948
+ },
9949
+ "author": {
9950
+ "anyOf": [
9951
+ {
9952
+ "type": "object",
9953
+ "properties": {
9954
+ "id": {
9955
+ "type": "number"
9956
+ },
9957
+ "name": {
9958
+ "type": [
9959
+ "string",
9960
+ "null"
9961
+ ]
9962
+ },
9963
+ "email": {
9964
+ "type": "string"
9965
+ }
9966
+ },
9967
+ "required": [
9968
+ "id",
9969
+ "name",
9970
+ "email"
9971
+ ]
9972
+ },
9973
+ {
9974
+ "type": "null"
9975
+ }
9976
+ ]
9977
+ },
9978
+ "backend": {
9979
+ "type": "string"
9980
+ },
9981
+ "model": {
9982
+ "type": "string"
9983
+ },
9984
+ "branch": {
9985
+ "type": [
9986
+ "string",
9987
+ "null"
9988
+ ]
9989
+ },
9990
+ "baseCommit": {
9991
+ "type": [
9992
+ "string",
9993
+ "null"
9994
+ ]
9995
+ },
9996
+ "paths": {
9997
+ "type": "array",
9998
+ "items": {
9999
+ "type": "string"
10000
+ }
10001
+ },
10002
+ "symbols": {
10003
+ "type": "array",
10004
+ "items": {
10005
+ "type": "string"
10006
+ }
10007
+ },
10008
+ "supersedes": {
10009
+ "type": [
10010
+ "string",
10011
+ "null"
10012
+ ]
10013
+ },
10014
+ "supersededBy": {
10015
+ "type": [
10016
+ "string",
10017
+ "null"
10018
+ ]
10019
+ },
10020
+ "anchors": {
10021
+ "type": "array",
10022
+ "items": {
10023
+ "type": "object",
10024
+ "properties": {
10025
+ "sha": {
10026
+ "type": "string"
10027
+ },
10028
+ "kind": {
10029
+ "type": "string",
10030
+ "enum": [
10031
+ "commit",
10032
+ "merge"
10033
+ ]
10034
+ },
10035
+ "pullRequest": {
10036
+ "anyOf": [
10037
+ {
10038
+ "type": "integer",
10039
+ "minimum": -9007199254740991,
10040
+ "maximum": 9007199254740991
10041
+ },
10042
+ {
10043
+ "type": "null"
10044
+ }
10045
+ ]
10046
+ },
10047
+ "pullRequestState": {
10048
+ "anyOf": [
10049
+ {
10050
+ "type": "string",
10051
+ "enum": [
10052
+ "open",
10053
+ "merged",
10054
+ "closed"
10055
+ ]
10056
+ },
10057
+ {
10058
+ "type": "null"
10059
+ }
10060
+ ]
10061
+ },
10062
+ "baseBranch": {
10063
+ "type": [
10064
+ "string",
10065
+ "null"
10066
+ ]
10067
+ }
10068
+ },
10069
+ "required": [
10070
+ "sha",
10071
+ "kind",
10072
+ "pullRequest",
10073
+ "pullRequestState",
10074
+ "baseBranch"
10075
+ ]
10076
+ }
10077
+ },
10078
+ "createdAt": {
10079
+ "type": "string"
10080
+ },
10081
+ "updatedAt": {
10082
+ "type": "string"
10083
+ },
10084
+ "version": {
10085
+ "type": "string"
10086
+ },
10087
+ "state": {
10088
+ "type": "string",
10089
+ "enum": [
10090
+ "binding",
10091
+ "not-pulled",
10092
+ "other-branch",
10093
+ "dropped",
10094
+ "draft"
10095
+ ]
10096
+ }
10097
+ },
10098
+ "required": [
10099
+ "id",
10100
+ "title",
10101
+ "decision",
10102
+ "reason",
10103
+ "turnedDown",
10104
+ "origin",
10105
+ "status",
10106
+ "author",
10107
+ "backend",
10108
+ "model",
10109
+ "branch",
10110
+ "baseCommit",
10111
+ "paths",
10112
+ "symbols",
10113
+ "supersedes",
10114
+ "supersededBy",
10115
+ "anchors",
10116
+ "createdAt",
10117
+ "updatedAt",
10118
+ "version",
10119
+ "state"
10120
+ ]
10121
+ }
10122
+ },
10123
+ "counts": {
10124
+ "type": "object",
10125
+ "propertyNames": {
10126
+ "type": "string",
10127
+ "enum": [
10128
+ "binding",
10129
+ "not-pulled",
10130
+ "other-branch",
10131
+ "dropped",
10132
+ "draft"
10133
+ ]
10134
+ },
10135
+ "additionalProperties": {
10136
+ "type": "integer",
10137
+ "minimum": -9007199254740991,
10138
+ "maximum": 9007199254740991
10139
+ },
10140
+ "required": [
10141
+ "binding",
10142
+ "not-pulled",
10143
+ "other-branch",
10144
+ "dropped",
10145
+ "draft"
10146
+ ]
10147
+ }
8105
10148
  },
8106
- "additionalProperties": {
8107
- "type": "string",
8108
- "enum": [
8109
- "liked",
8110
- "disliked"
8111
- ]
8112
- }
10149
+ "required": [
10150
+ "decisions",
10151
+ "counts"
10152
+ ]
8113
10153
  }
8114
10154
  },
8115
10155
  "required": [
@@ -8498,6 +10538,9 @@
8498
10538
  "behind": {
8499
10539
  "type": "number"
8500
10540
  },
10541
+ "upstream": {
10542
+ "type": "boolean"
10543
+ },
8501
10544
  "repo": {
8502
10545
  "$ref": "#/$defs/Repo"
8503
10546
  }
@@ -9524,6 +11567,128 @@
9524
11567
  "type",
9525
11568
  "agent"
9526
11569
  ]
11570
+ },
11571
+ {
11572
+ "type": "object",
11573
+ "properties": {
11574
+ "type": {
11575
+ "type": "string",
11576
+ "const": "decision"
11577
+ },
11578
+ "decision": {
11579
+ "type": "string"
11580
+ },
11581
+ "title": {
11582
+ "type": "string"
11583
+ },
11584
+ "origin": {
11585
+ "type": "string",
11586
+ "enum": [
11587
+ "asked",
11588
+ "requested",
11589
+ "agent"
11590
+ ]
11591
+ }
11592
+ },
11593
+ "required": [
11594
+ "type",
11595
+ "decision",
11596
+ "title",
11597
+ "origin"
11598
+ ]
11599
+ },
11600
+ {
11601
+ "type": "object",
11602
+ "properties": {
11603
+ "type": {
11604
+ "type": "string",
11605
+ "const": "decision-deleted"
11606
+ },
11607
+ "decision": {
11608
+ "type": "string"
11609
+ }
11610
+ },
11611
+ "required": [
11612
+ "type",
11613
+ "decision"
11614
+ ]
11615
+ },
11616
+ {
11617
+ "type": "object",
11618
+ "properties": {
11619
+ "type": {
11620
+ "type": "string",
11621
+ "const": "decision-kept"
11622
+ },
11623
+ "decision": {
11624
+ "type": "string"
11625
+ },
11626
+ "title": {
11627
+ "type": "string"
11628
+ },
11629
+ "origin": {
11630
+ "type": "string",
11631
+ "enum": [
11632
+ "asked",
11633
+ "requested",
11634
+ "agent"
11635
+ ]
11636
+ },
11637
+ "by": {
11638
+ "type": "string"
11639
+ },
11640
+ "madeAt": {
11641
+ "type": "string"
11642
+ }
11643
+ },
11644
+ "required": [
11645
+ "type",
11646
+ "decision",
11647
+ "title",
11648
+ "origin",
11649
+ "by"
11650
+ ]
11651
+ },
11652
+ {
11653
+ "type": "object",
11654
+ "properties": {
11655
+ "type": {
11656
+ "type": "string",
11657
+ "const": "decision-elsewhere"
11658
+ },
11659
+ "decision": {
11660
+ "type": "string"
11661
+ },
11662
+ "title": {
11663
+ "type": "string"
11664
+ },
11665
+ "origin": {
11666
+ "type": "string",
11667
+ "enum": [
11668
+ "asked",
11669
+ "requested",
11670
+ "agent"
11671
+ ]
11672
+ },
11673
+ "by": {
11674
+ "type": "string"
11675
+ },
11676
+ "madeAt": {
11677
+ "type": "string"
11678
+ },
11679
+ "elsewhere": {
11680
+ "$ref": "#/$defs/DecisionElsewhere"
11681
+ }
11682
+ },
11683
+ "required": [
11684
+ "type",
11685
+ "decision",
11686
+ "title",
11687
+ "origin",
11688
+ "by",
11689
+ "madeAt",
11690
+ "elsewhere"
11691
+ ]
9527
11692
  }
9528
11693
  ]
9529
11694
  },
@@ -10741,13 +12906,277 @@
10741
12906
  "propertyNames": {
10742
12907
  "type": "string"
10743
12908
  },
10744
- "additionalProperties": {
10745
- "type": "string",
10746
- "enum": [
10747
- "liked",
10748
- "disliked"
10749
- ]
10750
- }
12909
+ "additionalProperties": {
12910
+ "type": "string",
12911
+ "enum": [
12912
+ "liked",
12913
+ "disliked"
12914
+ ]
12915
+ }
12916
+ }
12917
+ },
12918
+ "required": [
12919
+ "session",
12920
+ "name"
12921
+ ]
12922
+ },
12923
+ {
12924
+ "type": "object",
12925
+ "properties": {
12926
+ "session": {
12927
+ "type": "string"
12928
+ },
12929
+ "name": {
12930
+ "type": "string",
12931
+ "const": "decisions"
12932
+ },
12933
+ "value": {
12934
+ "type": "object",
12935
+ "properties": {
12936
+ "decisions": {
12937
+ "type": "array",
12938
+ "items": {
12939
+ "type": "object",
12940
+ "properties": {
12941
+ "id": {
12942
+ "type": "string"
12943
+ },
12944
+ "title": {
12945
+ "type": "string"
12946
+ },
12947
+ "decision": {
12948
+ "type": "string"
12949
+ },
12950
+ "reason": {
12951
+ "type": "string"
12952
+ },
12953
+ "turnedDown": {
12954
+ "type": [
12955
+ "string",
12956
+ "null"
12957
+ ]
12958
+ },
12959
+ "origin": {
12960
+ "type": "string",
12961
+ "enum": [
12962
+ "asked",
12963
+ "requested",
12964
+ "agent"
12965
+ ]
12966
+ },
12967
+ "status": {
12968
+ "type": "string",
12969
+ "enum": [
12970
+ "draft",
12971
+ "active",
12972
+ "superseded",
12973
+ "archived"
12974
+ ]
12975
+ },
12976
+ "author": {
12977
+ "anyOf": [
12978
+ {
12979
+ "type": "object",
12980
+ "properties": {
12981
+ "id": {
12982
+ "type": "number"
12983
+ },
12984
+ "name": {
12985
+ "type": [
12986
+ "string",
12987
+ "null"
12988
+ ]
12989
+ },
12990
+ "email": {
12991
+ "type": "string"
12992
+ }
12993
+ },
12994
+ "required": [
12995
+ "id",
12996
+ "name",
12997
+ "email"
12998
+ ]
12999
+ },
13000
+ {
13001
+ "type": "null"
13002
+ }
13003
+ ]
13004
+ },
13005
+ "backend": {
13006
+ "type": "string"
13007
+ },
13008
+ "model": {
13009
+ "type": "string"
13010
+ },
13011
+ "branch": {
13012
+ "type": [
13013
+ "string",
13014
+ "null"
13015
+ ]
13016
+ },
13017
+ "baseCommit": {
13018
+ "type": [
13019
+ "string",
13020
+ "null"
13021
+ ]
13022
+ },
13023
+ "paths": {
13024
+ "type": "array",
13025
+ "items": {
13026
+ "type": "string"
13027
+ }
13028
+ },
13029
+ "symbols": {
13030
+ "type": "array",
13031
+ "items": {
13032
+ "type": "string"
13033
+ }
13034
+ },
13035
+ "supersedes": {
13036
+ "type": [
13037
+ "string",
13038
+ "null"
13039
+ ]
13040
+ },
13041
+ "supersededBy": {
13042
+ "type": [
13043
+ "string",
13044
+ "null"
13045
+ ]
13046
+ },
13047
+ "anchors": {
13048
+ "type": "array",
13049
+ "items": {
13050
+ "type": "object",
13051
+ "properties": {
13052
+ "sha": {
13053
+ "type": "string"
13054
+ },
13055
+ "kind": {
13056
+ "type": "string",
13057
+ "enum": [
13058
+ "commit",
13059
+ "merge"
13060
+ ]
13061
+ },
13062
+ "pullRequest": {
13063
+ "anyOf": [
13064
+ {
13065
+ "type": "integer",
13066
+ "minimum": -9007199254740991,
13067
+ "maximum": 9007199254740991
13068
+ },
13069
+ {
13070
+ "type": "null"
13071
+ }
13072
+ ]
13073
+ },
13074
+ "pullRequestState": {
13075
+ "anyOf": [
13076
+ {
13077
+ "type": "string",
13078
+ "enum": [
13079
+ "open",
13080
+ "merged",
13081
+ "closed"
13082
+ ]
13083
+ },
13084
+ {
13085
+ "type": "null"
13086
+ }
13087
+ ]
13088
+ },
13089
+ "baseBranch": {
13090
+ "type": [
13091
+ "string",
13092
+ "null"
13093
+ ]
13094
+ }
13095
+ },
13096
+ "required": [
13097
+ "sha",
13098
+ "kind",
13099
+ "pullRequest",
13100
+ "pullRequestState",
13101
+ "baseBranch"
13102
+ ]
13103
+ }
13104
+ },
13105
+ "createdAt": {
13106
+ "type": "string"
13107
+ },
13108
+ "updatedAt": {
13109
+ "type": "string"
13110
+ },
13111
+ "version": {
13112
+ "type": "string"
13113
+ },
13114
+ "state": {
13115
+ "type": "string",
13116
+ "enum": [
13117
+ "binding",
13118
+ "not-pulled",
13119
+ "other-branch",
13120
+ "dropped",
13121
+ "draft"
13122
+ ]
13123
+ }
13124
+ },
13125
+ "required": [
13126
+ "id",
13127
+ "title",
13128
+ "decision",
13129
+ "reason",
13130
+ "turnedDown",
13131
+ "origin",
13132
+ "status",
13133
+ "author",
13134
+ "backend",
13135
+ "model",
13136
+ "branch",
13137
+ "baseCommit",
13138
+ "paths",
13139
+ "symbols",
13140
+ "supersedes",
13141
+ "supersededBy",
13142
+ "anchors",
13143
+ "createdAt",
13144
+ "updatedAt",
13145
+ "version",
13146
+ "state"
13147
+ ]
13148
+ }
13149
+ },
13150
+ "counts": {
13151
+ "type": "object",
13152
+ "propertyNames": {
13153
+ "type": "string",
13154
+ "enum": [
13155
+ "binding",
13156
+ "not-pulled",
13157
+ "other-branch",
13158
+ "dropped",
13159
+ "draft"
13160
+ ]
13161
+ },
13162
+ "additionalProperties": {
13163
+ "type": "integer",
13164
+ "minimum": -9007199254740991,
13165
+ "maximum": 9007199254740991
13166
+ },
13167
+ "required": [
13168
+ "binding",
13169
+ "not-pulled",
13170
+ "other-branch",
13171
+ "dropped",
13172
+ "draft"
13173
+ ]
13174
+ }
13175
+ },
13176
+ "required": [
13177
+ "decisions",
13178
+ "counts"
13179
+ ]
10751
13180
  }
10752
13181
  },
10753
13182
  "required": [
@@ -10962,111 +13391,526 @@
10962
13391
  "superadmin"
10963
13392
  ]
10964
13393
  },
10965
- "activated": {
13394
+ "activated": {
13395
+ "type": "boolean"
13396
+ },
13397
+ "workspaces": {
13398
+ "type": "array",
13399
+ "items": {
13400
+ "type": "object",
13401
+ "properties": {
13402
+ "id": {
13403
+ "type": "string"
13404
+ },
13405
+ "name": {
13406
+ "type": "string"
13407
+ },
13408
+ "slug": {
13409
+ "type": "string"
13410
+ },
13411
+ "role": {
13412
+ "type": "string",
13413
+ "enum": [
13414
+ "owner",
13415
+ "admin",
13416
+ "member"
13417
+ ]
13418
+ }
13419
+ },
13420
+ "required": [
13421
+ "id",
13422
+ "name",
13423
+ "slug",
13424
+ "role"
13425
+ ]
13426
+ }
13427
+ }
13428
+ },
13429
+ "required": [
13430
+ "id",
13431
+ "email",
13432
+ "name",
13433
+ "avatarUrl"
13434
+ ]
13435
+ },
13436
+ {
13437
+ "type": "null"
13438
+ }
13439
+ ]
13440
+ }
13441
+ },
13442
+ "required": [
13443
+ "name"
13444
+ ]
13445
+ },
13446
+ {
13447
+ "type": "object",
13448
+ "properties": {
13449
+ "name": {
13450
+ "type": "string",
13451
+ "const": "signals"
13452
+ },
13453
+ "value": {
13454
+ "type": "boolean"
13455
+ }
13456
+ },
13457
+ "required": [
13458
+ "name"
13459
+ ]
13460
+ },
13461
+ {
13462
+ "type": "object",
13463
+ "properties": {
13464
+ "name": {
13465
+ "type": "string",
13466
+ "const": "notifications"
13467
+ },
13468
+ "value": {
13469
+ "type": "boolean"
13470
+ }
13471
+ },
13472
+ "required": [
13473
+ "name"
13474
+ ]
13475
+ },
13476
+ {
13477
+ "type": "object",
13478
+ "properties": {
13479
+ "name": {
13480
+ "type": "string",
13481
+ "const": "claudeSetupOffered"
13482
+ },
13483
+ "value": {
13484
+ "type": "boolean"
13485
+ }
13486
+ },
13487
+ "required": [
13488
+ "name"
13489
+ ]
13490
+ },
13491
+ {
13492
+ "type": "object",
13493
+ "properties": {
13494
+ "name": {
13495
+ "type": "string",
13496
+ "const": "announcements"
13497
+ },
13498
+ "value": {
13499
+ "type": "array",
13500
+ "items": {
13501
+ "type": "object",
13502
+ "properties": {
13503
+ "id": {
13504
+ "type": "number"
13505
+ },
13506
+ "text": {
13507
+ "type": "string"
13508
+ },
13509
+ "link": {
13510
+ "type": "object",
13511
+ "properties": {
13512
+ "url": {
13513
+ "type": "string"
13514
+ },
13515
+ "label": {
13516
+ "type": "string"
13517
+ }
13518
+ },
13519
+ "required": [
13520
+ "url",
13521
+ "label"
13522
+ ]
13523
+ }
13524
+ },
13525
+ "required": [
13526
+ "id",
13527
+ "text"
13528
+ ]
13529
+ }
13530
+ }
13531
+ },
13532
+ "required": [
13533
+ "name"
13534
+ ]
13535
+ },
13536
+ {
13537
+ "type": "object",
13538
+ "properties": {
13539
+ "name": {
13540
+ "type": "string",
13541
+ "const": "team"
13542
+ },
13543
+ "value": {
13544
+ "oneOf": [
13545
+ {
13546
+ "type": "object",
13547
+ "properties": {
13548
+ "state": {
13549
+ "type": "string",
13550
+ "const": "unlinked"
13551
+ }
13552
+ },
13553
+ "required": [
13554
+ "state"
13555
+ ]
13556
+ },
13557
+ {
13558
+ "type": "object",
13559
+ "properties": {
13560
+ "state": {
13561
+ "type": "string",
13562
+ "const": "invalid"
13563
+ },
13564
+ "problem": {
13565
+ "type": "string"
13566
+ }
13567
+ },
13568
+ "required": [
13569
+ "state",
13570
+ "problem"
13571
+ ]
13572
+ },
13573
+ {
13574
+ "type": "object",
13575
+ "properties": {
13576
+ "state": {
13577
+ "type": "string",
13578
+ "const": "signed-out"
13579
+ }
13580
+ },
13581
+ "required": [
13582
+ "state"
13583
+ ]
13584
+ },
13585
+ {
13586
+ "type": "object",
13587
+ "properties": {
13588
+ "state": {
13589
+ "type": "string",
13590
+ "const": "member"
13591
+ },
13592
+ "role": {
13593
+ "type": "string",
13594
+ "enum": [
13595
+ "owner",
13596
+ "admin",
13597
+ "member"
13598
+ ]
13599
+ },
13600
+ "workspace": {
13601
+ "type": "object",
13602
+ "properties": {
13603
+ "id": {
13604
+ "type": "string"
13605
+ },
13606
+ "name": {
13607
+ "type": "string"
13608
+ },
13609
+ "slug": {
13610
+ "type": "string"
13611
+ }
13612
+ },
13613
+ "required": [
13614
+ "id",
13615
+ "name",
13616
+ "slug"
13617
+ ]
13618
+ },
13619
+ "project": {
13620
+ "type": "object",
13621
+ "properties": {
13622
+ "id": {
13623
+ "type": "string"
13624
+ },
13625
+ "name": {
13626
+ "type": "string"
13627
+ },
13628
+ "remoteUrl": {
13629
+ "type": "string"
13630
+ }
13631
+ },
13632
+ "required": [
13633
+ "id",
13634
+ "name"
13635
+ ]
13636
+ }
13637
+ },
13638
+ "required": [
13639
+ "state",
13640
+ "role",
13641
+ "workspace",
13642
+ "project"
13643
+ ]
13644
+ },
13645
+ {
13646
+ "type": "object",
13647
+ "properties": {
13648
+ "state": {
13649
+ "type": "string",
13650
+ "const": "requested"
13651
+ },
13652
+ "workspace": {
13653
+ "type": "object",
13654
+ "properties": {
13655
+ "name": {
13656
+ "type": "string"
13657
+ }
13658
+ },
13659
+ "required": [
13660
+ "name"
13661
+ ]
13662
+ }
13663
+ },
13664
+ "required": [
13665
+ "state",
13666
+ "workspace"
13667
+ ]
13668
+ },
13669
+ {
13670
+ "type": "object",
13671
+ "properties": {
13672
+ "state": {
13673
+ "type": "string",
13674
+ "const": "no-access"
13675
+ },
13676
+ "workspace": {
13677
+ "type": "object",
13678
+ "properties": {
13679
+ "name": {
13680
+ "type": "string"
13681
+ }
13682
+ },
13683
+ "required": [
13684
+ "name"
13685
+ ]
13686
+ },
13687
+ "canRequest": {
10966
13688
  "type": "boolean"
10967
13689
  }
10968
13690
  },
10969
13691
  "required": [
10970
- "id",
10971
- "email",
10972
- "name",
10973
- "avatarUrl"
13692
+ "state",
13693
+ "workspace",
13694
+ "canRequest"
10974
13695
  ]
10975
13696
  },
10976
13697
  {
10977
- "type": "null"
10978
- }
10979
- ]
10980
- }
10981
- },
10982
- "required": [
10983
- "name"
10984
- ]
10985
- },
10986
- {
10987
- "type": "object",
10988
- "properties": {
10989
- "name": {
10990
- "type": "string",
10991
- "const": "signals"
10992
- },
10993
- "value": {
10994
- "type": "boolean"
10995
- }
10996
- },
10997
- "required": [
10998
- "name"
10999
- ]
11000
- },
11001
- {
11002
- "type": "object",
11003
- "properties": {
11004
- "name": {
11005
- "type": "string",
11006
- "const": "notifications"
11007
- },
11008
- "value": {
11009
- "type": "boolean"
11010
- }
11011
- },
11012
- "required": [
11013
- "name"
11014
- ]
11015
- },
11016
- {
11017
- "type": "object",
11018
- "properties": {
11019
- "name": {
11020
- "type": "string",
11021
- "const": "claudeSetupOffered"
11022
- },
11023
- "value": {
11024
- "type": "boolean"
11025
- }
11026
- },
11027
- "required": [
11028
- "name"
11029
- ]
11030
- },
11031
- {
11032
- "type": "object",
11033
- "properties": {
11034
- "name": {
11035
- "type": "string",
11036
- "const": "announcements"
11037
- },
11038
- "value": {
11039
- "type": "array",
11040
- "items": {
11041
- "type": "object",
11042
- "properties": {
11043
- "id": {
11044
- "type": "number"
13698
+ "type": "object",
13699
+ "properties": {
13700
+ "state": {
13701
+ "type": "string",
13702
+ "const": "not-found"
13703
+ }
11045
13704
  },
11046
- "text": {
11047
- "type": "string"
13705
+ "required": [
13706
+ "state"
13707
+ ]
13708
+ },
13709
+ {
13710
+ "type": "object",
13711
+ "properties": {
13712
+ "state": {
13713
+ "type": "string",
13714
+ "const": "mismatch"
13715
+ }
11048
13716
  },
11049
- "link": {
11050
- "type": "object",
11051
- "properties": {
11052
- "url": {
11053
- "type": "string"
11054
- },
11055
- "label": {
11056
- "type": "string"
11057
- }
11058
- },
11059
- "required": [
11060
- "url",
11061
- "label"
11062
- ]
11063
- }
13717
+ "required": [
13718
+ "state"
13719
+ ]
11064
13720
  },
11065
- "required": [
11066
- "id",
11067
- "text"
11068
- ]
11069
- }
13721
+ {
13722
+ "type": "object",
13723
+ "properties": {
13724
+ "state": {
13725
+ "type": "string",
13726
+ "const": "offline"
13727
+ },
13728
+ "known": {
13729
+ "oneOf": [
13730
+ {
13731
+ "type": "object",
13732
+ "properties": {
13733
+ "state": {
13734
+ "type": "string",
13735
+ "const": "unlinked"
13736
+ }
13737
+ },
13738
+ "required": [
13739
+ "state"
13740
+ ]
13741
+ },
13742
+ {
13743
+ "type": "object",
13744
+ "properties": {
13745
+ "state": {
13746
+ "type": "string",
13747
+ "const": "invalid"
13748
+ },
13749
+ "problem": {
13750
+ "type": "string"
13751
+ }
13752
+ },
13753
+ "required": [
13754
+ "state",
13755
+ "problem"
13756
+ ]
13757
+ },
13758
+ {
13759
+ "type": "object",
13760
+ "properties": {
13761
+ "state": {
13762
+ "type": "string",
13763
+ "const": "signed-out"
13764
+ }
13765
+ },
13766
+ "required": [
13767
+ "state"
13768
+ ]
13769
+ },
13770
+ {
13771
+ "type": "object",
13772
+ "properties": {
13773
+ "state": {
13774
+ "type": "string",
13775
+ "const": "member"
13776
+ },
13777
+ "role": {
13778
+ "type": "string",
13779
+ "enum": [
13780
+ "owner",
13781
+ "admin",
13782
+ "member"
13783
+ ]
13784
+ },
13785
+ "workspace": {
13786
+ "type": "object",
13787
+ "properties": {
13788
+ "id": {
13789
+ "type": "string"
13790
+ },
13791
+ "name": {
13792
+ "type": "string"
13793
+ },
13794
+ "slug": {
13795
+ "type": "string"
13796
+ }
13797
+ },
13798
+ "required": [
13799
+ "id",
13800
+ "name",
13801
+ "slug"
13802
+ ]
13803
+ },
13804
+ "project": {
13805
+ "type": "object",
13806
+ "properties": {
13807
+ "id": {
13808
+ "type": "string"
13809
+ },
13810
+ "name": {
13811
+ "type": "string"
13812
+ },
13813
+ "remoteUrl": {
13814
+ "type": "string"
13815
+ }
13816
+ },
13817
+ "required": [
13818
+ "id",
13819
+ "name"
13820
+ ]
13821
+ }
13822
+ },
13823
+ "required": [
13824
+ "state",
13825
+ "role",
13826
+ "workspace",
13827
+ "project"
13828
+ ]
13829
+ },
13830
+ {
13831
+ "type": "object",
13832
+ "properties": {
13833
+ "state": {
13834
+ "type": "string",
13835
+ "const": "requested"
13836
+ },
13837
+ "workspace": {
13838
+ "type": "object",
13839
+ "properties": {
13840
+ "name": {
13841
+ "type": "string"
13842
+ }
13843
+ },
13844
+ "required": [
13845
+ "name"
13846
+ ]
13847
+ }
13848
+ },
13849
+ "required": [
13850
+ "state",
13851
+ "workspace"
13852
+ ]
13853
+ },
13854
+ {
13855
+ "type": "object",
13856
+ "properties": {
13857
+ "state": {
13858
+ "type": "string",
13859
+ "const": "no-access"
13860
+ },
13861
+ "workspace": {
13862
+ "type": "object",
13863
+ "properties": {
13864
+ "name": {
13865
+ "type": "string"
13866
+ }
13867
+ },
13868
+ "required": [
13869
+ "name"
13870
+ ]
13871
+ },
13872
+ "canRequest": {
13873
+ "type": "boolean"
13874
+ }
13875
+ },
13876
+ "required": [
13877
+ "state",
13878
+ "workspace",
13879
+ "canRequest"
13880
+ ]
13881
+ },
13882
+ {
13883
+ "type": "object",
13884
+ "properties": {
13885
+ "state": {
13886
+ "type": "string",
13887
+ "const": "not-found"
13888
+ }
13889
+ },
13890
+ "required": [
13891
+ "state"
13892
+ ]
13893
+ },
13894
+ {
13895
+ "type": "object",
13896
+ "properties": {
13897
+ "state": {
13898
+ "type": "string",
13899
+ "const": "mismatch"
13900
+ }
13901
+ },
13902
+ "required": [
13903
+ "state"
13904
+ ]
13905
+ }
13906
+ ]
13907
+ }
13908
+ },
13909
+ "required": [
13910
+ "state"
13911
+ ]
13912
+ }
13913
+ ]
11070
13914
  }
11071
13915
  },
11072
13916
  "required": [
@@ -11325,6 +14169,30 @@
11325
14169
  "required": [
11326
14170
  "id"
11327
14171
  ]
14172
+ },
14173
+ {
14174
+ "type": "object",
14175
+ "properties": {
14176
+ "id": {
14177
+ "type": "string",
14178
+ "const": "decisions"
14179
+ }
14180
+ },
14181
+ "required": [
14182
+ "id"
14183
+ ]
14184
+ },
14185
+ {
14186
+ "type": "object",
14187
+ "properties": {
14188
+ "id": {
14189
+ "type": "string",
14190
+ "const": "link"
14191
+ }
14192
+ },
14193
+ "required": [
14194
+ "id"
14195
+ ]
11328
14196
  }
11329
14197
  ]
11330
14198
  },