@multiplayer-app/sandbox 0.0.31 → 0.0.33-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (336) hide show
  1. package/dist/agents/content-generator.agent.d.ts +8 -0
  2. package/dist/agents/content-generator.agent.d.ts.map +1 -1
  3. package/dist/agents/content-generator.agent.js +53 -6
  4. package/dist/agents/content-generator.agent.js.map +1 -1
  5. package/dist/agents/html-generator.agent.d.ts +3 -1
  6. package/dist/agents/html-generator.agent.d.ts.map +1 -1
  7. package/dist/agents/html-generator.agent.js +90 -4
  8. package/dist/agents/html-generator.agent.js.map +1 -1
  9. package/dist/agents/markdown-generator.agent.d.ts.map +1 -1
  10. package/dist/agents/markdown-generator.agent.js +5 -10
  11. package/dist/agents/markdown-generator.agent.js.map +1 -1
  12. package/dist/agents/notebook.agent.d.ts.map +1 -1
  13. package/dist/agents/notebook.agent.js +2 -1
  14. package/dist/agents/notebook.agent.js.map +1 -1
  15. package/dist/agents/shared/app-vm.tools.d.ts +4 -0
  16. package/dist/agents/shared/app-vm.tools.d.ts.map +1 -0
  17. package/dist/agents/shared/app-vm.tools.js +105 -0
  18. package/dist/agents/shared/app-vm.tools.js.map +1 -0
  19. package/dist/agents/shared/build-plan.tools.d.ts +5 -0
  20. package/dist/agents/shared/build-plan.tools.d.ts.map +1 -0
  21. package/dist/agents/shared/build-plan.tools.js +176 -0
  22. package/dist/agents/shared/build-plan.tools.js.map +1 -0
  23. package/dist/agents/shared/content-generator-system-prompt.d.ts +3 -2
  24. package/dist/agents/shared/content-generator-system-prompt.d.ts.map +1 -1
  25. package/dist/agents/shared/content-generator-system-prompt.js +41 -24
  26. package/dist/agents/shared/content-generator-system-prompt.js.map +1 -1
  27. package/dist/agents/shared/design-skills.d.ts +48 -0
  28. package/dist/agents/shared/design-skills.d.ts.map +1 -0
  29. package/dist/agents/shared/design-skills.js +230 -0
  30. package/dist/agents/shared/design-skills.js.map +1 -0
  31. package/dist/agents/shared/generate-session-images.tool.d.ts +15 -0
  32. package/dist/agents/shared/generate-session-images.tool.d.ts.map +1 -0
  33. package/dist/agents/shared/generate-session-images.tool.js +98 -0
  34. package/dist/agents/shared/generate-session-images.tool.js.map +1 -0
  35. package/dist/agents/shared/publish-session-artifacts.tool.d.ts +5 -0
  36. package/dist/agents/shared/publish-session-artifacts.tool.d.ts.map +1 -1
  37. package/dist/agents/shared/publish-session-artifacts.tool.js +154 -15
  38. package/dist/agents/shared/publish-session-artifacts.tool.js.map +1 -1
  39. package/dist/agents/shared/session-quality-report.tool.d.ts +7 -0
  40. package/dist/agents/shared/session-quality-report.tool.d.ts.map +1 -0
  41. package/dist/agents/shared/session-quality-report.tool.js +97 -0
  42. package/dist/agents/shared/session-quality-report.tool.js.map +1 -0
  43. package/dist/agents/shared/session-vm-bridge.d.ts +49 -0
  44. package/dist/agents/shared/session-vm-bridge.d.ts.map +1 -0
  45. package/dist/agents/shared/session-vm-bridge.js +9 -0
  46. package/dist/agents/shared/session-vm-bridge.js.map +1 -0
  47. package/dist/agents/shared/update-session-artifacts.tool.d.ts +5 -0
  48. package/dist/agents/shared/update-session-artifacts.tool.d.ts.map +1 -1
  49. package/dist/agents/shared/update-session-artifacts.tool.js +136 -26
  50. package/dist/agents/shared/update-session-artifacts.tool.js.map +1 -1
  51. package/dist/agents/shared/validate-artifact-content.tools.d.ts +4 -0
  52. package/dist/agents/shared/validate-artifact-content.tools.d.ts.map +1 -1
  53. package/dist/agents/shared/validate-artifact-content.tools.js +24 -1
  54. package/dist/agents/shared/validate-artifact-content.tools.js.map +1 -1
  55. package/dist/agents/skills/a11y.skill.d.ts +3 -0
  56. package/dist/agents/skills/a11y.skill.d.ts.map +1 -0
  57. package/dist/agents/skills/a11y.skill.js +23 -0
  58. package/dist/agents/skills/a11y.skill.js.map +1 -0
  59. package/dist/agents/skills/account-skill-loader.d.ts +13 -0
  60. package/dist/agents/skills/account-skill-loader.d.ts.map +1 -0
  61. package/dist/agents/skills/account-skill-loader.js +42 -0
  62. package/dist/agents/skills/account-skill-loader.js.map +1 -0
  63. package/dist/agents/skills/app-scaffold.skill.d.ts +3 -0
  64. package/dist/agents/skills/app-scaffold.skill.d.ts.map +1 -0
  65. package/dist/agents/skills/app-scaffold.skill.js +30 -0
  66. package/dist/agents/skills/app-scaffold.skill.js.map +1 -0
  67. package/dist/agents/skills/copywriting.skill.d.ts +3 -0
  68. package/dist/agents/skills/copywriting.skill.d.ts.map +1 -0
  69. package/dist/agents/skills/copywriting.skill.js +35 -0
  70. package/dist/agents/skills/copywriting.skill.js.map +1 -0
  71. package/dist/agents/skills/custom-skill-repository.d.ts +40 -0
  72. package/dist/agents/skills/custom-skill-repository.d.ts.map +1 -0
  73. package/dist/agents/skills/custom-skill-repository.js +3 -0
  74. package/dist/agents/skills/custom-skill-repository.js.map +1 -0
  75. package/dist/agents/skills/data-viz.skill.d.ts +3 -0
  76. package/dist/agents/skills/data-viz.skill.d.ts.map +1 -0
  77. package/dist/agents/skills/data-viz.skill.js +42 -0
  78. package/dist/agents/skills/data-viz.skill.js.map +1 -0
  79. package/dist/agents/skills/designer.skill.d.ts +3 -0
  80. package/dist/agents/skills/designer.skill.d.ts.map +1 -0
  81. package/dist/agents/skills/designer.skill.js +101 -0
  82. package/dist/agents/skills/designer.skill.js.map +1 -0
  83. package/dist/agents/skills/forms.skill.d.ts +3 -0
  84. package/dist/agents/skills/forms.skill.d.ts.map +1 -0
  85. package/dist/agents/skills/forms.skill.js +37 -0
  86. package/dist/agents/skills/forms.skill.js.map +1 -0
  87. package/dist/agents/skills/index.d.ts +6 -0
  88. package/dist/agents/skills/index.d.ts.map +1 -0
  89. package/dist/agents/skills/index.js +18 -0
  90. package/dist/agents/skills/index.js.map +1 -0
  91. package/dist/agents/skills/interactions.skill.d.ts +3 -0
  92. package/dist/agents/skills/interactions.skill.d.ts.map +1 -0
  93. package/dist/agents/skills/interactions.skill.js +31 -0
  94. package/dist/agents/skills/interactions.skill.js.map +1 -0
  95. package/dist/agents/skills/registry.d.ts +23 -0
  96. package/dist/agents/skills/registry.d.ts.map +1 -0
  97. package/dist/agents/skills/registry.js +75 -0
  98. package/dist/agents/skills/registry.js.map +1 -0
  99. package/dist/agents/skills/skill-injection.d.ts +52 -0
  100. package/dist/agents/skills/skill-injection.d.ts.map +1 -0
  101. package/dist/agents/skills/skill-injection.js +216 -0
  102. package/dist/agents/skills/skill-injection.js.map +1 -0
  103. package/dist/agents/skills/types.d.ts +12 -0
  104. package/dist/agents/skills/types.d.ts.map +1 -0
  105. package/dist/agents/skills/types.js +3 -0
  106. package/dist/agents/skills/types.js.map +1 -0
  107. package/dist/builder-api-config.d.ts +7 -0
  108. package/dist/builder-api-config.d.ts.map +1 -1
  109. package/dist/builder-api-config.js.map +1 -1
  110. package/dist/context.d.ts +11 -0
  111. package/dist/context.d.ts.map +1 -1
  112. package/dist/context.js +19 -0
  113. package/dist/context.js.map +1 -1
  114. package/dist/create-builder-api.d.ts +8 -3
  115. package/dist/create-builder-api.d.ts.map +1 -1
  116. package/dist/create-builder-api.js +20 -0
  117. package/dist/create-builder-api.js.map +1 -1
  118. package/dist/index.d.ts +6 -1
  119. package/dist/index.d.ts.map +1 -1
  120. package/dist/index.js +7 -1
  121. package/dist/index.js.map +1 -1
  122. package/dist/lib/library/list-library-items.d.ts +2 -2
  123. package/dist/lib/library/list-library-items.d.ts.map +1 -1
  124. package/dist/lib/library/list-library-items.js +49 -7
  125. package/dist/lib/library/list-library-items.js.map +1 -1
  126. package/dist/lib/object-storage/index.d.ts +3 -0
  127. package/dist/lib/object-storage/index.d.ts.map +1 -0
  128. package/dist/lib/object-storage/index.js +19 -0
  129. package/dist/lib/object-storage/index.js.map +1 -0
  130. package/dist/lib/object-storage/keys.d.ts +10 -0
  131. package/dist/lib/object-storage/keys.d.ts.map +1 -0
  132. package/dist/lib/object-storage/keys.js +51 -0
  133. package/dist/lib/object-storage/keys.js.map +1 -0
  134. package/dist/lib/object-storage/s3-object-store.d.ts +14 -0
  135. package/dist/lib/object-storage/s3-object-store.d.ts.map +1 -0
  136. package/dist/lib/object-storage/s3-object-store.js +64 -0
  137. package/dist/lib/object-storage/s3-object-store.js.map +1 -0
  138. package/dist/lib/session-artifacts/hashline-diff-guide.d.ts +1 -1
  139. package/dist/lib/session-artifacts/hashline-diff-guide.d.ts.map +1 -1
  140. package/dist/lib/session-artifacts/hashline-diff-guide.js +9 -5
  141. package/dist/lib/session-artifacts/hashline-diff-guide.js.map +1 -1
  142. package/dist/lib/session-artifacts/parse-hashline-diff.d.ts +13 -0
  143. package/dist/lib/session-artifacts/parse-hashline-diff.d.ts.map +1 -1
  144. package/dist/lib/session-artifacts/parse-hashline-diff.js +72 -0
  145. package/dist/lib/session-artifacts/parse-hashline-diff.js.map +1 -1
  146. package/dist/lib/session-pages/artifact-quality-audit.d.ts +16 -0
  147. package/dist/lib/session-pages/artifact-quality-audit.d.ts.map +1 -0
  148. package/dist/lib/session-pages/artifact-quality-audit.js +298 -0
  149. package/dist/lib/session-pages/artifact-quality-audit.js.map +1 -0
  150. package/dist/lib/session-pages/artifact-storage.d.ts +3 -0
  151. package/dist/lib/session-pages/artifact-storage.d.ts.map +1 -1
  152. package/dist/lib/session-pages/artifact-storage.js +94 -85
  153. package/dist/lib/session-pages/artifact-storage.js.map +1 -1
  154. package/dist/lib/session-pages/audit-session-html.d.ts +23 -0
  155. package/dist/lib/session-pages/audit-session-html.d.ts.map +1 -0
  156. package/dist/lib/session-pages/audit-session-html.js +82 -0
  157. package/dist/lib/session-pages/audit-session-html.js.map +1 -0
  158. package/dist/lib/session-pages/contrast-check.d.ts +25 -0
  159. package/dist/lib/session-pages/contrast-check.d.ts.map +1 -0
  160. package/dist/lib/session-pages/contrast-check.js +290 -0
  161. package/dist/lib/session-pages/contrast-check.js.map +1 -0
  162. package/dist/lib/session-pages/deferred-quality-rules.d.ts +7 -0
  163. package/dist/lib/session-pages/deferred-quality-rules.d.ts.map +1 -0
  164. package/dist/lib/session-pages/deferred-quality-rules.js +25 -0
  165. package/dist/lib/session-pages/deferred-quality-rules.js.map +1 -0
  166. package/dist/lib/session-pages/delete-session-artifact.d.ts.map +1 -1
  167. package/dist/lib/session-pages/delete-session-artifact.js +12 -41
  168. package/dist/lib/session-pages/delete-session-artifact.js.map +1 -1
  169. package/dist/lib/session-pages/delete-session-artifacts.d.ts +0 -6
  170. package/dist/lib/session-pages/delete-session-artifacts.d.ts.map +1 -1
  171. package/dist/lib/session-pages/delete-session-artifacts.js +51 -15
  172. package/dist/lib/session-pages/delete-session-artifacts.js.map +1 -1
  173. package/dist/lib/session-pages/html-artifact-template.d.ts +16 -0
  174. package/dist/lib/session-pages/html-artifact-template.d.ts.map +1 -1
  175. package/dist/lib/session-pages/html-artifact-template.js +166 -10
  176. package/dist/lib/session-pages/html-artifact-template.js.map +1 -1
  177. package/dist/lib/session-pages/index.d.ts +4 -0
  178. package/dist/lib/session-pages/index.d.ts.map +1 -1
  179. package/dist/lib/session-pages/index.js +11 -1
  180. package/dist/lib/session-pages/index.js.map +1 -1
  181. package/dist/lib/session-pages/list-session-artifacts.d.ts.map +1 -1
  182. package/dist/lib/session-pages/list-session-artifacts.js +48 -48
  183. package/dist/lib/session-pages/list-session-artifacts.js.map +1 -1
  184. package/dist/lib/session-pages/read-session-artifacts.d.ts.map +1 -1
  185. package/dist/lib/session-pages/read-session-artifacts.js +4 -26
  186. package/dist/lib/session-pages/read-session-artifacts.js.map +1 -1
  187. package/dist/lib/session-pages/resolve-session-account-id.d.ts +3 -0
  188. package/dist/lib/session-pages/resolve-session-account-id.d.ts.map +1 -0
  189. package/dist/lib/session-pages/resolve-session-account-id.js +31 -0
  190. package/dist/lib/session-pages/resolve-session-account-id.js.map +1 -0
  191. package/dist/lib/session-pages/write-binary-session-artifact.d.ts +12 -0
  192. package/dist/lib/session-pages/write-binary-session-artifact.d.ts.map +1 -0
  193. package/dist/lib/session-pages/write-binary-session-artifact.js +23 -0
  194. package/dist/lib/session-pages/write-binary-session-artifact.js.map +1 -0
  195. package/dist/lib/session-pages/write-session-artifacts.d.ts +1 -2
  196. package/dist/lib/session-pages/write-session-artifacts.d.ts.map +1 -1
  197. package/dist/lib/session-pages/write-session-artifacts.js +12 -1
  198. package/dist/lib/session-pages/write-session-artifacts.js.map +1 -1
  199. package/dist/lib/session-plans/build-plan.d.ts +74 -0
  200. package/dist/lib/session-plans/build-plan.d.ts.map +1 -0
  201. package/dist/lib/session-plans/build-plan.js +165 -0
  202. package/dist/lib/session-plans/build-plan.js.map +1 -0
  203. package/dist/lib/yjs-pending/flush-lock.d.ts +6 -0
  204. package/dist/lib/yjs-pending/flush-lock.d.ts.map +1 -0
  205. package/dist/lib/yjs-pending/flush-lock.js +43 -0
  206. package/dist/lib/yjs-pending/flush-lock.js.map +1 -0
  207. package/dist/lib/yjs-pending/flush-worker.d.ts +5 -0
  208. package/dist/lib/yjs-pending/flush-worker.d.ts.map +1 -0
  209. package/dist/lib/yjs-pending/flush-worker.js +75 -0
  210. package/dist/lib/yjs-pending/flush-worker.js.map +1 -0
  211. package/dist/lib/yjs-pending/yjs-pending-updates-repository.d.ts +22 -0
  212. package/dist/lib/yjs-pending/yjs-pending-updates-repository.d.ts.map +1 -0
  213. package/dist/lib/yjs-pending/yjs-pending-updates-repository.js +3 -0
  214. package/dist/lib/yjs-pending/yjs-pending-updates-repository.js.map +1 -0
  215. package/dist/lib/yjs-pending/yjs-persistence.d.ts +23 -0
  216. package/dist/lib/yjs-pending/yjs-persistence.d.ts.map +1 -0
  217. package/dist/lib/yjs-pending/yjs-persistence.js +222 -0
  218. package/dist/lib/yjs-pending/yjs-persistence.js.map +1 -0
  219. package/dist/realtime/reset-session-artifact-y-docs.d.ts.map +1 -1
  220. package/dist/realtime/reset-session-artifact-y-docs.js +1 -6
  221. package/dist/realtime/reset-session-artifact-y-docs.js.map +1 -1
  222. package/dist/realtime/session-artifact-y-socket-io.d.ts +0 -5
  223. package/dist/realtime/session-artifact-y-socket-io.d.ts.map +1 -1
  224. package/dist/realtime/session-artifact-y-socket-io.js +5 -69
  225. package/dist/realtime/session-artifact-y-socket-io.js.map +1 -1
  226. package/dist/realtime/session-artifact-yjs-store.d.ts +18 -32
  227. package/dist/realtime/session-artifact-yjs-store.d.ts.map +1 -1
  228. package/dist/realtime/session-artifact-yjs-store.js +135 -233
  229. package/dist/realtime/session-artifact-yjs-store.js.map +1 -1
  230. package/dist/routes/sessions.d.ts.map +1 -1
  231. package/dist/routes/sessions.js +26 -6
  232. package/dist/routes/sessions.js.map +1 -1
  233. package/dist/routes/skills.d.ts +2 -0
  234. package/dist/routes/skills.d.ts.map +1 -0
  235. package/dist/routes/skills.js +140 -0
  236. package/dist/routes/skills.js.map +1 -0
  237. package/dist/server.d.ts.map +1 -1
  238. package/dist/server.js +2 -0
  239. package/dist/server.js.map +1 -1
  240. package/package.json +9 -9
  241. package/dist/agents/blocknote.agent.d.ts +0 -6
  242. package/dist/agents/blocknote.agent.d.ts.map +0 -1
  243. package/dist/agents/blocknote.agent.js +0 -18
  244. package/dist/agents/blocknote.agent.js.map +0 -1
  245. package/dist/agents/filingramp-fetch.agent.d.ts +0 -4
  246. package/dist/agents/filingramp-fetch.agent.d.ts.map +0 -1
  247. package/dist/agents/filingramp-fetch.agent.js +0 -195
  248. package/dist/agents/filingramp-fetch.agent.js.map +0 -1
  249. package/dist/agents/knowledge/filingramp-endpoints.d.ts +0 -23
  250. package/dist/agents/knowledge/filingramp-endpoints.d.ts.map +0 -1
  251. package/dist/agents/knowledge/filingramp-endpoints.js +0 -116
  252. package/dist/agents/knowledge/filingramp-endpoints.js.map +0 -1
  253. package/dist/agents/shared/blocknote-system-prompt.d.ts +0 -2
  254. package/dist/agents/shared/blocknote-system-prompt.d.ts.map +0 -1
  255. package/dist/agents/shared/blocknote-system-prompt.js +0 -40
  256. package/dist/agents/shared/blocknote-system-prompt.js.map +0 -1
  257. package/dist/agents/shared/get-latest-session-artifact.tool.d.ts +0 -7
  258. package/dist/agents/shared/get-latest-session-artifact.tool.d.ts.map +0 -1
  259. package/dist/agents/shared/get-latest-session-artifact.tool.js +0 -43
  260. package/dist/agents/shared/get-latest-session-artifact.tool.js.map +0 -1
  261. package/dist/agents/shared/get-session-artifact-content.tool.d.ts +0 -7
  262. package/dist/agents/shared/get-session-artifact-content.tool.d.ts.map +0 -1
  263. package/dist/agents/shared/get-session-artifact-content.tool.js +0 -44
  264. package/dist/agents/shared/get-session-artifact-content.tool.js.map +0 -1
  265. package/dist/agents/shared/list-session-artifact-paths.tool.d.ts +0 -5
  266. package/dist/agents/shared/list-session-artifact-paths.tool.d.ts.map +0 -1
  267. package/dist/agents/shared/list-session-artifact-paths.tool.js +0 -37
  268. package/dist/agents/shared/list-session-artifact-paths.tool.js.map +0 -1
  269. package/dist/lib/ai/agent-ai-service.d.ts +0 -3
  270. package/dist/lib/ai/agent-ai-service.d.ts.map +0 -1
  271. package/dist/lib/ai/agent-ai-service.js +0 -15
  272. package/dist/lib/ai/agent-ai-service.js.map +0 -1
  273. package/dist/lib/ai/ai-error-details.d.ts +0 -13
  274. package/dist/lib/ai/ai-error-details.d.ts.map +0 -1
  275. package/dist/lib/ai/ai-error-details.js +0 -84
  276. package/dist/lib/ai/ai-error-details.js.map +0 -1
  277. package/dist/lib/ai/generate-ai-text.d.ts +0 -12
  278. package/dist/lib/ai/generate-ai-text.d.ts.map +0 -1
  279. package/dist/lib/ai/generate-ai-text.js +0 -105
  280. package/dist/lib/ai/generate-ai-text.js.map +0 -1
  281. package/dist/lib/ai/run-explicit-agent.d.ts +0 -15
  282. package/dist/lib/ai/run-explicit-agent.d.ts.map +0 -1
  283. package/dist/lib/ai/run-explicit-agent.js +0 -30
  284. package/dist/lib/ai/run-explicit-agent.js.map +0 -1
  285. package/dist/lib/notebooks/notebook-sql-client.d.ts +0 -5
  286. package/dist/lib/notebooks/notebook-sql-client.d.ts.map +0 -1
  287. package/dist/lib/notebooks/notebook-sql-client.js +0 -37
  288. package/dist/lib/notebooks/notebook-sql-client.js.map +0 -1
  289. package/dist/lib/notebooks/notebook-sql-schema.d.ts +0 -16
  290. package/dist/lib/notebooks/notebook-sql-schema.d.ts.map +0 -1
  291. package/dist/lib/notebooks/notebook-sql-schema.js +0 -117
  292. package/dist/lib/notebooks/notebook-sql-schema.js.map +0 -1
  293. package/dist/lib/notebooks/notebook-sql.d.ts +0 -9
  294. package/dist/lib/notebooks/notebook-sql.d.ts.map +0 -1
  295. package/dist/lib/notebooks/notebook-sql.js +0 -36
  296. package/dist/lib/notebooks/notebook-sql.js.map +0 -1
  297. package/dist/lib/session-artifacts/apply-hashline-edits.d.ts +0 -3
  298. package/dist/lib/session-artifacts/apply-hashline-edits.d.ts.map +0 -1
  299. package/dist/lib/session-artifacts/apply-hashline-edits.js +0 -25
  300. package/dist/lib/session-artifacts/apply-hashline-edits.js.map +0 -1
  301. package/dist/lib/session-artifacts/artifact-text-edit.d.ts +0 -8
  302. package/dist/lib/session-artifacts/artifact-text-edit.d.ts.map +0 -1
  303. package/dist/lib/session-artifacts/artifact-text-edit.js +0 -23
  304. package/dist/lib/session-artifacts/artifact-text-edit.js.map +0 -1
  305. package/dist/lib/session-artifacts/hashline-tag.d.ts +0 -33
  306. package/dist/lib/session-artifacts/hashline-tag.d.ts.map +0 -1
  307. package/dist/lib/session-artifacts/hashline-tag.js +0 -80
  308. package/dist/lib/session-artifacts/hashline-tag.js.map +0 -1
  309. package/dist/lib/session-pages/inject-preview-error-reporter.d.ts +0 -3
  310. package/dist/lib/session-pages/inject-preview-error-reporter.d.ts.map +0 -1
  311. package/dist/lib/session-pages/inject-preview-error-reporter.js +0 -30
  312. package/dist/lib/session-pages/inject-preview-error-reporter.js.map +0 -1
  313. package/dist/lib/session-pages/read-session-artifact.d.ts +0 -7
  314. package/dist/lib/session-pages/read-session-artifact.d.ts.map +0 -1
  315. package/dist/lib/session-pages/read-session-artifact.js +0 -60
  316. package/dist/lib/session-pages/read-session-artifact.js.map +0 -1
  317. package/dist/lib/session-pages/session-pico-css.d.ts +0 -5
  318. package/dist/lib/session-pages/session-pico-css.d.ts.map +0 -1
  319. package/dist/lib/session-pages/session-pico-css.js +0 -11
  320. package/dist/lib/session-pages/session-pico-css.js.map +0 -1
  321. package/dist/realtime/realtime-auth.d.ts +0 -12
  322. package/dist/realtime/realtime-auth.d.ts.map +0 -1
  323. package/dist/realtime/realtime-auth.js +0 -25
  324. package/dist/realtime/realtime-auth.js.map +0 -1
  325. package/dist/realtime/yjs-account-namespace.d.ts +0 -5
  326. package/dist/realtime/yjs-account-namespace.d.ts.map +0 -1
  327. package/dist/realtime/yjs-account-namespace.js +0 -21
  328. package/dist/realtime/yjs-account-namespace.js.map +0 -1
  329. package/dist/routes/notebooks/sql-execute.d.ts +0 -3
  330. package/dist/routes/notebooks/sql-execute.d.ts.map +0 -1
  331. package/dist/routes/notebooks/sql-execute.js +0 -45
  332. package/dist/routes/notebooks/sql-execute.js.map +0 -1
  333. package/dist/routes/sql.d.ts +0 -2
  334. package/dist/routes/sql.d.ts.map +0 -1
  335. package/dist/routes/sql.js +0 -50
  336. package/dist/routes/sql.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"custom-skill-repository.js","sourceRoot":"","sources":["../../../src/agents/skills/custom-skill-repository.ts"],"names":[],"mappings":""}
