aios-core 2.1.6 → 2.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (371) hide show
  1. package/.aios-core/core/README.md +229 -229
  2. package/.aios-core/core/data/agent-config-requirements.yaml +368 -368
  3. package/.aios-core/core/data/aios-kb.md +923 -923
  4. package/.aios-core/core/data/workflow-patterns.yaml +267 -267
  5. package/.aios-core/core/docs/SHARD-TRANSLATION-GUIDE.md +335 -335
  6. package/.aios-core/core/docs/component-creation-guide.md +457 -457
  7. package/.aios-core/core/docs/session-update-pattern.md +307 -307
  8. package/.aios-core/core/docs/template-syntax.md +266 -266
  9. package/.aios-core/core/docs/troubleshooting-guide.md +624 -624
  10. package/.aios-core/core/elicitation/elicitation-engine.js +1 -1
  11. package/.aios-core/core/index.esm.js +42 -42
  12. package/.aios-core/core/index.js +1 -1
  13. package/.aios-core/core/migration/migration-config.yaml +83 -83
  14. package/.aios-core/core/migration/module-mapping.yaml +89 -89
  15. package/.aios-core/core/quality-gates/layer2-pr-automation.js +1 -1
  16. package/.aios-core/core/quality-gates/quality-gate-config.yaml +86 -86
  17. package/.aios-core/core/registry/README.md +179 -179
  18. package/.aios-core/core/utils/security-utils.js +1 -1
  19. package/.aios-core/core-config.yaml +391 -382
  20. package/.aios-core/data/agent-config-requirements.yaml +368 -368
  21. package/.aios-core/data/aios-kb.md +923 -923
  22. package/.aios-core/data/technical-preferences.md +3 -3
  23. package/.aios-core/data/workflow-patterns.yaml +267 -267
  24. package/.aios-core/development/README.md +142 -142
  25. package/.aios-core/development/agent-teams/team-all.yaml +15 -15
  26. package/.aios-core/development/agent-teams/team-fullstack.yaml +18 -18
  27. package/.aios-core/development/agent-teams/team-ide-minimal.yaml +10 -10
  28. package/.aios-core/development/agent-teams/team-no-ui.yaml +13 -13
  29. package/.aios-core/development/agent-teams/team-qa-focused.yaml +155 -155
  30. package/.aios-core/development/agents/aios-master.md +339 -339
  31. package/.aios-core/development/agents/analyst.md +195 -195
  32. package/.aios-core/development/agents/architect.md +359 -359
  33. package/.aios-core/development/agents/data-engineer.md +468 -468
  34. package/.aios-core/development/agents/dev.md +390 -390
  35. package/.aios-core/development/agents/devops.md +398 -398
  36. package/.aios-core/development/agents/pm.md +198 -198
  37. package/.aios-core/development/agents/po.md +256 -256
  38. package/.aios-core/development/agents/qa.md +312 -312
  39. package/.aios-core/development/agents/sm.md +220 -220
  40. package/.aios-core/development/agents/ux-design-expert.md +451 -451
  41. package/.aios-core/development/scripts/greeting-config-cli.js +85 -85
  42. package/.aios-core/development/tasks/add-mcp.md +319 -319
  43. package/.aios-core/development/tasks/advanced-elicitation.md +318 -318
  44. package/.aios-core/development/tasks/analyst-facilitate-brainstorming.md +341 -341
  45. package/.aios-core/development/tasks/analyze-framework.md +696 -696
  46. package/.aios-core/development/tasks/analyze-performance.md +637 -637
  47. package/.aios-core/development/tasks/apply-qa-fixes.md +340 -340
  48. package/.aios-core/development/tasks/architect-analyze-impact.md +826 -826
  49. package/.aios-core/development/tasks/audit-codebase.md +429 -429
  50. package/.aios-core/development/tasks/audit-tailwind-config.md +270 -270
  51. package/.aios-core/development/tasks/audit-utilities.md +358 -358
  52. package/.aios-core/development/tasks/bootstrap-shadcn-library.md +286 -286
  53. package/.aios-core/development/tasks/brownfield-create-epic.md +485 -485
  54. package/.aios-core/development/tasks/brownfield-create-story.md +356 -356
  55. package/.aios-core/development/tasks/build-component.md +478 -478
  56. package/.aios-core/development/tasks/calculate-roi.md +455 -455
  57. package/.aios-core/development/tasks/ci-cd-configuration.md +764 -764
  58. package/.aios-core/development/tasks/cleanup-utilities.md +670 -670
  59. package/.aios-core/development/tasks/collaborative-edit.md +1108 -1108
  60. package/.aios-core/development/tasks/compose-molecule.md +284 -284
  61. package/.aios-core/development/tasks/consolidate-patterns.md +414 -414
  62. package/.aios-core/development/tasks/correct-course.md +279 -279
  63. package/.aios-core/development/tasks/create-agent.md +321 -321
  64. package/.aios-core/development/tasks/create-brownfield-story.md +726 -726
  65. package/.aios-core/development/tasks/create-deep-research-prompt.md +498 -498
  66. package/.aios-core/development/tasks/create-doc.md +316 -316
  67. package/.aios-core/development/tasks/create-next-story.md +774 -774
  68. package/.aios-core/development/tasks/create-suite.md +283 -283
  69. package/.aios-core/development/tasks/create-task.md +371 -371
  70. package/.aios-core/development/tasks/create-workflow.md +370 -370
  71. package/.aios-core/development/tasks/db-analyze-hotpaths.md +572 -572
  72. package/.aios-core/development/tasks/db-apply-migration.md +381 -381
  73. package/.aios-core/development/tasks/db-bootstrap.md +642 -642
  74. package/.aios-core/development/tasks/db-domain-modeling.md +693 -693
  75. package/.aios-core/development/tasks/db-dry-run.md +293 -293
  76. package/.aios-core/development/tasks/db-env-check.md +260 -260
  77. package/.aios-core/development/tasks/db-expansion-pack-integration.md +663 -663
  78. package/.aios-core/development/tasks/db-explain.md +631 -631
  79. package/.aios-core/development/tasks/db-impersonate.md +495 -495
  80. package/.aios-core/development/tasks/db-load-csv.md +593 -593
  81. package/.aios-core/development/tasks/db-policy-apply.md +653 -653
  82. package/.aios-core/development/tasks/db-rls-audit.md +411 -411
  83. package/.aios-core/development/tasks/db-rollback.md +739 -739
  84. package/.aios-core/development/tasks/db-run-sql.md +613 -613
  85. package/.aios-core/development/tasks/db-schema-audit.md +1011 -1011
  86. package/.aios-core/development/tasks/db-seed.md +390 -390
  87. package/.aios-core/development/tasks/db-smoke-test.md +351 -351
  88. package/.aios-core/development/tasks/db-snapshot.md +569 -569
  89. package/.aios-core/development/tasks/db-supabase-setup.md +712 -712
  90. package/.aios-core/development/tasks/db-verify-order.md +515 -515
  91. package/.aios-core/development/tasks/deprecate-component.md +956 -956
  92. package/.aios-core/development/tasks/dev-apply-qa-fixes.md +318 -318
  93. package/.aios-core/development/tasks/dev-backlog-debt.md +469 -469
  94. package/.aios-core/development/tasks/dev-develop-story.md +846 -846
  95. package/.aios-core/development/tasks/dev-improve-code-quality.md +872 -872
  96. package/.aios-core/development/tasks/dev-optimize-performance.md +1033 -1033
  97. package/.aios-core/development/tasks/dev-suggest-refactoring.md +870 -870
  98. package/.aios-core/development/tasks/dev-validate-next-story.md +348 -348
  99. package/.aios-core/development/tasks/document-project.md +552 -552
  100. package/.aios-core/development/tasks/environment-bootstrap.md +1311 -1311
  101. package/.aios-core/development/tasks/execute-checklist.md +301 -301
  102. package/.aios-core/development/tasks/export-design-tokens-dtcg.md +274 -274
  103. package/.aios-core/development/tasks/extend-pattern.md +269 -269
  104. package/.aios-core/development/tasks/extract-tokens.md +467 -467
  105. package/.aios-core/development/tasks/facilitate-brainstorming-session.md +518 -518
  106. package/.aios-core/development/tasks/generate-ai-frontend-prompt.md +260 -260
  107. package/.aios-core/development/tasks/generate-documentation.md +284 -284
  108. package/.aios-core/development/tasks/generate-migration-strategy.md +522 -522
  109. package/.aios-core/development/tasks/generate-shock-report.md +501 -501
  110. package/.aios-core/development/tasks/github-devops-github-pr-automation.md +427 -427
  111. package/.aios-core/development/tasks/github-devops-pre-push-quality-gate.md +733 -733
  112. package/.aios-core/development/tasks/github-devops-repository-cleanup.md +374 -374
  113. package/.aios-core/development/tasks/github-devops-version-management.md +483 -483
  114. package/.aios-core/development/tasks/improve-self.md +822 -822
  115. package/.aios-core/development/tasks/index-docs.md +387 -387
  116. package/.aios-core/development/tasks/init-project-status.md +506 -506
  117. package/.aios-core/development/tasks/integrate-expansion-pack.md +314 -314
  118. package/.aios-core/development/tasks/kb-mode-interaction.md +283 -283
  119. package/.aios-core/development/tasks/learn-patterns.md +900 -900
  120. package/.aios-core/development/tasks/mcp-workflow.md +437 -437
  121. package/.aios-core/development/tasks/modify-agent.md +381 -381
  122. package/.aios-core/development/tasks/modify-task.md +424 -424
  123. package/.aios-core/development/tasks/modify-workflow.md +465 -465
  124. package/.aios-core/development/tasks/po-backlog-add.md +370 -370
  125. package/.aios-core/development/tasks/po-manage-story-backlog.md +523 -523
  126. package/.aios-core/development/tasks/po-pull-story-from-clickup.md +540 -540
  127. package/.aios-core/development/tasks/po-pull-story.md +316 -316
  128. package/.aios-core/development/tasks/po-stories-index.md +351 -351
  129. package/.aios-core/development/tasks/po-sync-story-to-clickup.md +457 -457
  130. package/.aios-core/development/tasks/po-sync-story.md +303 -303
  131. package/.aios-core/development/tasks/pr-automation.md +701 -701
  132. package/.aios-core/development/tasks/propose-modification.md +842 -842
  133. package/.aios-core/development/tasks/qa-backlog-add-followup.md +425 -425
  134. package/.aios-core/development/tasks/qa-gate.md +373 -373
  135. package/.aios-core/development/tasks/qa-generate-tests.md +1174 -1174
  136. package/.aios-core/development/tasks/qa-nfr-assess.md +557 -557
  137. package/.aios-core/development/tasks/qa-review-proposal.md +1157 -1157
  138. package/.aios-core/development/tasks/qa-review-story.md +682 -682
  139. package/.aios-core/development/tasks/qa-risk-profile.md +566 -566
  140. package/.aios-core/development/tasks/qa-run-tests.md +277 -277
  141. package/.aios-core/development/tasks/qa-test-design.md +387 -387
  142. package/.aios-core/development/tasks/qa-trace-requirements.md +476 -476
  143. package/.aios-core/development/tasks/release-management.md +723 -723
  144. package/.aios-core/development/tasks/security-audit.md +554 -554
  145. package/.aios-core/development/tasks/security-scan.md +790 -790
  146. package/.aios-core/development/tasks/setup-database.md +741 -741
  147. package/.aios-core/development/tasks/setup-design-system.md +462 -462
  148. package/.aios-core/development/tasks/setup-github.md +874 -874
  149. package/.aios-core/development/tasks/setup-llm-routing.md +1 -1
  150. package/.aios-core/development/tasks/setup-mcp-docker.md +584 -584
  151. package/.aios-core/development/tasks/setup-project-docs.md +1 -1
  152. package/.aios-core/development/tasks/shard-doc.md +537 -537
  153. package/.aios-core/development/tasks/sm-create-next-story.md +480 -480
  154. package/.aios-core/development/tasks/sync-documentation.md +864 -864
  155. package/.aios-core/development/tasks/tailwind-upgrade.md +294 -294
  156. package/.aios-core/development/tasks/test-as-user.md +621 -621
  157. package/.aios-core/development/tasks/test-validation-task.md +171 -171
  158. package/.aios-core/development/tasks/undo-last.md +346 -346
  159. package/.aios-core/development/tasks/update-manifest.md +409 -409
  160. package/.aios-core/development/tasks/ux-create-wireframe.md +617 -617
  161. package/.aios-core/development/tasks/ux-ds-scan-artifact.md +672 -672
  162. package/.aios-core/development/tasks/ux-user-research.md +559 -559
  163. package/.aios-core/development/tasks/validate-next-story.md +422 -422
  164. package/.aios-core/development/workflows/README.md +83 -83
  165. package/.aios-core/development/workflows/brownfield-fullstack.yaml +297 -297
  166. package/.aios-core/development/workflows/brownfield-service.yaml +187 -187
  167. package/.aios-core/development/workflows/brownfield-ui.yaml +197 -197
  168. package/.aios-core/development/workflows/greenfield-fullstack.yaml +333 -333
  169. package/.aios-core/development/workflows/greenfield-service.yaml +206 -206
  170. package/.aios-core/development/workflows/greenfield-ui.yaml +235 -235
  171. package/.aios-core/docs/SHARD-TRANSLATION-GUIDE.md +335 -335
  172. package/.aios-core/docs/component-creation-guide.md +457 -457
  173. package/.aios-core/docs/session-update-pattern.md +307 -307
  174. package/.aios-core/docs/standards/AGENT-PERSONALIZATION-STANDARD-V1.md +572 -572
  175. package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-QUICK-REFERENCE.md +185 -185
  176. package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-V2.1.md +354 -354
  177. package/.aios-core/docs/standards/AIOS-FRAMEWORK-MASTER.md +1963 -1963
  178. package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-COMPLETE.md +821 -821
  179. package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-SUMMARY.md +1190 -1190
  180. package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1.md +439 -439
  181. package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.2-SUMMARY.md +1339 -1339
  182. package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO.md +5398 -5398
  183. package/.aios-core/docs/standards/EXECUTOR-DECISION-TREE.md +697 -697
  184. package/.aios-core/docs/standards/OPEN-SOURCE-VS-SERVICE-DIFFERENCES.md +511 -511
  185. package/.aios-core/docs/standards/QUALITY-GATES-SPECIFICATION.md +556 -556
  186. package/.aios-core/docs/standards/STANDARDS-INDEX.md +210 -210
  187. package/.aios-core/docs/standards/STORY-TEMPLATE-V2-SPECIFICATION.md +550 -550
  188. package/.aios-core/docs/standards/TASK-FORMAT-SPECIFICATION-V1.md +1414 -1414
  189. package/.aios-core/docs/standards/V3-ARCHITECTURAL-DECISIONS.md +523 -523
  190. package/.aios-core/docs/template-syntax.md +266 -266
  191. package/.aios-core/docs/troubleshooting-guide.md +624 -624
  192. package/.aios-core/index.esm.js +15 -15
  193. package/.aios-core/index.js +1 -1
  194. package/.aios-core/infrastructure/README.md +126 -126
  195. package/.aios-core/infrastructure/integrations/pm-adapters/README.md +59 -59
  196. package/.aios-core/infrastructure/scripts/approval-workflow.js +1 -1
  197. package/.aios-core/infrastructure/scripts/batch-creator.js +1 -1
  198. package/.aios-core/infrastructure/scripts/component-generator.js +3 -3
  199. package/.aios-core/infrastructure/scripts/component-metadata.js +1 -1
  200. package/.aios-core/infrastructure/scripts/component-search.js +1 -1
  201. package/.aios-core/infrastructure/scripts/coverage-analyzer.js +1 -1
  202. package/.aios-core/infrastructure/scripts/dependency-analyzer.js +1 -1
  203. package/.aios-core/infrastructure/scripts/dependency-impact-analyzer.js +1 -1
  204. package/.aios-core/infrastructure/scripts/framework-analyzer.js +1 -1
  205. package/.aios-core/infrastructure/scripts/improvement-engine.js +1 -1
  206. package/.aios-core/infrastructure/scripts/llm-routing/install-llm-routing.js +26 -13
  207. package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free-tracked.cmd +127 -0
  208. package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free-tracked.sh +108 -0
  209. package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-proxy.cmd +71 -0
  210. package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-proxy.sh +65 -0
  211. package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-usage.cmd +51 -0
  212. package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-usage.sh +16 -0
  213. package/.aios-core/infrastructure/scripts/llm-routing/usage-tracker/index.js +549 -0
  214. package/.aios-core/infrastructure/scripts/modification-risk-assessment.js +1 -1
  215. package/.aios-core/infrastructure/scripts/performance-analyzer.js +1 -1
  216. package/.aios-core/infrastructure/scripts/pm-adapter.js +134 -134
  217. package/.aios-core/infrastructure/scripts/repository-detector.js +3 -3
  218. package/.aios-core/infrastructure/scripts/template-engine.js +1 -1
  219. package/.aios-core/infrastructure/scripts/template-validator.js +1 -1
  220. package/.aios-core/infrastructure/scripts/test-generator.js +1 -1
  221. package/.aios-core/infrastructure/scripts/test-quality-assessment.js +1 -1
  222. package/.aios-core/infrastructure/scripts/transaction-manager.js +1 -1
  223. package/.aios-core/infrastructure/scripts/usage-analytics.js +1 -1
  224. package/.aios-core/infrastructure/scripts/visual-impact-generator.js +2 -2
  225. package/.aios-core/infrastructure/templates/github-workflows/README.md +109 -109
  226. package/.aios-core/infrastructure/tests/regression-suite-v2.md +621 -621
  227. package/.aios-core/infrastructure/tools/README.md +222 -222
  228. package/.aios-core/infrastructure/tools/cli/github-cli.yaml +200 -200
  229. package/.aios-core/infrastructure/tools/cli/railway-cli.yaml +260 -260
  230. package/.aios-core/infrastructure/tools/cli/supabase-cli.yaml +224 -224
  231. package/.aios-core/infrastructure/tools/local/ffmpeg.yaml +261 -261
  232. package/.aios-core/infrastructure/tools/mcp/21st-dev-magic.yaml +127 -127
  233. package/.aios-core/infrastructure/tools/mcp/browser.yaml +103 -103
  234. package/.aios-core/infrastructure/tools/mcp/clickup.yaml +534 -534
  235. package/.aios-core/infrastructure/tools/mcp/context7.yaml +78 -78
  236. package/.aios-core/infrastructure/tools/mcp/desktop-commander.yaml +180 -180
  237. package/.aios-core/infrastructure/tools/mcp/exa.yaml +103 -103
  238. package/.aios-core/infrastructure/tools/mcp/google-workspace.yaml +930 -930
  239. package/.aios-core/infrastructure/tools/mcp/n8n.yaml +551 -551
  240. package/.aios-core/infrastructure/tools/mcp/supabase.yaml +808 -808
  241. package/.aios-core/install-manifest.yaml +347 -347
  242. package/.aios-core/product/README.md +56 -56
  243. package/.aios-core/product/checklists/accessibility-wcag-checklist.md +80 -0
  244. package/.aios-core/product/checklists/architect-checklist.md +443 -443
  245. package/.aios-core/product/checklists/change-checklist.md +182 -182
  246. package/.aios-core/product/checklists/component-quality-checklist.md +74 -0
  247. package/.aios-core/product/checklists/database-design-checklist.md +119 -119
  248. package/.aios-core/product/checklists/dba-predeploy-checklist.md +97 -97
  249. package/.aios-core/product/checklists/dba-rollback-checklist.md +99 -99
  250. package/.aios-core/product/checklists/migration-readiness-checklist.md +75 -0
  251. package/.aios-core/product/checklists/pattern-audit-checklist.md +88 -0
  252. package/.aios-core/product/checklists/pm-checklist.md +375 -375
  253. package/.aios-core/product/checklists/po-master-checklist.md +441 -441
  254. package/.aios-core/product/checklists/pre-push-checklist.md +108 -108
  255. package/.aios-core/product/checklists/release-checklist.md +122 -122
  256. package/.aios-core/product/checklists/story-dod-checklist.md +101 -101
  257. package/.aios-core/product/checklists/story-draft-checklist.md +215 -215
  258. package/.aios-core/product/data/atomic-design-principles.md +108 -0
  259. package/.aios-core/product/data/brainstorming-techniques.md +36 -36
  260. package/.aios-core/product/data/consolidation-algorithms.md +142 -0
  261. package/.aios-core/product/data/database-best-practices.md +182 -0
  262. package/.aios-core/product/data/design-token-best-practices.md +107 -0
  263. package/.aios-core/product/data/elicitation-methods.md +134 -134
  264. package/.aios-core/product/data/integration-patterns.md +207 -0
  265. package/.aios-core/product/data/migration-safety-guide.md +329 -0
  266. package/.aios-core/product/data/mode-selection-best-practices.md +471 -471
  267. package/.aios-core/product/data/postgres-tuning-guide.md +300 -0
  268. package/.aios-core/product/data/rls-security-patterns.md +333 -0
  269. package/.aios-core/product/data/roi-calculation-guide.md +142 -0
  270. package/.aios-core/product/data/supabase-patterns.md +330 -0
  271. package/.aios-core/product/data/test-levels-framework.md +148 -148
  272. package/.aios-core/product/data/test-priorities-matrix.md +174 -174
  273. package/.aios-core/product/data/wcag-compliance-guide.md +267 -0
  274. package/.aios-core/product/templates/1mcp-config.yaml +225 -225
  275. package/.aios-core/product/templates/activation-instructions-inline-greeting.yaml +63 -63
  276. package/.aios-core/product/templates/activation-instructions-template.md +258 -258
  277. package/.aios-core/product/templates/agent-template.yaml +120 -120
  278. package/.aios-core/product/templates/architecture-tmpl.yaml +650 -650
  279. package/.aios-core/product/templates/brainstorming-output-tmpl.yaml +155 -155
  280. package/.aios-core/product/templates/brownfield-architecture-tmpl.yaml +475 -475
  281. package/.aios-core/product/templates/brownfield-prd-tmpl.yaml +279 -279
  282. package/.aios-core/product/templates/changelog-template.md +134 -134
  283. package/.aios-core/product/templates/command-rationalization-matrix.md +152 -152
  284. package/.aios-core/product/templates/competitor-analysis-tmpl.yaml +292 -292
  285. package/.aios-core/product/templates/design-story-tmpl.yaml +587 -587
  286. package/.aios-core/product/templates/ds-artifact-analysis.md +70 -70
  287. package/.aios-core/product/templates/front-end-architecture-tmpl.yaml +205 -205
  288. package/.aios-core/product/templates/front-end-spec-tmpl.yaml +348 -348
  289. package/.aios-core/product/templates/fullstack-architecture-tmpl.yaml +804 -804
  290. package/.aios-core/product/templates/github-pr-template.md +67 -67
  291. package/.aios-core/product/templates/gordon-mcp.yaml +140 -140
  292. package/.aios-core/product/templates/ide-rules/antigravity-rules.md +115 -115
  293. package/.aios-core/product/templates/ide-rules/claude-rules.md +221 -221
  294. package/.aios-core/product/templates/ide-rules/cline-rules.md +84 -84
  295. package/.aios-core/product/templates/ide-rules/copilot-rules.md +92 -92
  296. package/.aios-core/product/templates/ide-rules/cursor-rules.md +115 -115
  297. package/.aios-core/product/templates/ide-rules/gemini-rules.md +85 -85
  298. package/.aios-core/product/templates/ide-rules/roo-rules.md +86 -86
  299. package/.aios-core/product/templates/ide-rules/trae-rules.md +104 -104
  300. package/.aios-core/product/templates/ide-rules/windsurf-rules.md +80 -80
  301. package/.aios-core/product/templates/index-strategy-tmpl.yaml +53 -53
  302. package/.aios-core/product/templates/market-research-tmpl.yaml +251 -251
  303. package/.aios-core/product/templates/mcp-workflow.js +271 -271
  304. package/.aios-core/product/templates/migration-plan-tmpl.yaml +1022 -1022
  305. package/.aios-core/product/templates/migration-strategy-tmpl.md +524 -524
  306. package/.aios-core/product/templates/personalized-agent-template.md +258 -258
  307. package/.aios-core/product/templates/personalized-checklist-template.md +340 -340
  308. package/.aios-core/product/templates/personalized-task-template-v2.md +905 -905
  309. package/.aios-core/product/templates/personalized-task-template.md +344 -344
  310. package/.aios-core/product/templates/personalized-template-file.yaml +322 -322
  311. package/.aios-core/product/templates/personalized-workflow-template.yaml +460 -460
  312. package/.aios-core/product/templates/prd-tmpl.yaml +201 -201
  313. package/.aios-core/product/templates/project-brief-tmpl.yaml +220 -220
  314. package/.aios-core/product/templates/qa-gate-tmpl.yaml +240 -240
  315. package/.aios-core/product/templates/rls-policies-tmpl.yaml +1203 -1203
  316. package/.aios-core/product/templates/schema-design-tmpl.yaml +428 -428
  317. package/.aios-core/product/templates/state-persistence-tmpl.yaml +219 -219
  318. package/.aios-core/product/templates/story-tmpl.yaml +331 -331
  319. package/.aios-core/product/templates/task-execution-report.md +495 -495
  320. package/.aios-core/product/templates/task-template.md +122 -122
  321. package/.aios-core/product/templates/token-exports-tailwind-tmpl.js +395 -395
  322. package/.aios-core/product/templates/tokens-schema-tmpl.yaml +305 -305
  323. package/.aios-core/product/templates/workflow-template.yaml +133 -133
  324. package/.aios-core/scripts/README.md +354 -354
  325. package/.aios-core/scripts/aios-doc-template.md +325 -325
  326. package/.aios-core/scripts/elicitation-engine.js +1 -1
  327. package/.aios-core/scripts/test-template-system.js +1 -1
  328. package/.aios-core/scripts/workflow-management.md +69 -69
  329. package/.aios-core/user-guide.md +1413 -1413
  330. package/.aios-core/working-in-the-brownfield.md +361 -361
  331. package/LICENSE +1 -1
  332. package/README.md +704 -703
  333. package/bin/aios-init-old.js +3 -3
  334. package/bin/aios-init-v4.js +1 -1
  335. package/bin/aios-init.backup-v1.1.4.js +1 -1
  336. package/bin/aios-init.js +3 -3
  337. package/bin/aios.js +279 -279
  338. package/bin/utils/install-errors.js +339 -339
  339. package/bin/utils/install-transaction.js +445 -445
  340. package/index.d.ts +18 -18
  341. package/index.esm.js +20 -20
  342. package/index.js +6 -6
  343. package/package.json +8 -11
  344. package/packages/installer/src/config/templates/env-template.js +27 -4
  345. package/packages/installer/src/detection/detect-project-type.js +81 -81
  346. package/packages/installer/tests/integration/wizard-detection.test.js +8 -6
  347. package/packages/installer/tests/unit/env-template.test.js +8 -8
  348. package/src/config/ide-configs.js +1 -1
  349. package/src/wizard/feedback.js +2 -2
  350. package/src/wizard/index.js +1 -1
  351. package/src/wizard/validation/report-generator.js +1 -1
  352. package/src/wizard/validation/troubleshooting-system.js +13 -13
  353. package/tools/diagnose-installation.js +266 -0
  354. package/tools/diagnose-npx-issue.ps1 +96 -0
  355. package/tools/quick-diagnose.cmd +85 -0
  356. package/tools/quick-diagnose.ps1 +117 -0
  357. package/.aios-core/infrastructure/scripts/_archived/final-todo-count.js +0 -122
  358. package/.aios-core/infrastructure/scripts/_archived/fix-yaml-formatting.js +0 -89
  359. package/.aios-core/infrastructure/scripts/_archived/migration-generator.js +0 -780
  360. package/.aios-core/infrastructure/scripts/_archived/migration-path-generator.js +0 -950
  361. package/.aios-core/infrastructure/scripts/_archived/phase2-entrada-saida-errors.js +0 -425
  362. package/.aios-core/infrastructure/scripts/_archived/phase2-spot-check.js +0 -132
  363. package/.aios-core/infrastructure/scripts/_archived/phase3-tools-scripts-validation.js +0 -381
  364. package/.aios-core/infrastructure/scripts/_archived/phase4-metadata-performance.js +0 -203
  365. package/.aios-core/infrastructure/scripts/_archived/test-yaml-parsing.js +0 -24
  366. package/.aios-core/infrastructure/scripts/_archived/verify-yaml-fix.js +0 -51
  367. package/.aios-core/tasks/find-component.md.legacy +0 -391
  368. package/.aios-core/tasks/generate-commit-message.md.legacy +0 -426
  369. package/.aios-core/tasks/generate-migration.md.legacy +0 -382
  370. package/.aios-core/tasks/rollback-modification.md.legacy +0 -307
  371. package/.aios-core/tasks/update-tests.md.legacy +0 -283
