@jini-ai/agent-plugins 0.6.16 → 0.6.19

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 (335) hide show
  1. package/CHANGELOG.md +35 -1
  2. package/NOTICE +14 -0
  3. package/README.md +35 -14
  4. package/charts-echarts/plugin.json +39 -0
  5. package/charts-echarts/skills/charts-echarts/SKILL.md +110 -0
  6. package/charts-recharts/plugin.json +32 -0
  7. package/charts-recharts/skills/charts-recharts/SKILL.md +108 -0
  8. package/cloudflare/NOTES.md +16 -0
  9. package/cloudflare/form-destinations/cloudflare-d1.mjs +9 -0
  10. package/cloudflare/lib/api.mjs +96 -0
  11. package/cloudflare/lib/assets.mjs +65 -0
  12. package/cloudflare/lib/dns.mjs +32 -0
  13. package/cloudflare/lib/domain-inventory.mjs +61 -0
  14. package/cloudflare/lib/domain-status.mjs +48 -0
  15. package/cloudflare/lib/domains.mjs +95 -0
  16. package/cloudflare/lib/forms.mjs +254 -0
  17. package/cloudflare/lib/pages-upload.mjs +51 -0
  18. package/cloudflare/lib/target.mjs +165 -0
  19. package/cloudflare/lib/workers-upload.mjs +48 -0
  20. package/cloudflare/lib/zones.mjs +25 -0
  21. package/cloudflare/mcp.json +4 -0
  22. package/cloudflare/plugin.json +96 -0
  23. package/cloudflare/skills/cloudflare/SKILL.md +57 -0
  24. package/cloudflare/skills/cloudflare/references/domains.md +31 -0
  25. package/cloudflare/skills/cloudflare/references/pages.md +18 -0
  26. package/cloudflare/skills/cloudflare/references/permissions.md +29 -0
  27. package/cloudflare/skills/cloudflare/references/troubleshooting.md +20 -0
  28. package/cloudflare/skills/cloudflare/references/workers.md +42 -0
  29. package/cloudflare/targets/cloudflare-pages.mjs +12 -0
  30. package/cloudflare/targets/cloudflare-workers.mjs +17 -0
  31. package/cloudflare/tovu-consent.json +6 -0
  32. package/cloudflare/tovu-deploy-targets.json +630 -0
  33. package/cloudflare/tovu-form-destinations.json +12 -0
  34. package/cloudflare/worker/forms-receiver.mjs +249 -0
  35. package/composio/mcp.json +10 -0
  36. package/composio/plugin.json +68 -0
  37. package/composio/skills/composio/SKILL.md +85 -0
  38. package/dist/core/identity-namespace.d.ts +12 -0
  39. package/dist/core/identity-namespace.js +20 -0
  40. package/dist/folder-zip-node.js +29 -7
  41. package/dist/lifecycle/bundled-digests.js +4 -3
  42. package/dist/lifecycle/install.d.ts +7 -0
  43. package/dist/lifecycle/install.js +45 -3
  44. package/dist/lifecycle/manifest.d.ts +2 -2
  45. package/dist/lifecycle/manifest.js +5 -3
  46. package/dist/lifecycle/node.js +2 -0
  47. package/dist/lifecycle/persistent-state.js +1 -1
  48. package/dist/lifecycle/ports.d.ts +8 -0
  49. package/dist/lifecycle/seed-bundled.js +4 -1
  50. package/dist/manifest.d.ts +1 -1
  51. package/dist/manifest.js +3 -2
  52. package/fly/deploy-configs/fly.mjs +115 -0
  53. package/fly/deploy-ops/fly.mjs +102 -0
  54. package/fly/mcp.json +4 -0
  55. package/fly/plugin.json +81 -0
  56. package/fly/scripts/render-deploy-workflow.mjs +150 -0
  57. package/fly/skills/fly/SKILL.md +43 -0
  58. package/fly/skills/fly/references/fly-deploy.template.yml +117 -0
  59. package/fly/skills/fly/references/fly.template.toml +81 -0
  60. package/fly/tovu-credential-schemes.json +11 -0
  61. package/fly/tovu-deploy-configs.json +21 -0
  62. package/fly/tovu-deploy-ops.json +14 -0
  63. package/github/deploy-ops/github-actions.mjs +164 -0
  64. package/github/deployments/github.mjs +415 -0
  65. package/github/mcp.json +4 -0
  66. package/github/plugin.json +105 -0
  67. package/github/skills/github/SKILL.md +249 -0
  68. package/github/skills/github/references/actions.md +224 -0
  69. package/github/skills/github/references/auth-and-tokens.md +140 -0
  70. package/github/skills/github/references/repo-files.md +135 -0
  71. package/github/skills/github/references/site-backup.md +159 -0
  72. package/github/skills/github/references/source-control.md +123 -0
  73. package/github/source-control/backup-push.mjs +242 -0
  74. package/github/source-control/commit-site.mjs +459 -0
  75. package/github/source-control/github.mjs +93 -0
  76. package/github/source-control/write-files.mjs +468 -0
  77. package/github/tovu-deploy-ops.json +13 -0
  78. package/github/tovu-source-control.json +117 -0
  79. package/github-pages/NOTES.md +19 -0
  80. package/github-pages/mcp.json +4 -0
  81. package/github-pages/plugin.json +48 -0
  82. package/github-pages/skills/github-pages/SKILL.md +44 -0
  83. package/github-pages/targets/github-pages.mjs +543 -0
  84. package/github-pages/tovu-deploy-targets.json +327 -0
  85. package/google-login/exports/google-g.svg +1 -0
  86. package/google-login/exports/sign-in-button.css +68 -0
  87. package/google-login/exports/sign-in-button.html +4 -0
  88. package/google-login/mcp.json +4 -0
  89. package/google-login/plugin.json +59 -0
  90. package/google-login/skills/google-login/SKILL.md +96 -0
  91. package/google-login/tovu-login-providers.json +21 -0
  92. package/google-workspace/README.md +132 -0
  93. package/google-workspace/form-destinations/README.md +87 -0
  94. package/google-workspace/form-destinations/dedupe.mjs +43 -0
  95. package/google-workspace/form-destinations/delivery-result.mjs +69 -0
  96. package/google-workspace/form-destinations/mapping.mjs +152 -0
  97. package/google-workspace/form-destinations/sheets.mjs +202 -0
  98. package/google-workspace/lib/auth.mjs +81 -0
  99. package/google-workspace/lib/drive-files.mjs +54 -0
  100. package/google-workspace/lib/form-destination-settings.mjs +72 -0
  101. package/google-workspace/lib/http.mjs +168 -0
  102. package/google-workspace/lib/picker-flow.mjs +171 -0
  103. package/google-workspace/lib/picker-selection.mjs +107 -0
  104. package/google-workspace/lib/product-state.mjs +93 -0
  105. package/google-workspace/lib/request-policy.mjs +163 -0
  106. package/google-workspace/lib/sheets-a1.mjs +79 -0
  107. package/google-workspace/lib/sheets-admin-csv.mjs +82 -0
  108. package/google-workspace/lib/sheets-admin-request-kinds.mjs +183 -0
  109. package/google-workspace/lib/sheets-client.mjs +286 -0
  110. package/google-workspace/lib/surface-actions.mjs +107 -0
  111. package/google-workspace/mcp.json +4 -0
  112. package/google-workspace/plugin.json +77 -0
  113. package/google-workspace/products.json +12 -0
  114. package/google-workspace/skills/google-workspace/SKILL.md +82 -0
  115. package/google-workspace/skills/google-workspace/references/connection.md +102 -0
  116. package/google-workspace/skills/google-workspace/references/form-delivery.md +50 -0
  117. package/google-workspace/skills/google-workspace/references/sheets.md +149 -0
  118. package/google-workspace/skills/google-workspace/references/troubleshooting.md +31 -0
  119. package/google-workspace/tools/account-info.mjs +18 -0
  120. package/google-workspace/tools/sheets/README.md +54 -0
  121. package/google-workspace/tools/sheets/copy-tab.mjs +23 -0
  122. package/google-workspace/tools/sheets/copy.mjs +23 -0
  123. package/google-workspace/tools/sheets/create.mjs +35 -0
  124. package/google-workspace/tools/sheets/find-replace.mjs +38 -0
  125. package/google-workspace/tools/sheets/find.mjs +52 -0
  126. package/google-workspace/tools/sheets/get-by-data-filter.mjs +23 -0
  127. package/google-workspace/tools/sheets/get.mjs +22 -0
  128. package/google-workspace/tools/sheets/values-append.mjs +27 -0
  129. package/google-workspace/tools/sheets/values-batch-clear.mjs +20 -0
  130. package/google-workspace/tools/sheets/values-batch-get.mjs +20 -0
  131. package/google-workspace/tools/sheets/values-batch-update.mjs +29 -0
  132. package/google-workspace/tools/sheets/values-by-data-filter.mjs +62 -0
  133. package/google-workspace/tools/sheets/values-clear.mjs +20 -0
  134. package/google-workspace/tools/sheets/values-get.mjs +21 -0
  135. package/google-workspace/tools/sheets/values-update.mjs +26 -0
  136. package/google-workspace/tools/sheets-admin/README.md +45 -0
  137. package/google-workspace/tools/sheets-admin/basic-filter.mjs +32 -0
  138. package/google-workspace/tools/sheets-admin/batch-update.mjs +25 -0
  139. package/google-workspace/tools/sheets-admin/developer-metadata.mjs +28 -0
  140. package/google-workspace/tools/sheets-admin/export-csv.mjs +67 -0
  141. package/google-workspace/tools/sheets-admin/filter-views.mjs +38 -0
  142. package/google-workspace/tools/sheets-admin/format.mjs +70 -0
  143. package/google-workspace/tools/sheets-admin/named-ranges.mjs +42 -0
  144. package/google-workspace/tools/sheets-admin/open-existing.mjs +34 -0
  145. package/google-workspace/tools/sheets-admin/protected-ranges-get.mjs +18 -0
  146. package/google-workspace/tools/sheets-admin/sort.mjs +18 -0
  147. package/google-workspace/tools/sheets-admin/tab-modify.mjs +36 -0
  148. package/google-workspace/tovu-admin-surfaces.json +63 -0
  149. package/google-workspace/tovu-agent-tools.json +1178 -0
  150. package/google-workspace/tovu-connections.json +35 -0
  151. package/google-workspace/tovu-form-destinations.json +10 -0
  152. package/google-workspace/ui/README.md +73 -0
  153. package/google-workspace/ui/connection-panel.handler.mjs +167 -0
  154. package/google-workspace/ui/connection-panel.html +17 -0
  155. package/google-workspace/ui/connection-panel.mjs +189 -0
  156. package/google-workspace/ui/connection-view.mjs +120 -0
  157. package/google-workspace/ui/destination-panel.handler.mjs +106 -0
  158. package/google-workspace/ui/destination-panel.html +17 -0
  159. package/google-workspace/ui/destination-panel.mjs +150 -0
  160. package/google-workspace/ui/dom.mjs +140 -0
  161. package/google-workspace/ui/panel.css +170 -0
  162. package/google-workspace/ui/picker-flow.mjs +87 -0
  163. package/google-workspace/ui/picker-view.mjs +44 -0
  164. package/google-workspace/ui/picker.handler.mjs +56 -0
  165. package/google-workspace/ui/picker.html +17 -0
  166. package/google-workspace/ui/picker.mjs +88 -0
  167. package/google-workspace/ui/surface-client.mjs +227 -0
  168. package/higgsfield-media/mcp.json +9 -0
  169. package/higgsfield-media/plugin.json +109 -0
  170. package/higgsfield-media/skills/higgsfield-media/SKILL.md +325 -0
  171. package/higgsfield-media/skills/higgsfield-media/references/failure-modes.md +116 -0
  172. package/higgsfield-media/skills/higgsfield-media/references/models-and-plan-gates.md +142 -0
  173. package/jev/mcp.json +4 -0
  174. package/jev/plugin.json +44 -0
  175. package/jev/skills/jev/SKILL.md +308 -0
  176. package/jev/skills/jev/references/cookbooks.md +197 -0
  177. package/jev/skills/jev/references/jaggedness.md +135 -0
  178. package/jev/skills/jev/references/javascript-sdk.md +146 -0
  179. package/jev/skills/jev/references/patterns.md +123 -0
  180. package/jev/skills/jev/references/primitives-reference.md +187 -0
  181. package/langfuse/plugin.json +22 -0
  182. package/meilisearch/mcp.json +4 -0
  183. package/meilisearch/plugin.json +54 -0
  184. package/meilisearch/providers/meilisearch.mjs +651 -0
  185. package/meilisearch/skills/meilisearch/SKILL.md +43 -0
  186. package/meilisearch/tovu-search-providers.json +10 -0
  187. package/netlify/NOTES.md +13 -0
  188. package/netlify/mcp.json +4 -0
  189. package/netlify/plugin.json +47 -0
  190. package/netlify/skills/netlify/SKILL.md +39 -0
  191. package/netlify/targets/netlify.mjs +384 -0
  192. package/netlify/tovu-consent.json +6 -0
  193. package/netlify/tovu-deploy-targets.json +163 -0
  194. package/opentelemetry/mcp.json +4 -0
  195. package/opentelemetry/plugin.json +52 -0
  196. package/opentelemetry/skills/opentelemetry/SKILL.md +39 -0
  197. package/package.json +161 -6
  198. package/posthog/mcp.json +4 -0
  199. package/posthog/plugin.json +46 -0
  200. package/posthog/skills/posthog/SKILL.md +36 -0
  201. package/railway/deploy-configs/railway.mjs +135 -0
  202. package/railway/deploy-ops/railway.mjs +167 -0
  203. package/railway/mcp.json +4 -0
  204. package/railway/plugin.json +45 -0
  205. package/railway/skills/railway/SKILL.md +66 -0
  206. package/railway/tovu-deploy-configs.json +16 -0
  207. package/railway/tovu-deploy-ops.json +11 -0
  208. package/render/deploy-configs/render.mjs +141 -0
  209. package/render/deploy-ops/render.mjs +152 -0
  210. package/render/mcp.json +4 -0
  211. package/render/plugin.json +47 -0
  212. package/render/skills/render/SKILL.md +63 -0
  213. package/render/tovu-deploy-configs.json +16 -0
  214. package/render/tovu-deploy-ops.json +11 -0
  215. package/resend/NOTES.md +52 -0
  216. package/resend/adapters/resend.mjs +161 -0
  217. package/resend/lib/domains.mjs +137 -0
  218. package/resend/lib/errors.mjs +25 -0
  219. package/resend/lib/feedback.mjs +118 -0
  220. package/resend/mcp.json +13 -0
  221. package/resend/plugin.json +192 -0
  222. package/resend/skills/resend/SKILL.md +107 -0
  223. package/resend/tovu-mail-adapters.json +22 -0
  224. package/s3-compatible/NOTES.md +11 -0
  225. package/s3-compatible/mcp.json +4 -0
  226. package/s3-compatible/object-stores/s3-compatible.mjs +287 -0
  227. package/s3-compatible/plugin.json +56 -0
  228. package/s3-compatible/skills/s3-compatible/SKILL.md +39 -0
  229. package/s3-compatible/targets/s3-compatible.mjs +1054 -0
  230. package/s3-compatible/tovu-deploy-targets.json +432 -0
  231. package/s3-compatible/tovu-object-stores.json +29 -0
  232. package/sentry/mcp.json +4 -0
  233. package/sentry/plugin.json +49 -0
  234. package/sentry/skills/sentry/SKILL.md +34 -0
  235. package/shopify/mcp.json +4 -0
  236. package/shopify/plugin.json +22 -0
  237. package/shopify/skills/shopify/SKILL.md +103 -0
  238. package/shopify/skills/shopify/references/catalog-sync.md +74 -0
  239. package/shopify/skills/shopify/references/domains.md +26 -0
  240. package/shopify/skills/shopify/references/live-storefront.md +34 -0
  241. package/shopify/skills/shopify/references/storefront-snippets.md +21 -0
  242. package/site-compliance/mcp.json +4 -0
  243. package/site-compliance/plugin.json +34 -0
  244. package/site-compliance/skills/site-compliance/SKILL.md +220 -0
  245. package/site-compliance/skills/site-compliance/references/ccpa-cpra.md +115 -0
  246. package/site-compliance/skills/site-compliance/references/gdpr-eu-uk.md +143 -0
  247. package/site-compliance/skills/site-compliance/references/wcag-2-2.md +129 -0
  248. package/site-import/mcp.json +4 -0
  249. package/site-import/plugin.json +41 -0
  250. package/site-import/skills/site-import/SKILL.md +232 -0
  251. package/site-import/skills/site-import/references/content-mapping.md +166 -0
  252. package/site-import/skills/site-import/references/discovery-and-classification.md +117 -0
  253. package/site-import/skills/site-import/references/theme-extraction.md +34 -0
  254. package/slide-design/com.anthropic.claude-code/hooks/hooks.json +4 -0
  255. package/slide-design/mcp.json +4 -0
  256. package/slide-design/plugin.json +26 -0
  257. package/slide-design/skills/slide-design/SKILL.md +103 -0
  258. package/slide-design/skills/slide-design/references/charts-and-exhibits.md +100 -0
  259. package/slide-design/skills/slide-design/references/html-deck.md +175 -0
  260. package/slide-design/skills/slide-design/references/layout-and-style.md +131 -0
  261. package/slide-design/skills/slide-design/references/review.md +93 -0
  262. package/slide-design/skills/slide-design/references/storyline.md +118 -0
  263. package/stripe/plugin.json +22 -0
  264. package/supabase/mcp.json +26 -0
  265. package/supabase/plugin.json +78 -0
  266. package/supabase/skills/supabase/SKILL.md +169 -0
  267. package/supabase/skills/supabase/references/failure-modes.md +101 -0
  268. package/ui-ux-design/CHANGELOG.md +28 -0
  269. package/ui-ux-design/LICENSE +201 -0
  270. package/ui-ux-design/NOTICE +14 -0
  271. package/ui-ux-design/README.md +62 -0
  272. package/ui-ux-design/com.anthropic.claude-code/hooks/hooks.json +4 -0
  273. package/ui-ux-design/mcp.json +4 -0
  274. package/ui-ux-design/plugin.json +26 -0
  275. package/ui-ux-design/skills/frontend-accessibility/SKILL.md +60 -0
  276. package/ui-ux-design/skills/gstack-design/SKILL.md +53 -0
  277. package/ui-ux-design/skills/gstack-design/references/consultation.md +30 -0
  278. package/ui-ux-design/skills/gstack-design/references/html.md +29 -0
  279. package/ui-ux-design/skills/gstack-design/references/review.md +28 -0
  280. package/ui-ux-design/skills/gstack-design/references/shotgun.md +33 -0
  281. package/ui-ux-design/skills/gstack-design/references/upstream-notes.md +23 -0
  282. package/ui-ux-design/skills/interface-design/ORIGINAL.md +16 -0
  283. package/ui-ux-design/skills/interface-design/SKILL.md +41 -0
  284. package/ui-ux-design/skills/interface-design/references/commands/audit.md +40 -0
  285. package/ui-ux-design/skills/interface-design/references/commands/critique.md +21 -0
  286. package/ui-ux-design/skills/interface-design/references/commands/extract.md +34 -0
  287. package/ui-ux-design/skills/interface-design/references/commands/init.md +31 -0
  288. package/ui-ux-design/skills/interface-design/references/commands/status.md +22 -0
  289. package/ui-ux-design/skills/interface-design/references/examples/system-precision.md +29 -0
  290. package/ui-ux-design/skills/interface-design/references/examples/system-warmth.md +29 -0
  291. package/ui-ux-design/skills/interface-design/references/system-template.md +57 -0
  292. package/ui-ux-design/skills/shadcn-ui/README.md +244 -0
  293. package/ui-ux-design/skills/shadcn-ui/SKILL.md +333 -0
  294. package/ui-ux-design/skills/shadcn-ui/examples/auth-layout.tsx +177 -0
  295. package/ui-ux-design/skills/shadcn-ui/examples/data-table.tsx +313 -0
  296. package/ui-ux-design/skills/shadcn-ui/examples/form-pattern.tsx +177 -0
  297. package/ui-ux-design/skills/shadcn-ui/resources/component-catalog.md +481 -0
  298. package/ui-ux-design/skills/shadcn-ui/resources/customization-guide.md +516 -0
  299. package/ui-ux-design/skills/shadcn-ui/resources/migration-guide.md +463 -0
  300. package/ui-ux-design/skills/shadcn-ui/resources/setup-guide.md +412 -0
  301. package/ui-ux-design/skills/shadcn-ui/scripts/verify-setup.sh +134 -0
  302. package/ui-ux-design/skills/ui-ux-design/SKILL.md +171 -0
  303. package/ui-ux-design/skills/ui-ux-design/references/brand-and-voice.md +78 -0
  304. package/ui-ux-design/skills/ui-ux-design/references/chrome-mobile-test-matrix.md +137 -0
  305. package/ui-ux-design/skills/ui-ux-design/references/components-and-states.md +112 -0
  306. package/ui-ux-design/skills/ui-ux-design/references/delight-and-motion.md +54 -0
  307. package/ui-ux-design/skills/ui-ux-design/references/foundations.md +145 -0
  308. package/ui-ux-design/skills/ui-ux-design/references/inclusive-ai-imagery.md +57 -0
  309. package/ui-ux-design/skills/ui-ux-design/references/kole-jain-uiux-concepts.md +104 -0
  310. package/ui-ux-design/skills/ui-ux-design/references/kuinetic-reference.md +184 -0
  311. package/ui-ux-design/skills/ui-ux-design/references/openai-frontend-skill.md +139 -0
  312. package/ui-ux-design/skills/ui-ux-design/references/premium-ui.md +55 -0
  313. package/ui-ux-design/skills/ui-ux-design/references/research-and-validation.md +88 -0
  314. package/ui-ux-design/skills/ui-ux-design/references/sam-crawford-premium-websites.md +103 -0
  315. package/ui-ux-design/skills/ui-ux-design/references/self-made-web-designer-core-skills.md +119 -0
  316. package/ui-ux-design/skills/ui-ux-design/references/ui-animation.md +173 -0
  317. package/ui-ux-design/skills/ui-ux-design/references/ui-loop.md +234 -0
  318. package/ui-ux-design/skills/ui-ux-design/references/visual-storytelling.md +54 -0
  319. package/ui-ux-design/skills/vercel-web-design-guidelines/SKILL.md +39 -0
  320. package/ui-ux-design/skills/web-compliance/SKILL.md +134 -0
  321. package/ui-ux-design/skills/web-compliance/references/audit-evidence.md +59 -0
  322. package/vercel/NOTES.md +23 -0
  323. package/vercel/mcp.json +4 -0
  324. package/vercel/object-stores/vercel-blob.mjs +147 -0
  325. package/vercel/plugin.json +47 -0
  326. package/vercel/skills/vercel/SKILL.md +48 -0
  327. package/vercel/targets/vercel.mjs +586 -0
  328. package/vercel/tovu-consent.json +6 -0
  329. package/vercel/tovu-deploy-targets.json +219 -0
  330. package/vercel/tovu-object-stores.json +10 -0
  331. package/wordpress/NOTES.md +33 -0
  332. package/wordpress/plugin.json +30 -0
  333. package/wordpress/skills/wordpress/SKILL.md +43 -0
  334. package/wordpress/skills/wordpress/references/free-site-redirect.md +46 -0
  335. package/wordpress/skills/wordpress/references/subdomain.md +66 -0
