vybekiit 0.7.28 โ†’ 0.7.32

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 (352) hide show
  1. package/dist/bin.js +17286 -17351
  2. package/dist/global-guidance/language.md +13 -108
  3. package/dist/global-skills/add-ai/SKILL.md +13 -8
  4. package/dist/global-skills/add-analytics/SKILL.md +10 -7
  5. package/dist/global-skills/add-app-clip/SKILL.md +1 -0
  6. package/dist/global-skills/add-blog/SKILL.md +10 -7
  7. package/dist/global-skills/add-crud/SKILL.md +8 -0
  8. package/dist/global-skills/add-files/SKILL.md +10 -7
  9. package/dist/global-skills/add-images/SKILL.md +10 -7
  10. package/dist/global-skills/add-language/SKILL.md +11 -8
  11. package/dist/global-skills/add-notifications/SKILL.md +10 -7
  12. package/dist/global-skills/add-realtime/SKILL.md +10 -7
  13. package/dist/global-skills/add-route/SKILL.md +6 -0
  14. package/dist/global-skills/add-search/SKILL.md +10 -7
  15. package/dist/global-skills/add-signin/SKILL.md +10 -8
  16. package/dist/global-skills/add-teams/SKILL.md +14 -10
  17. package/dist/global-skills/add-upload/SKILL.md +6 -0
  18. package/dist/global-skills/aws-cdk/SKILL.md +1 -0
  19. package/dist/global-skills/aws-cloudformation/SKILL.md +1 -0
  20. package/dist/global-skills/aws-serverless/SKILL.md +1 -0
  21. package/dist/global-skills/aws-serverless/references/compute-decision-edge-cases.md +77 -0
  22. package/dist/global-skills/back-up-my-code/SKILL.md +16 -5
  23. package/dist/global-skills/better-auth-best-practices/SKILL.md +1 -0
  24. package/dist/global-skills/better-auth-security-best-practices/SKILL.md +1 -0
  25. package/dist/global-skills/building-native-ui/SKILL.md +1 -0
  26. package/dist/global-skills/buy-domain/SKILL.md +10 -7
  27. package/dist/global-skills/check-safety/SKILL.md +11 -8
  28. package/dist/global-skills/claimable-postgres/SKILL.md +1 -0
  29. package/dist/global-skills/configure-capabilities/SKILL.md +7 -1
  30. package/dist/global-skills/connect-account/SKILL.md +7 -1
  31. package/dist/global-skills/connect-account-backend/SKILL.md +6 -0
  32. package/dist/global-skills/create-auth-skill/SKILL.md +1 -0
  33. package/dist/global-skills/design-my-data/SKILL.md +12 -5
  34. package/dist/global-skills/doctor/SKILL.md +17 -10
  35. package/dist/global-skills/eas-app-stores/SKILL.md +2 -1
  36. package/dist/global-skills/eas-app-stores/agents/openai.yaml +1 -1
  37. package/dist/global-skills/eas-hosting/SKILL.md +2 -1
  38. package/dist/global-skills/eas-hosting/agents/openai.yaml +1 -1
  39. package/dist/global-skills/eas-observe/SKILL.md +2 -1
  40. package/dist/global-skills/eas-observe/agents/openai.yaml +1 -1
  41. package/dist/global-skills/eas-simulator/SKILL.md +9 -1
  42. package/dist/global-skills/eas-simulator/agents/openai.yaml +1 -1
  43. package/dist/global-skills/eas-simulator/references/logs-and-crashes.md +101 -0
  44. package/dist/global-skills/eas-simulator/references/troubleshooting.md +4 -0
  45. package/dist/global-skills/eas-update/SKILL.md +2 -1
  46. package/dist/global-skills/eas-update/agents/openai.yaml +1 -1
  47. package/dist/global-skills/eas-update-insights/SKILL.md +2 -1
  48. package/dist/global-skills/eas-update-insights/agents/openai.yaml +1 -1
  49. package/dist/global-skills/eas-workflows/SKILL.md +2 -1
  50. package/dist/global-skills/eas-workflows/agents/openai.yaml +1 -1
  51. package/dist/global-skills/email-best-practices/SKILL.md +1 -0
  52. package/dist/global-skills/expo-animation/SKILL.md +2 -1
  53. package/dist/global-skills/expo-api-routes/SKILL.md +1 -0
  54. package/dist/global-skills/expo-app-clip/SKILL.md +2 -1
  55. package/dist/global-skills/expo-brownfield/SKILL.md +2 -1
  56. package/dist/global-skills/expo-cicd-workflows/SKILL.md +1 -0
  57. package/dist/global-skills/expo-data-fetching/SKILL.md +2 -1
  58. package/dist/global-skills/expo-deployment/SKILL.md +1 -0
  59. package/dist/global-skills/expo-design-system/SKILL.md +2 -1
  60. package/dist/global-skills/expo-dev-client/SKILL.md +2 -1
  61. package/dist/global-skills/expo-dom/SKILL.md +2 -1
  62. package/dist/global-skills/expo-examples/SKILL.md +2 -1
  63. package/dist/global-skills/expo-migrate-module/SKILL.md +2 -1
  64. package/dist/global-skills/expo-module/SKILL.md +2 -1
  65. package/dist/global-skills/expo-native-ui/SKILL.md +2 -1
  66. package/dist/global-skills/expo-observe/SKILL.md +1 -0
  67. package/dist/global-skills/expo-overview/SKILL.md +2 -1
  68. package/dist/global-skills/expo-project-structure/SKILL.md +2 -1
  69. package/dist/global-skills/expo-router/SKILL.md +2 -1
  70. package/dist/global-skills/expo-skill-eval/SKILL.md +1 -0
  71. package/dist/global-skills/expo-skill-feedback/SKILL.md +1 -0
  72. package/dist/global-skills/expo-tailwind-setup/SKILL.md +1 -0
  73. package/dist/global-skills/expo-ui/SKILL.md +2 -1
  74. package/dist/global-skills/expo-upgrade/SKILL.md +2 -1
  75. package/dist/global-skills/expo-web-to-native/SKILL.md +2 -1
  76. package/dist/global-skills/extension-to-functions-codebase/SKILL.md +1 -0
  77. package/dist/global-skills/firebase-ai-logic-basics/SKILL.md +1 -0
  78. package/dist/global-skills/firebase-ai-logic-basics/references/tts_generation.md +676 -0
  79. package/dist/global-skills/firebase-app-hosting-basics/SKILL.md +1 -0
  80. package/dist/global-skills/firebase-auth-basics/SKILL.md +11 -6
  81. package/dist/global-skills/firebase-auth-basics/references/client_sdk_android.md +61 -23
  82. package/dist/global-skills/firebase-basics/SKILL.md +2 -0
  83. package/dist/global-skills/firebase-basics/references/android_setup.md +165 -23
  84. package/dist/global-skills/firebase-crashlytics/SKILL.md +1 -0
  85. package/dist/global-skills/firebase-crashlytics/references/android_setup.md +147 -119
  86. package/dist/global-skills/firebase-data-connect/SKILL.md +1 -0
  87. package/dist/global-skills/firebase-data-connect/reference/sdk_android.md +81 -25
  88. package/dist/global-skills/firebase-firestore/SKILL.md +1 -0
  89. package/dist/global-skills/firebase-firestore/references/enterprise/android_sdk_usage.md +70 -44
  90. package/dist/global-skills/firebase-firestore/references/standard/android_sdk_usage.md +63 -27
  91. package/dist/global-skills/firebase-hosting-basics/SKILL.md +1 -0
  92. package/dist/global-skills/firebase-remote-config-basics/SKILL.md +1 -0
  93. package/dist/global-skills/firebase-remote-config-basics/references/android_setup.md +87 -95
  94. package/dist/global-skills/firebase-security-rules-auditor/SKILL.md +1 -0
  95. package/dist/global-skills/firestore-rules-creation/SKILL.md +1 -0
  96. package/dist/global-skills/go-live/SKILL.md +13 -7
  97. package/dist/global-skills/harden/SKILL.md +15 -10
  98. package/dist/global-skills/instrument-feature-flags/SKILL.md +1 -0
  99. package/dist/global-skills/instrument-product-analytics/SKILL.md +1 -0
  100. package/dist/global-skills/manifest.json +5 -1
  101. package/dist/global-skills/mongodb-atlas-stream-processing/SKILL.md +1 -0
  102. package/dist/global-skills/mongodb-connection/SKILL.md +1 -0
  103. package/dist/global-skills/mongodb-mcp-setup/SKILL.md +1 -0
  104. package/dist/global-skills/mongodb-natural-language-querying/SKILL.md +1 -0
  105. package/dist/global-skills/mongodb-qe-size-estimation/SKILL.md +224 -0
  106. package/dist/global-skills/mongodb-query-optimizer/SKILL.md +1 -0
  107. package/dist/global-skills/mongodb-schema-design/SKILL.md +1 -0
  108. package/dist/global-skills/mongodb-search-and-ai/SKILL.md +1 -0
  109. package/dist/global-skills/native-data-fetching/SKILL.md +1 -0
  110. package/dist/global-skills/neon/SKILL.md +18 -5
  111. package/dist/global-skills/neon-ai-gateway/SKILL.md +1 -0
  112. package/dist/global-skills/neon-auth/SKILL.md +1 -0
  113. package/dist/global-skills/neon-functions/SKILL.md +12 -0
  114. package/dist/global-skills/neon-functions/references/native-binaries.md +188 -0
  115. package/dist/global-skills/neon-object-storage/SKILL.md +1 -0
  116. package/dist/global-skills/neon-postgres/SKILL.md +1 -0
  117. package/dist/global-skills/neon-postgres-branches/SKILL.md +1 -0
  118. package/dist/global-skills/neon-postgres-egress-optimizer/SKILL.md +1 -0
  119. package/dist/global-skills/onboarding/SKILL.md +46 -29
  120. package/dist/global-skills/plan-my-idea/SKILL.md +7 -1
  121. package/dist/global-skills/publish-app/SKILL.md +7 -1
  122. package/dist/global-skills/publish-extension/SKILL.md +7 -1
  123. package/dist/global-skills/resend/SKILL.md +2 -1
  124. package/dist/global-skills/resend/references/webhooks.md +2 -0
  125. package/dist/global-skills/reset-password/SKILL.md +10 -6
  126. package/dist/global-skills/save-data/SKILL.md +51 -16
  127. package/dist/global-skills/sentry-sdk-setup/SKILL.md +1 -0
  128. package/dist/global-skills/sentry-workflow/SKILL.md +1 -0
  129. package/dist/global-skills/setup-email/SKILL.md +13 -8
  130. package/dist/global-skills/setup-payments/SKILL.md +19 -15
  131. package/dist/global-skills/setup-sms/SKILL.md +7 -1
  132. package/dist/global-skills/sign-in-with-email-link/SKILL.md +10 -6
  133. package/dist/global-skills/sign-in-with-google/SKILL.md +20 -13
  134. package/dist/global-skills/sign-in-with-phone/SKILL.md +11 -7
  135. package/dist/global-skills/stripe-best-practices/SKILL.md +2 -1
  136. package/dist/global-skills/stripe-best-practices/references/billing.md +2 -0
  137. package/dist/global-skills/stripe-best-practices/references/payments.md +1 -1
  138. package/dist/global-skills/stripe-best-practices/references/tax.md +2 -2
  139. package/dist/global-skills/supabase/CHANGELOG.md +19 -0
  140. package/dist/global-skills/supabase/SKILL.md +1 -0
  141. package/dist/global-skills/supabase-postgres-best-practices/SKILL.md +1 -0
  142. package/dist/global-skills/track-errors/SKILL.md +18 -13
  143. package/dist/global-skills/update-kit/SKILL.md +7 -1
  144. package/dist/global-skills/upgrading-expo/SKILL.md +1 -0
  145. package/dist/global-skills/use-dom/SKILL.md +1 -0
  146. package/dist/global-skills/use-railway/SKILL.md +6 -5
  147. package/dist/global-skills/use-railway/references/configure.md +34 -1
  148. package/dist/global-skills/use-railway/references/iac.md +2 -0
  149. package/dist/global-skills/use-railway/references/tracing.md +89 -44
  150. package/dist/global-skills/validate-my-idea/SKILL.md +6 -0
  151. package/dist/global-skills/vercel-composition-patterns/SKILL.md +1 -0
  152. package/dist/global-skills/vercel-react-best-practices/SKILL.md +1 -0
  153. package/dist/global-skills/vybekiit-feedback/SKILL.md +6 -0
  154. package/dist/global-skills/vybekiitReferences/backend/AGENTS.md +50 -0
  155. package/dist/global-skills/vybekiitReferences/backend/agent/goal-index.md +17 -0
  156. package/dist/global-skills/vybekiitReferences/backend/agent/goal-routes.json +229 -0
  157. package/dist/global-skills/vybekiitReferences/backend/agent/mcp-agent.json +12 -0
  158. package/dist/global-skills/vybekiitReferences/backend/agent/mcp-firebase.json +8 -0
  159. package/dist/global-skills/vybekiitReferences/backend/agent/mcp-mongodb.json +12 -0
  160. package/dist/global-skills/vybekiitReferences/backend/agent/mcp-neon.json +8 -0
  161. package/dist/global-skills/vybekiitReferences/backend/agent/mcp-paypal.json +8 -0
  162. package/dist/global-skills/vybekiitReferences/backend/agent/mcp-posthog.json +17 -0
  163. package/dist/global-skills/vybekiitReferences/backend/agent/mcp-railway-local.json +8 -0
  164. package/dist/global-skills/vybekiitReferences/backend/agent/mcp-railway-remote.json +7 -0
  165. package/dist/global-skills/vybekiitReferences/backend/agent/mcp-sentry.json +7 -0
  166. package/dist/global-skills/vybekiitReferences/backend/agent/mcp-setup.md +140 -0
  167. package/dist/global-skills/vybekiitReferences/backend/agent/mcp-supabase.json +7 -0
  168. package/dist/global-skills/vybekiitReferences/backend/agent/mcp-twilio-alpha.json +8 -0
  169. package/dist/global-skills/vybekiitReferences/backend/agent/mcp-twilio-docs.json +7 -0
  170. package/dist/global-skills/vybekiitReferences/backend/agent/session-bootstrap.md +44 -0
  171. package/dist/global-skills/vybekiitReferences/backend/agent/tech-references.md +28 -0
  172. package/dist/global-skills/vybekiitReferences/backend/language.md +345 -0
  173. package/dist/global-skills/vybekiitReferences/backend/platform-skills/deploy-railway-vybekiit.md +26 -0
  174. package/dist/global-skills/vybekiitReferences/backend/platform-skills/extend-capabilities-vybekiit.md +127 -0
  175. package/dist/global-skills/vybekiitReferences/backend/platform-skills/mcp-tools-vybekiit.md +87 -0
  176. package/dist/global-skills/vybekiitReferences/backend/platform-skills/mongodb-vybekiit.md +34 -0
  177. package/dist/global-skills/vybekiitReferences/backend/platform-skills/railway-postgres-vybekiit.md +24 -0
  178. package/dist/global-skills/vybekiitReferences/extension/AGENTS.md +88 -0
  179. package/dist/global-skills/vybekiitReferences/extension/agent/goal-index.md +27 -0
  180. package/dist/global-skills/vybekiitReferences/extension/agent/goal-routes.json +239 -0
  181. package/dist/global-skills/vybekiitReferences/extension/agent/mcp-agent.json +14 -0
  182. package/dist/global-skills/vybekiitReferences/extension/agent/mcp-posthog.json +17 -0
  183. package/dist/global-skills/vybekiitReferences/extension/agent/mcp-sentry.json +7 -0
  184. package/dist/global-skills/vybekiitReferences/extension/agent/mcp-setup.md +111 -0
  185. package/dist/global-skills/vybekiitReferences/extension/agent/mcp-twilio-alpha.json +13 -0
  186. package/dist/global-skills/vybekiitReferences/extension/agent/mcp-twilio-docs.json +7 -0
  187. package/dist/global-skills/vybekiitReferences/extension/agent/session-bootstrap.md +44 -0
  188. package/dist/global-skills/vybekiitReferences/extension/agent/tech-references.md +28 -0
  189. package/dist/global-skills/vybekiitReferences/extension/agent/ui-sources.md +33 -0
  190. package/dist/global-skills/vybekiitReferences/extension/language.md +348 -0
  191. package/dist/global-skills/vybekiitReferences/extension/platform-skills/README.md +32 -0
  192. package/dist/global-skills/vybekiitReferences/extension/platform-skills/browser-automation-vybekiit.md +44 -0
  193. package/dist/global-skills/vybekiitReferences/extension/platform-skills/chrome-extension-vybekiit.md +28 -0
  194. package/dist/global-skills/vybekiitReferences/extension/platform-skills/ci-vybekiit.md +26 -0
  195. package/dist/global-skills/vybekiitReferences/extension/platform-skills/client-state-vybekiit.md +25 -0
  196. package/dist/global-skills/vybekiitReferences/extension/platform-skills/code-hygiene-vybekiit.md +38 -0
  197. package/dist/global-skills/vybekiitReferences/extension/platform-skills/data-model-vybekiit.md +29 -0
  198. package/dist/global-skills/vybekiitReferences/extension/platform-skills/env-secrets-vybekiit.md +21 -0
  199. package/dist/global-skills/vybekiitReferences/extension/platform-skills/extend-capabilities-vybekiit.md +127 -0
  200. package/dist/global-skills/vybekiitReferences/extension/platform-skills/format-lint-vybekiit.md +33 -0
  201. package/dist/global-skills/vybekiitReferences/extension/platform-skills/github-vybekiit.md +47 -0
  202. package/dist/global-skills/vybekiitReferences/extension/platform-skills/i18n-vybekiit.md +39 -0
  203. package/dist/global-skills/vybekiitReferences/extension/platform-skills/mcp-tools-vybekiit.md +87 -0
  204. package/dist/global-skills/vybekiitReferences/extension/platform-skills/observability-vybekiit.md +36 -0
  205. package/dist/global-skills/vybekiitReferences/extension/platform-skills/planning-vybekiit.md +59 -0
  206. package/dist/global-skills/vybekiitReferences/extension/platform-skills/playwright-vybekiit.md +42 -0
  207. package/dist/global-skills/vybekiitReferences/extension/platform-skills/react-patterns-vybekiit.md +45 -0
  208. package/dist/global-skills/vybekiitReferences/extension/platform-skills/responsive-vybekiit.md +27 -0
  209. package/dist/global-skills/vybekiitReferences/extension/platform-skills/sentry-vybekiit.md +33 -0
  210. package/dist/global-skills/vybekiitReferences/extension/platform-skills/ship-via-pr-vybekiit.md +49 -0
  211. package/dist/global-skills/vybekiitReferences/extension/platform-skills/testing-vybekiit.md +33 -0
  212. package/dist/global-skills/vybekiitReferences/extension/platform-skills/ui-consistency-vybekiit.md +33 -0
  213. package/dist/global-skills/vybekiitReferences/mobile/AGENTS.md +475 -0
  214. package/dist/global-skills/vybekiitReferences/mobile/agent/goal-index.md +32 -0
  215. package/dist/global-skills/vybekiitReferences/mobile/agent/goal-routes.json +279 -0
  216. package/dist/global-skills/vybekiitReferences/mobile/agent/mcp-agent.json +14 -0
  217. package/dist/global-skills/vybekiitReferences/mobile/agent/mcp-firebase.json +8 -0
  218. package/dist/global-skills/vybekiitReferences/mobile/agent/mcp-neon.json +8 -0
  219. package/dist/global-skills/vybekiitReferences/mobile/agent/mcp-paypal.json +8 -0
  220. package/dist/global-skills/vybekiitReferences/mobile/agent/mcp-posthog.json +17 -0
  221. package/dist/global-skills/vybekiitReferences/mobile/agent/mcp-sentry.json +7 -0
  222. package/dist/global-skills/vybekiitReferences/mobile/agent/mcp-setup.md +112 -0
  223. package/dist/global-skills/vybekiitReferences/mobile/agent/mcp-stripe.json +7 -0
  224. package/dist/global-skills/vybekiitReferences/mobile/agent/mcp-supabase.json +7 -0
  225. package/dist/global-skills/vybekiitReferences/mobile/agent/mcp-twilio-alpha.json +13 -0
  226. package/dist/global-skills/vybekiitReferences/mobile/agent/mcp-twilio-docs.json +7 -0
  227. package/dist/global-skills/vybekiitReferences/mobile/agent/session-bootstrap.md +44 -0
  228. package/dist/global-skills/vybekiitReferences/mobile/agent/tech-references.md +28 -0
  229. package/dist/global-skills/vybekiitReferences/mobile/agent/ui-catalog-index.mobile.json +36294 -0
  230. package/dist/global-skills/vybekiitReferences/mobile/agent/ui-sources.mobile.md +36 -0
  231. package/dist/global-skills/vybekiitReferences/mobile/language.md +352 -0
  232. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/README.md +43 -0
  233. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/ci-vybekiit.md +26 -0
  234. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/client-state-vybekiit.md +25 -0
  235. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/code-hygiene-vybekiit.md +38 -0
  236. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/data-model-vybekiit.md +29 -0
  237. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/env-secrets-vybekiit.md +21 -0
  238. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/extend-capabilities-vybekiit.md +127 -0
  239. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/format-lint-vybekiit.md +33 -0
  240. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/github-vybekiit.md +47 -0
  241. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/i18n-vybekiit.md +41 -0
  242. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/launch-store-vybekiit.md +26 -0
  243. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/mcp-tools-vybekiit.md +87 -0
  244. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/observability-vybekiit.md +36 -0
  245. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/planning-vybekiit.md +59 -0
  246. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/playwright-vybekiit.md +42 -0
  247. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/react-patterns-vybekiit.md +45 -0
  248. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/sentry-vybekiit.md +33 -0
  249. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/ship-via-pr-vybekiit.md +49 -0
  250. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/testing-vybekiit.md +33 -0
  251. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/ui-consistency-vybekiit.md +33 -0
  252. package/dist/global-skills/vybekiitReferences/mobile/platform-skills/ui-port-from-web-vybekiit.md +44 -0
  253. package/dist/global-skills/vybekiitReferences/spa/AGENTS.md +91 -0
  254. package/dist/global-skills/vybekiitReferences/spa/agent/goal-index.md +30 -0
  255. package/dist/global-skills/vybekiitReferences/spa/agent/goal-routes.json +267 -0
  256. package/dist/global-skills/vybekiitReferences/spa/agent/mcp-agent.json +14 -0
  257. package/dist/global-skills/vybekiitReferences/spa/agent/mcp-setup.md +63 -0
  258. package/dist/global-skills/vybekiitReferences/spa/agent/session-bootstrap.md +44 -0
  259. package/dist/global-skills/vybekiitReferences/spa/agent/ui-sources.md +63 -0
  260. package/dist/global-skills/vybekiitReferences/spa/language.md +217 -0
  261. package/dist/global-skills/vybekiitReferences/spa/platform-skills/mcp-tools-vybekiit.md +87 -0
  262. package/dist/global-skills/vybekiitReferences/web/AGENTS.md +138 -0
  263. package/dist/global-skills/vybekiitReferences/web/agent/goal-index.md +54 -0
  264. package/dist/global-skills/vybekiitReferences/web/agent/goal-routes.json +366 -0
  265. package/dist/global-skills/vybekiitReferences/web/agent/mcp-agent.json +14 -0
  266. package/dist/global-skills/vybekiitReferences/web/agent/mcp-firebase.json +8 -0
  267. package/dist/global-skills/vybekiitReferences/web/agent/mcp-mongodb.json +12 -0
  268. package/dist/global-skills/vybekiitReferences/web/agent/mcp-neon.json +8 -0
  269. package/dist/global-skills/vybekiitReferences/web/agent/mcp-paypal.json +8 -0
  270. package/dist/global-skills/vybekiitReferences/web/agent/mcp-posthog.json +17 -0
  271. package/dist/global-skills/vybekiitReferences/web/agent/mcp-railway-local.json +8 -0
  272. package/dist/global-skills/vybekiitReferences/web/agent/mcp-railway-remote.json +7 -0
  273. package/dist/global-skills/vybekiitReferences/web/agent/mcp-sentry.json +7 -0
  274. package/dist/global-skills/vybekiitReferences/web/agent/mcp-setup.md +174 -0
  275. package/dist/global-skills/vybekiitReferences/web/agent/mcp-stripe.json +7 -0
  276. package/dist/global-skills/vybekiitReferences/web/agent/mcp-supabase.json +7 -0
  277. package/dist/global-skills/vybekiitReferences/web/agent/mcp-twilio-alpha.json +13 -0
  278. package/dist/global-skills/vybekiitReferences/web/agent/mcp-twilio-docs.json +7 -0
  279. package/dist/global-skills/vybekiitReferences/web/agent/session-bootstrap.md +44 -0
  280. package/dist/global-skills/vybekiitReferences/web/agent/tech-references.md +28 -0
  281. package/dist/global-skills/vybekiitReferences/web/agent/ui-catalog-index.json +36294 -0
  282. package/dist/global-skills/vybekiitReferences/web/agent/ui-catalog-index.mobile.json +36294 -0
  283. package/dist/global-skills/vybekiitReferences/web/agent/ui-sources.md +104 -0
  284. package/dist/global-skills/vybekiitReferences/web/language.md +348 -0
  285. package/dist/global-skills/vybekiitReferences/web/platform-skills/README.md +66 -0
  286. package/dist/global-skills/vybekiitReferences/web/platform-skills/ai-vybekiit.md +3 -0
  287. package/dist/global-skills/vybekiitReferences/web/platform-skills/analytics-vybekiit.md +20 -0
  288. package/dist/global-skills/vybekiitReferences/web/platform-skills/assets-vybekiit.md +31 -0
  289. package/dist/global-skills/vybekiitReferences/web/platform-skills/aws-vybekiit.md +25 -0
  290. package/dist/global-skills/vybekiitReferences/web/platform-skills/better-auth-vybekiit.md +21 -0
  291. package/dist/global-skills/vybekiitReferences/web/platform-skills/browser-automation-vybekiit.md +48 -0
  292. package/dist/global-skills/vybekiitReferences/web/platform-skills/ci-vybekiit.md +26 -0
  293. package/dist/global-skills/vybekiitReferences/web/platform-skills/client-state-vybekiit.md +25 -0
  294. package/dist/global-skills/vybekiitReferences/web/platform-skills/cloudflare-email-vybekiit.md +42 -0
  295. package/dist/global-skills/vybekiitReferences/web/platform-skills/cms-vybekiit.md +3 -0
  296. package/dist/global-skills/vybekiitReferences/web/platform-skills/code-hygiene-vybekiit.md +38 -0
  297. package/dist/global-skills/vybekiitReferences/web/platform-skills/compliance-vybekiit.md +3 -0
  298. package/dist/global-skills/vybekiitReferences/web/platform-skills/data-model-vybekiit.md +29 -0
  299. package/dist/global-skills/vybekiitReferences/web/platform-skills/db-presets-vybekiit.md +46 -0
  300. package/dist/global-skills/vybekiitReferences/web/platform-skills/deploy-cloudflare-vybekiit.md +22 -0
  301. package/dist/global-skills/vybekiitReferences/web/platform-skills/deploy-github-pages-vybekiit.md +25 -0
  302. package/dist/global-skills/vybekiitReferences/web/platform-skills/deploy-railway-vybekiit.md +26 -0
  303. package/dist/global-skills/vybekiitReferences/web/platform-skills/deploy-vercel-vybekiit.md +23 -0
  304. package/dist/global-skills/vybekiitReferences/web/platform-skills/env-secrets-vybekiit.md +21 -0
  305. package/dist/global-skills/vybekiitReferences/web/platform-skills/extend-capabilities-vybekiit.md +127 -0
  306. package/dist/global-skills/vybekiitReferences/web/platform-skills/firebase-vybekiit.md +27 -0
  307. package/dist/global-skills/vybekiitReferences/web/platform-skills/format-lint-vybekiit.md +33 -0
  308. package/dist/global-skills/vybekiitReferences/web/platform-skills/github-vybekiit.md +47 -0
  309. package/dist/global-skills/vybekiitReferences/web/platform-skills/i18n-vybekiit.md +3 -0
  310. package/dist/global-skills/vybekiitReferences/web/platform-skills/jobs-vybekiit.md +3 -0
  311. package/dist/global-skills/vybekiitReferences/web/platform-skills/kv-vybekiit.md +3 -0
  312. package/dist/global-skills/vybekiitReferences/web/platform-skills/lemon-squeezy-vybekiit.md +30 -0
  313. package/dist/global-skills/vybekiitReferences/web/platform-skills/mcp-tools-vybekiit.md +87 -0
  314. package/dist/global-skills/vybekiitReferences/web/platform-skills/mongodb-vybekiit.md +39 -0
  315. package/dist/global-skills/vybekiitReferences/web/platform-skills/neon-vybekiit.md +33 -0
  316. package/dist/global-skills/vybekiitReferences/web/platform-skills/nextjs-vybekiit.md +20 -0
  317. package/dist/global-skills/vybekiitReferences/web/platform-skills/notifications-vybekiit.md +3 -0
  318. package/dist/global-skills/vybekiitReferences/web/platform-skills/observability-vybekiit.md +36 -0
  319. package/dist/global-skills/vybekiitReferences/web/platform-skills/paypal-vybekiit.md +25 -0
  320. package/dist/global-skills/vybekiitReferences/web/platform-skills/planning-vybekiit.md +59 -0
  321. package/dist/global-skills/vybekiitReferences/web/platform-skills/playwright-vybekiit.md +42 -0
  322. package/dist/global-skills/vybekiitReferences/web/platform-skills/railway-postgres-vybekiit.md +24 -0
  323. package/dist/global-skills/vybekiitReferences/web/platform-skills/react-patterns-vybekiit.md +45 -0
  324. package/dist/global-skills/vybekiitReferences/web/platform-skills/realtime-vybekiit.md +3 -0
  325. package/dist/global-skills/vybekiitReferences/web/platform-skills/registrar-vybekiit.md +36 -0
  326. package/dist/global-skills/vybekiitReferences/web/platform-skills/resend-vybekiit.md +20 -0
  327. package/dist/global-skills/vybekiitReferences/web/platform-skills/responsive-vybekiit.md +27 -0
  328. package/dist/global-skills/vybekiitReferences/web/platform-skills/search-vybekiit.md +3 -0
  329. package/dist/global-skills/vybekiitReferences/web/platform-skills/sentry-vybekiit.md +33 -0
  330. package/dist/global-skills/vybekiitReferences/web/platform-skills/seo-vybekiit.md +29 -0
  331. package/dist/global-skills/vybekiitReferences/web/platform-skills/ses-vybekiit.md +19 -0
  332. package/dist/global-skills/vybekiitReferences/web/platform-skills/shadcn-vybekiit.md +25 -0
  333. package/dist/global-skills/vybekiitReferences/web/platform-skills/ship-via-pr-vybekiit.md +49 -0
  334. package/dist/global-skills/vybekiitReferences/web/platform-skills/stripe-vybekiit.md +26 -0
  335. package/dist/global-skills/vybekiitReferences/web/platform-skills/supabase-vybekiit.md +31 -0
  336. package/dist/global-skills/vybekiitReferences/web/platform-skills/tenancy-vybekiit.md +3 -0
  337. package/dist/global-skills/vybekiitReferences/web/platform-skills/testing-vybekiit.md +33 -0
  338. package/dist/global-skills/vybekiitReferences/web/platform-skills/ui-consistency-vybekiit.md +34 -0
  339. package/dist/global-skills/vybekiitReferences/web/platform-skills/ui-routing-vybekiit.md +41 -0
  340. package/dist/global-skills/watch-my-app/SKILL.md +6 -0
  341. package/dist/global-skills/web-to-native/SKILL.md +1 -0
  342. package/dist/global-skills/wire-auth/SKILL.md +6 -0
  343. package/dist/global-skills/wire-database/SKILL.md +15 -1
  344. package/dist/global-skills/wire-email/SKILL.md +6 -0
  345. package/dist/global-skills/wire-payments/SKILL.md +6 -0
  346. package/dist/global-skills/workers-best-practices/SKILL.md +4 -3
  347. package/dist/global-skills/workers-best-practices/references/configuration.md +1 -1
  348. package/dist/global-skills/workers-best-practices/references/platform-apis.md +5 -5
  349. package/dist/global-skills/workers-best-practices/references/runtime-patterns.md +1 -1
  350. package/dist/global-skills/wrangler/SKILL.md +27 -24
  351. package/dist/global-skills/xcode-project-setup/SKILL.md +1 -0
  352. package/package.json +12 -9
