@vellumai/assistant 0.5.16 → 0.6.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 (407) hide show
  1. package/ARCHITECTURE.md +1 -1
  2. package/Dockerfile +0 -3
  3. package/knip.json +2 -1
  4. package/openapi.yaml +660 -80
  5. package/package.json +1 -1
  6. package/src/__tests__/actor-token-service.test.ts +68 -0
  7. package/src/__tests__/agent-loop.test.ts +0 -32
  8. package/src/__tests__/always-loaded-tools-guard.test.ts +2 -2
  9. package/src/__tests__/anthropic-provider.test.ts +57 -3
  10. package/src/__tests__/app-compiler.test.ts +120 -0
  11. package/src/__tests__/assistant-feature-flags-integration.test.ts +2 -2
  12. package/src/__tests__/call-conversation-messages.test.ts +2 -6
  13. package/src/__tests__/call-domain.test.ts +2 -6
  14. package/src/__tests__/call-pointer-messages.test.ts +2 -14
  15. package/src/__tests__/call-recovery.test.ts +2 -6
  16. package/src/__tests__/call-routes-http.test.ts +2 -6
  17. package/src/__tests__/call-store.test.ts +2 -6
  18. package/src/__tests__/cancel-resolves-conversation-key.test.ts +2 -6
  19. package/src/__tests__/canonical-guardian-store.test.ts +2 -6
  20. package/src/__tests__/channel-delivery-store.test.ts +2 -6
  21. package/src/__tests__/channel-retry-sweep.test.ts +2 -6
  22. package/src/__tests__/checker.test.ts +25 -3
  23. package/src/__tests__/clawhub.test.ts +54 -24
  24. package/src/__tests__/cli-command-risk-guard.test.ts +14 -0
  25. package/src/__tests__/cli-memory.test.ts +74 -69
  26. package/src/__tests__/config-schema.test.ts +1 -1
  27. package/src/__tests__/config-set-platform-guard.test.ts +302 -0
  28. package/src/__tests__/confirmation-request-guardian-bridge.test.ts +2 -6
  29. package/src/__tests__/contacts-tools.test.ts +31 -0
  30. package/src/__tests__/context-overflow-reducer.test.ts +86 -0
  31. package/src/__tests__/context-token-estimator.test.ts +175 -10
  32. package/src/__tests__/conversation-agent-loop-overflow.test.ts +9 -0
  33. package/src/__tests__/conversation-agent-loop.test.ts +9 -0
  34. package/src/__tests__/conversation-attachments.test.ts +2 -6
  35. package/src/__tests__/conversation-attention-store.test.ts +2 -6
  36. package/src/__tests__/conversation-clear-safety.test.ts +2 -6
  37. package/src/__tests__/conversation-delete-schedule-cleanup.test.ts +4 -10
  38. package/src/__tests__/conversation-disk-view-integration.test.ts +2 -6
  39. package/src/__tests__/conversation-disk-view.test.ts +2 -6
  40. package/src/__tests__/conversation-error.test.ts +33 -2
  41. package/src/__tests__/conversation-fork-crud.test.ts +2 -6
  42. package/src/__tests__/conversation-history-web-search.test.ts +5 -0
  43. package/src/__tests__/conversation-load-history-repair.test.ts +5 -1
  44. package/src/__tests__/conversation-media-retry.test.ts +91 -0
  45. package/src/__tests__/conversation-starter-routes.test.ts +20 -11
  46. package/src/__tests__/conversation-store.test.ts +2 -6
  47. package/src/__tests__/conversation-usage.test.ts +2 -6
  48. package/src/__tests__/conversation-wipe.test.ts +11 -408
  49. package/src/__tests__/credential-execution-feature-gates.test.ts +3 -3
  50. package/src/__tests__/credential-execution-shell-lockdown.test.ts +2 -2
  51. package/src/__tests__/credential-security-e2e.test.ts +2 -0
  52. package/src/__tests__/followup-tools.test.ts +2 -6
  53. package/src/__tests__/graph-extraction-event-date.test.ts +186 -0
  54. package/src/__tests__/guardian-action-conversation-turn.test.ts +2 -6
  55. package/src/__tests__/guardian-action-followup-executor.test.ts +2 -6
  56. package/src/__tests__/guardian-action-followup-store.test.ts +2 -6
  57. package/src/__tests__/guardian-action-grant-mint-consume.test.ts +2 -6
  58. package/src/__tests__/guardian-action-late-reply.test.ts +2 -6
  59. package/src/__tests__/guardian-action-store.test.ts +2 -6
  60. package/src/__tests__/guardian-binding-drift-heal.test.ts +2 -6
  61. package/src/__tests__/guardian-decision-primitive-canonical.test.ts +8 -8
  62. package/src/__tests__/guardian-dispatch.test.ts +2 -6
  63. package/src/__tests__/guardian-grant-minting.test.ts +2 -14
  64. package/src/__tests__/guardian-principal-id-roundtrip.test.ts +2 -6
  65. package/src/__tests__/guardian-routing-invariants.test.ts +192 -6
  66. package/src/__tests__/guardian-routing-state.test.ts +2 -6
  67. package/src/__tests__/guardian-verification-voice-binding.test.ts +2 -6
  68. package/src/__tests__/inbound-invite-redemption.test.ts +2 -6
  69. package/src/__tests__/injection-block.test.ts +154 -0
  70. package/src/__tests__/install-meta.test.ts +506 -0
  71. package/src/__tests__/install-skill-routing.test.ts +292 -0
  72. package/src/__tests__/invite-redemption-service.test.ts +2 -6
  73. package/src/__tests__/invite-routes-http.test.ts +2 -6
  74. package/src/__tests__/jobs-store-qdrant-breaker.test.ts +2 -14
  75. package/src/__tests__/list-messages-attachments.test.ts +2 -6
  76. package/src/__tests__/llm-context-route-provider.test.ts +2 -6
  77. package/src/__tests__/llm-request-log-turn-query.test.ts +2 -6
  78. package/src/__tests__/llm-usage-store.test.ts +2 -6
  79. package/src/__tests__/log-export-workspace.test.ts +2 -6
  80. package/src/__tests__/managed-store.test.ts +38 -11
  81. package/src/__tests__/memory-jobs-worker-backoff.test.ts +2 -8
  82. package/src/__tests__/memory-recall-log-store.test.ts +2 -6
  83. package/src/__tests__/memory-upsert-concurrency.test.ts +4 -112
  84. package/src/__tests__/non-member-access-request.test.ts +2 -6
  85. package/src/__tests__/notification-guardian-path.test.ts +2 -6
  86. package/src/__tests__/oauth-cli.test.ts +364 -2
  87. package/src/__tests__/oauth2-gateway-transport.test.ts +18 -3
  88. package/src/__tests__/outlook-attachments.test.ts +301 -0
  89. package/src/__tests__/outlook-automation-tools.test.ts +425 -0
  90. package/src/__tests__/outlook-categories.test.ts +212 -0
  91. package/src/__tests__/outlook-client-automation.test.ts +246 -0
  92. package/src/__tests__/outlook-compose-tools.test.ts +325 -0
  93. package/src/__tests__/outlook-declutter-tools.test.ts +585 -0
  94. package/src/__tests__/outlook-email-watcher.test.ts +322 -0
  95. package/src/__tests__/outlook-follow-up.test.ts +196 -0
  96. package/src/__tests__/outlook-messaging-provider.test.ts +498 -3
  97. package/src/__tests__/outlook-trash.test.ts +77 -0
  98. package/src/__tests__/outlook-unsubscribe.test.ts +250 -0
  99. package/src/__tests__/platform-callback-registration.test.ts +4 -4
  100. package/src/__tests__/playbook-execution.test.ts +76 -80
  101. package/src/__tests__/playbook-tools.test.ts +5 -7
  102. package/src/__tests__/provider-error-scenarios.test.ts +21 -0
  103. package/src/__tests__/rebuild-index-graph-nodes.test.ts +273 -0
  104. package/src/__tests__/registry.test.ts +2 -2
  105. package/src/__tests__/require-fresh-approval.test.ts +64 -2
  106. package/src/__tests__/runtime-events-sse-parity.test.ts +2 -6
  107. package/src/__tests__/runtime-events-sse.test.ts +2 -6
  108. package/src/__tests__/schedule-store.test.ts +2 -6
  109. package/src/__tests__/schedule-tools.test.ts +2 -6
  110. package/src/__tests__/scheduler-recurrence.test.ts +1 -5
  111. package/src/__tests__/scoped-approval-grants.test.ts +2 -6
  112. package/src/__tests__/scoped-grant-security-matrix.test.ts +2 -6
  113. package/src/__tests__/search-skills-unified.test.ts +421 -0
  114. package/src/__tests__/secret-onetime-send.test.ts +2 -0
  115. package/src/__tests__/send-endpoint-busy.test.ts +2 -6
  116. package/src/__tests__/sequence-store.test.ts +2 -6
  117. package/src/__tests__/server-history-render.test.ts +2 -6
  118. package/src/__tests__/skill-feature-flags-integration.test.ts +38 -31
  119. package/src/__tests__/skill-feature-flags.test.ts +6 -6
  120. package/src/__tests__/skill-load-feature-flag.test.ts +11 -11
  121. package/src/__tests__/skill-memory.test.ts +140 -98
  122. package/src/__tests__/skills-uninstall.test.ts +2 -2
  123. package/src/__tests__/skills.test.ts +1 -1
  124. package/src/__tests__/slack-inbound-verification.test.ts +2 -6
  125. package/src/__tests__/task-compiler.test.ts +2 -6
  126. package/src/__tests__/task-management-tools.test.ts +2 -6
  127. package/src/__tests__/task-memory-cleanup.test.ts +173 -229
  128. package/src/__tests__/task-runner.test.ts +2 -6
  129. package/src/__tests__/task-scheduler.test.ts +2 -6
  130. package/src/__tests__/test-preload.ts +3 -0
  131. package/src/__tests__/tool-approval-handler.test.ts +2 -6
  132. package/src/__tests__/tool-grant-request-escalation.test.ts +2 -6
  133. package/src/__tests__/tool-side-effects-slack-dm.test.ts +276 -0
  134. package/src/__tests__/trust-store.test.ts +1 -1
  135. package/src/__tests__/trusted-contact-inline-approval-integration.test.ts +2 -6
  136. package/src/__tests__/trusted-contact-lifecycle-notifications.test.ts +2 -6
  137. package/src/__tests__/trusted-contact-multichannel.test.ts +2 -6
  138. package/src/__tests__/trusted-contact-verification.test.ts +2 -6
  139. package/src/__tests__/turn-boundary-resolution.test.ts +2 -6
  140. package/src/__tests__/usage-cache-backfill-migration.test.ts +1 -6
  141. package/src/__tests__/usage-routes.test.ts +2 -6
  142. package/src/__tests__/verification-control-plane-policy.test.ts +0 -2
  143. package/src/__tests__/voice-invite-redemption.test.ts +2 -6
  144. package/src/__tests__/voice-scoped-grant-consumer.test.ts +2 -6
  145. package/src/__tests__/voice-session-bridge.test.ts +2 -6
  146. package/src/__tests__/volume-security-guard.test.ts +2 -0
  147. package/src/__tests__/workspace-lifecycle.test.ts +29 -1
  148. package/src/__tests__/workspace-migration-009-backfill-conversation-disk-view.test.ts +2 -6
  149. package/src/__tests__/workspace-migration-013-repair-conversation-disk-view.test.ts +2 -6
  150. package/src/__tests__/workspace-migration-026-backfill-install-meta.test.ts +558 -0
  151. package/src/__tests__/workspace-policy.test.ts +1 -1
  152. package/src/agent/attachments.ts +7 -2
  153. package/src/agent/image-optimize.ts +165 -0
  154. package/src/agent/loop.ts +1 -15
  155. package/src/bundler/app-compiler.ts +179 -2
  156. package/src/bundler/package-resolver.ts +3 -5
  157. package/src/cli/__tests__/notifications.test.ts +1 -2
  158. package/src/cli/cli-memory.ts +67 -64
  159. package/src/cli/commands/avatar.ts +3 -3
  160. package/src/cli/commands/config.ts +26 -13
  161. package/src/cli/commands/doctor.ts +2 -2
  162. package/src/cli/commands/memory.ts +41 -55
  163. package/src/cli/commands/oauth/__tests__/connect.test.ts +2 -2
  164. package/src/cli/commands/oauth/__tests__/disconnect.test.ts +2 -2
  165. package/src/cli/commands/oauth/__tests__/mode.test.ts +8 -1
  166. package/src/cli/commands/oauth/__tests__/status.test.ts +2 -2
  167. package/src/cli/commands/oauth/connect.ts +11 -6
  168. package/src/cli/commands/oauth/mode.ts +7 -0
  169. package/src/cli/commands/oauth/shared.ts +39 -3
  170. package/src/cli/commands/platform/__tests__/connect.test.ts +1 -1
  171. package/src/cli/commands/platform/__tests__/disconnect.test.ts +1 -1
  172. package/src/cli/commands/platform/__tests__/status.test.ts +5 -5
  173. package/src/cli/commands/platform/index.ts +16 -16
  174. package/src/cli/commands/skills.ts +88 -16
  175. package/src/cli/commands/trust.ts +2 -2
  176. package/src/cli/lib/daemon-credential-client.ts +2 -3
  177. package/src/config/bundled-skills/acp/TOOLS.json +1 -1
  178. package/src/config/bundled-skills/contacts/SKILL.md +0 -1
  179. package/src/config/bundled-skills/contacts/TOOLS.json +0 -8
  180. package/src/config/bundled-skills/contacts/tools/contact-upsert.ts +0 -4
  181. package/src/config/bundled-skills/gmail/SKILL.md +2 -10
  182. package/src/config/bundled-skills/google-calendar/SKILL.md +1 -9
  183. package/src/config/bundled-skills/messaging/SKILL.md +10 -18
  184. package/src/config/bundled-skills/messaging/tools/messaging-analyze-style.ts +40 -33
  185. package/src/config/bundled-skills/outlook/SKILL.md +189 -0
  186. package/src/config/bundled-skills/outlook/TOOLS.json +530 -0
  187. package/src/config/bundled-skills/outlook/tools/outlook-attachments.ts +85 -0
  188. package/src/config/bundled-skills/outlook/tools/outlook-categories.ts +77 -0
  189. package/src/config/bundled-skills/outlook/tools/outlook-draft.ts +84 -0
  190. package/src/config/bundled-skills/outlook/tools/outlook-follow-up.ts +94 -0
  191. package/src/config/bundled-skills/outlook/tools/outlook-forward.ts +49 -0
  192. package/src/config/bundled-skills/outlook/tools/outlook-outreach-scan.ts +237 -0
  193. package/src/config/bundled-skills/outlook/tools/outlook-rules.ts +161 -0
  194. package/src/config/bundled-skills/outlook/tools/outlook-send-draft.ts +32 -0
  195. package/src/config/bundled-skills/outlook/tools/outlook-sender-digest.ts +272 -0
  196. package/src/config/bundled-skills/outlook/tools/outlook-trash.ts +29 -0
  197. package/src/config/bundled-skills/outlook/tools/outlook-unsubscribe.ts +129 -0
  198. package/src/config/bundled-skills/outlook/tools/outlook-vacation.ts +87 -0
  199. package/src/config/bundled-skills/outlook/tools/shared.ts +20 -0
  200. package/src/config/bundled-skills/outlook-calendar/SKILL.md +51 -0
  201. package/src/config/bundled-skills/outlook-calendar/TOOLS.json +221 -0
  202. package/src/config/bundled-skills/outlook-calendar/calendar-client.ts +252 -0
  203. package/src/config/bundled-skills/outlook-calendar/tools/outlook-calendar-check-availability.ts +53 -0
  204. package/src/config/bundled-skills/outlook-calendar/tools/outlook-calendar-create-event.ts +74 -0
  205. package/src/config/bundled-skills/outlook-calendar/tools/outlook-calendar-get-event.ts +18 -0
  206. package/src/config/bundled-skills/outlook-calendar/tools/outlook-calendar-list-events.ts +46 -0
  207. package/src/config/bundled-skills/outlook-calendar/tools/outlook-calendar-rsvp.ts +36 -0
  208. package/src/config/bundled-skills/outlook-calendar/tools/shared.ts +17 -0
  209. package/src/config/bundled-skills/outlook-calendar/types.ts +120 -0
  210. package/src/config/bundled-skills/playbooks/tools/playbook-create.ts +47 -40
  211. package/src/config/bundled-skills/playbooks/tools/playbook-delete.ts +16 -29
  212. package/src/config/bundled-skills/playbooks/tools/playbook-list.ts +16 -18
  213. package/src/config/bundled-skills/playbooks/tools/playbook-update.ts +39 -47
  214. package/src/config/bundled-skills/slack/SKILL.md +1 -7
  215. package/src/config/bundled-tool-registry.ts +56 -4
  216. package/src/config/env-registry.ts +15 -8
  217. package/src/config/feature-flag-registry.json +21 -124
  218. package/src/config/schemas/platform.ts +8 -0
  219. package/src/config/schemas/timeouts.ts +1 -1
  220. package/src/config/skills.ts +18 -7
  221. package/src/context/token-estimator.ts +25 -18
  222. package/src/context/window-manager.ts +6 -2
  223. package/src/credential-execution/process-manager.ts +3 -1
  224. package/src/daemon/context-overflow-reducer.ts +46 -2
  225. package/src/daemon/conversation-agent-loop-handlers.ts +123 -82
  226. package/src/daemon/conversation-agent-loop.ts +96 -61
  227. package/src/daemon/conversation-error.ts +31 -8
  228. package/src/daemon/conversation-lifecycle.ts +33 -0
  229. package/src/daemon/conversation-media-retry.ts +85 -7
  230. package/src/daemon/conversation-notifiers.ts +4 -1
  231. package/src/daemon/conversation-runtime-assembly.ts +5 -0
  232. package/src/daemon/conversation.ts +41 -2
  233. package/src/daemon/daemon-control.ts +8 -2
  234. package/src/daemon/handlers/shared.ts +22 -12
  235. package/src/daemon/handlers/skills.ts +416 -202
  236. package/src/daemon/lifecycle.ts +40 -1
  237. package/src/daemon/main.ts +5 -1
  238. package/src/daemon/message-types/conversations.ts +4 -1
  239. package/src/daemon/message-types/messages.ts +3 -1
  240. package/src/daemon/message-types/skills.ts +97 -36
  241. package/src/daemon/providers-setup.ts +5 -0
  242. package/src/daemon/server.ts +11 -2
  243. package/src/daemon/tool-side-effects.ts +27 -5
  244. package/src/heartbeat/heartbeat-service.ts +1 -0
  245. package/src/hooks/cli.ts +2 -2
  246. package/src/hooks/runner.ts +15 -38
  247. package/src/inbound/platform-callback-registration.ts +14 -14
  248. package/src/memory/admin.ts +11 -45
  249. package/src/memory/conversation-bootstrap.ts +2 -0
  250. package/src/memory/conversation-crud.ts +242 -348
  251. package/src/memory/conversation-group-migration.ts +157 -0
  252. package/src/memory/conversation-queries.ts +4 -2
  253. package/src/memory/db-init.ts +30 -3
  254. package/src/memory/embed.ts +73 -0
  255. package/src/memory/embedding-backend.ts +8 -14
  256. package/src/memory/embedding-runtime-manager.ts +12 -114
  257. package/src/memory/fingerprint.ts +2 -2
  258. package/src/memory/graph/bootstrap.ts +512 -0
  259. package/src/memory/graph/capability-seed.ts +297 -0
  260. package/src/memory/graph/consolidation.ts +691 -0
  261. package/src/memory/graph/conversation-graph-memory.ts +630 -0
  262. package/src/memory/graph/decay.test.ts +208 -0
  263. package/src/memory/graph/decay.ts +195 -0
  264. package/src/memory/graph/extraction-job.ts +69 -0
  265. package/src/memory/graph/extraction.test.ts +936 -0
  266. package/src/memory/graph/extraction.ts +1254 -0
  267. package/src/memory/graph/graph-search.ts +266 -0
  268. package/src/memory/graph/image-ref-utils.ts +29 -0
  269. package/src/memory/graph/injection.test.ts +513 -0
  270. package/src/memory/graph/injection.ts +439 -0
  271. package/src/memory/graph/inspect.ts +534 -0
  272. package/src/memory/graph/narrative.ts +267 -0
  273. package/src/memory/graph/pattern-scan.ts +269 -0
  274. package/src/memory/graph/retriever.ts +1008 -0
  275. package/src/memory/graph/scoring.test.ts +548 -0
  276. package/src/memory/graph/scoring.ts +232 -0
  277. package/src/memory/graph/serendipity.ts +65 -0
  278. package/src/memory/graph/store.test.ts +1050 -0
  279. package/src/memory/graph/store.ts +699 -0
  280. package/src/memory/graph/tool-handlers.ts +426 -0
  281. package/src/memory/graph/tools.ts +141 -0
  282. package/src/memory/graph/triggers.test.ts +487 -0
  283. package/src/memory/graph/triggers.ts +223 -0
  284. package/src/memory/graph/types.ts +271 -0
  285. package/src/memory/group-crud.ts +191 -0
  286. package/src/memory/indexer.ts +37 -19
  287. package/src/memory/job-handlers/cleanup.ts +0 -53
  288. package/src/memory/job-handlers/conversation-starters.ts +91 -53
  289. package/src/memory/job-handlers/embedding.ts +5 -31
  290. package/src/memory/job-handlers/index-maintenance.ts +23 -11
  291. package/src/memory/job-handlers/summarization.ts +32 -17
  292. package/src/memory/job-utils.ts +1 -1
  293. package/src/memory/jobs-store.ts +50 -70
  294. package/src/memory/jobs-worker.ts +147 -112
  295. package/src/memory/message-content.ts +1 -0
  296. package/src/memory/migrations/202-memory-graph-tables.ts +130 -0
  297. package/src/memory/migrations/203-drop-memory-items-tables.ts +23 -0
  298. package/src/memory/migrations/204-rename-memory-graph-type-values.ts +46 -0
  299. package/src/memory/migrations/205-memory-graph-image-refs.ts +11 -0
  300. package/src/memory/migrations/index.ts +4 -0
  301. package/src/memory/migrations/registry.ts +8 -0
  302. package/src/memory/qdrant-client.ts +44 -17
  303. package/src/memory/schema/index.ts +1 -0
  304. package/src/memory/schema/memory-graph.ts +139 -0
  305. package/src/memory/search/semantic.ts +47 -91
  306. package/src/memory/task-memory-cleanup.ts +28 -50
  307. package/src/messaging/providers/outlook/adapter.ts +8 -1
  308. package/src/messaging/providers/outlook/client.ts +299 -0
  309. package/src/messaging/providers/outlook/types.ts +118 -0
  310. package/src/notifications/adapters/macos.ts +1 -0
  311. package/src/notifications/copy-composer.ts +9 -0
  312. package/src/notifications/signal.ts +16 -0
  313. package/src/oauth/seed-providers.ts +2 -1
  314. package/src/permissions/checker.ts +24 -3
  315. package/src/permissions/defaults.ts +4 -4
  316. package/src/permissions/workspace-policy.ts +1 -1
  317. package/src/playbooks/playbook-compiler.ts +19 -18
  318. package/src/playbooks/types.ts +4 -3
  319. package/src/prompts/system-prompt.ts +3 -29
  320. package/src/providers/anthropic/client.ts +47 -19
  321. package/src/providers/gemini/client.ts +1 -1
  322. package/src/providers/openai/client.ts +1 -1
  323. package/src/providers/registry.ts +1 -1
  324. package/src/providers/retry.ts +19 -3
  325. package/src/runtime/actor-trust-resolver.ts +5 -1
  326. package/src/runtime/auth/route-policy.ts +7 -0
  327. package/src/runtime/guardian-reply-router.ts +5 -1
  328. package/src/runtime/http-server.ts +23 -3
  329. package/src/runtime/middleware/auth.ts +20 -0
  330. package/src/runtime/routes/attachment-routes.test.ts +106 -0
  331. package/src/runtime/routes/attachment-routes.ts +106 -16
  332. package/src/runtime/routes/brain-graph-routes.ts +21 -22
  333. package/src/runtime/routes/btw-routes.ts +8 -0
  334. package/src/runtime/routes/conversation-management-routes.ts +2 -0
  335. package/src/runtime/routes/conversation-starter-routes.ts +2 -2
  336. package/src/runtime/routes/debug-routes.ts +1 -1
  337. package/src/runtime/routes/global-search-routes.ts +21 -19
  338. package/src/runtime/routes/group-routes.ts +207 -0
  339. package/src/runtime/routes/guardian-action-routes.ts +21 -10
  340. package/src/runtime/routes/guardian-bootstrap-routes.ts +23 -19
  341. package/src/runtime/routes/inbound-message-handler.ts +19 -0
  342. package/src/runtime/routes/inbound-stages/guardian-activation-intercept.test.ts +292 -0
  343. package/src/runtime/routes/inbound-stages/guardian-activation-intercept.ts +207 -0
  344. package/src/runtime/routes/memory-item-routes.test.ts +2 -14
  345. package/src/runtime/routes/memory-item-routes.ts +341 -388
  346. package/src/runtime/routes/schedule-routes.ts +2 -0
  347. package/src/runtime/routes/skills-routes.ts +103 -37
  348. package/src/runtime/routes/work-items-routes.test.ts +2 -6
  349. package/src/schedule/scheduler.ts +8 -1
  350. package/src/security/oauth2.ts +1 -1
  351. package/src/security/secure-keys.ts +4 -8
  352. package/src/shared/provider-env-vars.ts +19 -0
  353. package/src/skills/catalog-cache.ts +5 -0
  354. package/src/skills/catalog-install.ts +15 -14
  355. package/src/skills/clawhub.ts +134 -154
  356. package/src/skills/install-meta.ts +208 -0
  357. package/src/skills/managed-store.ts +27 -16
  358. package/src/skills/skill-memory.ts +152 -77
  359. package/src/skills/skillssh-registry.ts +19 -17
  360. package/src/tasks/task-runner.ts +3 -1
  361. package/src/telemetry/usage-telemetry-reporter.test.ts +3 -5
  362. package/src/tools/browser/runtime-check.ts +3 -1
  363. package/src/tools/memory/register.ts +63 -46
  364. package/src/tools/permission-checker.ts +7 -1
  365. package/src/tools/shared/filesystem/image-read.ts +22 -85
  366. package/src/tools/terminal/safe-env.ts +1 -0
  367. package/src/tools/tool-manifest.ts +3 -3
  368. package/src/util/browser.ts +25 -10
  369. package/src/util/bun-runtime.ts +172 -0
  370. package/src/watcher/providers/outlook-calendar.ts +343 -0
  371. package/src/watcher/providers/outlook.ts +198 -0
  372. package/src/workspace/migrations/025-remove-oauth-app-setup-skills.ts +76 -0
  373. package/src/workspace/migrations/026-backfill-install-meta.ts +325 -0
  374. package/src/workspace/migrations/027-remove-orphaned-optimized-images-cache.ts +42 -0
  375. package/src/workspace/migrations/registry.ts +6 -0
  376. package/src/__tests__/context-memory-e2e.test.ts +0 -415
  377. package/src/__tests__/journal-context.test.ts +0 -268
  378. package/src/__tests__/memory-context-benchmark.benchmark.test.ts +0 -297
  379. package/src/__tests__/memory-lifecycle-e2e.test.ts +0 -459
  380. package/src/__tests__/memory-query-builder.test.ts +0 -59
  381. package/src/__tests__/memory-recall-quality.test.ts +0 -1046
  382. package/src/__tests__/memory-regressions.experimental.test.ts +0 -629
  383. package/src/__tests__/memory-regressions.test.ts +0 -3696
  384. package/src/__tests__/memory-retrieval.benchmark.test.ts +0 -295
  385. package/src/daemon/conversation-memory.ts +0 -207
  386. package/src/memory/conversation-starters-cadence.ts +0 -74
  387. package/src/memory/items-extractor.ts +0 -860
  388. package/src/memory/job-handlers/batch-extraction.ts +0 -753
  389. package/src/memory/job-handlers/extraction.ts +0 -40
  390. package/src/memory/job-handlers/journal-carry-forward.test.ts +0 -355
  391. package/src/memory/job-handlers/journal-carry-forward.ts +0 -255
  392. package/src/memory/journal-memory.ts +0 -224
  393. package/src/memory/query-builder.ts +0 -47
  394. package/src/memory/query-expansion.ts +0 -83
  395. package/src/memory/retriever.test.ts +0 -1592
  396. package/src/memory/retriever.ts +0 -1331
  397. package/src/memory/search/formatting.test.ts +0 -140
  398. package/src/memory/search/formatting.ts +0 -262
  399. package/src/memory/search/mmr.ts +0 -139
  400. package/src/memory/search/ranking.ts +0 -15
  401. package/src/memory/search/staleness.ts +0 -40
  402. package/src/memory/search/tier-classifier.ts +0 -18
  403. package/src/memory/search/types.ts +0 -121
  404. package/src/prompts/journal-context.ts +0 -154
  405. package/src/tools/memory/definitions.ts +0 -69
  406. package/src/tools/memory/handlers.test.ts +0 -562
  407. package/src/tools/memory/handlers.ts +0 -434
