aimeat 1.33.2 → 1.35.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (328) hide show
  1. package/dist/locales/en.json +437 -15
  2. package/dist/locales/fi.json +437 -15
  3. package/dist/public/cortex-bundled/aimeat-charts.js +3 -3
  4. package/dist/public/cortex-bundled/aimeat-charts.yaml +3 -3
  5. package/dist/public/cortex-bundled/aimeat-i18n.js +123 -0
  6. package/dist/public/cortex-bundled/aimeat-i18n.yaml +64 -0
  7. package/dist/public/css/views/landing.css +2 -0
  8. package/dist/public/css/views/secretary.css +464 -2
  9. package/dist/public/js/i18n.js +9 -0
  10. package/dist/public/js/services/apps.js +4 -2
  11. package/dist/public/js/services/memory.js +9 -3
  12. package/dist/public/js/services/offers.js +1 -1
  13. package/dist/public/js/services/organisms.js +49 -17
  14. package/dist/public/js/services/secretary-helpers.js +266 -17
  15. package/dist/public/js/services/secretary-policy.js +28 -2
  16. package/dist/public/js/services/secretary-rules.js +70 -0
  17. package/dist/public/js/theme.js +20 -0
  18. package/dist/public/lib/VENDORED-STYLING.md +31 -0
  19. package/dist/public/lib/aimeat-daisyui-bridge.css +48 -0
  20. package/dist/public/lib/chartjs@4.js +14 -0
  21. package/dist/public/lib/daisyui@5.css +7 -0
  22. package/dist/public/lib/tailwindcss@4.js +8 -0
  23. package/dist/public/llms-template.txt +9 -6
  24. package/dist/public/showroom.html +104 -0
  25. package/dist/public/showroom.js +247 -0
  26. package/dist/public/spa.html +18 -16
  27. package/dist/public/views/aimeat-os.js +3 -2
  28. package/dist/public/views/landing.js +50 -6
  29. package/dist/public/views/profile/agents/agent-card.js +13 -4
  30. package/dist/public/views/profile/agents/state-detector.js +6 -0
  31. package/dist/public/views/profile/agents/tab-integration.js +11 -2
  32. package/dist/public/views/profile/apps-tab.js +46 -0
  33. package/dist/public/views/profile/extensions-tab.js +4 -0
  34. package/dist/public/views/profile/inbox-tab.js +1 -1
  35. package/dist/public/views/profile/landing-page.js +8 -3
  36. package/dist/public/views/profile/memory-tab.js +37 -6
  37. package/dist/public/views/profile/organisms/home.js +32 -0
  38. package/dist/public/views/profile/organisms/workspace-list.js +36 -5
  39. package/dist/public/views/profile/organisms/workspace.js +29 -4
  40. package/dist/public/views/profile/organisms-tab.js +61 -8
  41. package/dist/public/views/secretary/calendar.js +327 -0
  42. package/dist/public/views/secretary/cards-reach.js +16 -17
  43. package/dist/public/views/secretary/cards.js +217 -79
  44. package/dist/public/views/secretary/dashboard.js +617 -0
  45. package/dist/public/views/secretary/quality.js +156 -0
  46. package/dist/public/views/secretary/use-autonomy.js +17 -2
  47. package/dist/public/views/secretary/use-freshness.js +50 -0
  48. package/dist/public/views/secretary/use-intake.js +23 -4
  49. package/dist/public/views/secretary/use-layout.js +122 -0
  50. package/dist/public/views/secretary/use-quick-actions.js +98 -0
  51. package/dist/public/views/secretary/use-specialists.js +103 -0
  52. package/dist/public/views/secretary/use-triggers.js +159 -0
  53. package/dist/public/views/secretary/use-whats-next.js +340 -0
  54. package/dist/public/views/secretary/workflow-design.js +112 -0
  55. package/dist/public/views/secretary.js +836 -44
  56. package/dist/scripts/check-no-max-tokens.d.ts +2 -0
  57. package/dist/scripts/check-no-max-tokens.d.ts.map +1 -0
  58. package/dist/scripts/check-no-max-tokens.js +71 -0
  59. package/dist/scripts/check-no-max-tokens.js.map +1 -0
  60. package/dist/src/cli/connect/mcp/tools/organisms.d.ts +2 -0
  61. package/dist/src/cli/connect/mcp/tools/organisms.d.ts.map +1 -1
  62. package/dist/src/cli/connect/mcp/tools/organisms.js +9 -1
  63. package/dist/src/cli/connect/mcp/tools/organisms.js.map +1 -1
  64. package/dist/src/cli/connect/onboarding-prompt.d.ts +3 -0
  65. package/dist/src/cli/connect/onboarding-prompt.d.ts.map +1 -1
  66. package/dist/src/cli/connect/onboarding-prompt.js +10 -3
  67. package/dist/src/cli/connect/onboarding-prompt.js.map +1 -1
  68. package/dist/src/data/aimeat-iam-package.d.ts +25 -0
  69. package/dist/src/data/aimeat-iam-package.d.ts.map +1 -0
  70. package/dist/src/data/aimeat-iam-package.js +312 -0
  71. package/dist/src/data/aimeat-iam-package.js.map +1 -0
  72. package/dist/src/data/aimeat-marketplace-package.d.ts +25 -0
  73. package/dist/src/data/aimeat-marketplace-package.d.ts.map +1 -0
  74. package/dist/src/data/aimeat-marketplace-package.js +231 -0
  75. package/dist/src/data/aimeat-marketplace-package.js.map +1 -0
  76. package/dist/src/data/app-templates.d.ts +48 -0
  77. package/dist/src/data/app-templates.d.ts.map +1 -0
  78. package/dist/src/data/app-templates.js +856 -0
  79. package/dist/src/data/app-templates.js.map +1 -0
  80. package/dist/src/data/example-packages.d.ts.map +1 -1
  81. package/dist/src/data/example-packages.js +3 -1
  82. package/dist/src/data/example-packages.js.map +1 -1
  83. package/dist/src/generated/api-types.d.ts +689 -7
  84. package/dist/src/generated/api-types.d.ts.map +1 -1
  85. package/dist/src/generated/prisma-postgres/edge.js +10 -3
  86. package/dist/src/generated/prisma-postgres/index-browser.js +7 -0
  87. package/dist/src/generated/prisma-postgres/index.d.ts +205 -2
  88. package/dist/src/generated/prisma-postgres/index.js +10 -3
  89. package/dist/src/generated/prisma-postgres/package.json +1 -1
  90. package/dist/src/generated/prisma-postgres/schema.prisma +23 -13
  91. package/dist/src/generated/prisma-postgres/wasm.js +10 -3
  92. package/dist/src/mcp/agent-onboarding.d.ts +4 -0
  93. package/dist/src/mcp/agent-onboarding.d.ts.map +1 -1
  94. package/dist/src/mcp/agent-onboarding.js +28 -2
  95. package/dist/src/mcp/agent-onboarding.js.map +1 -1
  96. package/dist/src/mcp/annotations.d.ts.map +1 -1
  97. package/dist/src/mcp/annotations.js +1 -0
  98. package/dist/src/mcp/annotations.js.map +1 -1
  99. package/dist/src/mcp/catalog/definitions.d.ts.map +1 -1
  100. package/dist/src/mcp/catalog/definitions.js +16 -1
  101. package/dist/src/mcp/catalog/definitions.js.map +1 -1
  102. package/dist/src/mcp/catalog/surfaces.js +3 -3
  103. package/dist/src/mcp/catalog/surfaces.js.map +1 -1
  104. package/dist/src/mcp/index.d.ts +3 -0
  105. package/dist/src/mcp/index.d.ts.map +1 -1
  106. package/dist/src/mcp/index.js +11 -0
  107. package/dist/src/mcp/index.js.map +1 -1
  108. package/dist/src/mcp/organisms.d.ts.map +1 -1
  109. package/dist/src/mcp/organisms.js +48 -8
  110. package/dist/src/mcp/organisms.js.map +1 -1
  111. package/dist/src/mcp/workspaces.d.ts.map +1 -1
  112. package/dist/src/mcp/workspaces.js +6 -4
  113. package/dist/src/mcp/workspaces.js.map +1 -1
  114. package/dist/src/models/agent-onboarding-schemas.d.ts +47 -0
  115. package/dist/src/models/agent-onboarding-schemas.d.ts.map +1 -1
  116. package/dist/src/models/agent-onboarding-schemas.js +117 -0
  117. package/dist/src/models/agent-onboarding-schemas.js.map +1 -1
  118. package/dist/src/models/offer-schemas.d.ts +8 -8
  119. package/dist/src/routes/agent-onboarding.d.ts +5 -0
  120. package/dist/src/routes/agent-onboarding.d.ts.map +1 -1
  121. package/dist/src/routes/agent-onboarding.js +21 -2
  122. package/dist/src/routes/agent-onboarding.js.map +1 -1
  123. package/dist/src/routes/ai.d.ts +8 -4
  124. package/dist/src/routes/ai.d.ts.map +1 -1
  125. package/dist/src/routes/ai.js +38 -14
  126. package/dist/src/routes/ai.js.map +1 -1
  127. package/dist/src/routes/app-grants.d.ts +2 -0
  128. package/dist/src/routes/app-grants.d.ts.map +1 -1
  129. package/dist/src/routes/app-grants.js +7 -1
  130. package/dist/src/routes/app-grants.js.map +1 -1
  131. package/dist/src/routes/app-templates.d.ts +16 -0
  132. package/dist/src/routes/app-templates.d.ts.map +1 -0
  133. package/dist/src/routes/app-templates.js +40 -0
  134. package/dist/src/routes/app-templates.js.map +1 -0
  135. package/dist/src/routes/apps.d.ts.map +1 -1
  136. package/dist/src/routes/apps.js +55 -5
  137. package/dist/src/routes/apps.js.map +1 -1
  138. package/dist/src/routes/auth.d.ts +3 -0
  139. package/dist/src/routes/auth.d.ts.map +1 -1
  140. package/dist/src/routes/auth.js +9 -4
  141. package/dist/src/routes/auth.js.map +1 -1
  142. package/dist/src/routes/bootstrap.d.ts.map +1 -1
  143. package/dist/src/routes/bootstrap.js +1 -0
  144. package/dist/src/routes/bootstrap.js.map +1 -1
  145. package/dist/src/routes/generator.d.ts.map +1 -1
  146. package/dist/src/routes/generator.js +3 -2
  147. package/dist/src/routes/generator.js.map +1 -1
  148. package/dist/src/routes/lib-ai.d.ts +0 -1
  149. package/dist/src/routes/lib-ai.d.ts.map +1 -1
  150. package/dist/src/routes/lib-ai.js +13 -6
  151. package/dist/src/routes/lib-ai.js.map +1 -1
  152. package/dist/src/routes/lib-header.d.ts +2 -0
  153. package/dist/src/routes/lib-header.d.ts.map +1 -1
  154. package/dist/src/routes/lib-header.js +7 -16
  155. package/dist/src/routes/lib-header.js.map +1 -1
  156. package/dist/src/routes/lib-markdown.d.ts +18 -0
  157. package/dist/src/routes/lib-markdown.d.ts.map +1 -0
  158. package/dist/src/routes/lib-markdown.js +236 -0
  159. package/dist/src/routes/lib-markdown.js.map +1 -0
  160. package/dist/src/routes/libs.d.ts +22 -0
  161. package/dist/src/routes/libs.d.ts.map +1 -1
  162. package/dist/src/routes/libs.js +133 -10
  163. package/dist/src/routes/libs.js.map +1 -1
  164. package/dist/src/routes/memory.d.ts.map +1 -1
  165. package/dist/src/routes/memory.js +21 -2
  166. package/dist/src/routes/memory.js.map +1 -1
  167. package/dist/src/routes/openrouter.d.ts +4 -0
  168. package/dist/src/routes/openrouter.d.ts.map +1 -1
  169. package/dist/src/routes/openrouter.js +17 -0
  170. package/dist/src/routes/openrouter.js.map +1 -1
  171. package/dist/src/routes/organisms.d.ts.map +1 -1
  172. package/dist/src/routes/organisms.js +107 -7
  173. package/dist/src/routes/organisms.js.map +1 -1
  174. package/dist/src/routes/portal.d.ts +9 -0
  175. package/dist/src/routes/portal.d.ts.map +1 -1
  176. package/dist/src/routes/portal.js +1 -1
  177. package/dist/src/routes/portal.js.map +1 -1
  178. package/dist/src/routes/public-stats.d.ts +3 -0
  179. package/dist/src/routes/public-stats.d.ts.map +1 -1
  180. package/dist/src/routes/public-stats.js +9 -2
  181. package/dist/src/routes/public-stats.js.map +1 -1
  182. package/dist/src/routes/secretary.d.ts +34 -0
  183. package/dist/src/routes/secretary.d.ts.map +1 -0
  184. package/dist/src/routes/secretary.js +311 -0
  185. package/dist/src/routes/secretary.js.map +1 -0
  186. package/dist/src/routes/specialists.d.ts.map +1 -1
  187. package/dist/src/routes/specialists.js +21 -0
  188. package/dist/src/routes/specialists.js.map +1 -1
  189. package/dist/src/routes/subdomains.js +1 -1
  190. package/dist/src/routes/subdomains.js.map +1 -1
  191. package/dist/src/routes/workflows.d.ts +9 -3
  192. package/dist/src/routes/workflows.d.ts.map +1 -1
  193. package/dist/src/routes/workflows.js +9 -3
  194. package/dist/src/routes/workflows.js.map +1 -1
  195. package/dist/src/server-bootstrap/routes-loader.d.ts.map +1 -1
  196. package/dist/src/server-bootstrap/routes-loader.js +4 -0
  197. package/dist/src/server-bootstrap/routes-loader.js.map +1 -1
  198. package/dist/src/server-bootstrap/service-init.d.ts.map +1 -1
  199. package/dist/src/server-bootstrap/service-init.js +7 -0
  200. package/dist/src/server-bootstrap/service-init.js.map +1 -1
  201. package/dist/src/server-bootstrap/static-files.d.ts +4 -0
  202. package/dist/src/server-bootstrap/static-files.d.ts.map +1 -1
  203. package/dist/src/server-bootstrap/static-files.js +18 -0
  204. package/dist/src/server-bootstrap/static-files.js.map +1 -1
  205. package/dist/src/services/archive.d.ts +74 -0
  206. package/dist/src/services/archive.d.ts.map +1 -0
  207. package/dist/src/services/archive.js +132 -0
  208. package/dist/src/services/archive.js.map +1 -0
  209. package/dist/src/services/cortex-seeder.d.ts +4 -1
  210. package/dist/src/services/cortex-seeder.d.ts.map +1 -1
  211. package/dist/src/services/cortex-seeder.js +25 -6
  212. package/dist/src/services/cortex-seeder.js.map +1 -1
  213. package/dist/src/services/directory.d.ts.map +1 -1
  214. package/dist/src/services/directory.js +3 -2
  215. package/dist/src/services/directory.js.map +1 -1
  216. package/dist/src/services/generator-prompt-seeds.d.ts.map +1 -1
  217. package/dist/src/services/generator-prompt-seeds.js +5 -4
  218. package/dist/src/services/generator-prompt-seeds.js.map +1 -1
  219. package/dist/src/services/message-send.d.ts.map +1 -1
  220. package/dist/src/services/message-send.js +14 -0
  221. package/dist/src/services/message-send.js.map +1 -1
  222. package/dist/src/services/onboarding-guide.d.ts +53 -0
  223. package/dist/src/services/onboarding-guide.d.ts.map +1 -0
  224. package/dist/src/services/onboarding-guide.js +81 -0
  225. package/dist/src/services/onboarding-guide.js.map +1 -0
  226. package/dist/src/services/organism-search.d.ts +6 -2
  227. package/dist/src/services/organism-search.d.ts.map +1 -1
  228. package/dist/src/services/organism-search.js +2 -2
  229. package/dist/src/services/organism-search.js.map +1 -1
  230. package/dist/src/services/owner-memory.d.ts +1 -0
  231. package/dist/src/services/owner-memory.d.ts.map +1 -1
  232. package/dist/src/services/owner-memory.js.map +1 -1
  233. package/dist/src/services/owner-session.d.ts +1 -0
  234. package/dist/src/services/owner-session.d.ts.map +1 -1
  235. package/dist/src/services/owner-session.js +10 -2
  236. package/dist/src/services/owner-session.js.map +1 -1
  237. package/dist/src/services/package-seeder.d.ts +22 -0
  238. package/dist/src/services/package-seeder.d.ts.map +1 -0
  239. package/dist/src/services/package-seeder.js +30 -0
  240. package/dist/src/services/package-seeder.js.map +1 -0
  241. package/dist/src/services/presence.d.ts +3 -0
  242. package/dist/src/services/presence.d.ts.map +1 -1
  243. package/dist/src/services/presence.js +10 -0
  244. package/dist/src/services/presence.js.map +1 -1
  245. package/dist/src/services/prompt-defaults.d.ts.map +1 -1
  246. package/dist/src/services/prompt-defaults.js +8 -3
  247. package/dist/src/services/prompt-defaults.js.map +1 -1
  248. package/dist/src/services/scheduler.d.ts +50 -2
  249. package/dist/src/services/scheduler.d.ts.map +1 -1
  250. package/dist/src/services/scheduler.js +454 -26
  251. package/dist/src/services/scheduler.js.map +1 -1
  252. package/dist/src/services/secretary-authoring.d.ts +71 -0
  253. package/dist/src/services/secretary-authoring.d.ts.map +1 -0
  254. package/dist/src/services/secretary-authoring.js +336 -0
  255. package/dist/src/services/secretary-authoring.js.map +1 -0
  256. package/dist/src/services/secretary-clarify.d.ts +57 -0
  257. package/dist/src/services/secretary-clarify.d.ts.map +1 -0
  258. package/dist/src/services/secretary-clarify.js +104 -0
  259. package/dist/src/services/secretary-clarify.js.map +1 -0
  260. package/dist/src/services/secretary-feed.d.ts +11 -0
  261. package/dist/src/services/secretary-feed.d.ts.map +1 -0
  262. package/dist/src/services/secretary-feed.js +28 -0
  263. package/dist/src/services/secretary-feed.js.map +1 -0
  264. package/dist/src/services/secretary-tick.d.ts +243 -3
  265. package/dist/src/services/secretary-tick.d.ts.map +1 -1
  266. package/dist/src/services/secretary-tick.js +273 -3
  267. package/dist/src/services/secretary-tick.js.map +1 -1
  268. package/dist/src/services/secretary-workbrief.d.ts +144 -0
  269. package/dist/src/services/secretary-workbrief.d.ts.map +1 -0
  270. package/dist/src/services/secretary-workbrief.js +315 -0
  271. package/dist/src/services/secretary-workbrief.js.map +1 -0
  272. package/dist/src/services/secretary-worktier.d.ts +118 -0
  273. package/dist/src/services/secretary-worktier.d.ts.map +1 -0
  274. package/dist/src/services/secretary-worktier.js +157 -0
  275. package/dist/src/services/secretary-worktier.js.map +1 -0
  276. package/dist/src/services/skill-bundle/generator.d.ts +3 -0
  277. package/dist/src/services/skill-bundle/generator.d.ts.map +1 -1
  278. package/dist/src/services/skill-bundle/generator.js +19 -0
  279. package/dist/src/services/skill-bundle/generator.js.map +1 -1
  280. package/dist/src/services/specialist-runner.d.ts +36 -0
  281. package/dist/src/services/specialist-runner.d.ts.map +1 -0
  282. package/dist/src/services/specialist-runner.js +91 -0
  283. package/dist/src/services/specialist-runner.js.map +1 -0
  284. package/dist/src/services/specialist.d.ts +9 -0
  285. package/dist/src/services/specialist.d.ts.map +1 -1
  286. package/dist/src/services/specialist.js +42 -0
  287. package/dist/src/services/specialist.js.map +1 -1
  288. package/dist/src/services/structure-overview.d.ts +13 -0
  289. package/dist/src/services/structure-overview.d.ts.map +1 -1
  290. package/dist/src/services/structure-overview.js +34 -11
  291. package/dist/src/services/structure-overview.js.map +1 -1
  292. package/dist/src/services/system-agent-responder.d.ts +36 -0
  293. package/dist/src/services/system-agent-responder.d.ts.map +1 -0
  294. package/dist/src/services/system-agent-responder.js +107 -0
  295. package/dist/src/services/system-agent-responder.js.map +1 -0
  296. package/dist/src/services/system-agent.d.ts +34 -1
  297. package/dist/src/services/system-agent.d.ts.map +1 -1
  298. package/dist/src/services/system-agent.js +73 -0
  299. package/dist/src/services/system-agent.js.map +1 -1
  300. package/dist/src/storage/interface.d.ts +33 -0
  301. package/dist/src/storage/interface.d.ts.map +1 -1
  302. package/dist/src/storage/interface.js.map +1 -1
  303. package/dist/src/storage/providers/mongodb/index.d.ts +37 -0
  304. package/dist/src/storage/providers/mongodb/index.d.ts.map +1 -1
  305. package/dist/src/storage/providers/mongodb/index.js +132 -12
  306. package/dist/src/storage/providers/mongodb/index.js.map +1 -1
  307. package/dist/src/storage/providers/sqlite/index.d.ts +23 -1
  308. package/dist/src/storage/providers/sqlite/index.d.ts.map +1 -1
  309. package/dist/src/storage/providers/sqlite/index.js +60 -8
  310. package/dist/src/storage/providers/sqlite/index.js.map +1 -1
  311. package/dist/src/storage/providers/sqlite/repos/memory.d.ts +29 -1
  312. package/dist/src/storage/providers/sqlite/repos/memory.d.ts.map +1 -1
  313. package/dist/src/storage/providers/sqlite/repos/memory.js +109 -10
  314. package/dist/src/storage/providers/sqlite/repos/memory.js.map +1 -1
  315. package/dist/src/storage/providers/sqlite/schema.d.ts +3 -0
  316. package/dist/src/storage/providers/sqlite/schema.d.ts.map +1 -1
  317. package/dist/src/storage/providers/sqlite/schema.js +64 -9
  318. package/dist/src/storage/providers/sqlite/schema.js.map +1 -1
  319. package/dist/src/storage/repositories/app.repository.d.ts +15 -0
  320. package/dist/src/storage/repositories/app.repository.d.ts.map +1 -1
  321. package/dist/src/storage/repositories/memory.repository.d.ts +41 -1
  322. package/dist/src/storage/repositories/memory.repository.d.ts.map +1 -1
  323. package/dist/src/storage/repositories/organism.repository.d.ts +2 -1
  324. package/dist/src/storage/repositories/organism.repository.d.ts.map +1 -1
  325. package/dist/static/app-catalog.html +469 -122
  326. package/package.json +2 -1
  327. package/prisma/schema.postgres.prisma +10 -0
  328. package/prisma/schema.prisma +12 -0