@@ -1,15 +1,23 @@
1
1
  ---
2
2
  name: onboarding
3
- description: "take the vibe coder from \"I just bought this\" to **their app running and visible in front of. Use when the vibe coder says something like: set up my app; let's start; get me going; just bought."
3
+ description: "take the builder from \"I just bought this\" to their app running and visible in front of them in this one session. Use when the vibe coder says something like: set up my app; let's start; get me going; just bought; hi; help."
4
4
  metadata:
5
5
  vybekiit-generated: buyer-skill-stub
6
6
  ---
7
7
 
8
+ Prefer the current project instructions and matching project skill when inside a kit app.
9
+ Outside a kit app, resolve guidance relative to this skill directory: ../vybekiitReferences/web/.
10
+ That folder contains language.md, AGENTS.md, CODE-STYLE.md, agent/ and platform-skills/.
11
+ Bare wrapper filenames refer to platform-skills/ there. Do not assume project code or recipe files exist globally.
12
+ Inspect an existing app before changing it. Scaffold a new kit app only when the builder asked for a new app.
13
+
8
14
  <!-- vybekiit:generated:buyer-skill-stub -->
9
15
 
10
16
  # Skill: onboarding
11
17
 
12
- **Goal:** take the vibe coder from "I just bought this" to **their app running and visible in front of
18
+ > Agent-only: follow the Persistent features sequence in `.vybekiit/agent/session-bootstrap.md`. Reuse the relevant catalog presets before adding app-owned extensions, and record structural and behavioral evidence separately.
19
+
20
+ **Goal:** take the builder from "I just bought this" to **their app running and visible in front of
13
21
  them** in this one session. This is the keystone โ€” the moment that proves the purchase was worth it.