package/openapi.yaml CHANGED
@@ -3,7 +3,7 @@
3
3
  openapi: 3.0.0
4
4
  info:
5
5
  title: Vellum Assistant API
6
- version: 0.5.15
6
+ version: 0.6.0
7
7
  description: Auto-generated OpenAPI specification for the Vellum Assistant runtime HTTP server.
8
8
  servers:
9
9
  - url: http://127.0.0.1:7821
@@ -3131,6 +3131,115 @@ paths:
3131
3131
  description: Upper bound epoch ms
3132
3132
  type: number
3133
3133
  additionalProperties: false
3134
+ /v1/groups:
3135
+ get:
3136
+ operationId: groups_get
3137
+ summary: List groups
3138
+ description: Return all conversation groups.
3139
+ tags:
3140
+ - groups
3141
+ responses:
3142
+ "200":
3143
+ description: Successful response
3144
+ post:
3145
+ operationId: groups_post
3146
+ summary: Create group
3147
+ description: Create a new custom conversation group. Server assigns sort_position.
3148
+ tags:
3149
+ - groups
3150
+ responses:
3151
+ "200":
3152
+ description: Successful response
3153
+ requestBody:
3154
+ required: true
3155
+ content:
3156
+ application/json:
3157
+ schema:
3158
+ type: object
3159
+ properties:
3160
+ name:
3161
+ type: string
3162
+ description: Group name
3163
+ required:
3164
+ - name
3165
+ additionalProperties: false
3166
+ /v1/groups/{groupId}:
3167
+ delete:
3168
+ operationId: groups_by_groupId_delete
3169
+ summary: Delete group
3170
+ description: Delete a custom conversation group.
3171
+ tags:
3172
+ - groups
3173
+ responses:
3174
+ "200":
3175
+ description: Successful response
3176
+ parameters:
3177
+ - name: groupId
3178
+ in: path
3179
+ required: true
3180
+ schema:
3181
+ type: string
3182
+ patch:
3183
+ operationId: groups_by_groupId_patch
3184
+ summary: Update group
3185
+ description: Update a conversation group's name or sort position.
3186
+ tags:
3187
+ - groups
3188
+ responses:
3189
+ "200":
3190
+ description: Successful response
3191
+ parameters:
3192
+ - name: groupId
3193
+ in: path
3194
+ required: true
3195
+ schema:
3196
+ type: string
3197
+ requestBody:
3198
+ required: true
3199
+ content:
3200
+ application/json:
3201
+ schema:
3202
+ type: object
3203
+ properties:
3204
+ name:
3205
+ type: string
3206
+ sortPosition:
3207
+ type: number
3208
+ additionalProperties: false
3209
+ /v1/groups/reorder:
3210
+ post:
3211
+ operationId: groups_reorder_post
3212
+ summary: Reorder groups
3213
+ description: Batch-update sort positions for conversation groups.
3214
+ tags:
3215
+ - groups
3216
+ responses:
3217
+ "200":
3218
+ description: Successful response
3219
+ requestBody:
3220
+ required: true
3221
+ content:
3222
+ application/json:
3223
+ schema:
3224
+ type: object
3225
+ properties:
3226
+ updates:
3227
+ type: array
3228
+ items:
3229
+ type: object
3230
+ properties:
3231
+ groupId:
3232
+ type: string
3233
+ sortPosition:
3234
+ type: number
3235
+ required:
3236
+ - groupId
3237
+ - sortPosition
3238
+ additionalProperties: false
3239
+ description: Array of { groupId, sortPosition } objects
3240
+ required:
3241
+ - updates
3242
+ additionalProperties: false
3134
3243
  /v1/guardian-actions/decision:
3135
3244
  post:
3136
3245
  operationId: guardianactions_decision_post
@@ -4071,7 +4180,7 @@ paths:
4071
4180
  post:
4072
4181
  operationId: memoryitems_post
4073
4182
  summary: Create a memory item
4074
- description: Create a new memory item and enqueue embedding.
4183
+ description: Create a new memory graph node and enqueue embedding.
4075
4184
  tags:
4076
4185
  - memory
4077
4186
  responses:
@@ -4099,10 +4208,10 @@ paths:
4099
4208
  properties:
4100
4209
  kind:
4101
4210
  type: string
4102
- description: Memory kind (identity, preference, project, etc.)
4211
+ description: Memory type (episodic, semantic, procedural, etc.)
4103
4212
  subject:
4104
4213
  type: string
4105
- description: Subject line
4214
+ description: Subject line (first line of content)
4106
4215
  statement:
4107
4216
  type: string
4108
4217
  description: Statement content
@@ -4111,14 +4220,13 @@ paths:
4111
4220
  description: Importance score (default 0.8)
4112
4221
  required:
4113
4222
  - kind
4114
- - subject
4115
4223
  - statement
4116
4224
  additionalProperties: false
4117
4225
  /v1/memory-items/{id}:
4118
4226
  delete:
4119
4227
  operationId: memoryitems_by_id_delete