@@ -538,7 +538,8 @@ export interface paths {
538
538
  * * **Owner session (cookie):** send the httpOnly `aimeat_rt` refresh cookie (set at
539
539
  * login) plus the `X-AIMEAT-Refresh: 1` header (CSRF guard). The refresh token is
540
540
  * rotated one-time-use with a short grace window and a new cookie is set; replaying
541
- * a consumed token revokes the whole session. Returns `{ token, expires_in }`.
541
+ * a consumed token revokes the whole session. Returns `{ token, expires_in, display_name }`
542
+ * (the owner's current display name, so the client login pill picks up profile edits).
542
543
  * * **Legacy (Bearer):** send a valid Bearer access token (agents / pre-cookie clients).
543
544
  */
544
545
  post: operations["refreshToken"];
@@ -973,6 +974,106 @@ export interface paths {
973
974
  patch?: never;
974
975
  trace?: never;
975
976
  };
977
+ "/v1/secretary/clarify": {
978
+ parameters: {
979
+ query?: never;
980
+ header?: never;
981
+ path?: never;
982
+ cookie?: never;
983
+ };
984
+ get?: never;
985
+ put?: never;
986
+ /**
987
+ * Secretary asks the owner clarifying questions (ask-don't-hallucinate)
988
+ * @description When a Secretary "Do it" task lacks facts only the owner can supply, the Secretary asks rather than guesses: this sends a batch of structured questions (a federated AskUserQuestion) from the secretary agent to the owner's inbox and records a pending "produce" job. The autonomous tick resumes the job — producing the deliverable grounded in the owner's answers — once they reply. Owner-only.
989
+ */
990
+ post: operations["secretaryClarify"];
991
+ delete?: never;
992
+ options?: never;
993
+ head?: never;
994
+ patch?: never;
995
+ trace?: never;
996
+ };
997
+ "/v1/secretary/brief": {
998
+ parameters: {
999
+ query?: never;
1000
+ header?: never;
1001
+ path?: never;
1002
+ cookie?: never;
1003
+ };
1004
+ get?: never;
1005
+ put?: never;
1006
+ /**
1007
+ * Propose grounded Work Briefs for the active context's structural gaps
1008
+ * @description The light-vs-heavy seam. The cheap node-local Secretary no longer authors content one-shot (that hallucinated). It detects STRUCTURAL gaps (empty/thin workspaces, stale content, off-target KPIs) and assembles a grounded Work Brief — Current picture + real Discovery sources + exact record schemas + the appdev MCP playbook — that a Builder (a connected big AI via the MCP tools) executes. Deterministic (no paid AI call), idempotent (deduped against open briefs by gap), additive (never touches content). Optional `ws` scopes to one workspace. Owner-only.
1009
+ */
1010
+ post: operations["secretaryBrief"];
1011
+ delete?: never;
1012
+ options?: never;
1013
+ head?: never;
1014
+ patch?: never;
1015
+ trace?: never;
1016
+ };
1017
+ "/v1/secretary/briefs": {
1018
+ parameters: {
1019
+ query?: never;
1020
+ header?: never;
1021
+ path?: never;
1022
+ cookie?: never;
1023
+ };
1024
+ /**
1025
+ * List the open Work Briefs (proposed/dispatched) for the brief tray
1026
+ * @description Owner-scoped private memory; includes the full brief markdown + MCP hints so the view renders without a second fetch. Owner-only.
1027
+ */
1028
+ get: operations["secretaryBriefsList"];
1029
+ put?: never;
1030
+ post?: never;
1031
+ delete?: never;
1032
+ options?: never;
1033
+ head?: never;
1034
+ patch?: never;
1035
+ trace?: never;
1036
+ };
1037
+ "/v1/secretary/brief/{id}/dispatch": {
1038
+ parameters: {
1039
+ query?: never;
1040
+ header?: never;
1041
+ path?: never;
1042
+ cookie?: never;
1043
+ };
1044
+ get?: never;
1045
+ put?: never;
1046
+ /**
1047
+ * Dispatch a Work Brief to a connected Builder (queue a task it runs via MCP)
1048
+ * @description Queues the brief as an agent task a connected Builder picks up and runs via the appdev MCP tools (lane b). The target must be one of THIS owner's connected agents and not the Secretary or a node-local specialist. Marks the brief 'dispatched'. Owner-only.
1049
+ */
1050
+ post: operations["secretaryBriefDispatch"];
1051
+ delete?: never;
1052
+ options?: never;
1053
+ head?: never;
1054
+ patch?: never;
1055
+ trace?: never;
1056
+ };
1057
+ "/v1/secretary/brief/{id}/done": {
1058
+ parameters: {
1059
+ query?: never;
1060
+ header?: never;
1061
+ path?: never;
1062
+ cookie?: never;
1063
+ };
1064
+ get?: never;
1065
+ put?: never;
1066
+ /**
1067
+ * Resolve a Work Brief (handled or no longer relevant)
1068
+ * @description Marks the brief 'done' so it leaves the tray and the tick won't re-propose the same gap. Owner-only.
1069
+ */
1070
+ post: operations["secretaryBriefDone"];
1071
+ delete?: never;
1072
+ options?: never;
1073
+ head?: never;
1074
+ patch?: never;
1075
+ trace?: never;
1076
+ };
976
1077
  "/v1/agents/device-authorize": {
977
1078
  parameters: {
978
1079
  query?: never;
@@ -1658,7 +1759,7 @@ export interface paths {
1658
1759
  put?: never;
1659
1760
  /**
1660
1761
  * Run one AI completion on the caller's own provider key + budget
1661
- * @description App/extension-level AI completion. Runs on the owner's encrypted OpenRouter (or compatible) key with their daily/per-app budget enforced. Callable by an owner JWT, or an agent JWT holding the `ai:use` scope. Optionally accepts `images` (data: or https URLs) for a vision-capable model. Long calls: clients should use a large request timeout and no retries.
1762
+ * @description App/extension-level AI completion. Runs on the owner's encrypted OpenRouter (or compatible) key with their daily/per-app budget enforced. Callable by an owner JWT, or any token carrying the `ai:use` scope — an agent JWT, or an app-grant token from a sandboxed app on the isolated app origin. Optionally accepts `images` (data: or https URLs) for a vision-capable model. Long calls: clients should use a large request timeout and no retries.
1662
1763
  */
1663
1764
  post: operations["aiComplete"];
1664
1765
  delete?: never;
@@ -1667,6 +1768,26 @@ export interface paths {
1667
1768
  patch?: never;
1668
1769
  trace?: never;
1669
1770
  };
1771
+ "/v1/ai/available": {
1772
+ parameters: {
1773
+ query?: never;
1774
+ header?: never;
1775
+ path?: never;
1776
+ cookie?: never;
1777
+ };
1778
+ /**
1779
+ * Probe whether AI is configured for the caller's owner
1780
+ * @description Lightweight boolean probe used by apps to decide whether to show AI affordances. Returns `{ available }` — true when the owner has an OpenRouter key configured (or a keyless self-hosted provider). Gated identically to `/v1/ai/complete` (an owner JWT, or any token with the `ai:use` scope), so a sandboxed app can gate its UI without owner-only access to `/v1/ai/settings`.
1781
+ */
1782
+ get: operations["aiAvailable"];
1783
+ put?: never;
1784
+ post?: never;
1785
+ delete?: never;
1786
+ options?: never;
1787
+ head?: never;
1788
+ patch?: never;
1789
+ trace?: never;
1790
+ };
1670
1791
  "/v1/librarian/search": {
1671
1792
  parameters: {
1672
1793
  query?: never;
@@ -4445,6 +4566,28 @@ export interface paths {
4445
4566
  patch?: never;
4446
4567
  trace?: never;
4447
4568
  };
4569
+ "/v1/admin/apps/{owner}/{filename}": {
4570
+ parameters: {
4571
+ query?: never;
4572
+ header?: never;
4573
+ path?: never;
4574
+ cookie?: never;
4575
+ };
4576
+ get?: never;
4577
+ put?: never;
4578
+ post?: never;
4579
+ /**
4580
+ * Permanently delete an app (operator hard delete)
4581
+ * @description Operator-only. Removes the app entirely from the node — every version row across every bucket
4582
+ * for that owner+filename, the download counter, and the screenshot. Targets ANY owner. This is
4583
+ * irreversible; the moderation hide (POST .../moderate) is the soft, reversible alternative.
4584
+ */
4585
+ delete: operations["deleteAppAdmin"];
4586
+ options?: never;
4587
+ head?: never;
4588
+ patch?: never;
4589
+ trace?: never;
4590
+ };
4448
4591
  "/v1/apps/{filename}": {
4449
4592
  parameters: {
4450
4593
  query?: never;
@@ -4463,11 +4606,13 @@ export interface paths {
4463
4606
  options?: never;
4464
4607
  head?: never;
4465
4608
  /**
4466
- * Update an app you own (access code and/or parked state)
4609
+ * Update an app you own (name, description, access code and/or parked state)
4467
4610
  * @description Update metadata on an app you own. Each field is independent and applied only when present
4468
4611
  * in the body, so a `parked`-only request never clears the access code (and vice-versa).
4469
- * Parking hides the app from the public catalogue/gallery/search while keeping it fully usable
4470
- * by you (and your agents); unparking restores it to the catalogue.
4612
+ * `name`/`description` rename or re-describe the app in place on its latest version — the
4613
+ * display name is metadata only, so the stable `owner/filename` download URL never changes
4614
+ * (no re-publish needed). Parking hides the app from the public catalogue/gallery/search while
4615
+ * keeping it fully usable by you (and your agents); unparking restores it to the catalogue.
4471
4616
  */
4472
4617
  patch: operations["updateApp"];
4473
4618
  trace?: never;
@@ -6338,6 +6483,52 @@ export interface paths {
6338
6483
  patch?: never;
6339
6484
  trace?: never;
6340
6485
  };
6486
+ "/v1/organisms/{id}/archive": {
6487
+ parameters: {
6488
+ query?: never;
6489
+ header?: never;
6490
+ path?: never;
6491
+ cookie?: never;
6492
+ };
6493
+ get?: never;
6494
+ put?: never;
6495
+ /**
6496
+ * Archive organism content (read-only, hidden from AI materials)
6497
+ * @description Flag an organism, a workspace, a record-table/document-space, or a single record as archived.
6498
+ * Archived content becomes READ-ONLY and is EXCLUDED by default from the AI-facing materials
6499
+ * (structure overview, workspace read, organism search) — keeping the working set focused — yet
6500
+ * stays findable via archive search (`?archived=only`) and `?includeArchived=true`, and resolvable
6501
+ * by key. Archiving a container CASCADES to its contents. Creator/admin only.
6502
+ */
6503
+ post: operations["archiveOrganismContent"];
6504
+ delete?: never;
6505
+ options?: never;
6506
+ head?: never;
6507
+ patch?: never;
6508
+ trace?: never;
6509
+ };
6510
+ "/v1/organisms/{id}/unarchive": {
6511
+ parameters: {
6512
+ query?: never;
6513
+ header?: never;
6514
+ path?: never;
6515
+ cookie?: never;
6516
+ };
6517
+ get?: never;
6518
+ put?: never;
6519
+ /**
6520
+ * Unarchive organism content (smart restore)
6521
+ * @description Reverse an archive. Uses SMART RESTORE: restores ONLY the content that THIS target's archival
6522
+ * flagged (its `archivedRoot`), leaving any item that was archived separately still archived.
6523
+ * Same body shape and creator/admin gate as POST /v1/organisms/{id}/archive.
6524
+ */
6525
+ post: operations["unarchiveOrganismContent"];
6526
+ delete?: never;
6527
+ options?: never;
6528
+ head?: never;
6529
+ patch?: never;
6530
+ trace?: never;
6531
+ };
6341
6532
  "/v1/organisms/{id}/revert": {
6342
6533
  parameters: {
6343
6534
  query?: never;
@@ -10673,6 +10864,26 @@ export interface paths {
10673
10864
  patch?: never;
10674
10865
  trace?: never;
10675
10866
  };
10867
+ "/v1/specialists/{name}/run": {
10868
+ parameters: {
10869
+ query?: never;
10870
+ header?: never;
10871
+ path?: never;
10872
+ cookie?: never;
10873
+ };
10874
+ get?: never;
10875
+ put?: never;
10876
+ /**
10877
+ * Run a specialist's queued tasks now (node-side, owner key)
10878
+ * @description Execute up to `limit` of the specialist's QUEUED agent tasks immediately on the node, using the owner's OpenRouter key and the specialist's brain + the quality contract (grounded, no fabrication). Each produced deliverable is written to the specialist's memory and the task is marked done. The Secretary tick also runs this on schedule (it directs its specialists); spending-paused/error leaves a task queued to retry. Owner-only.
10879
+ */
10880
+ post: operations["runSpecialist"];
10881
+ delete?: never;
10882
+ options?: never;
10883
+ head?: never;
10884
+ patch?: never;
10885
+ trace?: never;
10886
+ };
10676
10887
  "/v1/specialists/{name}/policy": {
10677
10888
  parameters: {
10678
10889
  query?: never;
@@ -13805,7 +14016,15 @@ export interface components {
13805
14016
  id?: string;
13806
14017
  order?: number;
13807
14018
  title?: string;
14019
+ /** @description Raw i18n key (agentOnboarding.stepDescriptions.{id}); see descriptionText for the resolved string. */
13808
14020
  description?: string;
14021
+ /**
14022
+ * @description Localised, human-readable resolution of `description`. Present on the GET /onboarding
14023
+ * and aimeat_onboarding_status payloads (REST resolves via Accept-Language; MCP uses the
14024
+ * node default locale). Added so connector/agent consumers without the i18n bundle never
14025
+ * see a raw key.
14026
+ */
14027
+ descriptionText?: string;
13809
14028
  /** @enum {string} */
13810
14029
  status?: "pending" | "passed" | "failed" | "skipped";
13811
14030
  required?: boolean;
@@ -13814,6 +14033,58 @@ export interface components {
13814
14033
  /** @enum {string} */
13815
14034
  validationMethod?: "automatic" | "api_call" | "owner_confirm";
13816
14035
  failureReason?: string;
14036
+ /** @description Machine-readable how-to-complete descriptor (null when the step id has no mapping). */
14037
+ howTo?: components["schemas"]["OnboardingStepHowTo"] | null;
14038
+ };
14039
+ /**
14040
+ * @description Authoritative machine-readable "how to complete this step" descriptor. A connector drives
14041
+ * each pending step from this (call `tool` with `args`) instead of fabricating a non-existent
14042
+ * `aimeat_onboarding_<stepId>` tool. The only onboarding-prefixed tools that exist are the five
14043
+ * aimeat_onboarding_* tools; every other step is completed by calling its mapped real tool.
14044
+ */
14045
+ OnboardingStepHowTo: {
14046
+ /**
14047
+ * @description Who performs the action -- the agent calls a tool, or the server validates passively.
14048
+ * @enum {string}
14049
+ */
14050
+ actor?: "agent" | "server";
14051
+ /** @description true when the server auto-ticks the step by reading real state (no dedicated confirm call). */
14052
+ automatic?: boolean;
14053
+ /** @description Mirrors `required` -- true when this step gates onboarding completion. */
14054
+ gatesCompletion?: boolean;
14055
+ /** @enum {string} */
14056
+ validationMethod?: "automatic" | "api_call" | "owner_confirm";
14057
+ /** @description Exact MCP tool to call, or null for passive/server steps. */
14058
+ tool?: string | null;
14059
+ /** @description Optional local-connector convenience tool with the same effect (e.g. aimeat_offers_publish). */
14060
+ toolAlias?: string;
14061
+ /** @description Underlying REST route for non-MCP clients; null for passive steps. */
14062
+ restEndpoint?: {
14063
+ /** @enum {string} */
14064
+ method?: "GET" | "POST" | "PUT" | "PATCH";
14065
+ path?: string;
14066
+ } | null;
14067
+ /** @description Copyable argument template. `{name}` is substituted server-side; `{test_task_id}` is filled from hints.test_task_id. */
14068
+ args?: {
14069
+ [key: string]: unknown;
14070
+ };
14071
+ /** @description For tool === null steps, the condition under which the server auto-passes the step. */
14072
+ passiveNote?: string;
14073
+ };
14074
+ /** @description Reachability summary. Completion gates only on required steps; optional steps never block. */
14075
+ OnboardingSummary: {
14076
+ required_total?: number;
14077
+ required_passed?: number;
14078
+ required_remaining?: number;
14079
+ optional_total?: number;
14080
+ optional_passed?: number;
14081
+ optional_remaining?: number;
14082
+ /** @description true once every required step has passed -- the agent can stop here. */
14083
+ completable?: boolean;
14084
+ /** @description First not-yet-passed required step id, or null when none remain. */
14085
+ next_required_step?: string | null;
14086
+ /** @description Ids of pending optional steps (never block completion). */
14087
+ optional_pending?: string[];
13817
14088
  };
13818
14089
  /** @description An opt-in budget/run guard on a schedule. type 'max_runs' or 'daily_limit' in v1. */
13819
14090
  ScheduleConstraint: {
@@ -15864,6 +16135,229 @@ export interface operations {
15864
16135
  404: components["responses"]["NotFound"];
15865
16136
  };
15866
16137
  };
16138
+ secretaryClarify: {
16139
+ parameters: {
16140
+ query?: never;
16141
+ header?: never;
16142
+ path?: never;
16143
+ cookie?: never;
16144
+ };
16145
+ requestBody: {
16146
+ content: {
16147
+ "application/json": {
16148
+ contextId: string;
16149
+ contextName?: string;
16150
+ action: {
16151
+ summary: string;
16152
+ why?: string;
16153
+ };
16154
+ questions: {
16155
+ id: string;
16156
+ header: string;
16157
+ prompt: string;
16158
+ options: {
16159
+ id: string;
16160
+ label: string;
16161
+ }[];
16162
+ multiSelect?: boolean;
16163
+ allowOther?: boolean;
16164
+ required?: boolean;
16165
+ }[];
16166
+ /** @description The grounding facts stored on the job for the tick to produce from. */
16167
+ facts?: string;
16168
+ organismId?: string;
16169
+ wsId?: string;
16170
+ /** @description Optional intro shown above the questions. */
16171
+ body?: string;
16172
+ };
16173
+ };
16174
+ };
16175
+ responses: {
16176
+ /** @description Questions sent; produce job stored */
16177
+ 200: {
16178
+ headers: {
16179
+ [name: string]: unknown;
16180
+ };
16181
+ content: {
16182
+ "application/json": components["schemas"]["AimeatEnvelope"] & {
16183
+ data?: {
16184
+ messageId?: string;
16185
+ conversationId?: string;
16186
+ /** @example asked */
16187
+ status?: string;
16188
+ };
16189
+ };
16190
+ };
16191
+ };
16192
+ 400: components["responses"]["BadRequest"];
16193
+ 401: components["responses"]["Unauthorized"];
16194
+ /** @description Could not deliver the questions to the inbox */
16195
+ 502: {
16196
+ headers: {
16197
+ [name: string]: unknown;
16198
+ };
16199
+ content?: never;
16200
+ };
16201
+ };
16202
+ };
16203
+ secretaryBrief: {
16204
+ parameters: {
16205
+ query?: never;
16206
+ header?: never;
16207
+ path?: never;
16208
+ cookie?: never;
16209
+ };
16210
+ requestBody?: {
16211
+ content: {
16212
+ "application/json": {
16213
+ /** @description Optional workspace id to scope the brief to. */
16214
+ ws?: string;
16215
+ };
16216
+ };
16217
+ };
16218
+ responses: {
16219
+ /** @description Work briefs proposed (0 when no new gaps) */
16220
+ 200: {
16221
+ headers: {
16222
+ [name: string]: unknown;
16223
+ };
16224
+ content: {
16225
+ "application/json": components["schemas"]["AimeatEnvelope"] & {
16226
+ data?: {
16227
+ proposed?: number;
16228
+ workspaces?: number;
16229
+ briefs?: {
16230
+ id?: string;
16231
+ objective?: string;
16232
+ ws?: string;
16233
+ wsName?: string;
16234
+ gaps?: number;
16235
+ /** @example proposed */
16236
+ status?: string;
16237
+ }[];
16238
+ };
16239
+ };
16240
+ };
16241
+ };
16242
+ /** @description No active Secretary context with an organism to brief (NO_CONTEXT) */
16243
+ 400: {
16244
+ headers: {
16245
+ [name: string]: unknown;
16246
+ };
16247
+ content?: never;
16248
+ };
16249
+ 401: components["responses"]["Unauthorized"];
16250
+ };
16251
+ };
16252
+ secretaryBriefsList: {
16253
+ parameters: {
16254
+ query?: never;
16255
+ header?: never;
16256
+ path?: never;
16257
+ cookie?: never;
16258
+ };
16259
+ requestBody?: never;
16260
+ responses: {
16261
+ /** @description Open Work Briefs, newest first */
16262
+ 200: {
16263
+ headers: {
16264
+ [name: string]: unknown;
16265
+ };
16266
+ content: {
16267
+ "application/json": components["schemas"]["AimeatEnvelope"] & {
16268
+ data?: {
16269
+ briefs?: Record<string, never>[];
16270
+ };
16271
+ };
16272
+ };
16273
+ };
16274
+ 401: components["responses"]["Unauthorized"];
16275
+ };
16276
+ };
16277
+ secretaryBriefDispatch: {
16278
+ parameters: {
16279
+ query?: never;
16280
+ header?: never;
16281
+ path: {
16282
+ id: string;
16283
+ };
16284
+ cookie?: never;
16285
+ };
16286
+ requestBody: {
16287
+ content: {
16288
+ "application/json": {
16289
+ /** @description The Builder agent GAII (or name) to dispatch to. */
16290
+ targetAgent: string;
16291
+ };
16292
+ };
16293
+ };
16294
+ responses: {
16295
+ /** @description Brief dispatched; task queued */
16296
+ 200: {
16297
+ headers: {
16298
+ [name: string]: unknown;
16299
+ };
16300
+ content: {
16301
+ "application/json": components["schemas"]["AimeatEnvelope"] & {
16302
+ data?: {
16303
+ dispatched?: boolean;
16304
+ taskId?: string;
16305
+ to?: string;
16306
+ };
16307
+ };
16308
+ };
16309
+ };
16310
+ /** @description Missing targetAgent, or the target is not a valid Builder (INVALID_TARGET) */
16311
+ 400: {
16312
+ headers: {
16313
+ [name: string]: unknown;
16314
+ };
16315
+ content?: never;
16316
+ };
16317
+ 401: components["responses"]["Unauthorized"];
16318
+ /** @description Work brief not found */
16319
+ 404: {
16320
+ headers: {
16321
+ [name: string]: unknown;
16322
+ };
16323
+ content?: never;
16324
+ };
16325
+ };
16326
+ };
16327
+ secretaryBriefDone: {
16328
+ parameters: {
16329
+ query?: never;
16330
+ header?: never;
16331
+ path: {
16332
+ id: string;
16333
+ };
16334
+ cookie?: never;
16335
+ };
16336
+ requestBody?: never;
16337
+ responses: {
16338
+ /** @description Brief resolved */
16339
+ 200: {
16340
+ headers: {
16341
+ [name: string]: unknown;
16342
+ };
16343
+ content: {
16344
+ "application/json": components["schemas"]["AimeatEnvelope"] & {
16345
+ data?: {
16346
+ done?: boolean;
16347
+ };
16348
+ };
16349
+ };
16350
+ };
16351
+ 401: components["responses"]["Unauthorized"];
16352
+ /** @description Work brief not found */
16353
+ 404: {
16354
+ headers: {
16355
+ [name: string]: unknown;
16356
+ };
16357
+ content?: never;
16358
+ };
16359
+ };
16360
+ };
15867
16361
  deviceAuthorize: {
15868
16362
  parameters: {
15869
16363
  query?: never;
@@ -17336,6 +17830,20 @@ export interface operations {
17336
17830
  403: components["responses"]["AimeatError"];
17337
17831
  };
17338
17832
  };
17833
+ aiAvailable: {
17834
+ parameters: {
17835
+ query?: never;
17836
+ header?: never;
17837
+ path?: never;
17838
+ cookie?: never;
17839
+ };
17840
+ requestBody?: never;
17841
+ responses: {
17842
+ 200: components["responses"]["AimeatSuccess"];
17843
+ 401: components["responses"]["AimeatError"];
17844
+ 403: components["responses"]["AimeatError"];
17845
+ };
17846
+ };
17339
17847
  librarianSearch: {
17340
17848
  parameters: {
17341
17849
  query: {
@@ -21439,6 +21947,39 @@ export interface operations {
21439
21947
  404: components["responses"]["NotFound"];
21440
21948
  };
21441
21949
  };
21950
+ deleteAppAdmin: {
21951
+ parameters: {
21952
+ query?: never;
21953
+ header?: never;
21954
+ path: {
21955
+ owner: string;
21956
+ filename: string;
21957
+ };
21958
+ cookie?: never;
21959
+ };
21960
+ requestBody?: never;
21961
+ responses: {
21962
+ /** @description App deleted */
21963
+ 200: {
21964
+ headers: {
21965
+ [name: string]: unknown;
21966
+ };
21967
+ content: {
21968
+ "application/json": components["schemas"]["AimeatEnvelope"] & {
21969
+ data?: {
21970
+ owner?: string;
21971
+ filename?: string;
21972
+ deleted?: boolean;
21973
+ note?: string;
21974
+ };
21975
+ };
21976
+ };
21977
+ };
21978
+ 401: components["responses"]["Unauthorized"];
21979
+ 403: components["responses"]["Forbidden"];
21980
+ 404: components["responses"]["NotFound"];
21981
+ };
21982
+ };
21442
21983
  deleteApp: {
21443
21984
  parameters: {
21444
21985
  query?: {
@@ -21477,6 +22018,10 @@ export interface operations {
21477
22018
  requestBody: {
21478
22019
  content: {
21479
22020
  "application/json": {
22021
+ /** @description 1-120 chars; new display name (URL is unchanged) */
22022
+ name?: string;
22023
+ /** @description 1-2000 chars; new description (cannot be empty) */
22024
+ description?: string;
21480
22025
  /** @description 4-64 chars to set protection; empty/null removes it */
21481
22026
  access_code?: string | null;
21482
22027
  /** @description true hides the app from the public catalogue; false republishes it */
@@ -21494,6 +22039,8 @@ export interface operations {
21494
22039
  "application/json": components["schemas"]["AimeatEnvelope"] & {
21495
22040
  data?: {
21496
22041
  filename?: string;
22042
+ name?: string;
22043
+ description?: string;
21497
22044
  protected?: boolean;
21498
22045
  parked?: boolean;
21499
22046
  download_url?: string;
@@ -24008,6 +24555,10 @@ export interface operations {
24008
24555
  query?: {
24009
24556
  /** @description Workspace id. An organism holds many workspaces, each scoped under `organism.{id}.w.{ws}.*` (manifest at `organism.{id}.w.{ws}.meta.manifest`). The workspace list lives at `organism.{id}.meta.workspaces`. Omitting `ws` reads the legacy organism-level root. */
24010
24557
  ws?: string;
24558
+ /** @description Include archived (read-only, normally hidden) content. Default false. */
24559
+ includeArchived?: boolean;
24560
+ /** @description `only` reads ONLY archived content (the explicit archive view). */
24561
+ archived?: "only";
24011
24562
  };
24012
24563
  header?: never;
24013
24564
  path: {
@@ -24135,6 +24686,8 @@ export interface operations {
24135
24686
  query?: {
24136
24687
  /** @description `md` returns the raw text/markdown body; omit for the JSON envelope. */
24137
24688
  format?: "md";
24689
+ /** @description List archived workspaces too. Default false — archived workspaces are summarised as a count (`archivedWorkspaces`) + a footer, keeping them out of the AI working set. */
24690
+ includeArchived?: boolean;
24138
24691
  };
24139
24692
  header?: never;
24140
24693
  path: {
@@ -25059,6 +25612,13 @@ export interface operations {
25059
25612
  };
25060
25613
  403: components["responses"]["Forbidden"];
25061
25614
  404: components["responses"]["NotFound"];
25615
+ /** @description The target organism/workspace is archived (read-only) */
25616
+ 409: {
25617
+ headers: {
25618
+ [name: string]: unknown;
25619
+ };
25620
+ content?: never;
25621
+ };
25062
25622
  /** @description Draft does not match the schema */
25063
25623
  422: {
25064
25624
  headers: {
@@ -25068,6 +25628,80 @@ export interface operations {
25068
25628
  };
25069
25629
  };
25070
25630
  };
25631
+ archiveOrganismContent: {
25632
+ parameters: {
25633
+ query?: never;
25634
+ header?: never;
25635
+ path: {
25636
+ /** @description Organism ID */
25637
+ id: string;
25638
+ };
25639
+ cookie?: never;
25640
+ };
25641
+ requestBody: {
25642
+ content: {
25643
+ "application/json": {
25644
+ /**
25645
+ * @description What to archive
25646
+ * @enum {string}
25647
+ */
25648
+ level: "organism" | "workspace" | "space" | "record";
25649
+ /** @description Workspace id (required for workspace/space/record) */
25650
+ ws?: string;
25651
+ /** @description objectType namespace (required for level "space"), e.g. shared.tasks */
25652
+ namespace?: string;
25653
+ /** @description Instance base memory key (required for level "record") */
25654
+ key?: string;
25655
+ };
25656
+ };
25657
+ };
25658
+ responses: {
25659
+ /** @description Archived (returns { archived, level, root }) */
25660
+ 200: {
25661
+ headers: {
25662
+ [name: string]: unknown;
25663
+ };
25664
+ content?: never;
25665
+ };
25666
+ 400: components["responses"]["BadRequest"];
25667
+ 403: components["responses"]["Forbidden"];
25668
+ 404: components["responses"]["NotFound"];
25669
+ };
25670
+ };
25671
+ unarchiveOrganismContent: {
25672
+ parameters: {
25673
+ query?: never;
25674
+ header?: never;
25675
+ path: {
25676
+ /** @description Organism ID */
25677
+ id: string;
25678
+ };
25679
+ cookie?: never;
25680
+ };
25681
+ requestBody: {
25682
+ content: {
25683
+ "application/json": {
25684
+ /** @enum {string} */
25685
+ level: "organism" | "workspace" | "space" | "record";
25686
+ ws?: string;
25687
+ namespace?: string;
25688
+ key?: string;
25689
+ };
25690
+ };
25691
+ };
25692
+ responses: {
25693
+ /** @description Restored (returns { restored, level, root }) */
25694
+ 200: {
25695
+ headers: {
25696
+ [name: string]: unknown;
25697
+ };
25698
+ content?: never;
25699
+ };
25700
+ 400: components["responses"]["BadRequest"];
25701
+ 403: components["responses"]["Forbidden"];
25702
+ 404: components["responses"]["NotFound"];
25703
+ };
25704
+ };
25071
25705
  revertOrganismRecordToDraft: {
25072
25706
  parameters: {
25073
25707
  query?: never;
@@ -28033,6 +28667,10 @@ export interface operations {
28033
28667
  q: string;
28034
28668
  /** @description Limit the search to a single workspace id */
28035
28669
  ws?: string;
28670
+ /** @description `only` = archive search (archived content only). Default excludes archived. */
28671
+ archived?: "only";
28672
+ /** @description true = search active AND archived content together. */
28673
+ includeArchived?: boolean;
28036
28674
  };
28037
28675
  header?: never;
28038
28676
  path: {
@@ -31724,6 +32362,41 @@ export interface operations {
31724
32362
  404: components["responses"]["NotFound"];
31725
32363
  };
31726
32364
  };
32365
+ runSpecialist: {
32366
+ parameters: {
32367
+ query?: never;
32368
+ header?: never;
32369
+ path: {
32370
+ name: string;
32371
+ };
32372
+ cookie?: never;
32373
+ };
32374
+ requestBody?: {
32375
+ content: {
32376
+ "application/json": {
32377
+ /** @default 5 */
32378
+ limit?: number;
32379
+ };
32380
+ };
32381
+ };
32382
+ responses: {
32383
+ /** @description Tasks run */
32384
+ 200: {
32385
+ headers: {
32386
+ [name: string]: unknown;
32387
+ };
32388
+ content: {
32389
+ "application/json": components["schemas"]["AimeatEnvelope"] & {
32390
+ data?: {
32391
+ ran?: number;
32392
+ deliverableKeys?: string[];
32393
+ };
32394
+ };
32395
+ };
32396
+ };
32397
+ 404: components["responses"]["NotFound"];
32398
+ };
32399
+ };
31727
32400
  updateSpecialistPolicy: {
31728
32401
  parameters: {
31729
32402
  query?: never;
@@ -33157,10 +33830,19 @@ export interface operations {
33157
33830
  "application/json": components["schemas"]["AimeatEnvelope"] & {
33158
33831
  data?: {
33159
33832
  onboarding: components["schemas"]["AgentOnboardingRecord"];
33833
+ /**
33834
+ * @description Flow-scoped map of stepId -> OnboardingStepHowTo for the steps in this
33835
+ * agent's onboarding flow. The authoritative how-to-complete contract a
33836
+ * connector drives from (call howTo.tool with howTo.args per pending step).
33837
+ */
33838
+ step_guide?: {
33839
+ [key: string]: components["schemas"]["OnboardingStepHowTo"];
33840
+ };
33841
+ summary?: components["schemas"]["OnboardingSummary"];
33160
33842
  /**
33161
33843
  * @description Next-step guidance for the agent. May include
33162
- * `next_step` (step id), `message` (human-readable),
33163
- * `test_task_id`, `test_task_active`.
33844
+ * `next_step` (step id; now prefers the next required step),
33845
+ * `message` (human-readable), `test_task_id`, `test_task_active`.
33164
33846
  */
33165
33847
  hints?: {
33166
33848
  [key: string]: unknown;