14
22
 
15
23
  **Contract:** one action at a time ยท verify-before-advance ยท plain language (`language.md`) ยท
@@ -18,30 +26,31 @@ translate every error ยท celebrate. Decide all technical choices yourself.
18
26
  ## Steps
19
27
 
20
28
  <!-- vybekiit:page-recipe-install -->
21
- 0. **Install the end-user onboarding recipe when the vibe coder wants a first-run wizard (catalog SSOT โ€” Option C).**
22
- Copy `apps/componentLibrary/src/pageRecipes/OnboardingPage.tsx` export `OnboardingPage` into the buyer app at route `/onboarding`.
23
- Recipe id: `onboarding`. Presets: none.
24
- Keep every `TODO:` in the recipe and wire each one after the route renders.
25
- Skip this step if the vibe coder only needs *their* kit setup (steps 1โ€“5 below) and not a product wizard for their users.
26
- Also reference `packages/agentKit` `getPageRecipeInstall('onboarding')` / page-recipe-manifest.json.
27
- **Verify:** if installed, `/onboarding` builds with practice UI.
28
-
29
- 1. **Welcome + ask the one thing that matters.**
30
- Greet warmly. If the vibe coder already described their app, use that description. Otherwise ask:
29
+ 0. **Add the first-run wizard page when the vibe coder wants one for their users.** Run
30
+ `vybekiit add page-recipe onboarding`. It adds the page at `/onboarding`. Keep every `TODO:` in the
31
+ page and fill each one in. Skip this step when the vibe coder only needs their own kit setup
32
+ (steps 1-5 below).
33
+ **Verify:** if added, `/onboarding` opens and shows practice content.
34
+
35
+ 1. **Welcome, say what VybeKiit is, then ask the one thing that matters.**
36
+ Greet warmly in plain text with no emojis, then tell them in a few short sentences what they have, in plain words:
37
+ *"VybeKiit is a ready-made web app with the hard parts already working. It comes with sign-in, payments, a database that remembers your customers' information, emails your app sends, file uploads, visitor stats, alerts when something breaks, more languages, and putting your app online. While we build, you can turn on Report mode and point at anything on screen that looks wrong, and I fix it. You own all of it, and I do the technical work."*
38
+ Then stop talking about the kit and move on to their idea.
39
+ If the vibe coder already described their app, use that description. Otherwise ask:
31
40
  *"In one sentence, what do you want to build?"* Use their answer to tailor the starter page later.