4120
4228
  summary: Delete a memory item
4121
- description: Delete a memory item and its embeddings.
4229
+ description: Delete a memory graph node and its embeddings.
4122
4230
  tags:
4123
4231
  - memory
4124
4232
  responses:
@@ -4143,7 +4251,7 @@ paths:
4143
4251
  get:
4144
4252
  operationId: memoryitems_by_id_get
4145
4253
  summary: Get a memory item
4146
- description: Return a single memory item by ID with supersession metadata.
4254
+ description: Return a single memory item by ID with graph metadata.
4147
4255
  tags:
4148
4256
  - memory
4149
4257
  responses:
@@ -4158,7 +4266,7 @@ paths:
4158
4266
  type: object
4159
4267
  properties: {}
4160
4268
  additionalProperties: {}
4161
- description: Memory item with scopeLabel and supersession info
4269
+ description: Memory item with scopeLabel and graph metadata
4162
4270
  required:
4163
4271
  - item
4164
4272
  additionalProperties: false
@@ -4171,7 +4279,7 @@ paths:
4171
4279
  patch:
4172
4280
  operationId: memoryitems_by_id_patch
4173
4281
  summary: Update a memory item
4174
- description: Partially update fields on an existing memory item.
4282
+ description: Partially update fields on an existing memory graph node.
4175
4283
  tags:
4176
4284
  - memory
4177
4285
  responses:
@@ -4213,18 +4321,6 @@ paths:
4213
4321
  type: string
4214
4322
  importance:
4215
4323
  type: number
4216
- sourceType:
4217
- type: string
4218
- verificationState:
4219
- type: string
4220
- required:
4221
- - subject
4222
- - statement
4223
- - kind
4224
- - status
4225
- - importance
4226
- - sourceType
4227
- - verificationState
4228
4324
  additionalProperties: false
4229
4325
  /v1/messages:
4230
4326
  get:
@@ -5601,68 +5697,165 @@ paths:
5601
5697
  skills:
5602
5698
  type: array
5603
5699
  items:
5604
- type: object
5605
- properties:
5606
- id:
5607
- type: string
5608
- name:
5609
- type: string
5610
- description:
5611
- type: string
5612
- emoji:
5613
- type: string
5614
- homepage:
5615
- type: string
5616
- source:
5617
- type: string
5618
- enum:
5619
- - bundled
5620
- - managed
5621
- - workspace
5622
- - clawhub
5623
- - extra
5624
- - catalog
5625
- state:
5626
- type: string
5627
- enum:
5628
- - enabled
5629
- - disabled
5630
- installStatus:
5631
- type: string
5632
- enum:
5633
- - bundled
5634
- - installed
5635
- - available
5636
- updateAvailable:
5637
- type: boolean
5638
- provenance:
5639
- type: object
5700
+ oneOf:
5701
+ - type: object
5702
+ properties:
5703
+ id:
5704
+ type: string
5705
+ name:
5706
+ type: string
5707
+ description:
5708
+ type: string
5709
+ emoji:
5710
+ type: string
5711
+ kind:
5712
+ type: string
5713
+ enum:
5714
+ - bundled
5715
+ - installed
5716
+ - catalog
5717
+ status:
5718
+ type: string
5719
+ enum:
5720
+ - enabled
5721
+ - disabled
5722
+ - available
5723
+ origin:
5724
+ type: string
5725
+ const: vellum
5726
+ required:
5727
+ - id
5728
+ - name
5729
+ - description
5730
+ - kind
5731
+ - status
5732
+ - origin
5733
+ additionalProperties: false
5734
+ - type: object
5735
+ properties:
5736
+ id:
5737
+ type: string
5738
+ name:
5739
+ type: string
5740
+ description:
5741
+ type: string
5742
+ emoji:
5743
+ type: string
5744
+ kind:
5745
+ type: string
5746
+ enum:
5747
+ - bundled
5748
+ - installed
5749
+ - catalog
5750
+ status:
5751
+ type: string
5752
+ enum:
5753
+ - enabled
5754
+ - disabled
5755
+ - available
5756
+ origin:
5757
+ type: string
5758
+ const: clawhub
5759
+ slug:
5760
+ type: string
5761
+ author:
5762
+ type: string
5763
+ stars:
5764
+ type: number
5765
+ installs:
5766
+ type: number
5767
+ reports:
5768
+ type: number
5769
+ publishedAt:
5770
+ type: string
5771
+ required:
5772
+ - id
5773
+ - name
5774
+ - description
5775
+ - kind
5776
+ - status
5777
+ - origin
5778
+ - slug
5779
+ - author
5780
+ - stars
5781
+ - installs
5782
+ - reports
5783
+ additionalProperties: false
5784
+ - type: object
5640
5785
  properties:
5786
+ id:
5787
+ type: string
5788
+ name:
5789
+ type: string
5790
+ description:
5791
+ type: string
5792
+ emoji:
5793
+ type: string
5641
5794
  kind:
5642
5795
  type: string
5643
5796
  enum:
5644
- - first-party
5645
- - third-party
5646
- - local
5647
- provider:
5797
+ - bundled
5798
+ - installed
5799
+ - catalog
5800
+ status:
5801
+ type: string
5802
+ enum:
5803
+ - enabled
5804
+ - disabled
5805
+ - available
5806
+ origin:
5648
5807
  type: string
5649
- originId:
5808
+ const: skillssh
5809
+ slug:
5650
5810
  type: string
5651
- sourceUrl:
5811
+ sourceRepo:
5652
5812
  type: string
5813
+ installs:
5814
+ type: number
5653
5815
  required:
5816
+ - id
5817
+ - name
5818
+ - description
5654
5819
  - kind
5820
+ - status
5821
+ - origin
5822
+ - slug
5823
+ - sourceRepo
5824
+ - installs
5825
+ additionalProperties: false
5826
+ - type: object
5827
+ properties:
5828
+ id:
5829
+ type: string
5830
+ name:
5831
+ type: string
5832
+ description:
5833
+ type: string
5834
+ emoji:
5835
+ type: string
5836
+ kind:
5837
+ type: string
5838
+ enum:
5839
+ - bundled
5840
+ - installed
5841
+ - catalog
5842
+ status:
5843
+ type: string
5844
+ enum:
5845
+ - enabled
5846
+ - disabled
5847
+ - available
5848
+ origin:
5849
+ type: string
5850
+ const: custom
5851
+ required:
5852
+ - id
5853
+ - name
5854
+ - description
5855
+ - kind
5856
+ - status
5857
+ - origin
5655
5858
  additionalProperties: false