@@ -1,741 +1,741 @@
1
- # Task: Setup Database
2
-
3
- **Purpose**: Interactive database project setup (Supabase, PostgreSQL, MongoDB, MySQL, SQLite)
4
-
5
- **Elicit**: true
6
-
7
- **Renamed From (Story 6.1.2.3):**
8
- - `db-supabase-setup.md` - Now database-agnostic (supports 5+ DB types)
9
-
10
- ---
11
-
12
- ## Execution Modes
13
-
14
- **Choose your execution mode:**
15
-
16
- ### 1. YOLO Mode - Fast, Autonomous (0-1 prompts)
17
- - Autonomous decision making with logging
18
- - Minimal user interaction
19
- - **Best for:** Simple, deterministic tasks
20
-
21
- ### 2. Interactive Mode - Balanced, Educational (5-10 prompts) **[DEFAULT]**
22
- - Explicit decision checkpoints
23
- - Educational explanations
24
- - **Best for:** Learning, complex decisions
25
-
26
- ### 3. Pre-Flight Planning - Comprehensive Upfront Planning
27
- - Task analysis phase (identify all ambiguities)
28
- - Zero ambiguity execution
29
- - **Best for:** Ambiguous requirements, critical work
30
-
31
- **Parameter:** `mode` (optional, default: `interactive`)
32
-
33
- ---
34
-
35
- ## Task Definition (AIOS Task Format V1.0)
36
-
37
- ```yaml
38
- task: setupDatabase()
39
- responsável: Dara (Sage)
40
- responsavel_type: Agente
41
- atomic_layer: Config
42
-
43
- **Entrada:**
44
- - campo: project_path
45
- tipo: string
46
- origem: User Input
47
- obrigatório: true
48
- validação: Valid directory path
49
-
50
- - campo: options
51
- tipo: object
52
- origem: User Input
53
- obrigatório: false
54
- validação: Initialization options
55
-
56
- **Saída:**
57
- - campo: initialized_project
58
- tipo: string
59
- destino: File system
60
- persistido: true
61
-
62
- - campo: config_created
63
- tipo: boolean
64
- destino: Return value
65
- persistido: false
66
- ```
67
-
68
- ---
69
-
70
- ## Pre-Conditions
71
-
72
- **Purpose:** Validate prerequisites BEFORE task execution (blocking)
73
-
74
- **Checklist:**
75
-
76
- ```yaml
77
- pre-conditions:
78
- - [ ] Directory is empty or force flag set; config valid
79
- tipo: pre-condition
80
- blocker: true
81
- validação: |
82
- Check directory is empty or force flag set; config valid
83
- error_message: "Pre-condition failed: Directory is empty or force flag set; config valid"
84
- ```
85
-
86
- ---
87
-
88
- ## Post-Conditions
89
-
90
- **Purpose:** Validate execution success AFTER task completes
91
-
92
- **Checklist:**
93
-
94
- ```yaml
95
- post-conditions:
96
- - [ ] Project initialized; config files created; structure valid
97
- tipo: post-condition
98
- blocker: true
99
- validação: |
100
- Verify project initialized; config files created; structure valid
101
- error_message: "Post-condition failed: Project initialized; config files created; structure valid"
102
- ```
103
-
104
- ---
105
-
106
- ## Acceptance Criteria
107
-
108
- **Purpose:** Definitive pass/fail criteria for task completion
109
-
110
- **Checklist:**
111
-
112
- ```yaml
113
- acceptance-criteria:
114
- - [ ] Project structure correct; all config files valid
115
- tipo: acceptance-criterion
116
- blocker: true
117
- validação: |
118
- Assert project structure correct; all config files valid
119
- error_message: "Acceptance criterion not met: Project structure correct; all config files valid"
120
- ```
121
-
122
- ---
123
-
124
- ## Tools
125
-
126
- **External/shared resources used by this task:**
127
-
128
- - **Tool:** project-scaffolder
129
- - **Purpose:** Generate project structure and config
130
- - **Source:** .aios-core/scripts/project-scaffolder.js
131
-
132
- - **Tool:** config-manager
133
- - **Purpose:** Initialize configuration files
134
- - **Source:** .aios-core/utils/config-manager.js
135
-
136
- ---
137
-
138
- ## Scripts
139
-
140
- **Agent-specific code for this task:**
141
-
142
- - **Script:** init-project.js
143
- - **Purpose:** Project initialization workflow
144
- - **Language:** JavaScript
145
- - **Location:** .aios-core/scripts/init-project.js
146
-
147
- ---
148
-
149
- ## Error Handling
150
-
151
- **Strategy:** retry
152
-
153
- **Common Errors:**
154
-
155
- 1. **Error:** Directory Not Empty
156
- - **Cause:** Target directory already contains files
157
- - **Resolution:** Use force flag or choose empty directory
158
- - **Recovery:** Prompt for confirmation, merge or abort
159
-
160
- 2. **Error:** Initialization Failed
161
- - **Cause:** Error creating project structure
162
- - **Resolution:** Check permissions and disk space
163
- - **Recovery:** Cleanup partial initialization, log error
164
-
165
- ---
166
-
167
- ## Performance
168
-
169
- **Expected Metrics:**
170
-
171
- ```yaml
172
- duration_expected: 2-10 min (estimated)
173
- cost_estimated: $0.001-0.008
174
- token_usage: ~800-2,500 tokens
175
- ```
176
-
177
- **Optimization Notes:**
178
- - Validate configuration early; use atomic writes; implement rollback checkpoints
179
-
180
- ---
181
-
182
- ## Metadata
183
-
184
- ```yaml
185
- story: N/A
186
- version: 1.0.0
187
- dependencies:
188
- - N/A
189
- tags:
190
- - automation
191
- - workflow
192
- updated_at: 2025-11-17
193
- ```
194
-
195
- ---
196
-
197
-
198
- ## Elicitation
199
-
200
- **Step 1: Detect or prompt for database type**
201
-
202
- ```bash
203
- # Auto-detect from PRD or tech stack if available
204
- if grep -qiE "supabase|postgres" docs/prd/*.yaml docs/architecture/*.yaml 2>/dev/null; then
205
- DETECTED_DB="postgresql"
206
- echo "📊 Detected database: PostgreSQL/Supabase"
207
- elif grep -qiE "mongodb|mongo" docs/prd/*.yaml docs/architecture/*.yaml 2>/dev/null; then
208
- DETECTED_DB="mongodb"
209
- echo "📊 Detected database: MongoDB"
210
- elif grep -qiE "mysql|mariadb" docs/prd/*.yaml docs/architecture/*.yaml 2>/dev/null; then
211
- DETECTED_DB="mysql"
212
- echo "📊 Detected database: MySQL"
213
- elif grep -qiE "sqlite" docs/prd/*.yaml docs/architecture/*.yaml 2>/dev/null; then
214
- DETECTED_DB="sqlite"
215
- echo "📊 Detected database: SQLite"
216
- else
217
- DETECTED_DB=""
218
- fi
219
- ```
220
-
221
- **Prompt user:**
222
-
223
- ```
224
- Select database type:
225
-
226
- 1. **supabase** - PostgreSQL + RLS + Realtime + Edge Functions
227
- 2. **postgresql** - Standard PostgreSQL (self-hosted or managed)
228
- 3. **mongodb** - NoSQL document database
229
- 4. **mysql** - MySQL or MariaDB relational database
230
- 5. **sqlite** - Embedded SQLite database
231
-
232
- Which database? [supabase/postgresql/mongodb/mysql/sqlite]:
233
- ```
234
-
235
- **Capture:** `{db_type}` (default: $DETECTED_DB if available)
236
-
237
- ---
238
-
239
- ## Process by Database Type
240
-
241
- ### Type: Supabase
242
-
243
- **When:** User selects `supabase`
244
-
245
- #### Step 1: Install Supabase CLI
246
-
247
- ```bash
248
- \echo '=== Installing Supabase CLI ==='
249
-
250
- # Check if already installed
251
- if command -v supabase &> /dev/null; then
252
- echo "✓ Supabase CLI already installed: $(supabase --version)"
253
- else
254
- echo "Installing Supabase CLI..."
255
-
256
- # macOS/Linux
257
- if [[ "$OSTYPE" == "darwin"* ]]; then
258
- brew install supabase/tap/supabase
259
- else
260
- # Linux
261
- curl -fsSL https://github.com/supabase/cli/releases/latest/download/supabase_linux_amd64.tar.gz | tar -xz
262
- sudo mv supabase /usr/local/bin/
263
- fi
264
-
265
- echo "✓ Supabase CLI installed"
266
- fi
267
- ```
268
-
269
- #### Step 2: Initialize Supabase Project
270
-
271
- ```bash
272
- \echo ''
273
- \echo '=== Initializing Supabase Project ==='
274
-
275
- # Initialize local project
276
- supabase init
277
-
278
- echo "✓ Created supabase/ directory structure"
279
- ```
280
-
281
- #### Step 3: Create Standard Directories
282
-
283
- ```bash
284
- mkdir -p supabase/migrations
285
- mkdir -p supabase/seed.sql
286
- mkdir -p supabase/tests
287
- mkdir -p supabase/functions
288
-
289
- echo "✓ Created standard Supabase directories"
290
- ```
291
-
292
- ####Step 4: Create Starter Migration
293
-
294
- ```bash
295
- cat > supabase/migrations/$(date +%Y%m%d%H%M%S)_initial_schema.sql <<'SQL'
296
- -- Initial Schema Migration
297
- -- Generated by AIOS data-engineer
298
-
299
- -- Enable extensions
300
- CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
301
- CREATE EXTENSION IF NOT EXISTS "pg_stat_statements";
302
-
303
- -- Example: Users table
304
- CREATE TABLE IF NOT EXISTS users (
305
- id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
306
- email TEXT UNIQUE NOT NULL,
307
- created_at TIMESTAMPTZ DEFAULT NOW(),
308
- updated_at TIMESTAMPTZ DEFAULT NOW()
309
- );
310
-
311
- -- Enable RLS
312
- ALTER TABLE users ENABLE ROW LEVEL SECURITY;
313
-
314
- -- Example RLS policy
315
- CREATE POLICY "Users can read own data"
316
- ON users
317
- FOR SELECT
318
- USING (auth.uid() = id);
319
-
320
- -- Add updated_at trigger function
321
- CREATE OR REPLACE FUNCTION update_updated_at_column()
322
- RETURNS TRIGGER AS $$
323
- BEGIN
324
- NEW.updated_at = NOW();
325
- RETURN NEW;
326
- END;
327
- $$ LANGUAGE plpgsql;
328
-
329
- CREATE TRIGGER update_users_updated_at
330
- BEFORE UPDATE ON users
331
- FOR EACH ROW
332
- EXECUTE FUNCTION update_updated_at_column();
333
- SQL
334
-
335
- echo "✓ Created initial migration"
336
- ```
337
-
338
- #### Step 5: Create Starter Seed Data
339
-
340
- ```bash
341
- cat > supabase/seed.sql <<'SQL'
342
- -- Seed Data
343
- -- Generated by AIOS data-engineer
344
-
345
- -- Example seed user (for local development only)
346
- INSERT INTO users (id, email)
347
- VALUES
348
- ('550e8400-e29b-41d4-a716-446655440000', 'test@example.com')
349
- ON CONFLICT (email) DO NOTHING;
350
- SQL
351
-
352
- echo "✓ Created seed data file"
353
- ```
354
-
355
- #### Step 6: Start Local Development
356
-
357
- ```bash
358
- \echo ''
359
- \echo '=== Starting Local Supabase ==='
360
-
361
- supabase start
362
-
363
- echo ""
364
- echo "✓ Supabase is running locally"
365
- echo ""
366
- echo "📋 Next steps:"
367
- echo " 1. supabase migration new {name} - Create new migration"
368
- echo " 2. supabase db push - Push migrations to remote"
369
- echo " 3. supabase db reset - Reset local database"
370
- echo " 4. supabase status - View local services"
371
- ```
372
-
373
- ---
374
-
375
- ### Type: PostgreSQL (Standard)
376
-
377
- **When:** User selects `postgresql`
378
-
379
- #### Step 1: Create Project Structure
380
-
381
- ```bash
382
- \echo '=== Setting Up PostgreSQL Project ==='
383
-
384
- mkdir -p database/migrations
385
- mkdir -p database/seeds
386
- mkdir -p database/scripts
387
-
388
- echo "✓ Created PostgreSQL project structure"
389
- ```
390
-
391
- #### Step 2: Create Connection Config
392
-
393
- ```bash
394
- cat > database/.env.example <<'ENV'
395
- # PostgreSQL Connection
396
- POSTGRES_HOST=localhost
397
- POSTGRES_PORT=5432
398
- POSTGRES_DB=myapp_development
399
- POSTGRES_USER=postgres
400
- POSTGRES_PASSWORD=changeme
401
-
402
- # Connection URL
403
- DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}
404
- ENV
405
-
406
- cp database/.env.example database/.env
407
-
408
- echo "✓ Created .env configuration"
409
- ```
410
-
411
- #### Step 3: Create Initial Migration
412
-
413
- ```bash
414
- cat > database/migrations/001_initial_schema.sql <<'SQL'
415
- -- Initial Schema Migration
416
- -- Generated by AIOS data-engineer
417
-
418
- BEGIN;
419
-
420
- -- Example: Users table
421
- CREATE TABLE IF NOT EXISTS users (
422
- id SERIAL PRIMARY KEY,
423
- email VARCHAR(255) UNIQUE NOT NULL,
424
- created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
425
- updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
426
- );
427
-
428
- -- Add updated_at trigger
429
- CREATE OR REPLACE FUNCTION update_updated_at_column()
430
- RETURNS TRIGGER AS $$
431
- BEGIN
432
- NEW.updated_at = CURRENT_TIMESTAMP;
433
- RETURN NEW;
434
- END;
435
- $$ LANGUAGE plpgsql;
436
-
437
- CREATE TRIGGER update_users_updated_at
438
- BEFORE UPDATE ON users
439
- FOR EACH ROW
440
- EXECUTE FUNCTION update_updated_at_column();
441
-
442
- COMMIT;
443
- SQL
444
-
445
- echo "✓ Created initial migration"
446
- ```
447
-
448
- #### Step 4: Create Migration Runner Script
449
-
450
- ```bash
451
- cat > database/scripts/migrate.sh <<'BASH'
452
- #!/bin/bash
453
- set -e
454
-
455
- # Load environment
456
- source database/.env
457
-
458
- echo "Running migrations..."
459
-
460
- for migration in database/migrations/*.sql; do
461
- echo "Applying: $migration"
462
- psql "$DATABASE_URL" -f "$migration"
463
- done
464
-
465
- echo "✓ All migrations applied"
466
- BASH
467
-
468
- chmod +x database/scripts/migrate.sh
469
-
470
- echo "✓ Created migration runner"
471
- ```
472
-
473
- ---
474
-
475
- ### Type: MongoDB
476
-
477
- **When:** User selects `mongodb`
478
-
479
- #### Step 1: Create Project Structure
480
-
481
- ```bash
482
- \echo '=== Setting Up MongoDB Project ==='
483
-
484
- mkdir -p database/migrations
485
- mkdir -p database/seeds
486
- mkdir -p database/schemas
487
-
488
- echo "✓ Created MongoDB project structure"
489
- ```
490
-
491
- #### Step 2: Create Connection Config
492
-
493
- ```bash
494
- cat > database/.env.example <<'ENV'
495
- # MongoDB Connection
496
- MONGO_HOST=localhost
497
- MONGO_PORT=27017
498
- MONGO_DB=myapp_development
499
- MONGO_USER=admin
500
- MONGO_PASSWORD=changeme
501
-
502
- # Connection URL
503
- MONGO_URL=mongodb://${MONGO_USER}:${MONGO_PASSWORD}@${MONGO_HOST}:${MONGO_PORT}/${MONGO_DB}?authSource=admin
504
- ENV
505
-
506
- cp database/.env.example database/.env
507
-
508
- echo "✓ Created .env configuration"
509
- ```
510
-
511
- #### Step 3: Create Initial Schema
512
-
513
- ```bash
514
- cat > database/schemas/users.js <<'JS'
515
- // User Schema
516
- // Generated by AIOS data-engineer
517
-
518
- module.exports = {
519
- validator: {
520
- $jsonSchema: {
521
- bsonType: "object",
522
- required: ["email", "createdAt"],
523
- properties: {
524
- email: {
525
- bsonType: "string",
526
- description: "must be a string and is required"
527
- },
528
- createdAt: {
529
- bsonType: "date",
530
- description: "must be a date and is required"
531
- },
532
- updatedAt: {
533
- bsonType: "date"
534
- }
535
- }
536
- }
537
- }
538
- };
539
- JS
540
-
541
- echo "✓ Created user schema"
542
- ```
543
-
544
- #### Step 4: Create Seed Data
545
-
546
- ```bash
547
- cat > database/seeds/users.json <<'JSON'
548
- [
549
- {
550
- "email": "test@example.com",
551
- "createdAt": {"$date": "2025-01-01T00:00:00.000Z"},
552
- "updatedAt": {"$date": "2025-01-01T00:00:00.000Z"}
553
- }
554
- ]
555
- JSON
556
-
557
- echo "✓ Created seed data"
558
- ```
559
-
560
- ---
561
-
562
- ### Type: MySQL
563
-
564
- **When:** User selects `mysql`
565
-
566
- #### Step 1: Create Project Structure
567
-
568
- ```bash
569
- \echo '=== Setting Up MySQL Project ==='
570
-
571
- mkdir -p database/migrations
572
- mkdir -p database/seeds
573
- mkdir -p database/scripts
574
-
575
- echo "✓ Created MySQL project structure"
576
- ```
577
-
578
- #### Step 2: Create Connection Config
579
-
580
- ```bash
581
- cat > database/.env.example <<'ENV'
582
- # MySQL Connection
583
- MYSQL_HOST=localhost
584
- MYSQL_PORT=3306
585
- MYSQL_DB=myapp_development
586
- MYSQL_USER=root
587
- MYSQL_PASSWORD=changeme
588
-
589
- # Connection URL
590
- DATABASE_URL=mysql://${MYSQL_USER}:${MYSQL_PASSWORD}@${MYSQL_HOST}:${MYSQL_PORT}/${MYSQL_DB}
591
- ENV
592
-
593
- cp database/.env.example database/.env
594
-
595
- echo "✓ Created .env configuration"
596
- ```
597
-
598
- #### Step 3: Create Initial Migration
599
-
600
- ```bash
601
- cat > database/migrations/001_initial_schema.sql <<'SQL'
602
- -- Initial Schema Migration
603
- -- Generated by AIOS data-engineer
604
-
605
- -- Example: Users table
606
- CREATE TABLE IF NOT EXISTS users (
607
- id INT AUTO_INCREMENT PRIMARY KEY,
608
- email VARCHAR(255) UNIQUE NOT NULL,
609
- created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
610
- updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
611
- INDEX idx_email (email)
612
- ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
613
- SQL
614
-
615
- echo "✓ Created initial migration"
616
- ```
617
-
618
- ---
619
-
620
- ### Type: SQLite
621
-
622
- **When:** User selects `sqlite`
623
-
624
- #### Step 1: Create Project Structure
625
-
626
- ```bash
627
- \echo '=== Setting Up SQLite Project ==='
628
-
629
- mkdir -p database/migrations
630
- mkdir -p database/seeds
631
-
632
- echo "✓ Created SQLite project structure"
633
- ```
634
-
635
- #### Step 2: Create Initial Migration
636
-
637
- ```bash
638
- cat > database/migrations/001_initial_schema.sql <<'SQL'
639
- -- Initial Schema Migration
640
- -- Generated by AIOS data-engineer
641
-
642
- -- Example: Users table
643
- CREATE TABLE IF NOT EXISTS users (
644
- id INTEGER PRIMARY KEY AUTOINCREMENT,
645
- email TEXT UNIQUE NOT NULL,
646
- created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
647
- updated_at DATETIME DEFAULT CURRENT_TIMESTAMP
648
- );
649
-
650
- -- Trigger for updated_at
651
- CREATE TRIGGER IF NOT EXISTS update_users_updated_at
652
- AFTER UPDATE ON users
653
- BEGIN
654
- UPDATE users SET updated_at = CURRENT_TIMESTAMP WHERE id = NEW.id;
655
- END;
656
- SQL
657
-
658
- echo "✓ Created initial migration"
659
- ```
660
-
661
- #### Step 3: Create Database
662
-
663
- ```bash
664
- sqlite3 database/myapp_development.db < database/migrations/001_initial_schema.sql
665
-
666
- echo "✓ Created SQLite database"
667
- ```
668
-
669
- ---
670
-
671
- ## Common Next Steps (All Databases)
672
-
673
- ```
674
- 📋 Database setup complete!
675
-
676
- Next steps:
677
- 1. Configure environment variables (.env file)
678
- 2. Create your schema design (*create-schema)
679
- 3. Generate migrations (*create-migration-plan)
680
- 4. Apply migrations (*apply-migration)
681
- 5. Set up RLS policies (Supabase/PostgreSQL only: *policy-apply)
682
- 6. Add seed data (*seed)
683
-
684
- Related commands:
685
- - *create-schema - Design database schema
686
- - *apply-migration {path} - Run migrations
687
- - *security-audit - Check RLS coverage (PostgreSQL)
688
- - *analyze-performance - Optimize queries
689
- ```
690
-
691
- ---
692
-
693
- ## Output Examples
694
-
695
- ### Supabase Output
696
-
697
- ```
698
- === Installing Supabase CLI ===
699
- ✓ Supabase CLI already installed: 1.27.7
700
-
701
- === Initializing Supabase Project ===
702
- ✓ Created supabase/ directory structure
703
- ✓ Created standard Supabase directories
704
- ✓ Created initial migration
705
- ✓ Created seed data file
706
-
707
- === Starting Local Supabase ===
708
- Started supabase local development setup.
709
-
710
- API URL: http://localhost:54321
711
- DB URL: postgresql://postgres:postgres@localhost:54322/postgres
712
- Studio URL: http://localhost:54323
713
-
714
- ✓ Supabase is running locally
715
- ```
716
-
717
- ### PostgreSQL Output
718
-
719
- ```
720
- === Setting Up PostgreSQL Project ===
721
- ✓ Created PostgreSQL project structure
722
- ✓ Created .env configuration
723
- ✓ Created initial migration
724
- ✓ Created migration runner
725
-
726
- 📋 Database setup complete!
727
- ```
728
-
729
- ---
730
-
731
- ## Related Commands
732
-
733
- - `*env-check` - Validate database environment variables
734
- - `*bootstrap` - Alternative setup command with more options
735
- - `*create-schema` - Design database schema
736
- - `*apply-migration` - Run migrations
737
- - `*setup-supabase` - Legacy command (deprecated, use `*setup-database supabase`)
738
-
739
- ---
740
-
741
- **Note:** This task replaces `db-supabase-setup.md` with database-agnostic version (renamed in Story 6.1.2.3)
1
+ # Task: Setup Database
2
+
3
+ **Purpose**: Interactive database project setup (Supabase, PostgreSQL, MongoDB, MySQL, SQLite)
4
+
5
+ **Elicit**: true
6
+
7
+ **Renamed From (Story 6.1.2.3):**
8
+ - `db-supabase-setup.md` - Now database-agnostic (supports 5+ DB types)
9
+
10
+ ---
11
+
12
+ ## Execution Modes
13
+
14
+ **Choose your execution mode:**
15
+
16
+ ### 1. YOLO Mode - Fast, Autonomous (0-1 prompts)
17
+ - Autonomous decision making with logging
18
+ - Minimal user interaction
19
+ - **Best for:** Simple, deterministic tasks
20
+
21
+ ### 2. Interactive Mode - Balanced, Educational (5-10 prompts) **[DEFAULT]**
22
+ - Explicit decision checkpoints
23
+ - Educational explanations
24
+ - **Best for:** Learning, complex decisions
25
+
26
+ ### 3. Pre-Flight Planning - Comprehensive Upfront Planning
27
+ - Task analysis phase (identify all ambiguities)
28
+ - Zero ambiguity execution
29
+ - **Best for:** Ambiguous requirements, critical work
30
+
31
+ **Parameter:** `mode` (optional, default: `interactive`)
32
+
33
+ ---
34
+
35
+ ## Task Definition (AIOS Task Format V1.0)
36
+
37
+ ```yaml
38
+ task: setupDatabase()
39
+ responsável: Dara (Sage)
40
+ responsavel_type: Agente
41
+ atomic_layer: Config
42
+
43
+ **Entrada:**
44
+ - campo: project_path
45
+ tipo: string
46
+ origem: User Input
47
+ obrigatório: true
48
+ validação: Valid directory path
49
+
50
+ - campo: options
51
+ tipo: object
52
+ origem: User Input
53
+ obrigatório: false
54
+ validação: Initialization options
55
+
56
+ **Saída:**
57
+ - campo: initialized_project
58
+ tipo: string
59
+ destino: File system
60
+ persistido: true
61
+
62
+ - campo: config_created
63
+ tipo: boolean
64
+ destino: Return value
65
+ persistido: false
66
+ ```
67
+
68
+ ---
69
+
70
+ ## Pre-Conditions
71
+
72
+ **Purpose:** Validate prerequisites BEFORE task execution (blocking)
73
+
74
+ **Checklist:**
75
+
76
+ ```yaml
77
+ pre-conditions:
78
+ - [ ] Directory is empty or force flag set; config valid
79
+ tipo: pre-condition
80
+ blocker: true
81
+ validação: |
82
+ Check directory is empty or force flag set; config valid
83
+ error_message: "Pre-condition failed: Directory is empty or force flag set; config valid"
84
+ ```
85
+
86
+ ---
87
+
88
+ ## Post-Conditions
89
+
90
+ **Purpose:** Validate execution success AFTER task completes
91
+
92
+ **Checklist:**
93
+
94
+ ```yaml
95
+ post-conditions:
96
+ - [ ] Project initialized; config files created; structure valid
97
+ tipo: post-condition
98
+ blocker: true
99
+ validação: |
100
+ Verify project initialized; config files created; structure valid
101
+ error_message: "Post-condition failed: Project initialized; config files created; structure valid"
102
+ ```
103
+
104
+ ---
105
+
106
+ ## Acceptance Criteria
107
+
108
+ **Purpose:** Definitive pass/fail criteria for task completion
109
+
110
+ **Checklist:**
111
+
112
+ ```yaml
113
+ acceptance-criteria:
114
+ - [ ] Project structure correct; all config files valid
115
+ tipo: acceptance-criterion
116
+ blocker: true
117
+ validação: |
118
+ Assert project structure correct; all config files valid
119
+ error_message: "Acceptance criterion not met: Project structure correct; all config files valid"
120
+ ```
121
+
122
+ ---
123
+
124
+ ## Tools
125
+
126
+ **External/shared resources used by this task:**
127
+
128
+ - **Tool:** project-scaffolder
129
+ - **Purpose:** Generate project structure and config
130
+ - **Source:** .aios-core/scripts/project-scaffolder.js
131
+
132
+ - **Tool:** config-manager
133
+ - **Purpose:** Initialize configuration files
134
+ - **Source:** .aios-core/utils/config-manager.js
135
+
136
+ ---
137
+
138
+ ## Scripts
139
+
140
+ **Agent-specific code for this task:**
141
+
142
+ - **Script:** init-project.js
143
+ - **Purpose:** Project initialization workflow
144
+ - **Language:** JavaScript
145
+ - **Location:** .aios-core/scripts/init-project.js
146
+
147
+ ---
148
+
149
+ ## Error Handling
150
+
151
+ **Strategy:** retry
152
+
153
+ **Common Errors:**
154
+
155
+ 1. **Error:** Directory Not Empty
156
+ - **Cause:** Target directory already contains files
157
+ - **Resolution:** Use force flag or choose empty directory
158
+ - **Recovery:** Prompt for confirmation, merge or abort
159
+
160
+ 2. **Error:** Initialization Failed
161
+ - **Cause:** Error creating project structure
162
+ - **Resolution:** Check permissions and disk space
163
+ - **Recovery:** Cleanup partial initialization, log error
164
+
165
+ ---
166
+
167
+ ## Performance
168
+
169
+ **Expected Metrics:**
170
+
171
+ ```yaml
172
+ duration_expected: 2-10 min (estimated)
173
+ cost_estimated: $0.001-0.008
174
+ token_usage: ~800-2,500 tokens
175
+ ```
176
+
177
+ **Optimization Notes:**
178
+ - Validate configuration early; use atomic writes; implement rollback checkpoints
179
+
180
+ ---
181
+
182
+ ## Metadata
183
+
184
+ ```yaml
185
+ story: N/A
186
+ version: 1.0.0
187
+ dependencies:
188
+ - N/A
189
+ tags:
190
+ - automation
191
+ - workflow
192
+ updated_at: 2025-11-17
193
+ ```
194
+
195
+ ---
196
+
197
+
198
+ ## Elicitation
199
+
200
+ **Step 1: Detect or prompt for database type**
201
+
202
+ ```bash
203
+ # Auto-detect from PRD or tech stack if available
204
+ if grep -qiE "supabase|postgres" docs/prd/*.yaml docs/architecture/*.yaml 2>/dev/null; then
205
+ DETECTED_DB="postgresql"
206
+ echo "📊 Detected database: PostgreSQL/Supabase"
207
+ elif grep -qiE "mongodb|mongo" docs/prd/*.yaml docs/architecture/*.yaml 2>/dev/null; then
208
+ DETECTED_DB="mongodb"
209
+ echo "📊 Detected database: MongoDB"
210
+ elif grep -qiE "mysql|mariadb" docs/prd/*.yaml docs/architecture/*.yaml 2>/dev/null; then
211
+ DETECTED_DB="mysql"
212
+ echo "📊 Detected database: MySQL"
213
+ elif grep -qiE "sqlite" docs/prd/*.yaml docs/architecture/*.yaml 2>/dev/null; then
214
+ DETECTED_DB="sqlite"
215
+ echo "📊 Detected database: SQLite"
216
+ else
217
+ DETECTED_DB=""
218
+ fi
219
+ ```
220
+
221
+ **Prompt user:**
222
+
223
+ ```
224
+ Select database type:
225
+
226
+ 1. **supabase** - PostgreSQL + RLS + Realtime + Edge Functions
227
+ 2. **postgresql** - Standard PostgreSQL (self-hosted or managed)
228
+ 3. **mongodb** - NoSQL document database
229
+ 4. **mysql** - MySQL or MariaDB relational database
230
+ 5. **sqlite** - Embedded SQLite database
231
+
232
+ Which database? [supabase/postgresql/mongodb/mysql/sqlite]:
233
+ ```
234
+
235
+ **Capture:** `{db_type}` (default: $DETECTED_DB if available)
236
+
237
+ ---
238
+
239
+ ## Process by Database Type
240
+
241
+ ### Type: Supabase
242
+
243
+ **When:** User selects `supabase`
244
+
245
+ #### Step 1: Install Supabase CLI
246
+
247
+ ```bash
248
+ \echo '=== Installing Supabase CLI ==='
249
+
250
+ # Check if already installed
251
+ if command -v supabase &> /dev/null; then
252
+ echo "✓ Supabase CLI already installed: $(supabase --version)"
253
+ else
254
+ echo "Installing Supabase CLI..."
255
+
256
+ # macOS/Linux
257
+ if [[ "$OSTYPE" == "darwin"* ]]; then
258
+ brew install supabase/tap/supabase
259
+ else
260
+ # Linux
261
+ curl -fsSL https://github.com/supabase/cli/releases/latest/download/supabase_linux_amd64.tar.gz | tar -xz
262
+ sudo mv supabase /usr/local/bin/
263
+ fi
264
+
265
+ echo "✓ Supabase CLI installed"
266
+ fi
267
+ ```
268
+
269
+ #### Step 2: Initialize Supabase Project
270
+
271
+ ```bash
272
+ \echo ''
273
+ \echo '=== Initializing Supabase Project ==='
274
+
275
+ # Initialize local project
276
+ supabase init
277
+
278
+ echo "✓ Created supabase/ directory structure"
279
+ ```
280
+
281
+ #### Step 3: Create Standard Directories
282
+
283
+ ```bash
284
+ mkdir -p supabase/migrations
285
+ mkdir -p supabase/seed.sql
286
+ mkdir -p supabase/tests
287
+ mkdir -p supabase/functions
288
+
289
+ echo "✓ Created standard Supabase directories"
290
+ ```
291
+
292
+ ####Step 4: Create Starter Migration
293
+
294
+ ```bash
295
+ cat > supabase/migrations/$(date +%Y%m%d%H%M%S)_initial_schema.sql <<'SQL'
296
+ -- Initial Schema Migration
297
+ -- Generated by AIOS data-engineer
298
+
299
+ -- Enable extensions
300
+ CREATE EXTENSION IF NOT EXISTS "uuid-ossp";
301
+ CREATE EXTENSION IF NOT EXISTS "pg_stat_statements";
302
+
303
+ -- Example: Users table
304
+ CREATE TABLE IF NOT EXISTS users (
305
+ id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
306
+ email TEXT UNIQUE NOT NULL,
307
+ created_at TIMESTAMPTZ DEFAULT NOW(),
308
+ updated_at TIMESTAMPTZ DEFAULT NOW()
309
+ );
310
+
311
+ -- Enable RLS
312
+ ALTER TABLE users ENABLE ROW LEVEL SECURITY;
313
+
314
+ -- Example RLS policy
315
+ CREATE POLICY "Users can read own data"
316
+ ON users
317
+ FOR SELECT
318
+ USING (auth.uid() = id);
319
+
320
+ -- Add updated_at trigger function
321
+ CREATE OR REPLACE FUNCTION update_updated_at_column()
322
+ RETURNS TRIGGER AS $$
323
+ BEGIN
324
+ NEW.updated_at = NOW();
325
+ RETURN NEW;
326
+ END;
327
+ $$ LANGUAGE plpgsql;
328
+
329
+ CREATE TRIGGER update_users_updated_at
330
+ BEFORE UPDATE ON users
331
+ FOR EACH ROW
332
+ EXECUTE FUNCTION update_updated_at_column();
333
+ SQL
334
+
335
+ echo "✓ Created initial migration"
336
+ ```
337
+
338
+ #### Step 5: Create Starter Seed Data
339
+
340
+ ```bash
341
+ cat > supabase/seed.sql <<'SQL'
342
+ -- Seed Data
343
+ -- Generated by AIOS data-engineer
344
+
345
+ -- Example seed user (for local development only)
346
+ INSERT INTO users (id, email)
347
+ VALUES
348
+ ('550e8400-e29b-41d4-a716-446655440000', 'test@example.com')
349
+ ON CONFLICT (email) DO NOTHING;
350
+ SQL
351
+
352
+ echo "✓ Created seed data file"
353
+ ```
354
+
355
+ #### Step 6: Start Local Development
356
+
357
+ ```bash
358
+ \echo ''
359
+ \echo '=== Starting Local Supabase ==='
360
+
361
+ supabase start
362
+
363
+ echo ""
364
+ echo "✓ Supabase is running locally"
365
+ echo ""
366
+ echo "📋 Next steps:"
367
+ echo " 1. supabase migration new {name} - Create new migration"
368
+ echo " 2. supabase db push - Push migrations to remote"
369
+ echo " 3. supabase db reset - Reset local database"
370
+ echo " 4. supabase status - View local services"
371
+ ```
372
+
373
+ ---
374
+
375
+ ### Type: PostgreSQL (Standard)
376
+
377
+ **When:** User selects `postgresql`
378
+
379
+ #### Step 1: Create Project Structure
380
+
381
+ ```bash
382
+ \echo '=== Setting Up PostgreSQL Project ==='
383
+
384
+ mkdir -p database/migrations
385
+ mkdir -p database/seeds
386
+ mkdir -p database/scripts
387
+
388
+ echo "✓ Created PostgreSQL project structure"
389
+ ```
390
+
391
+ #### Step 2: Create Connection Config
392
+
393
+ ```bash
394
+ cat > database/.env.example <<'ENV'
395
+ # PostgreSQL Connection
396
+ POSTGRES_HOST=localhost
397
+ POSTGRES_PORT=5432
398
+ POSTGRES_DB=myapp_development
399
+ POSTGRES_USER=postgres
400
+ POSTGRES_PASSWORD=changeme
401
+
402
+ # Connection URL
403
+ DATABASE_URL=postgresql://${POSTGRES_USER}:${POSTGRES_PASSWORD}@${POSTGRES_HOST}:${POSTGRES_PORT}/${POSTGRES_DB}
404
+ ENV
405
+
406
+ cp database/.env.example database/.env
407
+
408
+ echo "✓ Created .env configuration"
409
+ ```
410
+
411
+ #### Step 3: Create Initial Migration
412
+
413
+ ```bash
414
+ cat > database/migrations/001_initial_schema.sql <<'SQL'
415
+ -- Initial Schema Migration
416
+ -- Generated by AIOS data-engineer
417
+
418
+ BEGIN;
419
+
420
+ -- Example: Users table
421
+ CREATE TABLE IF NOT EXISTS users (
422
+ id SERIAL PRIMARY KEY,
423
+ email VARCHAR(255) UNIQUE NOT NULL,
424
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
425
+ updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
426
+ );
427
+
428
+ -- Add updated_at trigger
429
+ CREATE OR REPLACE FUNCTION update_updated_at_column()
430
+ RETURNS TRIGGER AS $$
431
+ BEGIN
432
+ NEW.updated_at = CURRENT_TIMESTAMP;
433
+ RETURN NEW;
434
+ END;
435
+ $$ LANGUAGE plpgsql;
436
+
437
+ CREATE TRIGGER update_users_updated_at
438
+ BEFORE UPDATE ON users
439
+ FOR EACH ROW
440
+ EXECUTE FUNCTION update_updated_at_column();
441
+
442
+ COMMIT;
443
+ SQL
444
+
445
+ echo "✓ Created initial migration"
446
+ ```
447
+
448
+ #### Step 4: Create Migration Runner Script
449
+
450
+ ```bash
451
+ cat > database/scripts/migrate.sh <<'BASH'
452
+ #!/bin/bash
453
+ set -e
454
+
455
+ # Load environment
456
+ source database/.env
457
+
458
+ echo "Running migrations..."
459
+
460
+ for migration in database/migrations/*.sql; do
461
+ echo "Applying: $migration"
462
+ psql "$DATABASE_URL" -f "$migration"
463
+ done
464
+
465
+ echo "✓ All migrations applied"
466
+ BASH
467
+
468
+ chmod +x database/scripts/migrate.sh
469
+
470
+ echo "✓ Created migration runner"
471
+ ```
472
+
473
+ ---
474
+
475
+ ### Type: MongoDB
476
+
477
+ **When:** User selects `mongodb`
478
+
479
+ #### Step 1: Create Project Structure
480
+
481
+ ```bash
482
+ \echo '=== Setting Up MongoDB Project ==='
483
+
484
+ mkdir -p database/migrations
485
+ mkdir -p database/seeds
486
+ mkdir -p database/schemas
487
+
488
+ echo "✓ Created MongoDB project structure"
489
+ ```
490
+
491
+ #### Step 2: Create Connection Config
492
+
493
+ ```bash
494
+ cat > database/.env.example <<'ENV'
495
+ # MongoDB Connection
496
+ MONGO_HOST=localhost
497
+ MONGO_PORT=27017
498
+ MONGO_DB=myapp_development
499
+ MONGO_USER=admin
500
+ MONGO_PASSWORD=changeme
501
+
502
+ # Connection URL
503
+ MONGO_URL=mongodb://${MONGO_USER}:${MONGO_PASSWORD}@${MONGO_HOST}:${MONGO_PORT}/${MONGO_DB}?authSource=admin
504
+ ENV
505
+
506
+ cp database/.env.example database/.env
507
+
508
+ echo "✓ Created .env configuration"
509
+ ```
510
+
511
+ #### Step 3: Create Initial Schema
512
+
513
+ ```bash
514
+ cat > database/schemas/users.js <<'JS'
515
+ // User Schema
516
+ // Generated by AIOS data-engineer
517
+
518
+ module.exports = {
519
+ validator: {
520
+ $jsonSchema: {
521
+ bsonType: "object",
522
+ required: ["email", "createdAt"],
523
+ properties: {
524
+ email: {
525
+ bsonType: "string",
526
+ description: "must be a string and is required"
527
+ },
528
+ createdAt: {
529
+ bsonType: "date",
530
+ description: "must be a date and is required"
531
+ },
532
+ updatedAt: {
533
+ bsonType: "date"
534
+ }
535
+ }
536
+ }
537
+ }
538
+ };
539
+ JS
540
+
541
+ echo "✓ Created user schema"
542
+ ```
543
+
544
+ #### Step 4: Create Seed Data
545
+
546
+ ```bash
547
+ cat > database/seeds/users.json <<'JSON'
548
+ [
549
+ {
550
+ "email": "test@example.com",
551
+ "createdAt": {"$date": "2025-01-01T00:00:00.000Z"},
552
+ "updatedAt": {"$date": "2025-01-01T00:00:00.000Z"}
553
+ }
554
+ ]
555
+ JSON
556
+
557
+ echo "✓ Created seed data"
558
+ ```
559
+
560
+ ---
561
+
562
+ ### Type: MySQL
563
+
564
+ **When:** User selects `mysql`
565
+
566
+ #### Step 1: Create Project Structure
567
+
568
+ ```bash
569
+ \echo '=== Setting Up MySQL Project ==='
570
+
571
+ mkdir -p database/migrations
572
+ mkdir -p database/seeds
573
+ mkdir -p database/scripts
574
+
575
+ echo "✓ Created MySQL project structure"
576
+ ```
577
+
578
+ #### Step 2: Create Connection Config
579
+
580
+ ```bash
581
+ cat > database/.env.example <<'ENV'
582
+ # MySQL Connection
583
+ MYSQL_HOST=localhost
584
+ MYSQL_PORT=3306
585
+ MYSQL_DB=myapp_development
586
+ MYSQL_USER=root
587
+ MYSQL_PASSWORD=changeme
588
+
589
+ # Connection URL
590
+ DATABASE_URL=mysql://${MYSQL_USER}:${MYSQL_PASSWORD}@${MYSQL_HOST}:${MYSQL_PORT}/${MYSQL_DB}
591
+ ENV
592
+
593
+ cp database/.env.example database/.env
594
+
595
+ echo "✓ Created .env configuration"
596
+ ```
597
+
598
+ #### Step 3: Create Initial Migration
599
+
600
+ ```bash
601
+ cat > database/migrations/001_initial_schema.sql <<'SQL'
602
+ -- Initial Schema Migration
603
+ -- Generated by AIOS data-engineer
604
+
605
+ -- Example: Users table
606
+ CREATE TABLE IF NOT EXISTS users (
607
+ id INT AUTO_INCREMENT PRIMARY KEY,
608
+ email VARCHAR(255) UNIQUE NOT NULL,
609
+ created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,
610
+ updated_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
611
+ INDEX idx_email (email)
612
+ ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
613
+ SQL
614
+
615
+ echo "✓ Created initial migration"
616
+ ```
617
+
618
+ ---
619
+
620
+ ### Type: SQLite
621
+
622
+ **When:** User selects `sqlite`
623
+
624
+ #### Step 1: Create Project Structure
625
+
626
+ ```bash
627
+ \echo '=== Setting Up SQLite Project ==='
628
+
629
+ mkdir -p database/migrations
630
+ mkdir -p database/seeds
631
+
632
+ echo "✓ Created SQLite project structure"
633
+ ```
634
+
635
+ #### Step 2: Create Initial Migration
636
+
637
+ ```bash
638
+ cat > database/migrations/001_initial_schema.sql <<'SQL'
639
+ -- Initial Schema Migration
640
+ -- Generated by AIOS data-engineer
641
+
642
+ -- Example: Users table
643
+ CREATE TABLE IF NOT EXISTS users (
644
+ id INTEGER PRIMARY KEY AUTOINCREMENT,
645
+ email TEXT UNIQUE NOT NULL,
646
+ created_at DATETIME DEFAULT CURRENT_TIMESTAMP,
647
+ updated_at DATETIME DEFAULT CURRENT_TIMESTAMP
648
+ );
649
+
650
+ -- Trigger for updated_at
651
+ CREATE TRIGGER IF NOT EXISTS update_users_updated_at
652
+ AFTER UPDATE ON users
653
+ BEGIN
654
+ UPDATE users SET updated_at = CURRENT_TIMESTAMP WHERE id = NEW.id;
655
+ END;
656
+ SQL
657
+
658
+ echo "✓ Created initial migration"
659
+ ```
660
+
661
+ #### Step 3: Create Database
662
+
663
+ ```bash
664
+ sqlite3 database/myapp_development.db < database/migrations/001_initial_schema.sql
665
+
666
+ echo "✓ Created SQLite database"
667
+ ```
668
+
669
+ ---
670
+
671
+ ## Common Next Steps (All Databases)
672
+
673
+ ```
674
+ 📋 Database setup complete!
675
+
676
+ Next steps:
677
+ 1. Configure environment variables (.env file)
678
+ 2. Create your schema design (*create-schema)
679
+ 3. Generate migrations (*create-migration-plan)
680
+ 4. Apply migrations (*apply-migration)
681
+ 5. Set up RLS policies (Supabase/PostgreSQL only: *policy-apply)
682
+ 6. Add seed data (*seed)
683
+
684
+ Related commands:
685
+ - *create-schema - Design database schema
686
+ - *apply-migration {path} - Run migrations
687
+ - *security-audit - Check RLS coverage (PostgreSQL)
688
+ - *analyze-performance - Optimize queries
689
+ ```
690
+
691
+ ---
692
+
693
+ ## Output Examples
694
+
695
+ ### Supabase Output
696
+
697
+ ```
698
+ === Installing Supabase CLI ===
699
+ ✓ Supabase CLI already installed: 1.27.7
700
+
701
+ === Initializing Supabase Project ===
702
+ ✓ Created supabase/ directory structure
703
+ ✓ Created standard Supabase directories
704
+ ✓ Created initial migration
705
+ ✓ Created seed data file
706
+
707
+ === Starting Local Supabase ===
708
+ Started supabase local development setup.
709
+
710
+ API URL: http://localhost:54321
711
+ DB URL: postgresql://postgres:postgres@localhost:54322/postgres
712
+ Studio URL: http://localhost:54323
713
+
714
+ ✓ Supabase is running locally
715
+ ```
716
+
717
+ ### PostgreSQL Output
718
+
719
+ ```
720
+ === Setting Up PostgreSQL Project ===
721
+ ✓ Created PostgreSQL project structure
722
+ ✓ Created .env configuration
723
+ ✓ Created initial migration
724
+ ✓ Created migration runner
725
+
726
+ 📋 Database setup complete!
727
+ ```
728
+
729
+ ---
730
+
731
+ ## Related Commands
732
+
733
+ - `*env-check` - Validate database environment variables
734
+ - `*bootstrap` - Alternative setup command with more options
735
+ - `*create-schema` - Design database schema
736
+ - `*apply-migration` - Run migrations
737
+ - `*setup-supabase` - Legacy command (deprecated, use `*setup-database supabase`)
738
+
739
+ ---
740
+
741
+ **Note:** This task replaces `db-supabase-setup.md` with database-agnostic version (renamed in Story 6.1.2.3)