32
41
  Keep the conversation about their idea.
33
42
 
34
- 1b. **One-time planning offer** (skip if `.vybekiit/state/planning-intro-seen` exists).
35
- Ask: *"Before we start building โ€” want to **think it through together** first? I'll ask one question
36
- at a time until we're totally aligned. Or we can jump straight to building."*
37
- - **Yes** โ†’ run `plan-my-idea.md` with their one-sentence answer as seed; when done, continue to
38
- step 2.
39
- - **No** โ†’ continue to step 2.
40
- Create `.vybekiit/state/planning-intro-seen` (any content) so this offer never repeats.
43
+ 1b. **Keep the requested goal.** If the builder asked for working behavior, carry that goal
44
+ through setup and implement it. Offer planning only when they ask to plan or a missing product
45
+ decision would change the work. Do not replace a booking flow with a personalized headline.
41
46
 
42
47
  2. **Set up the tools, then get the preview running.**
43
- First run `vybekiit doctor` โ€” it installs the tools the app will need (for the database and for
44
- putting the app online) so the vibe coder never configures anything. It may say a tool "isn't signed
48
+ In an empty folder, use `vybekiit create app --web <destination>` before running project
49
+ checks. If setup has already written files such as `.env`, preserve them and choose an empty
50
+ child folder for the scaffold. Do not delete existing files to make the command accept a path.
51
+ Inspect an existing app and reuse its setup instead of scaffolding over it.
52
+ Then run `vybekiit doctor` โ€” it installs the tools the app will need (for the database and for
53
+ putting the app online) so the builder never configures anything. It may say a tool "isn't signed
45
54
  in yet" โ€” that's fine for now; sign-in happens later, only when a step needs it (one browser click