5656
- required:
5657
- - id
5658
- - name
5659
- - description
5660
- - source
5661
- - state
5662
- - installStatus
5663
- - updateAvailable
5664
- - provenance
5665
- additionalProperties: false
5666
5859
  description: Skill objects
5667
5860
  required:
5668
5861
  - skills
@@ -5735,12 +5928,235 @@ paths:
5735
5928
  get:
5736
5929
  operationId: skills_by_id_get
5737
5930
  summary: Get skill
5738
- description: Return a single skill by ID.
5931
+ description: Return a single skill by ID with enriched detail fields.
5739
5932
  tags:
5740
5933
  - skills
5741
5934
  responses:
5742
5935
  "200":
5743
5936
  description: Successful response
5937
+ content:
5938
+ application/json:
5939
+ schema:
5940
+ type: object
5941
+ properties:
5942
+ skill:
5943
+ oneOf:
5944
+ - type: object
5945
+ properties:
5946
+ id:
5947
+ type: string
5948
+ name:
5949
+ type: string
5950
+ description:
5951
+ type: string
5952
+ emoji:
5953
+ type: string
5954
+ kind:
5955
+ type: string
5956
+ enum:
5957
+ - bundled
5958
+ - installed
5959
+ - catalog
5960
+ status:
5961
+ type: string
5962
+ enum:
5963
+ - enabled
5964
+ - disabled
5965
+ - available
5966
+ origin:
5967
+ type: string
5968
+ const: vellum
5969
+ required:
5970
+ - id
5971
+ - name
5972
+ - description
5973
+ - kind
5974
+ - status
5975
+ - origin
5976
+ additionalProperties: false
5977
+ - type: object
5978
+ properties:
5979
+ id:
5980
+ type: string
5981
+ name:
5982
+ type: string
5983
+ description:
5984
+ type: string
5985
+ emoji:
5986
+ type: string
5987
+ kind:
5988
+ type: string
5989
+ enum:
5990
+ - bundled
5991
+ - installed
5992
+ - catalog
5993
+ status:
5994
+ type: string
5995
+ enum:
5996
+ - enabled
5997
+ - disabled
5998
+ - available
5999
+ origin:
6000
+ type: string
6001
+ const: clawhub
6002
+ slug:
6003
+ type: string
6004
+ author:
6005
+ type: string
6006
+ stars:
6007
+ type: number
6008
+ installs:
6009
+ type: number
6010
+ reports:
6011
+ type: number
6012
+ publishedAt:
6013
+ type: string
6014
+ owner:
6015
+ anyOf:
6016
+ - type: object
6017
+ properties:
6018
+ handle:
6019
+ type: string
6020
+ displayName:
6021
+ type: string
6022
+ image:
6023
+ type: string
6024
+ required:
6025
+ - handle
6026
+ - displayName
6027
+ additionalProperties: false
6028
+ - type: "null"
6029
+ stats:
6030
+ anyOf:
6031
+ - type: object
6032
+ properties:
6033
+ stars:
6034
+ type: number
6035
+ installs:
6036
+ type: number
6037
+ downloads:
6038
+ type: number
6039
+ versions:
6040
+ type: number
6041
+ required:
6042
+ - stars
6043
+ - installs
6044
+ - downloads
6045
+ - versions
6046
+ additionalProperties: false
6047
+ - type: "null"
6048
+ latestVersion:
6049
+ anyOf:
6050
+ - type: object
6051
+ properties:
6052
+ version:
6053
+ type: string
6054
+ changelog:
6055
+ type: string
6056
+ required:
6057
+ - version
6058
+ additionalProperties: false
6059
+ - type: "null"
6060
+ createdAt:
6061
+ anyOf:
6062
+ - type: number
6063
+ - type: "null"
6064
+ updatedAt:
6065
+ anyOf:
6066
+ - type: number
6067
+ - type: "null"
6068
+ required:
6069
+ - id
6070
+ - name
6071
+ - description
6072
+ - kind
6073
+ - status
6074
+ - origin
6075
+ - slug
6076
+ - author
6077
+ - stars
6078
+ - installs
6079
+ - reports
6080
+ additionalProperties: false
6081
+ - type: object
6082
+ properties:
6083
+ id:
6084
+ type: string
6085
+ name:
6086
+ type: string
6087
+ description:
6088
+ type: string
6089
+ emoji:
6090
+ type: string
6091
+ kind:
6092
+ type: string
6093
+ enum:
6094
+ - bundled
6095
+ - installed
6096
+ - catalog
6097
+ status:
6098
+ type: string
6099
+ enum:
6100
+ - enabled
6101
+ - disabled
6102
+ - available
6103
+ origin:
6104
+ type: string
6105
+ const: skillssh
6106
+ slug:
6107
+ type: string
6108
+ sourceRepo:
6109
+ type: string
6110
+ installs:
6111
+ type: number
6112
+ required:
6113
+ - id
6114
+ - name
6115
+ - description
6116
+ - kind
6117
+ - status
6118
+ - origin
6119
+ - slug
6120
+ - sourceRepo
6121
+ - installs
6122
+ additionalProperties: false
6123
+ - type: object
6124
+ properties:
6125
+ id:
6126
+ type: string
6127
+ name:
6128
+ type: string
6129
+ description:
6130
+ type: string
6131
+ emoji:
6132
+ type: string
6133
+ kind:
6134
+ type: string
6135
+ enum:
6136
+ - bundled
6137
+ - installed
6138
+ - catalog
6139
+ status:
6140
+ type: string
6141
+ enum:
6142
+ - enabled
6143
+ - disabled
6144
+ - available
6145
+ origin:
6146
+ type: string
6147
+ const: custom
6148
+ required:
6149
+ - id
6150
+ - name
6151
+ - description
6152
+ - kind
6153
+ - status
6154
+ - origin
6155
+ additionalProperties: false
6156
+ description: Skill detail object
6157
+ required:
6158
+ - skill
6159
+ additionalProperties: false
5744
6160
  parameters:
5745
6161
  - name: id
5746
6162
  in: path
@@ -5991,6 +6407,12 @@ paths:
5991
6407
  description: Skill spec
5992
6408
  version:
5993
6409
  type: string
6410
+ origin:
6411
+ description: Which registry to install from. When omitted, the install flow auto-detects based on slug format.
6412
+ type: string
6413
+ enum:
6414
+ - clawhub
6415
+ - skillssh
5994
6416
  required:
5995
6417
  - slug
5996
6418
  - url
@@ -6012,13 +6434,171 @@ paths:
6012
6434
  schema:
6013
6435
  type: object
6014
6436
  properties:
6015
- data:
6016
- type: object
6017
- properties: {}
6018
- additionalProperties: {}
6019
- description: Search results
6437
+ skills:
6438
+ type: array
6439
+ items:
6440
+ oneOf:
6441
+ - type: object
6442
+ properties:
6443
+ id:
6444
+ type: string
6445
+ name:
6446
+ type: string
6447
+ description:
6448
+ type: string
6449
+ emoji:
6450
+ type: string
6451
+ kind:
6452
+ type: string
6453
+ enum:
6454
+ - bundled
6455
+ - installed
6456
+ - catalog
6457
+ status:
6458
+ type: string
6459
+ enum:
6460
+ - enabled
6461
+ - disabled
6462
+ - available
6463
+ origin:
6464
+ type: string
6465
+ const: vellum
6466
+ required:
6467
+ - id
6468
+ - name
6469
+ - description
6470
+ - kind
6471
+ - status
6472
+ - origin
6473
+ additionalProperties: false
6474
+ - type: object
6475
+ properties:
6476
+ id:
6477
+ type: string
6478
+ name:
6479
+ type: string
6480
+ description:
6481
+ type: string
6482
+ emoji:
6483
+ type: string
6484
+ kind:
6485
+ type: string
6486
+ enum:
6487
+ - bundled
6488
+ - installed
6489
+ - catalog
6490
+ status:
6491
+ type: string
6492
+ enum:
6493
+ - enabled
6494
+ - disabled
6495
+ - available
6496
+ origin:
6497
+ type: string
6498
+ const: clawhub
6499
+ slug:
6500
+ type: string
6501
+ author:
6502
+ type: string
6503
+ stars:
6504
+ type: number
6505
+ installs:
6506
+ type: number
6507
+ reports:
6508
+ type: number
6509
+ publishedAt:
6510
+ type: string
6511
+ required:
6512
+ - id
6513
+ - name
6514
+ - description
6515
+ - kind
6516
+ - status
6517
+ - origin
6518
+ - slug
6519
+ - author
6520
+ - stars
6521
+ - installs
6522
+ - reports
6523
+ additionalProperties: false
6524
+ - type: object
6525
+ properties:
6526
+ id:
6527
+ type: string
6528
+ name:
6529
+ type: string
6530
+ description:
6531
+ type: string
6532
+ emoji:
6533
+ type: string
6534
+ kind:
6535
+ type: string
6536
+ enum:
6537
+ - bundled
6538
+ - installed
6539
+ - catalog
6540
+ status:
6541
+ type: string
6542
+ enum:
6543
+ - enabled
6544
+ - disabled
6545
+ - available
6546
+ origin:
6547
+ type: string
6548
+ const: skillssh
6549
+ slug:
6550
+ type: string
6551
+ sourceRepo:
6552
+ type: string
6553
+ installs:
6554
+ type: number
6555
+ required:
6556
+ - id
6557
+ - name
6558
+ - description
6559
+ - kind
6560
+ - status
6561
+ - origin
6562
+ - slug
6563
+ - sourceRepo
6564
+ - installs
6565
+ additionalProperties: false
6566
+ - type: object
6567
+ properties:
6568
+ id:
6569
+ type: string
6570
+ name:
6571
+ type: string
6572
+ description:
6573
+ type: string
6574
+ emoji:
6575
+ type: string
6576
+ kind:
6577
+ type: string
6578
+ enum:
6579
+ - bundled
6580
+ - installed
6581
+ - catalog
6582
+ status:
6583
+ type: string
6584
+ enum:
6585
+ - enabled
6586
+ - disabled
6587
+ - available
6588
+ origin:
6589
+ type: string
6590
+ const: custom
6591
+ required:
6592
+ - id
6593
+ - name
6594
+ - description
6595
+ - kind
6596
+ - status
6597
+ - origin
6598
+ additionalProperties: false
6599
+ description: Skill objects matching the search query
6020
6600
  required:
6021
- - data
6601
+ - skills
6022
6602
  additionalProperties: false
6023
6603
  parameters:
6024
6604
  - name: q