@@ -0,0 +1,118 @@
1
+ # Storyline
2
+
3
+ Decide what the deck says before deciding how it looks.
4
+
5
+ ## The deck message
6
+
7
+ Resolve the audience's intended outcome before outlining. Then write one sentence a listener
8
+ could repeat to a colleague afterwards: "<what is true> so <what we should do>". Stuck? Ask the
9
+ user what the audience should decide or do next, and build the sentence from that answer.
10
+ Every slide either supports this sentence or leaves the deck.
11
+
12
+ ## Structure by deck type
13
+
14
+ | Type | Goal | Structure | Typical size |
15
+ |---|---|---|---|
16
+ | Investor pitch | Win belief and an investment | Problem → why now → solution → proof (demo, traction) → market → business model → team → ask | 10–15 slides |
17
+ | Sales pitch | Win a deal | Their problem → cost of doing nothing → solution → proof (demo, customer results) → plan and price → ask. Market, model and team only if the buyer asks | 6–12 slides |
18
+ | Talk | Change how people think | Hook → one big idea → 3 parts, each with a story or example → recap → call to action | 1 slide per 1–2 min, image-led |
19
+ | Teaching | People can do something new | Goals → what they know already → concept → worked example → practice or check → recap | One concept per slide |
20
+ | Update | Show status and get help | Status in one line → what changed → metrics vs. plan → risks → asks and next steps | 5–10 slides |
21
+ | Report | Share findings people read alone | Summary → findings ranked by importance, each with evidence → implications → method and appendix | Denser; read, not presented |
22
+ | Decision | Get a yes on a choice | Summary (recommendation, reasons, ask) → options compared → evidence for the choice → risks and mitigations → plan and cost → ask | 1 summary + 5–12 body + appendix |
23
+
24
+ Mixed cases: pick the type that matches the goal, then borrow sections. A pitch to a committee is
25
+ a decision deck with pitch proof.
26
+
27
+ ## Answer first
28
+
29
+ Use for update, report and decision decks, and any busy audience.
30
+
31
+ 1. Put the message on top.
32
+ 2. Ask "why?" or "how?" of it. The answers are 2–5 supporting points.
33
+ 3. Check the points:
34
+ - No overlaps: each fact belongs under exactly one point.
35
+ - No gaps: together the points are enough to carry the message.
36
+ - Same kind: all reasons, all steps, or all parts. Don't mix.
37
+ 4. Repeat for each point until each leaf fits one slide.
38
+ 5. Order the points on purpose: by importance, by time, or by the parts of a whole. Say which.
39
+
40
+ Talks and teaching decks may build up to the answer instead. Still say early where you're going.
41
+
42
+ ## The opening
43
+
44
+ Four moves, one or two slides or the speaker's first minute:
45
+
46
+ - **Context** — something the audience already accepts.
47
+ - **Tension** — what changed, broke, or is at stake.
48
+ - **Question** — the question that tension raises.
49
+ - **Answer** — the deck message.
50
+
51
+ For executives or skeptics, lead with the answer and give the context after. For a story-led
52
+ talk, open on the tension.
53
+
54
+ ## Titles
55
+
56
+ - The title is the takeaway: the claim the slide's evidence supports. Test it: could someone in
57
+ the room disagree? A label like "Churn" gives nothing to disagree with.
58
+ - Weak: "Churn". Better: "Churn fell by a third after the onboarding rollout".
59
+ - Aim for 8–15 words, at most 2 lines. Be specific: numbers, names, dates.
60
+ - Topic words ("Background", "Results") are labels, not titles. If you need one, set it as a
61
+ small kicker above the title.
62
+ - **Title chain test:** read only the titles, in order. They should read like a short memo. If a
63
+ title doesn't follow from the one before, reorder, merge, or add a bridge slide.
64
+ - Allowed exceptions (review honours them too): an image-only talk slide whose point the speaker
65
+ says aloud; section dividers; questions as titles in teaching decks.
66
+
67
+ ## Summary slide
68
+
69
+ Decision and report decks get one right after the title slide:
70
+
71
+ - what we found or recommend, in one sentence;
72
+ - 3–4 findings or reasons, one sentence each, and what they imply;
73
+ - the ask (a decision, budget, people, a date) when the deck seeks action. Decision decks always
74
+ do; a report that only informs ends on implications.
75
+
76
+ A reader who stops here should still get the point. Talks and teaching decks use an agenda or
77
+ "what you'll learn" slide instead.
78
+
79
+ ## Outline first
80
+
81
+ Before any design, write the titles-only outline:
82
+
83
+ ```
84
+ 1. Title — <deck title>, <presenter>, <date>
85
+ 2. <takeaway title> — evidence: <what the slide will show>
86
+ 3. ...
87
+ N. Closing — <message restated>, <ask>
88
+ ```
89
+
90
+ Check it: is the message clear, does the chain read, is there one point per slide, does the count
91
+ fit the time? Changing an outline takes minutes; changing finished slides takes hours.
92
+
93
+ ## Agenda and section dividers
94
+
95
+ Only for decks over about 15 slides or 20 minutes. The agenda lists the 3–5 top-level points in
96
+ the same words the dividers use.
97
+
98
+ ## Closing slide
99
+
100
+ Don't end on "Questions?" or "Thank you" alone. The last slide carries:
101
+
102
+ - the message, restated in one line;
103
+ - the ask or next step: who does what, by when;
104
+ - where to reach you or find the material.
105
+
106
+ Leave it on screen during questions. The appendix comes after it.
107
+
108
+ ## Speaker notes
109
+
110
+ - Every presented slide gets notes: 40–120 words, about 30–60 seconds spoken.
111
+ - First line: the slide's point in one sentence.
112
+ - Then where to look first and what it means, in spoken sentences, not bullets.
113
+ - End with a one-line bridge to the next slide.
114
+ - Put caveats and data definitions here when they don't fit on the slide.
115
+ - Read-alone decks may skip notes, but then each slide must stand on its own: fully labelled
116
+ charts with sources, and the word budget in `layout-and-style.md`.
117
+ - A deck that is both presented and read: build the read version, then present it with builds or
118
+ a trimmed copy.
@@ -0,0 +1,22 @@
1
+ {
2
+ "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
3
+ "name": "stripe",
4
+ "version": "0.1.0",
5
+ "description": "Connects the site to Stripe through the payments-stripe provider in @jini-ai/provider-plugins. Installation alone does not enable or configure the provider.",
6
+ "author": "Jini",
7
+ "license": "Apache-2.0",
8
+ "extensions": {
9
+ "tovu": {
10
+ "id": "jini/stripe",
11
+ "displayName": "Stripe",
12
+ "providerPlugin": "payments-stripe",
13
+ "provides": [
14
+ "payments"
15
+ ]
16
+ }
17
+ },
18
+ "keywords": [
19
+ "stripe",
20
+ "payments-stripe"
21
+ ]
22
+ }
@@ -0,0 +1,26 @@
1
+ {
2
+ "$schema": "https://agent-plugins.org/schemas/1.0.0/mcp.schema.json",
3
+ "mcpServers": {
4
+ "supabase": {
5
+ "type": "streamable-http",
6
+ "url": "https://mcp.supabase.com/mcp?features=account,database,development,docs,debugging",
7
+ "tovuAuthMode": "oauth",
8
+ "tovuTokenAuth": {
9
+ "helpUrl": "https://supabase.com/dashboard/account/tokens",
10
+ "probeUrl": "https://api.supabase.com/v1/projects",
11
+ "importFromEnv": "TOVU_SUPABASE_MCP_ACCESS_TOKEN",
12
+ "retiredEnv": ["TOVU_SUPABASE_MCP_ENABLED", "TOVU_SUPABASE_MCP_PROJECT_REF", "TOVU_SUPABASE_MCP_ALLOWED_TOOLS",
13
+ "TOVU_SUPABASE_MCP_FEATURES", "TOVU_SUPABASE_MCP_PACKAGE", "TOVU_SUPABASE_MCP_CONNECT_TIMEOUT_MS",
14
+ "TOVU_SUPABASE_MCP_CALL_TIMEOUT_MS", "TOVU_SUPABASE_MCP_MAX_RESULT_BYTES"]
15
+ },
16
+ "tovuDefaultTools": {
17
+ "allow": ["list_organizations", "get_organization", "list_projects", "get_project", "get_cost", "confirm_cost",
18
+ "create_project", "pause_project", "restore_project", "list_tables", "list_extensions", "list_migrations",
19
+ "apply_migration", "execute_sql", "get_advisors", "query_logs", "get_project_url", "get_publishable_keys",
20
+ "generate_typescript_types", "search_docs"],
21
+ "write": ["confirm_cost", "create_project", "pause_project", "restore_project"]
22
+ },
23
+ "tovuRenamedTools": { "get_logs": "query_logs" }
24
+ }
25
+ }
26
+ }
@@ -0,0 +1,78 @@
1
+ {
2
+ "$schema": "https://agent-plugins.org/schemas/1.0.0/plugin.schema.json",
3
+ "name": "supabase",
4
+ "version": "1.1.0",
5
+ "description": "Gives this site a hosted database (Supabase) for sign-ups, forms and app data, set up from chat with no setup steps for the person. Use it whenever someone says they need a database, want to store data, or want sign-ups or form entries saved. Always start with agent_plugin_connect { pluginId: \"supabase\" }: it shows a sign-in card (the person signs in or signs up at Supabase themselves), turns the connection on, and returns once connected. Then follow the supabase skill: find or create the database, handle Supabase's free limit of two active databases, and speak in plain words only.",
6
+ "author": "Tovu",
7
+ "license": "Apache-2.0",
8
+ "extensions": {
9
+ "tovu": {
10
+ "maturity": "soon",
11
+ "summary": "Gives your site a database for sign-ups and form entries. You sign in to Supabase and the assistant sets up the rest.",
12
+ "id": "tovu/supabase",
13
+ "provides": [
14
+ "database:supabase"
15
+ ],
16
+ "credentialCards": [
17
+ {
18
+ "target": "supabase-sign-in",
19
+ "title": "Connect Supabase",
20
+ "label": "Supabase account",
21
+ "category": "general",
22
+ "intro": "Connect Supabase to set up and work with this site’s database.",
23
+ "usedFor": [
24
+ "Finds your accounts and databases",
25
+ "Reads the selected database",
26
+ "Sets up databases and applies database changes you approve"
27
+ ],
28
+ "keyHint": "Review the account and project access requested on the Supabase sign-in page.",
29
+ "saveKind": "oauth",
30
+ "saveTarget": "supabase",
31
+ "permissions": "Allows the connected tools to discover your organizations and projects and work with the selected database. Creating, pausing or restoring a project and running database changes require the applicable tool permissions.",
32
+ "baseUrl": "https://mcp.supabase.com"
33
+ },
34
+ {
35
+ "target": "supabase",
36
+ "title": "Connect Supabase with an access token",
37
+ "label": "Supabase account",
38
+ "category": "general",
39
+ "intro": "Use this fallback only when browser sign-in cannot start. The token connects the Supabase account, not a site mailer or a project’s public API.",
40
+ "usedFor": [
41
+ "Finds your accounts and databases",
42
+ "Reads the selected database",
43
+ "Sets up databases and applies database changes you approve"
44
+ ],
45
+ "keyHint": "Use a Management API personal access token, not an anon or service-role key. Discovery: Organizations, Projects (account-wide), Organization Settings and Project Settings → Read. Database tools: Database, Migrations, API Keys, Advisors and Logs → Read. Add Organization Projects → Read-write only to create a project, Project Settings → Read-write to pause/restore, and Migrations → Read-write to apply migrations. Tool write grants are still required separately.",
46
+ "saveKind": "agent-plugin-token",
47
+ "helpUrl": "https://supabase.com/dashboard/account/tokens",
48
+ "helpLabel": "Create a personal access token",
49
+ "baseUrl": "https://api.supabase.com"
50
+ }
51
+ ]
52
+ }
53
+ },
54
+ "keywords": [
55
+ "supabase",
56
+ "database",
57
+ "db",
58
+ "i-need-a-database",
59
+ "store-data",
60
+ "save-data",
61
+ "data",
62
+ "signups",
63
+ "sign-ups",
64
+ "forms",
65
+ "form-entries",
66
+ "backend",
67
+ "app-data",
68
+ "postgres",
69
+ "postgresql",
70
+ "sql",
71
+ "tables",
72
+ "connect",
73
+ "sign-in",
74
+ "login",
75
+ "setup",
76
+ "database:supabase"
77
+ ]
78
+ }
@@ -0,0 +1,169 @@
1
+ ---
2
+ name: supabase
3
+ description: Set up a hosted database (Supabase) for this site from chat. Start with agent_plugin_connect, then find or create the database, handle Supabase's free limit of two active databases (reuse, pause, or paid), and say everything in plain words. Small database changes (make a table, add or change rows) run from chat with execute_sql, after the person confirms each one.
4
+ ---
5
+
6
+ # Supabase database
7
+
8
+ ## Connection card
9
+
10
+ Choose the card yourself from its `usedFor` list. Reuse a saved key or working sign-in for that
11
+ task. Never offer a replacement unless the person asks.
12
+
13
+ `agent_plugin_connect {pluginId:"supabase"}` shows the plugin’s own **Connect Supabase** sign-in card, including what it connects and the permissions involved. Only if browser sign-in cannot start, open `credential_save {kind:"plugin-provider",target:"supabase"}` for the plugin’s access-token fallback. It links to personal access token creation, explains Management API permissions, probes the token and saves it on the MCP connection; it never saves a project anon or service-role key.
14
+
15
+ The person wants somewhere to keep data (sign-ups, form entries, app data). Get them a working
16
+ database with as few words and choices as possible. They should never need to learn a new idea.
17
+
18
+ ## Rules for everything you say
19
+
20
+ Write every message in plain, short sentences. Lines quoted below as `> ...` are what the person
21
+ reads; say them in your own words if needed, but keep them this simple.
22
+
23
+ **Never say** any of these words or ideas to the person: token, access token, OAuth, MCP, plugin,
24
+ scope, allowlist, read-only, region, org or organization id, project ref, API key, service role,
25
+ tool names. Never show a key or password. Call the Supabase project "your database".
26
+
27
+ Links: always markdown links to `https://` pages, one per message at most.
28
+
29
+ Never loop. If a step fails twice, stop and use `references/failure-modes.md`.
30
+
31
+ ## Step 1. Connect (always first)
32
+
33
+ Call `agent_plugin_connect { pluginId: "supabase" }` before any Supabase tool, every time, even if
34
+ you think it is already connected (it returns at once when it is).
35
+
36
+ It shows the person a card with a sign-in button. Before or with it, say:
37
+
38
+ > Let's set up your database. It's free and takes about two minutes. You'll sign in to Supabase,
39
+ > the database service this site uses. No account yet? Choose **Sign up** there (GitHub or email). If it
40
+ > asks which team to use, pick any.
41
+
42
+ The person signs up for their own Supabase account; you never make one for them and never ask for
43
+ their email or password.
44
+
45
+ - Result `{ status: "connected" }`: go to Step 2. (It also returns this at once when the person
46
+ added a Supabase key while creating the site; say nothing about a sign-in then.)
47
+ - It fails with an error (sign-in could not start): see "Sign-in won't start" in
48
+ `references/failure-modes.md`.
49
+ - Result `{ status: "waiting-for-sign-in" }`: see `references/failure-modes.md`.
50
+
51
+ ## Step 2. Find their account and databases
52
+
53
+ 1. Call `mcp__supabase__list_organizations`. Normally there is one; use it. If there are several,
54
+ ask with `assistant_ask_choice` using their names.
55
+ 2. Call `mcp__supabase__list_projects`. Keep the ones in that organization.
56
+ 3. If they already have databases, ask with `assistant_ask_choice`:
57
+ - **Make a new database** (first option, recommended)
58
+ - **Use "<name>"** for each existing one
59
+
60
+ If they pick an existing one, go to Step 5 (if its status is `INACTIVE` it is asleep: see
61
+ `references/failure-modes.md`).
62
+
63
+ ## Step 3. Check the free limit and the price
64
+
65
+ Supabase's free plan allows **two active databases** per account. `mcp__supabase__get_cost` can't
66
+ see the free limit (it says $0 even when the account is full), so count first:
67
+
68
+ - From Step 2's list, count databases whose status is not `INACTIVE` (active or starting).
69
+ - If the count is 2 or more and the cost below is $0, the account is at the free limit: skip
70
+ creating and go straight to **At the free limit** below.
71
+
72
+ Call `mcp__supabase__get_cost { type: "project", organization_id }`.
73
+
74
+ - $0: say nothing about money.
75
+ - More than $0 (a paid account): ask with `assistant_ask_choice`:
76
+ - **Create it ($<amount>/<recurrence>)**, using the exact numbers returned
77
+ - **Cancel**
78
+
79
+ Only on **Create it**, call `mcp__supabase__confirm_cost` with the same `type`, `recurrence` and
80
+ `amount`, and keep the returned id for Step 4.
81
+
82
+ ## Step 4. Create the database
83
+
84
+ Call `mcp__supabase__create_project` with:
85
+ - `name`: short and lowercase, from the site's name or what they are building (never ask);
86
+ - `organization_id` from Step 2;
87
+ - `region`: nearest to the person, from the table below (default `us-east-1`);
88
+ - `confirm_cost_id` from Step 3 when there was one.
89
+
90
+ | Person is in | region |
91
+ |---|---|
92
+ | US East, Canada East, or unknown | `us-east-1` |
93
+ | US West | `us-west-1` |
94
+ | Canada | `ca-central-1` |
95
+ | South America | `sa-east-1` |
96
+ | UK, Ireland | `eu-west-2` |
97
+ | Western / Central Europe | `eu-central-1` |
98
+ | Nordics | `eu-north-1` |
99
+ | India | `ap-south-1` |
100
+ | Southeast Asia | `ap-southeast-1` |
101
+ | Japan | `ap-northeast-1` |
102
+ | Korea | `ap-northeast-2` |
103
+ | Australia, New Zealand | `ap-southeast-2` |
104
+
105
+ If it fails with an error containing
106
+ "maximum limits for the number of active free plan projects", the account is at the free limit: go
107
+ to **At the free limit**.
108
+
109
+ Then say:
110
+
111
+ > Creating your database... this usually takes 1-2 minutes.
112
+
113
+ Call `mcp__supabase__get_project` to check its status, at most 10 times in one reply. Ready when the
114
+ status is `ACTIVE_HEALTHY`. Still not ready after that:
115
+
116
+ > Your database is still being made. Say "check" in a minute and I'll look again.
117
+
118
+ ## Step 5. Ready
119
+
120
+ > Your database is ready ✓ [Open it in Supabase →](https://supabase.com/dashboard/project/<id>)
121
+
122
+ (`<id>` is the project's `id` from Supabase; it goes only in the link, never in the text.)
123
+
124
+ Then offer one useful next step, for example showing them where their data will appear.
125
+
126
+ ## Changing data or tables
127
+
128
+ For a small change the person asks for (make a table, add a column, add, change or delete rows), use
129
+ `mcp__supabase__execute_sql` on the database they chose, with one short SQL statement per call. Use
130
+ `mcp__supabase__apply_migration` only if they ask for a tracked schema change.
131
+
132
+ 1. Say in one plain sentence what will change, and show the SQL in a code block:
133
+ > I'll make a table called "signups" with an id column. This is the SQL:
134
+ 2. Call the tool right away. Do NOT ask first with `assistant_ask_choice` or in words ("Shall I
135
+ run this?"): the host's own approval card is the confirmation, and asking twice is annoying. The
136
+ person sees the card with the exact SQL and **Allow** / **Allow for this chat** / **Cancel**;
137
+ nothing runs until they allow it. Keep to one change per call. A card marked as able to delete
138
+ data is expected for these tools.
139
+ 3. After it runs, check the result (for example `mcp__supabase__list_tables`) and say what changed
140
+ in plain words.
141
+
142
+ If the result says they cancelled, say:
143
+
144
+ > OK, I didn't change anything.
145
+
146
+ Do not try the same change again unless they ask. If the card expired, say it timed out and ask if
147
+ they still want it. Never delete a table or data they did not name. For a change that deletes data,
148
+ say plainly what will be lost in step 1; the approval card is still the only question you ask.
149
+
150
+ ## At the free limit
151
+
152
+ Ask with `assistant_ask_choice` (one option per active database for the first two):
153
+
154
+ - **Use "<name>"**: continue at Step 5 with that database.
155
+ - **Pause "<name>" to free a space**: call `mcp__supabase__pause_project` on it, say
156
+ > "<name>" is paused. Its data is kept, and you can wake it up later.
157
+ then go back to Step 4.
158
+ - **Get a paid database**: say
159
+ > Supabase's free plan allows two active databases. To add another, upgrade your Supabase plan
160
+ > here, then say "done". [See plans and prices →](https://supabase.com/dashboard/org/<organization id>/billing)
161
+
162
+ On "done", go back to Step 3: `get_cost` now shows the price, so the person sees
163
+ **Create it ($<amount>/<recurrence>)** before anything is charged.
164
+
165
+ This site never takes payment itself; upgrading happens on Supabase's own page.
166
+
167
+ ## When something goes wrong
168
+
169
+ Use `references/failure-modes.md`: one plain sentence for each case, and what to do next.
@@ -0,0 +1,101 @@
1
+ # Supabase: when something goes wrong
2
+
3
+ Each case: what you notice, what to tell the person (plain words, at most one link), and what to
4
+ do. Never paste Supabase's raw error text. Never retry more than once on your own.
5
+
6
+ ## Sign-in not finished
7
+
8
+ `agent_plugin_connect` returned `{ status: "waiting-for-sign-in" }` (nobody finished within a few
9
+ minutes, which is normal during a new sign-up).
10
+
11
+ > Still waiting for you to sign in to Supabase. Use the sign-in button above, then say "done".
12
+
13
+ On "done" (or "I'm back"), call `agent_plugin_connect { pluginId: "supabase" }` once more. Never call
14
+ it again on your own.
15
+
16
+ ## Sign-in won't start
17
+
18
+ `agent_plugin_connect` failed with an error instead of showing the sign-in card. Say:
19
+
20
+ > Sign-in isn't working right now, so let's use a key instead. [Make a key on Supabase →](https://supabase.com/dashboard/account/tokens)
21
+ > Then paste it in the box below.
22
+
23
+ Call `credential_save { kind: "plugin-provider", target: "supabase" }` once. It shows the box and waits. On
24
+ `{ saved: true }` go to Step 2. On `reason: "invalid"`: "That key didn't work. Make a new one and try
25
+ again." Never ask for the key in chat.
26
+
27
+ ## They said no at Supabase
28
+
29
+ The person says they declined, cancelled, or closed the Supabase page.
30
+
31
+ > Supabase wasn't connected. You can try again whenever you like.
32
+
33
+ Stop. Start again at Step 1 only if they ask.
34
+
35
+ ## At the free limit
36
+
37
+ `mcp__supabase__create_project` fails with an error containing
38
+ "maximum limits for the number of active free plan projects", or two databases are already active
39
+ on a free account. Use the skill's
40
+ **At the free limit** section: offer to use one, pause one, or get a paid database.
41
+
42
+ ## The database is asleep
43
+
44
+ A database they picked has status `INACTIVE` (Supabase puts free databases to sleep after a week
45
+ without use).
46
+
47
+ > That database is asleep. Waking it up now, about a minute.
48
+
49
+ Call `mcp__supabase__restore_project`, then check with `mcp__supabase__get_project` (at most 10
50
+ times) until it is `ACTIVE_HEALTHY`.
51
+
52
+ ## Creating failed
53
+
54
+ `mcp__supabase__get_project` shows `INIT_FAILED`.
55
+
56
+ > Supabase couldn't finish creating the database. Want me to try again?
57
+
58
+ On yes, go back to the skill's Step 4 once. Never remove or pause anything to fix this.
59
+
60
+ ## They cancelled a change
61
+
62
+ The card showed the SQL and they clicked Cancel (the result says `cancelled`). Nothing ran.
63
+
64
+ > OK, I didn't change anything.
65
+
66
+ Don't retry it on your own. If they want a different change, show the new SQL first.
67
+
68
+ ## A change to data or tables failed
69
+
70
+ `execute_sql` returned an error (a typo, a table that already exists, a missing table). Nothing was
71
+ changed. Say what went wrong in one plain sentence, show the corrected SQL, and ask before trying
72
+ again. For a big or risky change, offer the table editor instead:
73
+ [Open it in Supabase →](https://supabase.com/dashboard/project/<id>/editor)
74
+
75
+ ## Connection stopped working
76
+
77
+ A Supabase call says the connection "is disconnected", "expired" or "was revoked", or fails with
78
+ 401.
79
+
80
+ Call `external_mcp_reauth_prompt` for `supabase`, and say:
81
+
82
+ > Your Supabase connection stopped working. Sign in again to keep going.
83
+
84
+ After they sign in, retry the step once.
85
+
86
+ ## Supabase is down or busy
87
+
88
+ A timeout, a connection error, a 5xx, or 429 (too many requests).
89
+
90
+ > Supabase isn't responding right now. Try again in a few minutes.
91
+
92
+ At most one retry later in the same conversation, never in a loop.
93
+
94
+ ## A Supabase step is refused by the host
95
+
96
+ A call is refused as not allowed (for example `not-in-operator-allowlist`). This means the
97
+ connection's permissions were changed by someone on this site.
98
+
99
+ > That step isn't turned on for this site. An admin can turn it on in this site's settings.
100
+
101
+ Do not retry it.
@@ -0,0 +1,28 @@
1
+ # @jini-ai/agent-plugins/ui-ux-design
2
+
3
+ ## 0.6.19
4
+
5
+ - Publishes in place as the `@jini-ai/agent-plugins/ui-ux-design` subpath; the wrapper and assembler are retired.
6
+ - One shared copy across hosts: the skills carry the newer AI-Dev-Shop sync (c10abee: UI loop,
7
+ Chrome mobile matrix, animation and kUInetic references), the host card summary and Jini's search
8
+ keywords. Host chat rules are replaced by host-neutral tool-use wording; hosts add their own at
9
+ delivery. Inner plugin version 0.6.2 (above the 0.6.0 hosts seeded earlier).
10
+
11
+ ## 0.6.17
12
+
13
+ ### Patch Changes
14
+
15
+ - Version bump only.
16
+
17
+ ## 0.6.15
18
+
19
+ ### Minor Changes
20
+
21
+ - Breaking package-surface change for the fixed 0.6.15 release: remove the bundled
22
+ ui-ux-design files and wildcard export from @jini-ai/agent-plugins. Hosts must
23
+ explicitly install @jini-ai/agent-plugins/ui-ux-design and resolve its ./plugin.json
24
+ export, stage that payload and seed through the existing Agent Plugin lifecycle.
25
+ The lifecycle implementation remains in @jini-ai/agent-plugins. Inner plugin
26
+ version 0.4.6, deterministic packing, digest selection and operator activation
27
+ decisions are preserved. Host wording reconciliation and cutover follow later.
28
+