46
55
  each). Then install the project's building blocks. Check the URL printed by setup and the
47
56
  project's running processes. Reuse a preview only after confirming it serves this app.
@@ -56,7 +65,7 @@ translate every error ยท celebrate. Decide all technical choices yourself.
56
65
  **Verify:** the dev server is up with no errors. If it fails โ†’ run `doctor`.
57
66
 
58
67
  > (Agent-only) **Database MCP tier:** Supabase, Neon, and Firebase use login-once MCP configs
59
- > (`mcp-supabase.json`, `mcp-neon.json`, `mcp-firebase.json`) โ€” merge via `agent/mcp-setup.md`
68
+ > (`mcp-supabase.json`, `mcp-neon.json`, `mcp-firebase.json`) โ€” merge via `.vybekiit/agent/mcp-setup.md`
60
69
  > (Cursor, Claude Desktop, Codex). MongoDB and AWS are advanced only.
61
70
  >
62
71
  > **Payment MCP tier:** Stripe and PayPal use `mcp-stripe.json` / `mcp-paypal.json` when
@@ -64,17 +73,24 @@ translate every error ยท celebrate. Decide all technical choices yourself.
64
73
 
65
74
  3. **Show them their app.**
66
75
  Give them the verified preview link from this run and tell them what they'll see.
67
- **Verify:** ask them to confirm they can see the page. Don't continue until they say yes.
68
- ๐ŸŽ‰ *Celebrate* โ€” their app is alive.
76
+ **Verify:** open the page in a browser yourself. Continue the requested work; ask the builder only if you cannot verify what they see.
77
+ *Celebrate* โ€” their app is alive.
69
78
  Mention Report mode once: *"If something looks wrong, press Option+Shift+R (Alt+Shift+R on
70
79
  Windows), click it, tell me what's off โ€” I'll get the details automatically."*
71
80
 
72
81
  4. **Make it theirs.**
73
- Edit the starter page to reflect the one sentence from step 1 (headline + intro). Keep it simple.
74
- **Verify:** the preview updated; they confirm it looks like their idea.
82
+ Implement the requested behavior from step 1 using the existing app. A class-booking request needs a class list and a working booking flow, not only a headline.
83
+ Necessary capabilities are part of the original request: apply `save-data` for shared information
84
+ and the matching access skill when needed. Do not offer these as optional next goals while the
85
+ requested behavior depends on them. Reuse existing authorized connections before asking for access.
86
+ **Verify:** exercise the requested behavior in the browser, including saved changes after reload
87
+ and from a second browser when people share information. Test allowed and denied actions and
88
+ business limits. A successful page load or unrelated passing tests do not prove the feature.
89
+ Success messages must describe completed actions; do not promise an email without sending one.
90
+ Explain any actual access blocker and the part still incomplete.
75
91
 
76
92
  5. **Offer the next goal.**
77
- Ask what they want next and route via `goal-index.md`:
93
+ Only after the original requested behavior passes its checks, ask what they want next and route via `goal-index.md`:
78
94
  - take money โ†’ `setup-payments`
79
95
  - put it online for real โ†’ `go-live`
80
96
  - let people sign in โ†’ `add-signin`
@@ -87,8 +103,9 @@ Stop the steps and run `doctor`. Never show a raw error โ€” say what happened an
87
103
 
88
104
  ## Definition of done
89
105
 