@@ -0,0 +1,3 @@
1
+ import type { GenerationSkill } from './types';
2
+ export declare const dataVizSkill: GenerationSkill;
3
+ //# sourceMappingURL=data-viz.skill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-viz.skill.d.ts","sourceRoot":"","sources":["../../../src/agents/skills/data-viz.skill.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,eAAO,MAAM,YAAY,EAAE,eAqC1B,CAAA"}
@@ -0,0 +1,42 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.dataVizSkill = void 0;
4
+ exports.dataVizSkill = {
5
+ name: 'data-viz',
6
+ description: 'Charts, KPI stat cards, sparklines, tables that read well',
7
+ whenToUse: 'Pages with metrics, statistics, time series, comparisons, or any numeric data.',
8
+ instructions: `## data-viz
9
+
10
+ Numbers deserve visuals. Never present a dataset as a bare table alone — lead with KPIs and a chart, keep the table as detail.
11
+
12
+ ### Chart selection
13
+ - Trend over time → line/area chart. Comparison across categories → horizontal bar (vertical only when labels are short). Part-of-whole → doughnut ONLY with ≤5 slices, else bar. Distribution → histogram-style bar. Two variables → scatter.
14
+ - One message per chart. If a chart needs a paragraph to explain, split it.
15
+
16
+ ### KPI stat row (top of data pages)
17
+ <section class="kpis"> with 3-5 cards: label (small, muted, uppercase tracking), value (2-2.5rem, font-weight 700, font-variant-numeric: tabular-nums), delta chip (▲/▼ + %, color-coded — pair with the symbol, never color alone). Grid: repeat(auto-fit, minmax(180px, 1fr)).
18
+
19
+ ### Chart.js recipe (data-heavy pages)
20
+ Load once before your script: <script src="https://cdn.jsdelivr.net/npm/chart.js@4"></script>
21
+ Theme-aware defaults — read colors from CSS so light/dark both work:
22
+ const css = getComputedStyle(document.documentElement)
23
+ const textColor = css.getPropertyValue('--pico-color').trim()
24
+ const gridColor = css.getPropertyValue('--pico-muted-border-color').trim()
25
+ Chart.defaults.color = textColor; Chart.defaults.borderColor = gridColor
26
+ Chart.defaults.font.family = css.getPropertyValue('--pico-font-family')
27
+ - Wrap every canvas in a sized container (<div style="position:relative;height:320px">) with maintainAspectRatio: false — unsized canvases explode layouts.
28
+ - Line charts: tension 0.3, thin points (radius 0-2, hover 4), subtle area fill via accent at low alpha.
29
+ - Bars: borderRadius 6, category spacing; hide vertical gridlines (x: { grid: { display: false } }).
30
+ - Legend only when >1 series; tooltips on; no chart titles inside the canvas (use an <h3> above).
31
+
32
+ ### Categorical palette (color-blind safe, works on light and dark)
33
+ #6366f1 #0ea5e9 #10b981 #f59e0b #ef4444 #8b5cf6 — use in this order; series >6 means the chart is overloaded, aggregate instead.
34
+
35
+ ### Inline SVG sparkline (when Chart.js is overkill)
36
+ <svg viewBox="0 0 100 28" preserveAspectRatio="none" class="spark"><polyline fill="none" stroke="var(--accent)" stroke-width="2" points="0,20 15,16 30,18 45,10 60,12 75,6 90,9 100,4"/></svg>
37
+ Compute points from data in <script> when values are dynamic.
38
+
39
+ ### Tables as detail
40
+ Wrap in a card with a toolbar (search input filtering rows); right-align numeric columns with tabular-nums; zebra via odd:bg-* striping or a subtle row hover; cap visible rows and add a "show all" toggle for long data. Ship 8–15 rows of realistic, varied sample data (real-sounding names/companies, plausible spread of values) — a 3-row table with "John Doe / Example Corp" reads as a broken demo.`,
41
+ };
42
+ //# sourceMappingURL=data-viz.skill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"data-viz.skill.js","sourceRoot":"","sources":["../../../src/agents/skills/data-viz.skill.ts"],"names":[],"mappings":";;;AAEa,QAAA,YAAY,GAAoB;IAC3C,IAAI,EAAE,UAAU;IAChB,WAAW,EAAE,2DAA2D;IACxE,SAAS,EAAE,gFAAgF;IAC3F,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8YAgC8X;CAC7Y,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { GenerationSkill } from './types';
2
+ export declare const designerSkill: GenerationSkill;
3
+ //# sourceMappingURL=designer.skill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"designer.skill.d.ts","sourceRoot":"","sources":["../../../src/agents/skills/designer.skill.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,eAAO,MAAM,aAAa,EAAE,eAiG3B,CAAA"}
@@ -0,0 +1,101 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.designerSkill = void 0;
4
+ exports.designerSkill = {
5
+ name: 'designer',
6
+ description: 'Advanced visual design: diverse layout packs, signature systems, typography, atmosphere, polish — never a single SaaS template',
7
+ whenToUse: 'Every UI/HTML page. Always include for any .html artifact.',
8
+ instructions: `## designer
9
+
10
+ Goal: every session should feel like a distinct 2025–2026 product — rich, modern, and different from the last one. Tailwind Play CDN is on (preflight): utility-class every visible element. Use a small <style> only for fonts, keyframes, and atmosphere (mesh/grain/noise).
11
+
12
+ ### Diversity mandate (non-negotiable)
13
+ Do NOT invent from a mental default of "sticky glass nav + centered headline + blur orb + 3 feature cards". That skeleton is BANNED as a default.
14
+ 1. Read the brief's **layout pack** + **signature** first.
15
+ 2. Compose the first viewport to match THAT pack — invent structure; do not paste a generic template.
16
+ 3. Across sessions, vary composition deliberately. Same accent with the same centered blob hero = fail.
17
+ 4. Within a session, keep ONE design system (tokens, chrome, type) — diversity is across products, consistency is within a product.
18
+
19
+ ### Design brief is law
20
+ Use the brief's accent as LITERAL hex utilities (bg-[#0EA5E9] hover:bg-[#0284C7]) — same hex everywhere. One neutral scale (slate OR zinc OR stone OR neutral). Never indigo/violet defaults unless the brief names them. Never Inter. Never bg-[var(--x)] class names (undefined vars fail the gate).
21
+ Honor: **radius** (sharp | soft | pill), **density** (airy | comfortable | dense), **signature**, **atmosphere**, **anti-cliché**.
22
+
23
+ ### Accent contrast (buttons & labels)
24
+ Bright accents (#1DB954, lime, cyan-400, etc.) fail WCAG with white text and as body/eyebrow text on white. Prefer one of:
25
+ - CTA: dark text on bright fill — e.g. \`bg-[#1DB954] text-slate-950\` (not text-white)
26
+ - Or darken the fill for white text — e.g. \`bg-[#15803d] text-white\`
27
+ - Accent-as-text: darker shade of the brief accent, not the bright fill hex on white
28
+ Never waste turns "fixing contrast" by nudging slate body text — fix the accent/button pairing once.
29
+
30
+ ### Layout packs — build the composition the pack implies
31
+ Pick (or follow) exactly one. Section rhythm and chrome must match the pack, not a generic launch page.
32
+
33
+ - **launch** — Marketing narrative. Full-bleed hero edge-to-edge; brand-first; then 2–3 sections with alternating alignment (NOT everything centered); social proof; pricing or final CTA. Still invent a distinctive hero (split, offset type, framed UI mock) — not the default centered blob.
34
+ - **split-hero** — First viewport is 50/50 (or 40/60) text + framed product UI / abstract SVG. Nav can be minimal. No centered single-column hero.
35
+ - **product** — App/dashboard density: glass or solid chrome header; KPI/toolbar row; card grid or sidebar+main; tables in cards. First viewport is the workspace, not a marketing hero.
36
+ - **workspace** — Persistent sidebar + main canvas from the first paint. Dense controls, quiet chrome. Marketing sections are out of place.
37
+ - **editorial** / **magazine** — Strong type hierarchy, asymmetric columns, pull quotes, accent border-l callouts, generous measure (max-w-2xl for body). Hero may be typographic only — huge display, little ornament.
38
+ - **bento** — Uneven modular grid (varied col/row spans). Modules have different jobs/sizes — never three equal cards in a row as the hero.
39
+ - **dark-terminal** — Near-black ground, mono or semi-mono accents, tight tracking, hard borders, minimal blur/glass. Green/amber/cyan terminal accents when topic-fit.
40
+ - **brutalist** — Hard edges (radius sharp), high contrast, visible structure, little or no blur/glass/orb. Typography does the work.
41
+ - **story** — Full-bleed stacked chapters, scroll narrative, minimal persistent nav. Each section is one beat; motion is scroll-tied (respect prefers-reduced-motion).
42
+
43
+ ### Signature system (required in brief — execute literally)
44
+ Name and ship ONE of each:
45
+ - **Signature layout**: asymmetric | split | stacked | bento | magazine | terminal-rail | sidebar-first
46
+ - **Signature surface**: paper grain | hard grid | ink wash | soft glass | flat ink | mesh drift | noise film — pick ONE primary; do not stack all
47
+ - **Signature motion** (2–3 max total on the page): hero entrance | card lift | scroll reveal | type stagger | mesh drift — behind prefers-reduced-motion; never decorative noise
48
+
49
+ ### Radius & density
50
+ - **sharp**: rounded-none / rounded-sm; hard separators
51
+ - **soft**: rounded-xl / rounded-2xl (default only when brief says soft)
52
+ - **pill**: rounded-full on controls and chips; keep cards softer or sharper per brief
53
+ - **airy**: py-24+, sparse; **comfortable**: py-16/20; **dense**: py-8–12, tighter gaps, compact type
54
+
55
+ ### Brand-first first viewport
56
+ ONE composition: brand/product name as a hero-level signal (unless pack is product/workspace — then brand lives in chrome), one headline, one supporting sentence, one CTA pair (marketing packs), one dominant visual plane matching the signature surface.
57
+ - Launch/story/split-hero: full-bleed section background; max-w column INSIDE the section. Never put the hero inside a rounded card.
58
+ - Brand must still read if the nav disappeared (marketing packs).
59
+ - At most one quiet eyebrow — no floating stickers, KPI strips, or promo chips on hero media.
60
+ - Product/workspace packs: first viewport IS the app chrome + primary content — skip marketing hero rules.
61
+
62
+ ### Atmosphere (required — flat white/black slabs fail)
63
+ Depth without clutter. Follow the brief's signature surface. Examples (pick what the brief named):
64
+ - Soft accent-tint wash on the hero
65
+ - Mesh blob (blur-3xl, low opacity) — ONLY when signature allows soft glass/mesh; banned for brutalist/terminal
66
+ - Subtle grain / noise film at 3–5% opacity
67
+ - Hard grid overlay (brutalist / terminal)
68
+ - Glass chrome when signature is soft glass — not mandatory for every pack
69
+ Never neon saturated walls. Atmosphere supports content.
70
+
71
+ ### Typography
72
+ Load the brief's Google Fonts <link> + wire font-family on body in <style>. Max two families. Pair by intent (examples — invent others when brief names them):
73
+ - Product: Manrope + Plus Jakarta Sans · Instrument Sans + Source Sans 3
74
+ - Tech: Sora + Space Grotesk · IBM Plex Sans + IBM Plex Mono
75
+ - Editorial: Fraunces + Newsreader · Libre Baskerville + Source Serif 4
76
+ - Friendly: Outfit + DM Sans · Nunito + Figtree
77
+ - Terminal: JetBrains Mono + IBM Plex Sans · Geist Mono + Satoshi-like via Space Grotesk
78
+ Never Inter. Scale: marketing heroes text-5xl→lg:text-7xl font-extrabold tracking-tight; editorial may go larger with serif; product/workspace use tighter display (text-2xl/3xl). Body text-base/lg; secondary text-slate-500 (or zinc/stone). tabular-nums on metrics.
79
+
80
+ ### Structural recipes (describe — do NOT copy as fixed HTML)
81
+ Invent markup from the pack. These are jobs, not templates:
82
+ - **Nav**: sticky or static; glass OR solid OR invisible until scroll — match signature. Mobile drawer required when links collapse. Primary actions ≥44px.
83
+ - **Hero**: match pack (split / typographic / workspace shell / bento opener / story chapter 1). Dominant visual = abstract SVG, UI mock, grid, or type — never hotlinked photos.
84
+ - **Features**: alternate alignment, bento modules, or editorial callouts — not three identical icon cards unless the brief asks.
85
+ - **KPI / pricing**: product pack or pricing section only — never soup the marketing first viewport with KPIs.
86
+ - **Footer**: real product name + working relative links.
87
+
88
+ ### Icons
89
+ Inline Lucide/Heroicons SVG only (stroke="currentColor" stroke-width="2" class="h-5 w-5"). Never emoji. Feature icons in rounded badges only when radius/signature allow.
90
+
91
+ ### Interactions & polish (same write — do not iterate)
92
+ - Hover + focus-visible:ring-2 ring-offset-2 on controls; nav links transition-colors
93
+ - 2–3 purposeful motions max, matching signature motion
94
+ - body { background } matches scheme; gutters never flash wrong on dark pages
95
+ - One <h1>; every section one job; no dead href="#"; no lorem; no "Welcome to"
96
+ - Mentally check 360px and 1280px
97
+
98
+ ### Automatic fails
99
+ Indigo/violet-on-white gradient cliché · Inter · emoji icons · hero-in-a-card · first-viewport KPI soup on marketing packs · flat unstyled sections · external raster images · template adjectives (revolutionary/seamless/cutting-edge/unleash/empower) · default centered blur-orb hero when the brief asked for another pack/signature · three equal feature cards as the whole personality of the page`,
100
+ };
101
+ //# sourceMappingURL=designer.skill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"designer.skill.js","sourceRoot":"","sources":["../../../src/agents/skills/designer.skill.ts"],"names":[],"mappings":";;;AAEa,QAAA,aAAa,GAAoB;IAC5C,IAAI,EAAE,UAAU;IAChB,WAAW,EACT,gIAAgI;IAClI,SAAS,EAAE,4DAA4D;IACvE,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;2YA2F2X;CAC1Y,CAAA"}
@@ -0,0 +1,3 @@
1
+ import type { GenerationSkill } from './types';
2
+ export declare const formsSkill: GenerationSkill;
3
+ //# sourceMappingURL=forms.skill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forms.skill.d.ts","sourceRoot":"","sources":["../../../src/agents/skills/forms.skill.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,eAAO,MAAM,UAAU,EAAE,eAgCxB,CAAA"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.formsSkill = void 0;
4
+ exports.formsSkill = {
5
+ name: 'forms',
6
+ description: 'Form UX: validation timing, inline errors, multi-step flows, success states',
7
+ whenToUse: 'Pages with user input: signup/contact/checkout/settings forms, wizards, feedback widgets.',
8
+ instructions: `## forms
9
+
10
+ Forms are judged by how they fail. Build the error and success paths, not just the happy markup.
11
+
12
+ ### Structure
13
+ - One <label> per control, always visible (placeholders are hints, never labels). Group related fields with <fieldset><legend>.
14
+ - Right input types and autocomplete attrs: type="email" autocomplete="email", inputmode="numeric" for codes, autocomplete="name|tel|postal-code|current-password" etc. — mobile keyboards and autofill depend on them.
15
+ - Mark optional fields with "(optional)" in the label rather than starring required ones when most fields are required.
16
+ - Single-column layout; short related fields (city/zip) may share a row. Primary submit button full-width or right-aligned, styled with the accent; never two competing primary buttons.
17
+
18
+ ### Validation timing (the part everyone gets wrong)
19
+ - Validate a field on blur, not on every keystroke; once a field has shown an error, re-validate on input so the error clears the moment it is fixed.
20
+ - On submit: preventDefault, validate all, focus the first invalid field, and show a compact error summary at the top if more than one field failed.
21
+ - Use novalidate on the <form> and run your own checks (Checking validity via input.validity is fine) so styling stays consistent.
22
+
23
+ ### Error display
24
+ - Inline, under the field: <small class="error" id="email-error">Enter a valid email, like name@company.com</small>; set aria-describedby="email-error" and aria-invalid="true" on the input, and style the invalid state (e.g. aria-invalid:border-red-500 or a .error class).
25
+ - Error copy says how to fix, not what failed: "Password needs at least 8 characters" beats "Invalid password".
26
+ - Never disable the submit button as the only validation strategy — let users submit and see what is missing.
27
+
28
+ ### Multi-step (wizard) forms
29
+ - Step indicator with current/total and step names; one <section> per step, hidden attr on inactive ones; validate the current step before advancing; Back never loses data.
30
+ - Persist draft state to localStorage on change so refresh does not wipe progress; clear it on success.
31
+
32
+ ### Async submit & success
33
+ - On submit: button disables to block double-submit and shows a busy state (spinner SVG or "Sending…" label + reduced opacity); simulate the request when there is no backend (setTimeout ~800ms).
34
+ - Success replaces the form (or shows a distinct panel): checkmark icon, confirmation headline, what happens next. Keep it in the DOM (hidden) from the start and toggle.
35
+ - Failure shows a retryable, non-destructive error banner above the form — never wipe entered data.`,
36
+ };
37
+ //# sourceMappingURL=forms.skill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"forms.skill.js","sourceRoot":"","sources":["../../../src/agents/skills/forms.skill.ts"],"names":[],"mappings":";;;AAEa,QAAA,UAAU,GAAoB;IACzC,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,6EAA6E;IAC1F,SAAS,EAAE,2FAA2F;IACtG,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;oGA2BoF;CACnG,CAAA"}
@@ -0,0 +1,6 @@
1
+ export type { GenerationSkill } from './types';
2
+ export { GENERATION_SKILLS, STATIC_SKILL_GUIDES, getSkillCatalog, mergeSkills, buildSkillGuidance, } from './registry';
3
+ export { extractRequestedSkills, inferRequestedSkills, extractDesignTokens, createSkillInjectingPrepareStep, } from './skill-injection';
4
+ export { loadAccountSkills, getContextAccountId, type AccountSkillLoader, } from './account-skill-loader';
5
+ export type { CustomSkillRecord, CreateCustomSkillInput, UpdateCustomSkillInput, CustomSkillRepository, } from './custom-skill-repository';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/agents/skills/index.ts"],"names":[],"mappings":"AAAA,YAAY,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAC9C,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,eAAe,EACf,WAAW,EACX,kBAAkB,GACnB,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,sBAAsB,EACtB,oBAAoB,EACpB,mBAAmB,EACnB,+BAA+B,GAChC,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,KAAK,kBAAkB,GACxB,MAAM,wBAAwB,CAAA;AAC/B,YAAY,EACV,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,2BAA2B,CAAA"}
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getContextAccountId = exports.loadAccountSkills = exports.createSkillInjectingPrepareStep = exports.extractDesignTokens = exports.inferRequestedSkills = exports.extractRequestedSkills = exports.buildSkillGuidance = exports.mergeSkills = exports.getSkillCatalog = exports.STATIC_SKILL_GUIDES = exports.GENERATION_SKILLS = void 0;
4
+ var registry_1 = require("./registry");
5
+ Object.defineProperty(exports, "GENERATION_SKILLS", { enumerable: true, get: function () { return registry_1.GENERATION_SKILLS; } });
6
+ Object.defineProperty(exports, "STATIC_SKILL_GUIDES", { enumerable: true, get: function () { return registry_1.STATIC_SKILL_GUIDES; } });
7
+ Object.defineProperty(exports, "getSkillCatalog", { enumerable: true, get: function () { return registry_1.getSkillCatalog; } });
8
+ Object.defineProperty(exports, "mergeSkills", { enumerable: true, get: function () { return registry_1.mergeSkills; } });
9
+ Object.defineProperty(exports, "buildSkillGuidance", { enumerable: true, get: function () { return registry_1.buildSkillGuidance; } });
10
+ var skill_injection_1 = require("./skill-injection");
11
+ Object.defineProperty(exports, "extractRequestedSkills", { enumerable: true, get: function () { return skill_injection_1.extractRequestedSkills; } });
12
+ Object.defineProperty(exports, "inferRequestedSkills", { enumerable: true, get: function () { return skill_injection_1.inferRequestedSkills; } });
13
+ Object.defineProperty(exports, "extractDesignTokens", { enumerable: true, get: function () { return skill_injection_1.extractDesignTokens; } });
14
+ Object.defineProperty(exports, "createSkillInjectingPrepareStep", { enumerable: true, get: function () { return skill_injection_1.createSkillInjectingPrepareStep; } });
15
+ var account_skill_loader_1 = require("./account-skill-loader");
16
+ Object.defineProperty(exports, "loadAccountSkills", { enumerable: true, get: function () { return account_skill_loader_1.loadAccountSkills; } });
17
+ Object.defineProperty(exports, "getContextAccountId", { enumerable: true, get: function () { return account_skill_loader_1.getContextAccountId; } });
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/agents/skills/index.ts"],"names":[],"mappings":";;;AACA,uCAMmB;AALjB,6GAAA,iBAAiB,OAAA;AACjB,+GAAA,mBAAmB,OAAA;AACnB,2GAAA,eAAe,OAAA;AACf,uGAAA,WAAW,OAAA;AACX,8GAAA,kBAAkB,OAAA;AAEpB,qDAK0B;AAJxB,yHAAA,sBAAsB,OAAA;AACtB,uHAAA,oBAAoB,OAAA;AACpB,sHAAA,mBAAmB,OAAA;AACnB,kIAAA,+BAA+B,OAAA;AAEjC,+DAI+B;AAH7B,yHAAA,iBAAiB,OAAA;AACjB,2HAAA,mBAAmB,OAAA"}
@@ -0,0 +1,3 @@
1
+ import type { GenerationSkill } from './types';
2
+ export declare const interactionsSkill: GenerationSkill;
3
+ //# sourceMappingURL=interactions.skill.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactions.skill.d.ts","sourceRoot":"","sources":["../../../src/agents/skills/interactions.skill.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAE9C,eAAO,MAAM,iBAAiB,EAAE,eA0B/B,CAAA"}
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.interactionsSkill = void 0;
4
+ exports.interactionsSkill = {
5
+ name: 'interactions',
6
+ description: 'Tabs, modals, filtering, sorting, scroll reveals, persisted state — vanilla JS recipes',
7
+ whenToUse: 'Pages with stateful behavior: switching views, filtering/sorting collections, dialogs, animated content.',
8
+ instructions: `## interactions
9
+
10
+ Real behavior in <script>, vanilla JS, no frameworks. Wire everything with addEventListener on DOMContentLoaded (or place scripts at fragment end); use data-* attributes to connect controls to targets; never inline onclick handlers.
11
+
12
+ ### Recipes
13
+ - **Mobile nav**: md:hidden menu button toggles a panel (fixed inset or header dropdown) with the same links; aria-expanded on the button; Esc + backdrop click closes. A sticky header without this looks broken on phones.
14
+ - **Tabs**: buttons with role="tab" + aria-selected in a role="tablist"; panels with role="tabpanel" + hidden attr. Arrow keys move focus between tabs. Toggle by flipping hidden + aria-selected.
15
+ - **Modal**: native <dialog>; open with dialog.showModal() (focus trap + Esc for free); close button inside plus click-on-backdrop close (event.target === dialog). Style ::backdrop with a blur.
16
+ - **Accordion**: native <details>/<summary> styled as cards; add name="group" for exclusive-open behavior.
17
+ - **Live filter/search**: one input, on 'input' toggle a .hidden class per item by textContent match (lowercased includes). Show an empty-state element when nothing matches. Debounce only if the list is huge.
18
+ - **Sortable table**: click th toggles asc/desc (aria-sort), sorts rows with Array.from(tbody.rows).sort(), re-appends. Numeric columns compare Number(cell.dataset.value ?? cell.textContent).
19
+ - **Reveal on scroll**: IntersectionObserver adds .visible once (then unobserve); CSS: .reveal { opacity: 0; translate: 0 16px; transition: .5s ease } .reveal.visible { opacity: 1; translate: 0 }.
20
+ - **Animated counters**: on first intersection, tween from 0 to target over ~800ms with requestAnimationFrame + ease-out; format with toLocaleString().
21
+ - **Persisted state**: read/write one JSON blob in localStorage (single namespaced key like 'app:<page>:state') for theme choice, filters, form drafts, todo items. Hydrate on load inside try/catch — corrupt storage must not break the page.
22
+ - **Toasts**: single fixed container; appended elements auto-remove after ~3.5s; role="status" so screen readers announce.
23
+
24
+ ### Rules
25
+ - Every animation and transition sits behind: @media (prefers-reduced-motion: reduce) { * { animation: none !important; transition: none !important } } — or gate JS tweens on matchMedia('(prefers-reduced-motion: reduce)').
26
+ - Keyboard first: anything clickable is a <button> or <a>, never a div with a handler. Esc closes overlays. Focus-visible styles stay intact.
27
+ - State updates re-render from data (an array of objects in JS), not by string-concatenating HTML across the page; use <template> elements for repeated items.
28
+ - Guard every querySelector result; a missing node must not throw and kill the rest of the script.
29
+ - No external JS libraries for these patterns — they are all ~20 lines of vanilla each. A CDN library is justified only for genuinely hard problems (charts, maps, 3D).`,
30
+ };
31
+ //# sourceMappingURL=interactions.skill.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"interactions.skill.js","sourceRoot":"","sources":["../../../src/agents/skills/interactions.skill.ts"],"names":[],"mappings":";;;AAEa,QAAA,iBAAiB,GAAoB;IAChD,IAAI,EAAE,cAAc;IACpB,WAAW,EAAE,wFAAwF;IACrG,SAAS,EAAE,0GAA0G;IACrH,YAAY,EAAE;;;;;;;;;;;;;;;;;;;;;wKAqBwJ;CACvK,CAAA"}
@@ -0,0 +1,23 @@
1
+ import type { GenerationSkill } from './types';
2
+ export declare const GENERATION_SKILLS: GenerationSkill[];
3
+ /**
4
+ * Universal HTML guides baked into artifact prompts. Optional domain guides
5
+ * (forms, charts, interactions) are selected per task by prepareStep. Baking
6
+ * every guide into every call added ~26KB of competing instructions.
7
+ */
8
+ export declare const STATIC_SKILL_GUIDES: string;
9
+ /**
10
+ * Merge account-defined skills over the built-ins. A custom skill with a
11
+ * built-in's name shadows it (brand packs can replace "designer" account-wide);
12
+ * new names are appended in the order given.
13
+ */
14
+ export declare function mergeSkills(customSkills?: GenerationSkill[]): GenerationSkill[];
15
+ /** Compact one-line-per-skill catalog for the orchestrator system prompt. */
16
+ export declare function getSkillCatalog(customSkills?: GenerationSkill[]): string;
17
+ /**
18
+ * Build task-specific guidance on top of the universal guides baked into the
19
+ * system prompt. Account guides remain account-wide and override built-ins.
20
+ * An explicit empty array (doc/data-only work) suppresses all dynamic guides.
21
+ */
22
+ export declare function buildSkillGuidance(names: string[] | undefined, customSkills?: GenerationSkill[]): string | undefined;
23
+ //# sourceMappingURL=registry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../../src/agents/skills/registry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAA;AAS9C,eAAO,MAAM,iBAAiB,EAAE,eAAe,EAQ9C,CAAA;AAID;;;;GAIG;AACH,eAAO,MAAM,mBAAmB,QAIjB,CAAA;AAEf;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,YAAY,GAAE,eAAe,EAAO,GAAG,eAAe,EAAE,CAMnF;AAED,6EAA6E;AAC7E,wBAAgB,eAAe,CAAC,YAAY,GAAE,eAAe,EAAO,GAAG,MAAM,CAI5E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,MAAM,EAAE,GAAG,SAAS,EAC3B,YAAY,GAAE,eAAe,EAAO,GACnC,MAAM,GAAG,SAAS,CAuBpB"}
@@ -0,0 +1,75 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.STATIC_SKILL_GUIDES = exports.GENERATION_SKILLS = void 0;
4
+ exports.mergeSkills = mergeSkills;
5
+ exports.getSkillCatalog = getSkillCatalog;
6
+ exports.buildSkillGuidance = buildSkillGuidance;
7
+ const designer_skill_1 = require("./designer.skill");
8
+ const data_viz_skill_1 = require("./data-viz.skill");
9
+ const interactions_skill_1 = require("./interactions.skill");
10
+ const forms_skill_1 = require("./forms.skill");
11
+ const copywriting_skill_1 = require("./copywriting.skill");
12
+ const a11y_skill_1 = require("./a11y.skill");
13
+ const app_scaffold_skill_1 = require("./app-scaffold.skill");
14
+ exports.GENERATION_SKILLS = [
15
+ designer_skill_1.designerSkill,
16
+ data_viz_skill_1.dataVizSkill,
17
+ interactions_skill_1.interactionsSkill,
18
+ forms_skill_1.formsSkill,
19
+ copywriting_skill_1.copywritingSkill,
20
+ a11y_skill_1.a11ySkill,
21
+ app_scaffold_skill_1.appScaffoldSkill,
22
+ ];
23
+ const STATIC_SKILL_NAMES = new Set(['designer', 'a11y', 'copywriting']);
24
+ /**
25
+ * Universal HTML guides baked into artifact prompts. Optional domain guides
26
+ * (forms, charts, interactions) are selected per task by prepareStep. Baking
27
+ * every guide into every call added ~26KB of competing instructions.
28
+ */
29
+ exports.STATIC_SKILL_GUIDES = exports.GENERATION_SKILLS.filter((skill) => STATIC_SKILL_NAMES.has(skill.name))
30
+ .map((skill) => skill.instructions)
31
+ .join('\n\n');
32
+ /**
33
+ * Merge account-defined skills over the built-ins. A custom skill with a
34
+ * built-in's name shadows it (brand packs can replace "designer" account-wide);
35
+ * new names are appended in the order given.
36
+ */
37
+ function mergeSkills(customSkills = []) {
38
+ const merged = new Map(exports.GENERATION_SKILLS.map((skill) => [skill.name, skill]));
39
+ for (const skill of customSkills) {
40
+ merged.set(skill.name, skill);
41
+ }
42
+ return [...merged.values()];
43
+ }
44
+ /** Compact one-line-per-skill catalog for the orchestrator system prompt. */
45
+ function getSkillCatalog(customSkills = []) {
46
+ return mergeSkills(customSkills)
47
+ .map((skill) => `- ${skill.name} — ${skill.description}. Use for: ${skill.whenToUse}`)
48
+ .join('\n');
49
+ }
50
+ /**
51
+ * Build task-specific guidance on top of the universal guides baked into the
52
+ * system prompt. Account guides remain account-wide and override built-ins.
53
+ * An explicit empty array (doc/data-only work) suppresses all dynamic guides.
54
+ */
55
+ function buildSkillGuidance(names, customSkills = []) {
56
+ if (names !== undefined && names.length === 0) {
57
+ return undefined;
58
+ }
59
+ const customNames = new Set(customSkills.map((skill) => skill.name));
60
+ const requestedNames = new Set(names !== null && names !== void 0 ? names : []);
61
+ const selectedBuiltIns = exports.GENERATION_SKILLS.filter((skill) => requestedNames.has(skill.name) &&
62
+ !STATIC_SKILL_NAMES.has(skill.name) &&
63
+ skill.name !== app_scaffold_skill_1.appScaffoldSkill.name &&
64
+ !customNames.has(skill.name));
65
+ const selected = [...selectedBuiltIns, ...customSkills];
66
+ if (selected.length === 0) {
67
+ return undefined;
68
+ }
69
+ return `# Task-specific skill guides
70
+
71
+ Apply the relevant guides below. Account-defined guides override built-in guidance with the same name or topic.
72
+
73
+ ${selected.map((skill) => skill.instructions).join('\n\n')}`;
74
+ }
75
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../../src/agents/skills/registry.ts"],"names":[],"mappings":";;;AAqCA,kCAMC;AAGD,0CAIC;AAOD,gDA0BC;AAlFD,qDAAgD;AAChD,qDAA+C;AAC/C,6DAAwD;AACxD,+CAA0C;AAC1C,2DAAsD;AACtD,6CAAwC;AACxC,6DAAuD;AAE1C,QAAA,iBAAiB,GAAsB;IAClD,8BAAa;IACb,6BAAY;IACZ,sCAAiB;IACjB,wBAAU;IACV,oCAAgB;IAChB,sBAAS;IACT,qCAAgB;CACjB,CAAA;AAED,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,CAAC,CAAC,CAAA;AAEvE;;;;GAIG;AACU,QAAA,mBAAmB,GAAG,yBAAiB,CAAC,MAAM,CACzD,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAC9C;KACE,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC;KAClC,IAAI,CAAC,MAAM,CAAC,CAAA;AAEf;;;;GAIG;AACH,SAAgB,WAAW,CAAC,eAAkC,EAAE;IAC9D,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,yBAAiB,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC,CAAC,CAAA;IAC7E,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;QACjC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,CAAA;IAC/B,CAAC;IACD,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,CAAA;AAC7B,CAAC;AAED,6EAA6E;AAC7E,SAAgB,eAAe,CAAC,eAAkC,EAAE;IAClE,OAAO,WAAW,CAAC,YAAY,CAAC;SAC7B,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,IAAI,MAAM,KAAK,CAAC,WAAW,cAAc,KAAK,CAAC,SAAS,EAAE,CAAC;SACrF,IAAI,CAAC,IAAI,CAAC,CAAA;AACf,CAAC;AAED;;;;GAIG;AACH,SAAgB,kBAAkB,CAChC,KAA2B,EAC3B,eAAkC,EAAE;IAEpC,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAA;IACpE,MAAM,cAAc,GAAG,IAAI,GAAG,CAAC,KAAK,aAAL,KAAK,cAAL,KAAK,GAAI,EAAE,CAAC,CAAA;IAC3C,MAAM,gBAAgB,GAAG,yBAAiB,CAAC,MAAM,CAC/C,CAAC,KAAK,EAAE,EAAE,CACR,cAAc,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;QAC9B,CAAC,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC;QACnC,KAAK,CAAC,IAAI,KAAK,qCAAgB,CAAC,IAAI;QACpC,CAAC,WAAW,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAC/B,CAAA;IACD,MAAM,QAAQ,GAAG,CAAC,GAAG,gBAAgB,EAAE,GAAG,YAAY,CAAC,CAAA;IACvD,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,SAAS,CAAA;IAClB,CAAC;IACD,OAAO;;;;EAIP,QAAQ,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAA;AAC5D,CAAC"}
@@ -0,0 +1,52 @@
1
+ import type { AdditionalContext } from '@multiplayer-app/ai-agent-types';
2
+ import { type AccountSkillLoader } from './account-skill-loader';
3
+ interface MessageLike {
4
+ role?: string;
5
+ content?: unknown;
6
+ }
7
+ interface PrepareStepOptions {
8
+ messages?: MessageLike[];
9
+ stepCount?: number;
10
+ stepNumber?: number;
11
+ steps?: unknown[];
12
+ }
13
+ /**
14
+ * Subagents receive the parent tool input as their first user message (JSON).
15
+ * Extract the `skills` array from it; undefined when absent or unparsable.
16
+ */
17
+ export declare function extractRequestedSkills(messages: MessageLike[] | undefined): string[] | undefined;
18
+ /**
19
+ * Select optional generation guides from the concrete delegated task. This is
20
+ * deterministic orchestration: the parent does not need to remember skill
21
+ * names, and unrelated manuals do not compete for the model's attention.
22
+ */
23
+ export declare function inferRequestedSkills(messages: MessageLike[] | undefined): string[] | undefined;
24
+ /**
25
+ * Pull concrete tokens out of free-text designBrief so subagents see a
26
+ * machine-readable contract, not only prose.
27
+ */
28
+ export declare function extractDesignTokens(brief: string): string | undefined;
29
+ /**
30
+ * Cross-page consistency: subagents can't see previously published pages, so
31
+ * without this every page invents its own palette and chrome. Extract the
32
+ * session entry page's design system (style block + header + footer) and
33
+ * inject it verbatim so later pages reuse it.
34
+ */
35
+ export declare function buildSessionDesignContext(context?: AdditionalContext): Promise<string | undefined>;
36
+ /**
37
+ * prepareStep for artifact subagents. Universal designer/a11y guidance is
38
+ * baked into the prompt; optional guides are inferred from the delegated task,
39
+ * while account guides and the established session design system are appended
40
+ * at runtime. An explicit `skills: []` opts doc/data-only tasks out; empty
41
+ * skills on HTML/UI tasks are ignored so inference still runs. The FIRST
42
+ * step (and only the first — config-level
43
+ * 'required' loops because the framework's downgrade cannot see SDK-internal
44
+ * steps) also forces a tool call so models cannot reply with prose describing
45
+ * files they never created.
46
+ */
47
+ export declare function createSkillInjectingPrepareStep(loader?: AccountSkillLoader): (options: PrepareStepOptions, context?: AdditionalContext) => Promise<{
48
+ messages?: MessageLike[];
49
+ toolChoice?: "required";
50
+ } | undefined>;
51
+ export {};
52
+ //# sourceMappingURL=skill-injection.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"skill-injection.d.ts","sourceRoot":"","sources":["../../../src/agents/skills/skill-injection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAA;AAExE,OAAO,EAAqB,KAAK,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAWnF,UAAU,WAAW;IACnB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,UAAU,kBAAkB;IAC1B,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAA;IACxB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,KAAK,CAAC,EAAE,OAAO,EAAE,CAAA;CAClB;AAsBD;;;GAGG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,SAAS,GAAG,MAAM,EAAE,GAAG,SAAS,CA6BhG;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,SAAS,GAAG,MAAM,EAAE,GAAG,SAAS,CAsC9F;AAUD;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAuBrE;AAED;;;;;GAKG;AACH,wBAAsB,yBAAyB,CAAC,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CA6CxG;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,+BAA+B,CAAC,MAAM,GAAE,kBAAsC,IAE1F,SAAS,kBAAkB,EAC3B,UAAU,iBAAiB,KAC1B,OAAO,CAAC;IAAE,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,UAAU,CAAA;CAAE,GAAG,SAAS,CAAC,CA0B9E"}