90
- The vibe coder has seen their own app running and personalized, and knows the next thing they can ask
91
- for. Save progress for them (don't make them think about it).
106
+ The requested behavior works and has passed its browser and behavior checks, or the exact blocked
107
+ part is recorded as incomplete. A personalized preview alone completes only a preview request.
108
+ Record progress locally. Claim an online backup only after verifying the remote commit.
92
109
 
93
110
  ## After completing this skill
94
111
 
@@ -1,10 +1,16 @@
1
1
  ---
2
2
  name: plan-my-idea
3
- description: "help the builder figure out exactly what they want **before** you build โ€” so the first. Use when the vibe coder says something like: help me plan; figure out my idea; think it through; marketplace; like airbnb."
3
+ description: "help the builder figure out exactly what they want before you build โ€” so the first version matches their idea instead of your guess. Use when the vibe coder says something like: help me plan; figure out my idea; think it through; marketplace; like airbnb."
4
4
  metadata:
5
5
  vybekiit-generated: buyer-skill-stub
6
6
  ---
7
7
 
8
+ Prefer the current project instructions and matching project skill when inside a kit app.
9
+ Outside a kit app, resolve guidance relative to this skill directory: ../vybekiitReferences/web/.
10
+ That folder contains language.md, AGENTS.md, CODE-STYLE.md, agent/ and platform-skills/.
11
+ Bare wrapper filenames refer to platform-skills/ there. Do not assume project code or recipe files exist globally.
12
+ Inspect an existing app before changing it. Scaffold a new kit app only when the builder asked for a new app.
13
+
8
14
  <!-- vybekiit:generated:buyer-skill-stub -->
9
15
 
10
16
  # Skill: plan-my-idea
@@ -1,10 +1,16 @@
1
1
  ---
2
2
  name: publish-app
3
- description: "the builder's app is **in the App Store and Google Play** for anyone to download. This is. Use when the vibe coder says something like: put it online; publish; make it live; ship it; deploy; publish app."
3
+ description: "the builder's app is in the App Store and Google Play for anyone to download. Use when the vibe coder says something like: put it online; publish; make it live; ship it; deploy; publish app."
4
4
  metadata:
5
5
  vybekiit-generated: buyer-skill-stub
6
6
  ---
7
7
 
8
+ Prefer the current project instructions and matching project skill when inside a kit app.
9
+ Outside a kit app, resolve guidance relative to this skill directory: ../vybekiitReferences/mobile/.
10
+ That folder contains language.md, AGENTS.md, CODE-STYLE.md, agent/ and platform-skills/.
11
+ Bare wrapper filenames refer to platform-skills/ there. Do not assume project code or recipe files exist globally.
12
+ Inspect an existing app before changing it. Scaffold a new kit app only when the builder asked for a new app.
13
+
8
14
  <!-- vybekiit:generated:buyer-skill-stub -->
9
15
 
10
16
  # Skill: publish-app
@@ -1,10 +1,16 @@
1
1
  ---
2
2
  name: publish-extension
3
- description: "the builder's extension is **listed in the Chrome Web Store** for anyone to install. Use when the vibe coder says something like: put it online; publish; make it live; ship it; deploy; chrome store."
3
+ description: "the builder's extension is listed in the Chrome Web Store for anyone to install. Use when the vibe coder says something like: put it online; publish; make it live; ship it; deploy; chrome store."
4
4
  metadata:
5
5
  vybekiit-generated: buyer-skill-stub
6
6
  ---
7
7
 
8
+ Prefer the current project instructions and matching project skill when inside a kit app.
9
+ Outside a kit app, resolve guidance relative to this skill directory: ../vybekiitReferences/extension/.
10
+ That folder contains language.md, AGENTS.md, CODE-STYLE.md, agent/ and platform-skills/.
11
+ Bare wrapper filenames refer to platform-skills/ there. Do not assume project code or recipe files exist globally.
12
+ Inspect an existing app before changing it. Scaffold a new kit app only when the builder asked for a new app.
13
+
8
14
  <!-- vybekiit:generated:buyer-skill-stub -->
9
15
 
10
16
  # Skill: publish-extension
@@ -4,7 +4,7 @@ description: Use when working with the Resend email API โ€” sending transactiona
4
4
  license: MIT
5
5
  metadata:
6
6
  author: resend
7
- version: "3.12.0"
7
+ version: "3.13.0"
8
8
  homepage: https://resend.com/agent-skills
9
9
  source: https://github.com/resend/resend-skills
10
10
  openclaw:
@@ -47,6 +47,7 @@ references:
47
47
  - usage.md
48
48
  - installation.md
49
49
  - fetch-all-templates.mjs
50
+ disable-model-invocation: true
50
51
  ---
51
52
 
52
53
  # Resend
@@ -65,7 +65,9 @@ The `email.received` payload contains metadata only (sender, recipient, subject,
65
65
  |-------|---------|
66
66
  | `domain.created` / `updated` / `deleted` | Domain configuration changes |
67
67
  | `contact.created` / `updated` / `deleted` | Contact list changes (not from CSV imports) |
68
+ | `contact.topics.updated` | Contact's topic subscriptions change |
68
69
  | `suppression.added` / `removed` | Email address added to or removed from the suppression list |
70
+ | `topic.created` / `updated` / `deleted` | Topic created, updated, or deleted |
69
71
 
70
72
  ## Setup
71
73
 
@@ -5,6 +5,12 @@ metadata:
5
5
  vybekiit-generated: buyer-skill-stub
6
6
  ---
7
7
 
8
+ Prefer the current project instructions and matching project skill when inside a kit app.
9
+ Outside a kit app, resolve guidance relative to this skill directory: ../vybekiitReferences/web/.
10
+ That folder contains language.md, AGENTS.md, CODE-STYLE.md, agent/ and platform-skills/.
11
+ Bare wrapper filenames refer to platform-skills/ there. Do not assume project code or recipe files exist globally.
12
+ Inspect an existing app before changing it. Scaffold a new kit app only when the builder asked for a new app.
13
+
8
14
  <!-- vybekiit:generated:buyer-skill-stub -->
9
15
 
10
16
  # Skill: reset-password
@@ -20,12 +26,10 @@ translate every error ยท celebrate.
20
26
  ## Steps
21
27
 
22
28
  <!-- vybekiit:page-recipe-install -->
23
- 0. **Install the page recipe first (catalog SSOT โ€” Option C).**
24
- Copy `apps/componentLibrary/src/pageRecipes/AccountSecurityPage.tsx` export `AccountSecurityPage` into the buyer app at route `/settings/security`.
25
- Recipe id: `account-security`. Preset: auth-bridge.
26
- Keep every `TODO:` in the recipe and wire each one after the route renders.
27
- Also reference `packages/agentKit` `getPageRecipeInstall('reset-password')` / page-recipe-manifest.json.
28
- **Verify:** route builds with practice security UI before provider wiring.
29
+ 0. **Add the ready-made page first.** Run `vybekiit add page-recipe account-security`. It adds the page
30
+ at `/settings/security` and lists any data setup to run next. Keep every `TODO:` in the page and fill
31
+ each one in as you connect the real service.
32
+ **Verify:** `/settings/security` opens and shows practice content.
29
33
 
30
34
  1. **Confirm sign-in is wired.** Run `add-signin` first if accounts are not set up yet.
31
35
  **Verify:** existing sign-in works.
@@ -1,19 +1,27 @@
1
1
  ---
2
2
  name: save-data
3
- description: "the app can remember things โ€” save information and read it back later. Use when the vibe coder says something like: save my data; remember this; store info; add a database."
3
+ description: "the app can remember things โ€” save information and read it back later. Use when the vibe coder says something like: save my data; remember this; store info; add a database; book my classes; yoga booking."
4
4
  metadata:
5
5
  vybekiit-generated: buyer-skill-stub
6
6
  ---
7
7
 
8
+ Prefer the current project instructions and matching project skill when inside a kit app.
9
+ Outside a kit app, resolve guidance relative to this skill directory: ../vybekiitReferences/web/.
10
+ That folder contains language.md, AGENTS.md, CODE-STYLE.md, agent/ and platform-skills/.
11
+ Bare wrapper filenames refer to platform-skills/ there. Do not assume project code or recipe files exist globally.
12
+ Inspect an existing app before changing it. Scaffold a new kit app only when the builder asked for a new app.
13
+
8
14
  <!-- vybekiit:generated:buyer-skill-stub -->
9
15
 
10
16
  # Skill: save-data
11
17
 
18
+ > Agent-only: follow the Persistent features sequence in `.vybekiit/agent/session-bootstrap.md`. Reuse the relevant catalog presets before adding app-owned extensions, and record structural and behavioral evidence separately.
19
+
12
20
  **Goal:** the app can remember things โ€” save information and read it back later.
13
21
 
14
22
  **Contract:** one action at a time ยท verify-before-advance ยท plain language (`language.md`) ยท
15
- translate every error ยท celebrate. You do all the wiring; the builder only pastes a value when asked
16
- or describes, in plain words, what the app should remember.
23
+ translate every error ยท celebrate. Continue authorized work independently. Infer what needs saving
24
+ from the builder's request; ask only when a missing product decision changes the behavior.
17
25
 
18
26
  > (Under the hood โ€” agent-only) Use `@vybekiit/db`'s `resolveDataProvider()` for every read/write.
19
27
  > Follow the platform wrapper for the active `DATA_PROVIDER`:
@@ -23,29 +31,55 @@ or describes, in plain words, what the app should remember.
23
31
  > - `firebase` โ†’ `platform-skills/firebase-vybekiit.md`
24
32
  > - `mongodb` / `aws` โ†’ advanced; maintainer docs only
25
33
 
34
+ ## Reuse before implementation
35
+
36
+ For bookings, class schedules, appointments, and cancellations, discover `booking` through
37
+ `vybekiit list-presets`, then apply its prerequisites and migration. Use its atomic reservation and
38
+ cancellation functions through verified server sessions. Add only missing app-specific fields and
39
+ permissions. Do not substitute selling class packs for a request to book classes.
40
+ The business owner is the app admin: authorize schedule changes with `checkAdminAccess` from
41
+ `@/lib/adminAccess` (sign-in emails in `ADMIN_EMAILS`) plus any staff permissions you add. Never
42
+ create an organization for each account that signs in.
43
+ For other requests, select matching presets from the catalog before authoring an extension.
44
+
26
45
  ## Steps
27
46
 
28
47
  1. **Make sure the database is ready.** Run the database tool via `vybekiit doctor`. For MCP-tier providers
29
48
  (Supabase, Neon, Firebase), merge the matching `agent/mcp-*.json` via `agent/mcp-setup.md` and use
30
49
  login-once onboarding. If MCP fails once, run `vybekiit doc-fallback supabase` (or `neon` /
31
50
  `firebase`) and tell the builder you're checking the official setup guide (plain phrase only).
32
- Collect any access keys **one at a time** and save them to the secret settings file.
51
+ Inspect the selected service's existing CLI or MCP login and exact project before requesting
52
+ access. Reuse authorized connections and preserve existing projects. Never delete a project to
53
+ free capacity. Request one manual action only when an actual access blocker remains.
54
+ Supabase keys: after `supabase login`, run `vybekiit-automate db setup --json --project-ref=<ref>`.
55
+ It saves `SUPABASE_URL` and `SUPABASE_ANON_KEY` to `settings.env`, `SUPABASE_SERVICE_ROLE_KEY` to `.env`, and prints
56
+ only their names.
33
57
  **Verify:** the database is reachable (`@vybekiit/db`'s `pingDatabase`).
34
58
 
35
- 2. **Agree on what to remember, in plain words.** If no prior `design-my-data` session, run that skill first
36
- (or run `vybekiit plan-data-model entities.json` for a single simple entity). Ask what the app
37
- should save; turn their answer into a simple data shape yourself.
38
- **Verify:** read the shape back in one sentence and get a yes.
59
+ 2. **Decide what to remember from the request.** Reuse existing data shapes and ownership rules.
60
+ Use `design-my-data` only when the relationships need further design. Summarize the choice in
61
+ one sentence and continue unless a missing product decision blocks it.
62
+ **Verify:** the stored information supports the requested actions and access boundaries.
63
+
64
+ 3. **Write behavior tests before the implementation.** Cover saving and reading, unauthorized
65
+ access, duplicates, and concurrent writes where business limits apply. Enforce limits at the
66
+ database or server boundary; a separate count followed by an insert can race.
39
67
 
40
- 3. **Wire saving and reading.** Use `resolveDataProvider()` for insert / get / query / update /
41
- remove. Replace the dashboard's placeholder stats marker (`TODO(vybekiit): โ€ฆ โ€” skill: save-data`;
68
+ 4. **Wire saving and reading.** Use `resolveDataProvider()` for insert / get / query / update /
69
+ remove. Insert new rows with `id: ''` so the adapter generates the key; preset tables use UUID
70
+ keys. Replace the dashboard's placeholder stats marker (`TODO(vybekiit): โ€ฆ โ€” skill: save-data`;
42
71
  grep them) with a real read.
43
72
  **Verify:** the code builds with no errors.
44
73
 
45
- 4. **Write a test** that saves a record and reads it back, and keep it green.
46
-
47
- 5. **Try it for real.** Save something, then read it back in the app.
48
- **Verify:** what was saved comes back exactly.
74
+ 5. **Try it for real.** A build, type check, or mocked test is not this step. Install missing
75
+ dependencies, start the app in the background (`pnpm dev --port 3100 > /tmp/app.log 2>&1 &`),
76
+ and wait until `curl -s localhost:3100` answers. Sign up two accounts, each with its own cookie
77
+ jar; use an `ADMIN_EMAILS` address for the owner when the feature has owner-only actions:
78
+ `curl -c owner.jar -H 'content-type: application/json' -d '{"email":"โ€ฆ","password":"โ€ฆ"}' localhost:3100/api/auth/signup`.
79
+ Save through your own routes with `-b owner.jar`, read it back with the other jar, and send one
80
+ request each account must be refused. Stop the server afterwards.
81
+ **Verify:** what was saved comes back exactly, refused requests get 401 or 403, and your summary
82
+ quotes the status codes you saw. Browser-only storage does not complete a shared-data request.
49
83
  ๐ŸŽ‰ *Celebrate* โ€” the app remembers things now.
50
84
 
51
85
  ## If anything breaks
@@ -60,8 +94,9 @@ them, don't explain the internals.
60
94
 
61
95
  ## Definition of done
62
96
 
63
- The app saves and reads back real data, a passing test covers it, and no save-data markers remain
64
- (re-grep `TODO(vybekiit)`).
97
+ The running app saves and reads back real data and refuses unauthorized requests, your summary
98
+ quotes those responses, a passing test covers it, and no save-data markers remain (re-grep
99
+ `TODO(vybekiit)`). Tests against mocked data alone do not complete this skill.
65
100
 
66
101
  ## After completing this skill
67
102
 
@@ -3,6 +3,7 @@ name: sentry-sdk-setup
3
3
  description: Set up Sentry in any language or framework. Detects the user's platform and loads the right SDK skill. Use when asked to add Sentry, install an SDK, or set up error monitoring in a project.
4
4
  license: Apache-2.0
5
5
  role: router
6
+ disable-model-invocation: true
6
7
  ---
7
8
 
8
9
  > [All Skills](../../SKILL_TREE.md)
@@ -3,6 +3,7 @@ name: sentry-workflow
3
3
  description: Keep Sentry SDKs up to date. Use when asked to upgrade the Sentry SDK across major versions, migrate SDK versions, or fix deprecated APIs.
4
4
  license: Apache-2.0
5
5
  role: router
6
+ disable-model-invocation: true
6
7
  ---
7
8
 
8
9
  > [All Skills](../../SKILL_TREE.md)
@@ -5,6 +5,12 @@ metadata:
5
5
  vybekiit-generated: buyer-skill-stub
6
6
  ---
7
7
 
8
+ Prefer the current project instructions and matching project skill when inside a kit app.
9
+ Outside a kit app, resolve guidance relative to this skill directory: ../vybekiitReferences/web/.
10
+ That folder contains language.md, AGENTS.md, CODE-STYLE.md, agent/ and platform-skills/.
11
+ Bare wrapper filenames refer to platform-skills/ there. Do not assume project code or recipe files exist globally.
12
+ Inspect an existing app before changing it. Scaffold a new kit app only when the builder asked for a new app.
13
+
8
14
  <!-- vybekiit:generated:buyer-skill-stub -->
9
15
 
10
16
  # Skill: setup-email
@@ -25,17 +31,16 @@ when asked.
25
31
  ## Steps
26
32
 
27
33
  <!-- vybekiit:page-recipe-install -->
28
- 0. **Install the page recipe first (catalog SSOT โ€” Option C).**
29
- Copy `apps/componentLibrary/src/pageRecipes/EmailNotificationsPage.tsx` export `EmailNotificationsPage` into the buyer app at route `/dashboard/email`.
30
- Recipe id: `email-notifications`. Presets: notifications_log.
31
- Keep every `TODO:` in the recipe and wire each one after the route renders.
32
- Also reference `packages/agentKit` `getPageRecipeInstall('setup-email')` / page-recipe-manifest.json.
33
- **Verify:** route builds and shows practice UI before provider wiring.
34
-
34
+ 0. **Add the ready-made page first.** Run `vybekiit add page-recipe email-notifications`. It adds the page
35
+ at `/settings/notifications` and lists any data setup to run next. Keep every `TODO:` in the page and fill
36
+ each one in as you connect the real service.
37
+ **Verify:** `/settings/notifications` opens and shows practice content.
35
38
 
36
39
  1. **Confirm the one sending detail.** Ask for (or guide them to set up) a verified sender address โ€”
37
40
  the "from" address their app's emails come from. Tell them exactly where to confirm it, then save
38
- it to the secret settings file.
41
+ it to the secret settings file. For the sending key (Resend by default), ask the builder to run
42
+ `vybekiit-automate resend setup` in their own terminal. It asks for the key with hidden typing,
43
+ checks it, and saves `RESEND_API_KEY` to `.env`. Never ask for the key in chat.
39
44
  **Verify:** the sender address is set and confirmed.
40
45
 
41
46
  2. **Wire sending.** Connect the app's email sending to `resolveEmailProvider()` (see wrapper for
@@ -1,15 +1,21 @@
1
1
  ---
2
2
  name: setup-payments
3
- description: "the builder can take real money. By the end, a test purchase succeeds end-to-end. Use when the vibe coder says something like: add payments; take money; sell something; charge people."
3
+ description: "the requested purchase flow works in practice. Use when the vibe coder says something like: add payments; take money; sell something; charge people."
4
4
  metadata:
5
5
  vybekiit-generated: buyer-skill-stub
6
6
  ---
7
7
 
8
+ Prefer the current project instructions and matching project skill when inside a kit app.
9
+ Outside a kit app, resolve guidance relative to this skill directory: ../vybekiitReferences/web/.
10
+ That folder contains language.md, AGENTS.md, CODE-STYLE.md, agent/ and platform-skills/.
11
+ Bare wrapper filenames refer to platform-skills/ there. Do not assume project code or recipe files exist globally.
12
+ Inspect an existing app before changing it. Scaffold a new kit app only when the builder asked for a new app.
13
+
8
14
  <!-- vybekiit:generated:buyer-skill-stub -->
9
15
 
10
16
  # Skill: setup-payments
11
17
 
12
- **Goal:** the builder can take real money. By the end, a test purchase succeeds end-to-end.
18
+ **Goal:** the requested purchase flow works in practice. A test purchase succeeds end-to-end; accepting real money requires separately verified live setup.
13
19
 
14
20
  **Contract:** one action at a time ยท verify-before-advance ยท plain language (`language.md`) ยท
15
21
  translate every error ยท celebrate. You wire all the code; the builder only signs in once when asked.
@@ -26,14 +32,11 @@ translate every error ยท celebrate. You wire all the code; the builder only sign
26
32
  ## Steps
27
33
 
28
34
  <!-- vybekiit:page-recipe-install -->
29
- 0. **Install the page recipe first (catalog SSOT โ€” Option C).**
30
- Copy `apps/componentLibrary/src/pageRecipes/PricingPage.tsx` export `PricingPage` into the buyer app at route `/pricing`.
31
- Recipe id: `pricing`. Presets: orders + webhook_events (apply after provider secrets exist).
32
- Keep every `TODO:` in the recipe and wire each one after the route renders.
33
- Selling physical/digital goods (not only subscriptions)? Also install catalog ids
34
- `commerce-products`, `commerce-cart`, `commerce-checkout` via `getPageRecipeInstall`.
35
- Also reference `packages/agentKit` `getPageRecipeInstall('setup-payments')` / page-recipe-manifest.json.
36
- **Verify:** `/pricing` builds and shows practice plans before provider wiring.
35
+ 0. **Add the ready-made pricing page first.** Run `vybekiit add page-recipe pricing`. It adds the page
36
+ at `/pricing` and lists any data setup to run next (run that after the payment keys are saved).
37
+ Selling products, not only plans? Also run `vybekiit add page-recipe product-grid`, then `cart` and
38
+ `checkout` the same way. Keep every `TODO:` in the pages and fill each one in as you connect payments.
39
+ **Verify:** `/pricing` opens and shows practice plans.
37
40
 
38
41
  1. **Explain the plan in one line.** *"I'll connect a payment service so you can charge people. I'll do
39
42
  the setup โ€” you'll sign in once when I ask."* (Never name Lemon Squeezy, Stripe, or PayPal.)
@@ -42,15 +45,16 @@ translate every error ยท celebrate. You wire all the code; the builder only sign
42
45
  - Run `vybekiit-automate ls setup --json โ€ฆ` (or wizard mode without `--json`).
43
46
  - If Lemon Squeezy shows a sign-in screen, the automation **waits** until the builder completes login in the browser, then continues โ€” no separate standby step required.
44
47
  - Optional pre-check: `vybekiit-automate ls standby` opens the dashboard and waits the same way.
45
- - Write JSON output to `.env` (`LEMONSQUEEZY_STORE_ID`, variant ID, API key, webhook secret).
46
- **Verify:** values saved; product exists in test mode.
48
+ - The command saves the store, product and key settings straight into the app's `.env` and prints only
49
+ their names. Never copy key values into the chat.
50
+ **Verify:** the command lists the saved names; product exists in test mode.
47
51
 
48
52
  3. **Stripe (opt-in).** Merge `mcp-stripe.json` via `agent/mcp-setup.md`; builder OAuth once.
49
53
  Agent creates product/price via Stripe MCP; write restricted API key to `.env`.
50
54
  **Verify:** test mode product visible in Stripe dashboard.
51
55
 
52
56
  4. **PayPal (opt-in).** Merge `mcp-paypal.json` via `agent/mcp-setup.md`; builder OAuth once (sandbox).
53
- Agent provisions via PayPal MCP; write client id/secret and webhook id to `.env`.
57
+ Agent provisions via PayPal MCP; write the client secret to `.env`, the client id and webhook id to `settings.env`.
54
58
  **Verify:** sandbox checkout completes.
55
59
 
56
60
  5. **Connect the automatic payment message (webhook).** Webhook URL is `/api/webhook` on the deployed app
@@ -61,9 +65,9 @@ translate every error ยท celebrate. You wire all the code; the builder only sign
61
65
  **Verify:** provider shows webhook connected.
62
66
 
63
67
  6. **Test a purchase.** Use test mode for a fake purchase.
64
- **Verify:** order recorded (webhook success). ๐ŸŽ‰ *Celebrate* โ€” they can take money.
68
+ **Verify:** the provider confirms a test payment, its signed payment message is verified, and the matching order is stored with the expected purchase effect. A local pretend checkout or a configured connection alone does not pass. Celebrate with "The practice payment worked." Never charge real money during testing.
65
69
 
66
- 7. **Customize what a purchase does.** Ask what should happen when someone pays. Implement in
70
+ 7. **Preserve the requested purchase effect.** Use what the builder already said, such as confirming a class booking. Ask only if the intended effect is still unknown. Implement in
67
71
  `src/lib/fulfillment.ts`. Write a quick test and keep it green.
68
72
 
69
73
  ## If anything breaks
@@ -5,6 +5,12 @@ metadata:
5
5
  vybekiit-generated: buyer-skill-stub
6
6
  ---
7
7
 
8
+ Prefer the current project instructions and matching project skill when inside a kit app.
9
+ Outside a kit app, resolve guidance relative to this skill directory: ../vybekiitReferences/web/.
10
+ That folder contains language.md, AGENTS.md, CODE-STYLE.md, agent/ and platform-skills/.
11
+ Bare wrapper filenames refer to platform-skills/ there. Do not assume project code or recipe files exist globally.
12
+ Inspect an existing app before changing it. Scaffold a new kit app only when the builder asked for a new app.
13
+
8
14
  <!-- vybekiit:generated:buyer-skill-stub -->
9
15
 
10
16
  # Skill: setup-sms
@@ -21,7 +27,7 @@ metadata:
21
27
  1. **Collect Twilio secret settings** through doctor (never ask the builder to type SIDs by hand):
22
28
  `TWILIO_ACCOUNT_SID`, `TWILIO_AUTH_TOKEN`, `TWILIO_FROM_NUMBER`. Optional:
23
29
  `TWILIO_VERIFY_SERVICE_SID`, `TWILIO_WHATSAPP_FROM`.
24
- **Verify:** values saved to `.env`.
30
+ **Verify:** values saved to `settings.env` and `.env`.
25
31
 
26
32
  2. **Set `NOTIFICATIONS_PROVIDER=twilio`.**
27
33
  **Verify:** `resolveNotificationsProvider()` does not throw.
@@ -5,6 +5,12 @@ metadata:
5
5
  vybekiit-generated: buyer-skill-stub
6
6
  ---
7
7
 
8
+ Prefer the current project instructions and matching project skill when inside a kit app.
9
+ Outside a kit app, resolve guidance relative to this skill directory: ../vybekiitReferences/web/.
10
+ That folder contains language.md, AGENTS.md, CODE-STYLE.md, agent/ and platform-skills/.
11
+ Bare wrapper filenames refer to platform-skills/ there. Do not assume project code or recipe files exist globally.
12
+ Inspect an existing app before changing it. Scaffold a new kit app only when the builder asked for a new app.
13
+
8
14
  <!-- vybekiit:generated:buyer-skill-stub -->
9
15
 
10
16
  # Skill: sign-in-with-email-link
@@ -18,12 +24,10 @@ metadata:
18
24
  ## Steps
19
25
 
20
26
  <!-- vybekiit:page-recipe-install -->
21
- 0. **Install / extend the auth page recipe first (catalog SSOT โ€” Option C).**
22
- Copy or extend `apps/componentLibrary/src/pageRecipes/AuthPage.tsx` export `AuthPage` at route `/login`
23
- with a "Email me a link" path. Recipe id: `auth`. Preset: auth-bridge.
24
- Keep every `TODO:` in the recipe and wire each one after the route renders.
25
- Also reference `packages/agentKit` `getPageRecipeInstall('sign-in-with-email-link')` / page-recipe-manifest.json.
26
- **Verify:** `/login` shows a practice magic-link entry before provider wiring.
27
+ 0. **Add the ready-made sign-in page first.** Run `vybekiit add page-recipe auth`. It adds the page
28
+ at `/login` (if the app already has a sign-in page, it is kept). Then add an "Email me a link" option to it.
29
+ Keep every `TODO:` in the page and fill each one in as you connect the real service.
30
+ **Verify:** `/login` opens and shows an "Email me a link" option with practice content.
27
31
 
28
32
  1. **Confirm sign-in + email are wired** (`add-signin`, `setup-email` when going live).
29
33
  **Verify:** email OTP or password sign-in already works.
@@ -1,10 +1,16 @@
1
1
  ---
2
2
  name: sign-in-with-google
3
- description: "people can tap **Continue with Google** โ€” one button that signs them in **or** creates. Use when the vibe coder says something like: sign in with google; continue with google."
3
+ description: "people can tap Continue with Google โ€” one button that signs them in or creates their account. Use when the vibe coder says something like: sign in with google; continue with google."
4
4
  metadata:
5
5
  vybekiit-generated: buyer-skill-stub
6
6
  ---
7
7
 
8
+ Prefer the current project instructions and matching project skill when inside a kit app.
9
+ Outside a kit app, resolve guidance relative to this skill directory: ../vybekiitReferences/web/.
10
+ That folder contains language.md, AGENTS.md, CODE-STYLE.md, agent/ and platform-skills/.
11
+ Bare wrapper filenames refer to platform-skills/ there. Do not assume project code or recipe files exist globally.
12
+ Inspect an existing app before changing it. Scaffold a new kit app only when the builder asked for a new app.
13
+
8
14
  <!-- vybekiit:generated:buyer-skill-stub -->
9
15
 
10
16
  # Skill: sign-in-with-google
@@ -22,14 +28,12 @@ needs it.
22
28
  ## Steps
23
29
 
24
30
  <!-- vybekiit:page-recipe-install -->
25
- 0. **Install / extend the auth page recipe first (catalog SSOT โ€” Option C).**
26
- Copy or extend `apps/componentLibrary/src/pageRecipes/AuthPage.tsx` export `AuthPage` at route `/login`
27
- with a **Continue with Google** button. Recipe id: `auth`. Preset: auth-bridge.
28
- Legal pages when needed: `TermsOfServicePage` โ†’ `/terms`, `PrivacyPolicyPage` โ†’ `/privacy`
29
- from the page-recipe manifest (group `legal`).
30
- Keep every `TODO:` in the recipe and wire each one after the route renders.
31
- Also reference `packages/agentKit` `getPageRecipeInstall('sign-in-with-google')` / page-recipe-manifest.json.
32
- **Verify:** `/login` shows practice Google button before provider wiring.
31
+ 0. **Add the ready-made sign-in page first.** Run `vybekiit add page-recipe auth`. It adds the page
32
+ at `/login` (if the app already has a sign-in page, it is kept). Then add a "Continue with Google" button to it.
33
+ Keep every `TODO:` in the page and fill each one in as you connect the real service.
34
+ Need terms and privacy pages for Google? Run `vybekiit add page-recipe terms-of-service` and
35
+ `vybekiit add page-recipe privacy-policy` (they add `/terms` and `/privacy`).
36
+ **Verify:** `/login` opens and shows a practice "Continue with Google" button.
33
37
 
34
38
  1. **Make sure the basics exist.** Database (`save-data`) and base sign-in (`add-signin`) must work
35
39
  first โ€” Google builds on top.
@@ -39,10 +43,13 @@ needs it.
39
43
  If it says "not signed in yet," walk the builder through the one command it prints.
40
44
  **Verify:** doctor reports gcloud ready.
41
45
 
42
- 3. **Create the Google login for your app.** Use `gcloud` to create a **Web application** OAuth client.
43
- Write `GOOGLE_OAUTH_CLIENT_ID`, `GOOGLE_OAUTH_CLIENT_SECRET`, and `GOOGLE_OAUTH_REDIRECT_URI`
44
- to `.env`. Never ask the builder to open the Google Cloud console.
45
- **Verify:** all three values are non-empty in `.env`.
46
+ 3. **Create the Google login for your app.** Run `vybekiit-automate google oauth --json` with
47
+ `--project=<gcloud-project-id>`, `--app-name=<app-name>`, `--support-email=<builder-email>`,
48
+ `--app-url=<app-url>` and `--redirect=<app-url>/api/auth/callback/google`. It creates (or fixes) the
49
+ Web login client and saves `GOOGLE_OAUTH_CLIENT_ID` to `settings.env` and
50
+ `GOOGLE_OAUTH_CLIENT_SECRET` to `.env`, printing only their names. If Google asks to sign in, the builder signs in once in the
51
+ browser it opens. Never ask the builder to open the Google Cloud console.
52
+ **Verify:** both names are listed as saved and are non-empty.
46
53
 
47
54
  4. **Enable Google on the sign-in handler.** Follow `platform-skills/better-auth-vybekiit.md` โ€” add
48
55
  the Google social provider to the auth route. One flow handles sign-in and sign-up.