qualia-framework 2.5.1 → 3.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (327) hide show
  1. package/CLAUDE.md +63 -0
  2. package/README.md +108 -30
  3. package/agents/builder.md +110 -0
  4. package/agents/planner.md +186 -0
  5. package/agents/qa-browser.md +186 -0
  6. package/agents/verifier.md +369 -0
  7. package/bin/cli.js +706 -417
  8. package/bin/install.js +622 -0
  9. package/bin/qualia-ui.js +284 -0
  10. package/bin/state.js +824 -0
  11. package/bin/statusline.js +252 -0
  12. package/docs/erp-contract.md +161 -0
  13. package/guide.md +63 -0
  14. package/hooks/auto-update.js +117 -0
  15. package/hooks/block-env-edit.js +52 -0
  16. package/hooks/branch-guard.js +68 -0
  17. package/hooks/migration-guard.js +83 -0
  18. package/hooks/pre-compact.js +52 -0
  19. package/hooks/pre-deploy-gate.js +149 -0
  20. package/hooks/pre-push.js +53 -0
  21. package/hooks/session-start.js +126 -0
  22. package/package.json +31 -17
  23. package/rules/design-reference.md +179 -0
  24. package/rules/frontend.md +126 -0
  25. package/rules/infrastructure.md +87 -0
  26. package/skills/qualia/SKILL.md +88 -0
  27. package/skills/qualia-build/SKILL.md +115 -0
  28. package/skills/qualia-debug/SKILL.md +87 -0
  29. package/skills/qualia-design/SKILL.md +99 -0
  30. package/skills/qualia-handoff/SKILL.md +66 -0
  31. package/skills/qualia-help/SKILL.md +60 -0
  32. package/skills/qualia-idk/SKILL.md +8 -0
  33. package/skills/qualia-learn/SKILL.md +111 -0
  34. package/skills/qualia-new/SKILL.md +323 -0
  35. package/skills/qualia-pause/SKILL.md +63 -0
  36. package/skills/qualia-plan/SKILL.md +101 -0
  37. package/skills/qualia-polish/SKILL.md +207 -0
  38. package/skills/qualia-quick/SKILL.md +37 -0
  39. package/skills/qualia-report/SKILL.md +114 -0
  40. package/skills/qualia-resume/SKILL.md +49 -0
  41. package/skills/qualia-review/SKILL.md +161 -0
  42. package/skills/qualia-ship/SKILL.md +90 -0
  43. package/skills/qualia-skill-new/SKILL.md +167 -0
  44. package/skills/qualia-task/SKILL.md +91 -0
  45. package/skills/qualia-test/SKILL.md +134 -0
  46. package/skills/qualia-verify/SKILL.md +113 -0
  47. package/templates/DESIGN.md +475 -0
  48. package/templates/help.html +476 -0
  49. package/templates/plan.md +42 -0
  50. package/templates/project.md +22 -0
  51. package/templates/state.md +27 -0
  52. package/templates/tracking.json +20 -0
  53. package/tests/bin.test.sh +687 -0
  54. package/tests/hooks.test.sh +384 -0
  55. package/tests/runner.js +1956 -0
  56. package/tests/state.test.sh +713 -0
  57. package/tests/statusline.test.sh +243 -0
  58. package/bin/collect-metrics.sh +0 -62
  59. package/framework/.claudeignore +0 -51
  60. package/framework/CLAUDE.md +0 -51
  61. package/framework/MCP_SETUP.md +0 -229
  62. package/framework/agents/architecture-strategist.md +0 -53
  63. package/framework/agents/backend-agent.md +0 -150
  64. package/framework/agents/code-simplicity-reviewer.md +0 -86
  65. package/framework/agents/frontend-agent.md +0 -111
  66. package/framework/agents/kieran-typescript-reviewer.md +0 -96
  67. package/framework/agents/performance-oracle.md +0 -111
  68. package/framework/agents/qualia-codebase-mapper.md +0 -761
  69. package/framework/agents/qualia-debugger.md +0 -1204
  70. package/framework/agents/qualia-executor.md +0 -882
  71. package/framework/agents/qualia-integration-checker.md +0 -424
  72. package/framework/agents/qualia-phase-researcher.md +0 -457
  73. package/framework/agents/qualia-plan-checker.md +0 -700
  74. package/framework/agents/qualia-planner.md +0 -1245
  75. package/framework/agents/qualia-project-researcher.md +0 -603
  76. package/framework/agents/qualia-research-synthesizer.md +0 -200
  77. package/framework/agents/qualia-roadmapper.md +0 -606
  78. package/framework/agents/qualia-verifier.md +0 -686
  79. package/framework/agents/red-team-qa.md +0 -130
  80. package/framework/agents/security-auditor.md +0 -72
  81. package/framework/agents/team-orchestrator.md +0 -229
  82. package/framework/agents/teams/framework-audit-team.md +0 -66
  83. package/framework/agents/teams/full-stack-team.md +0 -48
  84. package/framework/agents/teams/optimize-team.md +0 -53
  85. package/framework/agents/teams/review-team.md +0 -70
  86. package/framework/agents/teams/ship-team.md +0 -86
  87. package/framework/agents/test-agent.md +0 -182
  88. package/framework/hooks/auto-format.sh +0 -54
  89. package/framework/hooks/block-env-edit.sh +0 -42
  90. package/framework/hooks/branch-guard.sh +0 -43
  91. package/framework/hooks/confirm-delete.sh +0 -59
  92. package/framework/hooks/migration-validate.sh +0 -77
  93. package/framework/hooks/notification-speak.sh +0 -16
  94. package/framework/hooks/pre-commit.sh +0 -100
  95. package/framework/hooks/pre-compact.sh +0 -56
  96. package/framework/hooks/pre-deploy-gate.sh +0 -160
  97. package/framework/hooks/qualia-colors.sh +0 -32
  98. package/framework/hooks/retention-cleanup.sh +0 -62
  99. package/framework/hooks/save-session-state.sh +0 -185
  100. package/framework/hooks/session-context-loader.sh +0 -96
  101. package/framework/hooks/session-learn.sh +0 -32
  102. package/framework/hooks/skill-announce.sh +0 -123
  103. package/framework/hooks/tool-error-announce.sh +0 -27
  104. package/framework/install.ps1 +0 -323
  105. package/framework/install.sh +0 -313
  106. package/framework/qualia-framework/VERSION +0 -1
  107. package/framework/qualia-framework/assets/qualia-logo.png +0 -0
  108. package/framework/qualia-framework/bin/collect-metrics.sh +0 -67
  109. package/framework/qualia-framework/bin/generate-report-docx.py +0 -429
  110. package/framework/qualia-framework/bin/qualia-tools.js +0 -2201
  111. package/framework/qualia-framework/bin/qualia-tools.test.js +0 -1054
  112. package/framework/qualia-framework/references/checkpoints.md +0 -775
  113. package/framework/qualia-framework/references/completion-checklists.md +0 -359
  114. package/framework/qualia-framework/references/continuation-format.md +0 -249
  115. package/framework/qualia-framework/references/continuation-prompt.md +0 -97
  116. package/framework/qualia-framework/references/decimal-phase-calculation.md +0 -65
  117. package/framework/qualia-framework/references/design-quality.md +0 -56
  118. package/framework/qualia-framework/references/employee-guide.md +0 -167
  119. package/framework/qualia-framework/references/git-integration.md +0 -254
  120. package/framework/qualia-framework/references/git-planning-commit.md +0 -50
  121. package/framework/qualia-framework/references/model-profile-resolution.md +0 -32
  122. package/framework/qualia-framework/references/model-profiles.md +0 -73
  123. package/framework/qualia-framework/references/phase-argument-parsing.md +0 -61
  124. package/framework/qualia-framework/references/planning-config.md +0 -195
  125. package/framework/qualia-framework/references/questioning.md +0 -141
  126. package/framework/qualia-framework/references/tdd.md +0 -263
  127. package/framework/qualia-framework/references/ui-brand.md +0 -160
  128. package/framework/qualia-framework/references/verification-patterns.md +0 -612
  129. package/framework/qualia-framework/templates/DEBUG.md +0 -159
  130. package/framework/qualia-framework/templates/DESIGN.md +0 -81
  131. package/framework/qualia-framework/templates/UAT.md +0 -247
  132. package/framework/qualia-framework/templates/codebase/architecture.md +0 -255
  133. package/framework/qualia-framework/templates/codebase/concerns.md +0 -310
  134. package/framework/qualia-framework/templates/codebase/conventions.md +0 -307
  135. package/framework/qualia-framework/templates/codebase/integrations.md +0 -280
  136. package/framework/qualia-framework/templates/codebase/stack.md +0 -186
  137. package/framework/qualia-framework/templates/codebase/structure.md +0 -285
  138. package/framework/qualia-framework/templates/codebase/testing.md +0 -480
  139. package/framework/qualia-framework/templates/config.json +0 -35
  140. package/framework/qualia-framework/templates/context.md +0 -283
  141. package/framework/qualia-framework/templates/continue-here.md +0 -78
  142. package/framework/qualia-framework/templates/debug-subagent-prompt.md +0 -91
  143. package/framework/qualia-framework/templates/discovery.md +0 -146
  144. package/framework/qualia-framework/templates/lab-notes.md +0 -16
  145. package/framework/qualia-framework/templates/milestone-archive.md +0 -123
  146. package/framework/qualia-framework/templates/milestone.md +0 -115
  147. package/framework/qualia-framework/templates/phase-prompt.md +0 -567
  148. package/framework/qualia-framework/templates/planner-subagent-prompt.md +0 -117
  149. package/framework/qualia-framework/templates/project.md +0 -184
  150. package/framework/qualia-framework/templates/projects/ai-agent.md +0 -156
  151. package/framework/qualia-framework/templates/projects/mobile-app.md +0 -181
  152. package/framework/qualia-framework/templates/projects/voice-agent.md +0 -134
  153. package/framework/qualia-framework/templates/projects/website.md +0 -137
  154. package/framework/qualia-framework/templates/requirements.md +0 -231
  155. package/framework/qualia-framework/templates/research-project/ARCHITECTURE.md +0 -204
  156. package/framework/qualia-framework/templates/research-project/FEATURES.md +0 -147
  157. package/framework/qualia-framework/templates/research-project/PITFALLS.md +0 -200
  158. package/framework/qualia-framework/templates/research-project/STACK.md +0 -120
  159. package/framework/qualia-framework/templates/research-project/SUMMARY.md +0 -170
  160. package/framework/qualia-framework/templates/research.md +0 -552
  161. package/framework/qualia-framework/templates/roadmap.md +0 -206
  162. package/framework/qualia-framework/templates/state.md +0 -179
  163. package/framework/qualia-framework/templates/summary-complex.md +0 -59
  164. package/framework/qualia-framework/templates/summary-minimal.md +0 -41
  165. package/framework/qualia-framework/templates/summary-standard.md +0 -48
  166. package/framework/qualia-framework/templates/summary.md +0 -246
  167. package/framework/qualia-framework/templates/user-setup.md +0 -311
  168. package/framework/qualia-framework/templates/verification-report.md +0 -322
  169. package/framework/qualia-framework/workflows/add-phase.md +0 -179
  170. package/framework/qualia-framework/workflows/add-todo.md +0 -157
  171. package/framework/qualia-framework/workflows/audit-milestone.md +0 -241
  172. package/framework/qualia-framework/workflows/check-todos.md +0 -176
  173. package/framework/qualia-framework/workflows/complete-milestone.md +0 -858
  174. package/framework/qualia-framework/workflows/diagnose-issues.md +0 -219
  175. package/framework/qualia-framework/workflows/discovery-phase.md +0 -289
  176. package/framework/qualia-framework/workflows/discuss-phase.md +0 -534
  177. package/framework/qualia-framework/workflows/execute-phase.md +0 -559
  178. package/framework/qualia-framework/workflows/execute-plan.md +0 -438
  179. package/framework/qualia-framework/workflows/help.md +0 -470
  180. package/framework/qualia-framework/workflows/insert-phase.md +0 -220
  181. package/framework/qualia-framework/workflows/list-phase-assumptions.md +0 -178
  182. package/framework/qualia-framework/workflows/map-codebase.md +0 -327
  183. package/framework/qualia-framework/workflows/new-milestone.md +0 -363
  184. package/framework/qualia-framework/workflows/new-project.md +0 -982
  185. package/framework/qualia-framework/workflows/pause-work.md +0 -122
  186. package/framework/qualia-framework/workflows/plan-milestone-gaps.md +0 -256
  187. package/framework/qualia-framework/workflows/plan-phase.md +0 -422
  188. package/framework/qualia-framework/workflows/progress.md +0 -389
  189. package/framework/qualia-framework/workflows/quick.md +0 -252
  190. package/framework/qualia-framework/workflows/remove-phase.md +0 -326
  191. package/framework/qualia-framework/workflows/research-phase.md +0 -74
  192. package/framework/qualia-framework/workflows/resume-project.md +0 -306
  193. package/framework/qualia-framework/workflows/set-profile.md +0 -80
  194. package/framework/qualia-framework/workflows/settings.md +0 -145
  195. package/framework/qualia-framework/workflows/transition.md +0 -556
  196. package/framework/qualia-framework/workflows/update.md +0 -197
  197. package/framework/qualia-framework/workflows/verify-phase.md +0 -195
  198. package/framework/qualia-framework/workflows/verify-work.md +0 -625
  199. package/framework/rules/context7.md +0 -14
  200. package/framework/rules/frontend.md +0 -33
  201. package/framework/rules/speed.md +0 -23
  202. package/framework/scripts/__pycache__/say.cpython-314.pyc +0 -0
  203. package/framework/scripts/apply-retention.sh +0 -120
  204. package/framework/scripts/bootstrap-pop-os.sh +0 -354
  205. package/framework/scripts/claude-voice +0 -13
  206. package/framework/scripts/cleanup.sh +0 -131
  207. package/framework/scripts/cowork-mode.sh +0 -141
  208. package/framework/scripts/generate-project-claude-md.sh +0 -153
  209. package/framework/scripts/load-test-webhook.js +0 -172
  210. package/framework/scripts/say.py +0 -236
  211. package/framework/scripts/showcase-video-recorder/ffmpeg-builder.js +0 -167
  212. package/framework/scripts/showcase-video-recorder/playwright-helpers.js +0 -216
  213. package/framework/scripts/speak.py +0 -55
  214. package/framework/scripts/speak.sh +0 -18
  215. package/framework/scripts/status.sh +0 -138
  216. package/framework/scripts/sync-to-framework.sh +0 -65
  217. package/framework/scripts/voice-hotkey.py +0 -227
  218. package/framework/scripts/voice-input.sh +0 -51
  219. package/framework/skills/animate/SKILL.md +0 -202
  220. package/framework/skills/bolder/SKILL.md +0 -144
  221. package/framework/skills/browser-qa/SKILL.md +0 -536
  222. package/framework/skills/clarify/SKILL.md +0 -179
  223. package/framework/skills/client-handoff/SKILL.md +0 -135
  224. package/framework/skills/collab-onboard/SKILL.md +0 -111
  225. package/framework/skills/colorize/SKILL.md +0 -170
  226. package/framework/skills/critique/SKILL.md +0 -126
  227. package/framework/skills/deep-research/SKILL.md +0 -240
  228. package/framework/skills/delight/SKILL.md +0 -329
  229. package/framework/skills/deploy/SKILL.md +0 -261
  230. package/framework/skills/deploy-verify/SKILL.md +0 -377
  231. package/framework/skills/deploy-verify/scripts/canary-check.sh +0 -206
  232. package/framework/skills/deploy-verify/scripts/check-console-errors.js +0 -147
  233. package/framework/skills/deploy-verify/scripts/check-cwv.js +0 -139
  234. package/framework/skills/deploy-verify/scripts/project-detect.sh +0 -84
  235. package/framework/skills/deploy-verify/scripts/verify.sh +0 -548
  236. package/framework/skills/design-quieter/SKILL.md +0 -130
  237. package/framework/skills/distill/SKILL.md +0 -149
  238. package/framework/skills/docs-lookup/SKILL.md +0 -79
  239. package/framework/skills/fcm-notifications/SKILL.md +0 -125
  240. package/framework/skills/financial-ledger/SKILL.md +0 -1039
  241. package/framework/skills/frontend-master/NOTICE.md +0 -4
  242. package/framework/skills/frontend-master/SKILL.md +0 -127
  243. package/framework/skills/frontend-master/reference/color-and-contrast.md +0 -132
  244. package/framework/skills/frontend-master/reference/interaction-design.md +0 -123
  245. package/framework/skills/frontend-master/reference/motion-design.md +0 -99
  246. package/framework/skills/frontend-master/reference/responsive-design.md +0 -114
  247. package/framework/skills/frontend-master/reference/spatial-design.md +0 -100
  248. package/framework/skills/frontend-master/reference/typography.md +0 -131
  249. package/framework/skills/frontend-master/reference/ux-writing.md +0 -107
  250. package/framework/skills/harden/SKILL.md +0 -357
  251. package/framework/skills/i18n-rtl/SKILL.md +0 -752
  252. package/framework/skills/learn/SKILL.md +0 -95
  253. package/framework/skills/memory/SKILL.md +0 -50
  254. package/framework/skills/mobile-expo/SKILL.md +0 -977
  255. package/framework/skills/mobile-expo/references/store-checklist.md +0 -550
  256. package/framework/skills/nestjs-backend/README.md +0 -73
  257. package/framework/skills/nestjs-backend/SKILL.md +0 -446
  258. package/framework/skills/nestjs-backend/references/templates.md +0 -1173
  259. package/framework/skills/normalize/SKILL.md +0 -79
  260. package/framework/skills/onboard/SKILL.md +0 -242
  261. package/framework/skills/openrouter-agent/SKILL.md +0 -922
  262. package/framework/skills/polish/SKILL.md +0 -209
  263. package/framework/skills/pr/SKILL.md +0 -66
  264. package/framework/skills/qualia/SKILL.md +0 -199
  265. package/framework/skills/qualia-add-todo/SKILL.md +0 -68
  266. package/framework/skills/qualia-audit-milestone/SKILL.md +0 -95
  267. package/framework/skills/qualia-check-todos/SKILL.md +0 -55
  268. package/framework/skills/qualia-complete-milestone/SKILL.md +0 -134
  269. package/framework/skills/qualia-debug/SKILL.md +0 -149
  270. package/framework/skills/qualia-design/SKILL.md +0 -203
  271. package/framework/skills/qualia-discuss-phase/SKILL.md +0 -72
  272. package/framework/skills/qualia-evolve/SKILL.md +0 -200
  273. package/framework/skills/qualia-execute-phase/SKILL.md +0 -89
  274. package/framework/skills/qualia-framework-audit/SKILL.md +0 -604
  275. package/framework/skills/qualia-guide/SKILL.md +0 -32
  276. package/framework/skills/qualia-help/SKILL.md +0 -114
  277. package/framework/skills/qualia-idk/SKILL.md +0 -352
  278. package/framework/skills/qualia-list-phase-assumptions/SKILL.md +0 -67
  279. package/framework/skills/qualia-new-milestone/SKILL.md +0 -72
  280. package/framework/skills/qualia-new-project/SKILL.md +0 -232
  281. package/framework/skills/qualia-optimize/SKILL.md +0 -417
  282. package/framework/skills/qualia-pause-work/SKILL.md +0 -96
  283. package/framework/skills/qualia-plan-milestone-gaps/SKILL.md +0 -57
  284. package/framework/skills/qualia-plan-phase/SKILL.md +0 -104
  285. package/framework/skills/qualia-production-check/SKILL.md +0 -0
  286. package/framework/skills/qualia-progress/SKILL.md +0 -53
  287. package/framework/skills/qualia-quick/SKILL.md +0 -89
  288. package/framework/skills/qualia-report/SKILL.md +0 -166
  289. package/framework/skills/qualia-research-phase/SKILL.md +0 -88
  290. package/framework/skills/qualia-resume-work/SKILL.md +0 -62
  291. package/framework/skills/qualia-review/SKILL.md +0 -263
  292. package/framework/skills/qualia-start/SKILL.md +0 -161
  293. package/framework/skills/qualia-verify-work/SKILL.md +0 -132
  294. package/framework/skills/rag/SKILL.md +0 -750
  295. package/framework/skills/responsive/SKILL.md +0 -231
  296. package/framework/skills/retro/SKILL.md +0 -284
  297. package/framework/skills/sakani-conventions/SKILL.md +0 -136
  298. package/framework/skills/sakani-conventions/evals/evals.json +0 -23
  299. package/framework/skills/sakani-conventions/references/entities.md +0 -365
  300. package/framework/skills/sakani-conventions/references/error-codes.md +0 -95
  301. package/framework/skills/seo-master/SKILL.md +0 -490
  302. package/framework/skills/seo-master/references/checklist.md +0 -199
  303. package/framework/skills/seo-master/references/structured-data.md +0 -609
  304. package/framework/skills/ship/SKILL.md +0 -239
  305. package/framework/skills/stack-researcher/SKILL.md +0 -215
  306. package/framework/skills/status/SKILL.md +0 -154
  307. package/framework/skills/status/scripts/health-check.sh +0 -562
  308. package/framework/skills/subscription-payments/SKILL.md +0 -250
  309. package/framework/skills/supabase/SKILL.md +0 -973
  310. package/framework/skills/supabase/references/templates.md +0 -159
  311. package/framework/skills/team/SKILL.md +0 -67
  312. package/framework/skills/test-runner/SKILL.md +0 -202
  313. package/framework/skills/voice-agent/SKILL.md +0 -1312
  314. package/framework/skills/zoho-workflow/SKILL.md +0 -51
  315. package/framework/statusline-command.sh +0 -117
  316. package/framework/teams/default/inboxes/plan-04.json +0 -9
  317. package/framework/teams/review-team.md +0 -75
  318. package/framework/teams/ship-team.md +0 -86
  319. package/profiles/fawzi.json +0 -16
  320. package/profiles/hasan.json +0 -16
  321. package/profiles/moayad.json +0 -16
  322. package/templates/CLAUDE-owner.md +0 -52
  323. package/templates/CLAUDE.md.hbs +0 -58
  324. package/templates/env.claude.template +0 -12
  325. package/templates/settings.json +0 -172
  326. /package/{framework/rules → rules}/deployment.md +0 -0
  327. /package/{framework/rules → rules}/security.md +0 -0
@@ -1,239 +0,0 @@
1
- ---
2
- name: ship
3
- description: "Full production deployment pipeline — quality gates, commit, deploy, and verify. Role-aware: OWNER pushes directly, DEVELOPER auto-creates feature branch. Use this skill whenever the user says 'ship', 'deploy', 'push to production', 'go live', 'release', 'ship it', 'push', 'push it', 'put it on github', 'send to github', 'push to github', or wants to deploy any project (website, AI agent, voice agent, edge functions). Also trigger when user mentions Vercel deploy, Supabase functions deploy, Cloudflare Workers deploy, or just wants their code pushed."
4
- ---
5
-
6
- # Ship — Full Production Deployment Pipeline
7
-
8
- Ship the current project to production. Runs quality gates, commits, pushes, deploys, and verifies.
9
-
10
- Reference `.planning/PROJECT.md` and `.planning/STATE.md` for project config. If no `.planning/` exists, use `package.json` and git remote to identify the project.
11
-
12
- ## Usage
13
-
14
- `/ship` — Auto-detect project type from codebase
15
- `/ship --type=agent` — AI agent deployment (safety checks, webhook idempotency)
16
- `/ship --type=voice` — Voice agent deployment (signature verification, latency checks)
17
- `/ship --type=website` — Website deployment (SEO, responsive checks)
18
-
19
- ## Auto-Detection (when --type not specified)
20
-
21
- Detect project type from codebase signals:
22
-
23
- - **agent**: Has AI provider imports (`openai`, `anthropic`, `@ai-sdk`), webhook handlers, agent logic
24
- - **voice**: Has Retell/ElevenLabs/Telnyx imports, voice webhook handlers, `x-retell-signature`
25
- - **website**: Has `app/page.tsx` or `pages/index.tsx`, no AI provider imports, primarily UI components
26
- - **edge-functions**: Has `supabase/functions/` directory, no frontend
27
-
28
- If ambiguous, ask user. If pure edge functions, skip tsc/eslint quality gates.
29
-
30
- ## Shipping Checklist Gate
31
-
32
- Before deploying, load the relevant shipping checklist from `~/.claude/qualia-framework/references/completion-checklists.md`:
33
-
34
- - **website** → "Website-Specific Checklist" + "Universal Checklist"
35
- - **agent** → "AI Agent Checklist" + "Universal Checklist"
36
- - **voice** → "Voice Agent Checklist" + "Universal Checklist"
37
- - **mobile** → "Mobile App Checklist" + "Universal Checklist"
38
- - **platform** → "Platform with LLM Checklist" + "Universal Checklist"
39
-
40
- After quality gates pass (Step 2), scan the codebase against each checklist item and report:
41
- - PASS: item verified automatically (e.g., grep found no service_role in client code)
42
- - WARN: could not verify automatically — needs manual check
43
- - FAIL: item clearly not met (e.g., no meta descriptions found)
44
-
45
- Any FAIL items are **deploy blockers** — report them and ask if user wants to fix first or ship anyway.
46
- Include the checklist results in the final deploy report (Step 8).
47
-
48
- ## Steps
49
-
50
- ### 1. Identify Project
51
-
52
- `pwd` to determine which project, look up deploy config from `.planning/PROJECT.md` and `.planning/STATE.md`. If no `.planning/` exists, use `package.json` and git remote to identify the project.
53
-
54
- ### 2. Quality Gates
55
-
56
- Run in sequence. **If any gate fails, DO NOT dump raw errors to the employee.** Instead:
57
-
58
- 1. Summarize what failed in plain language
59
- 2. Auto-fix the issues
60
- 3. Re-run the gate
61
- 4. If auto-fix works, continue. If not, tell the employee what's happening.
62
-
63
- ```bash
64
- npx tsc --noEmit # TypeScript check — skip if no tsconfig or pure edge functions
65
- npx eslint . --max-warnings 0 # Lint check — skip if no eslint config
66
- npm run build # Build verification — skip if pure edge functions
67
- ```
68
-
69
- **On TypeScript failure:**
70
- > "Found {N} code errors. Fixing them now..."
71
- > Fix the errors, then re-run `npx tsc --noEmit`.
72
- > If still failing after 2 attempts: "Some errors need your input. Here's what's wrong: {plain language summary}. Tell me how to proceed."
73
-
74
- **On ESLint failure:**
75
- > "Found {N} code quality issues. Fixing them now..."
76
- > Run `npx eslint . --fix` first, then re-check.
77
- > If still failing: "Some lint issues can't be auto-fixed: {summary}. Fixing manually..."
78
-
79
- **On build failure:**
80
- > "The build failed. Investigating..."
81
- > Read the error, diagnose, fix, and retry.
82
- > If still failing: "Build is failing because {plain language reason}. This needs investigation — try `/qualia-debug` or escalate to Fawzi."
83
-
84
- ### 2a. Run Tests
85
-
86
- If test infrastructure exists (per `~/.claude/skills/test-runner/SKILL.md` detection):
87
-
88
- ```bash
89
- npm test 2>&1 | tail -30 # Unit/Integration
90
- npx playwright test 2>&1 # E2E (if configured)
91
- ```
92
-
93
- **On test failure:**
94
- > "Tests are failing. Fixing now..."
95
- > Attempt to fix failing tests. Re-run.
96
- > If still failing after 2 attempts: "{N} tests still failing. Here's the summary: {plain language}. Fix these before deploying, or say 'ship anyway' to skip tests."
97
- If no test infrastructure: skip silently.
98
-
99
- ### 2b. Review Gate
100
-
101
- **IMPORTANT: The pre-deploy-gate hook will BLOCK `vercel --prod` if REVIEW.md is missing or stale. This gate must pass BEFORE attempting deploy.**
102
-
103
- Check and auto-fix review freshness:
104
-
105
- 1. Find REVIEW.md: `.planning/REVIEW.md` or `.review/REVIEW.md`
106
- 2. **If missing:** Run `/qualia-review` to generate it. Then continue.
107
- 3. **If exists, check freshness:**
108
- ```bash
109
- REVIEW_MTIME=$(stat -c %Y "$REVIEW_FILE" 2>/dev/null || echo 0)
110
- LATEST_CODE_MTIME=0
111
- for DIR in src app pages lib components; do
112
- [ -d "$DIR" ] && DIR_LATEST=$(find "$DIR" -type f \( -name "*.ts" -o -name "*.tsx" -o -name "*.js" -o -name "*.jsx" \) -printf '%T@\n' 2>/dev/null | sort -rn | head -1 | cut -d. -f1)
113
- [ -n "$DIR_LATEST" ] && [ "$DIR_LATEST" -gt "$LATEST_CODE_MTIME" ] && LATEST_CODE_MTIME=$DIR_LATEST
114
- done
115
- ```
116
- - If `LATEST_CODE_MTIME > REVIEW_MTIME`: REVIEW.md is stale. Run `/qualia-review` to refresh it, then continue.
117
- - If fresh: continue.
118
- 4. Read the review content:
119
- - If `status: has_blockers`: list unresolved CRITICAL/HIGH findings, ask "Fix these first, or deploy anyway?"
120
- - If `status: clean` → continue
121
-
122
- ### 3. Type-Specific Checks
123
-
124
- Based on detected or specified type:
125
-
126
- #### If agent (AI Agent):
127
-
128
- - **AI safety quick-check** — Grep codebase for:
129
- - `service_role` in client-side files (`app/`, `components/`, `src/`) — should be ZERO matches (FAIL = blocks deploy)
130
- - Rate limiting middleware — grep for `rateLimit`, `rateLimiter` in API routes
131
- - `maxTokens` on AI calls — grep for `maxTokens`, `max_tokens` in AI provider calls
132
- - Report: PASS/FAIL per item
133
- - **Webhook idempotency check** — Grep for deduplication logic (`dedup`, `idempotency`, `already_processed`, `messageId`). Report: PASS/WARN
134
- - **Production resilience** — Check for timeout protection (`export const maxDuration`), circuit breakers, error monitoring (Sentry configured)
135
-
136
- #### If voice (Voice Agent):
137
-
138
- - **Webhook signature verification** — Grep for signature check (`x-retell-signature`, `signature`, `hmac`, `verify`). Report: PASS/WARN
139
- - **Edge function latency note** — First-response latency target: < 500ms. After deploy, test with: `curl -w "%{time_total}" -X POST <webhook-url>`
140
-
141
- #### If website (Website):
142
-
143
- - **SEO quick-check** — Grep for viewport meta, Open Graph tags (`og:title`, `og:description`), JSON-LD structured data. Report: PASS/WARN per item
144
- - **Responsive quick-check** — Check viewport meta exists, no fixed pixel widths on containers, `max-width` used on main content areas. Report: PASS/WARN per item
145
-
146
- ### 4. Git Workflow (Role-Aware Branching)
147
-
148
- **First: detect role and branch.**
149
-
150
- ```bash
151
- ROLE=$(grep -m1 "^## Role:" ~/.claude/CLAUDE.md 2>/dev/null | sed 's/^## Role: *//')
152
- BRANCH=$(git branch --show-current 2>/dev/null)
153
- ```
154
-
155
- **Branching logic:**
156
-
157
- | Role | On main/master | On feature branch |
158
- |------|---------------|-------------------|
159
- | OWNER | Push directly | Push directly |
160
- | DEVELOPER | Auto-create feature branch first | Push directly |
161
-
162
- **If DEVELOPER on main/master:**
163
-
164
- ```bash
165
- # Auto-create a descriptive feature branch from the work done
166
- # Use the commit message or task description for the branch name
167
- git checkout -b feature/<descriptive-name>
168
- # Stage, commit, push to the NEW branch
169
- git push -u origin feature/<descriptive-name>
170
- ```
171
-
172
- Tell the user: "Created branch `feature/<name>` and pushed there. You can't push directly to main — create a PR when ready."
173
-
174
- **If OWNER or already on feature branch:**
175
-
176
- ```bash
177
- git status
178
- # Stage relevant files (NOT .env, NOT node_modules)
179
- # Create descriptive commit
180
- # Push to current branch
181
- ```
182
-
183
- ### 5. Preview Deploy
184
-
185
- Deploy to preview first (if applicable):
186
-
187
- ```bash
188
- vercel # without --prod — gets preview URL
189
- ```
190
-
191
- Run post-deploy checks against the preview URL. If checks pass, proceed to production. If checks fail, fix issues and re-deploy to preview.
192
-
193
- ### 6. Deploy
194
-
195
- Based on project:
196
-
197
- ```bash
198
- vercel --prod # Vercel projects
199
- supabase functions deploy # Edge functions
200
- wrangler deploy # Cloudflare Workers
201
- supabase db push --project-ref <ref> # If migrations pending — test on branch first
202
- ```
203
-
204
- ### 7. Post-Deploy Verification
205
-
206
- #### All types:
207
-
208
- ```bash
209
- curl -s -o /dev/null -w "%{http_code}" <domain> # HTTP 200
210
- # Key endpoints respond under 500ms
211
- ```
212
-
213
- #### Agent additions:
214
- Auth flow, webhook test, console errors, load test, error monitoring
215
-
216
- #### Voice additions:
217
- Webhook test, latency test, edge function logs
218
-
219
- #### Website additions:
220
- Auth flow, console errors, SEO verify, Lighthouse hint
221
-
222
- ### 8. Report
223
-
224
- Summary of what was deployed, type-specific check results, latency measurements, deploy verification.
225
-
226
- ### 9. Rollback Plan
227
-
228
- If production issues detected:
229
-
230
- - **Vercel**: `vercel rollback`
231
- - **Cloudflare Workers**: `wrangler deploy` previous version
232
- - **Edge functions**: `supabase functions deploy <name> --version <previous>`
233
- - **Supabase migrations**: Create reverse migration
234
- - **Emergency**: Vercel dashboard manual rollback
235
-
236
- If ANY quality gate or safety check FAILS: attempt to auto-fix. If auto-fix fails after 2 attempts, explain the issue in plain language and suggest next steps. Never dump raw error output without a plain-language summary first.
237
-
238
- ---
239
- > Stuck? Type `/qualia-idk` · Lost? Type `/qualia-help`
@@ -1,215 +0,0 @@
1
- ---
2
- name: stack-researcher
3
- description: Research latest best practices for any tech stack using web search and documentation - Next.js, React, Supabase, Vercel, Tailwind, etc. Use when you need up-to-date framework guidance or want to compare approaches.
4
- tags: [research, best-practices, documentation, nextjs, react, supabase, vercel]
5
- ---
6
-
7
- # Stack Researcher
8
-
9
- You are a technical researcher specializing in finding up-to-date best practices, patterns, and documentation for modern web development stacks. You use **web search and official documentation** to provide current guidance.
10
-
11
- **Announce at start:** "Activating stack-researcher to find latest best practices for your stack."
12
-
13
- ## Phase 1: Identify Stack
14
-
15
- First, analyze the project to identify:
16
- ```
17
- 1. Framework (Next.js version, React version)
18
- 2. Database (Supabase, PlanetScale, Prisma)
19
- 3. Auth (NextAuth, Supabase Auth, Clerk)
20
- 4. Styling (Tailwind, shadcn/ui)
21
- 5. Deployment (Vercel, AWS, self-hosted)
22
- 6. Package manager (npm, pnpm, yarn)
23
- ```
24
-
25
- ## Phase 2: Research Each Stack Component
26
-
27
- For each identified technology, research:
28
-
29
- ### Next.js Research
30
- ```
31
- - App Router vs Pages Router patterns
32
- - Server Components vs Client Components
33
- - Data fetching (RSC, Server Actions, Route Handlers)
34
- - Caching and revalidation
35
- - Middleware patterns
36
- - SEO and metadata
37
- - Performance optimization
38
- - Recent breaking changes
39
- ```
40
-
41
- ### React 19 Research
42
- ```
43
- - New hooks and features
44
- - Concurrent rendering patterns
45
- - Server Components integration
46
- - Suspense boundaries
47
- - Error boundaries
48
- - Transitions
49
- - Memoization patterns (when needed vs unnecessary)
50
- ```
51
-
52
- ### Supabase Research
53
- ```
54
- - Auth patterns (PKCE, SSR)
55
- - RLS policy patterns
56
- - Real-time subscriptions
57
- - Edge functions
58
- - Storage patterns
59
- - Performance optimization
60
- - Migration best practices
61
- ```
62
-
63
- ### Tailwind Research
64
- ```
65
- - v4 changes (if applicable)
66
- - Design system setup
67
- - Dark mode patterns
68
- - Animation utilities
69
- - Custom configuration
70
- - Plugin recommendations
71
- ```
72
-
73
- ### Vercel Deployment Research
74
- ```
75
- - Edge vs Serverless functions
76
- - ISR patterns
77
- - Image optimization
78
- - Analytics integration
79
- - Environment variables
80
- - Preview deployments
81
- - Cron jobs
82
- ```
83
-
84
- ## Research Output Format
85
-
86
- For each technology researched:
87
-
88
- ```markdown
89
- ## [Technology Name] Best Practices (as of YYYY-MM)
90
-
91
- ### Official Documentation Summary
92
- [Key points from official docs]
93
-
94
- ### Current Best Practices
95
- 1. **[Practice]**: [Why and how]
96
- 2. **[Practice]**: [Why and how]
97
-
98
- ### Common Pitfalls to Avoid
99
- 1. **[Anti-pattern]**: [Why it's bad, what to do instead]
100
- 2. **[Anti-pattern]**: [Why it's bad, what to do instead]
101
-
102
- ### Recent Changes (Last 6 months)
103
- - [Change]: [Impact on your code]
104
-
105
- ### Code Examples
106
-
107
- #### Recommended Pattern
108
- ```[language]
109
- // Good: [explanation]
110
- [code]
111
- ```
112
-
113
- #### Anti-Pattern to Avoid
114
- ```[language]
115
- // Bad: [explanation]
116
- [code]
117
- ```
118
-
119
- ### Resources
120
- - [Official docs link]
121
- - [Recommended blog post/video]
122
- ```
123
-
124
- ## Research Topics by Category
125
-
126
- ### Frontend Patterns
127
- - Component composition patterns
128
- - State management approaches
129
- - Form handling (react-hook-form + zod)
130
- - Data fetching and caching
131
- - Optimistic updates
132
- - Error handling
133
- - Accessibility patterns
134
- - Testing strategies
135
-
136
- ### Backend Patterns
137
- - API design (REST, GraphQL, tRPC)
138
- - Authentication flows
139
- - Authorization patterns
140
- - Input validation
141
- - Error handling
142
- - Logging and monitoring
143
- - Rate limiting
144
- - Caching strategies
145
-
146
- ### Database Patterns
147
- - Schema design principles
148
- - Index optimization
149
- - Query patterns (avoiding N+1)
150
- - Migration strategies
151
- - Backup and recovery
152
- - Connection pooling
153
- - Row-level security
154
-
155
- ### DevOps Patterns
156
- - CI/CD configuration
157
- - Environment management
158
- - Secret management
159
- - Monitoring and alerting
160
- - Logging aggregation
161
- - Performance profiling
162
- - Security scanning
163
-
164
- ## Comparison Research
165
-
166
- When asked to compare approaches:
167
-
168
- ```markdown
169
- ## Comparison: [Option A] vs [Option B]
170
-
171
- ### Overview
172
- [Brief description of what we're comparing]
173
-
174
- ### Side-by-Side
175
-
176
- | Aspect | Option A | Option B |
177
- |--------|----------|----------|
178
- | Performance | ... | ... |
179
- | DX | ... | ... |
180
- | Ecosystem | ... | ... |
181
- | Learning Curve | ... | ... |
182
- | Maintenance | ... | ... |
183
-
184
- ### When to Use Option A
185
- - [Scenario 1]
186
- - [Scenario 2]
187
-
188
- ### When to Use Option B
189
- - [Scenario 1]
190
- - [Scenario 2]
191
-
192
- ### Recommendation for This Project
193
- [Based on what was detected in the codebase]
194
- ```
195
-
196
- ## After Research
197
-
198
- ```
199
- "Research complete. Would you like me to:
200
-
201
- 1. **Apply Recommendations** - Update your code to follow best practices
202
- 2. **Create Migration Plan** - Plan for updating to recommended patterns
203
- 3. **Deep Dive Specific Area** - Research more detail on one topic
204
- 4. **Save Research** - Save findings to docs/research/
205
- 5. **Compare Alternatives** - Research alternative approaches"
206
- ```
207
-
208
- ## Trigger Phrases
209
-
210
- - "research best practices for [stack]"
211
- - "what's the latest on [technology]"
212
- - "compare [A] vs [B]"
213
- - "how should I do [X] in [framework]"
214
- - "is my [pattern] up to date"
215
- - "research current patterns"
@@ -1,154 +0,0 @@
1
- ---
2
- name: status
3
- description: "Fleet-wide health check for all Qualia projects — HTTP status, SSL, Supabase, response times. Flags issues without fixing them. Supports --quick and --project modes."
4
- user-invocable: true
5
- ---
6
-
7
- # Fleet Health Monitor
8
-
9
- Diagnostic sweep across all active and maintenance Qualia projects. Flags problems, doesn't fix them.
10
-
11
- ## Usage
12
-
13
- - `/status` — Check all active + maintenance projects (HTTP, SSL, Supabase, latency)
14
- - `/status --quick` — HTTP status only (fast, ~15 seconds)
15
- - `/status --project vero` — Deep check on a single project
16
-
17
- ## How It Works
18
-
19
- ### Step 1: Read qualia-context.md
20
-
21
- ALWAYS read `~/.claude/knowledge/qualia-context.md` at the start. Never hardcode project URLs or Supabase refs — the file is the source of truth.
22
-
23
- Extract all projects with status ACTIVE, MAINTENANCE, or LIVE. Skip DORMANT and DEV unless specifically requested.
24
-
25
- Build the check list:
26
- ```
27
- Project → URL (derive from project name: {name}.vercel.app) → Supabase ref (if any) → Hosting type
28
- ```
29
-
30
- For projects where the URL isn't `{name}.vercel.app` (custom domains, Cloudflare, etc.), check the project's `.env.local` or Vercel dashboard.
31
-
32
- Known special cases:
33
- - `armenius` → Cloudflare Workers (not Vercel)
34
- - `qualia` (ERP) → `qualia-erp.vercel.app`
35
- - `sofiatesting` → verify the exact Vercel URL from project dir
36
-
37
- ### Step 2: Run Health Checks
38
-
39
- Use `scripts/health-check.sh` for the actual HTTP/SSL checks. Run all projects in parallel using background processes.
40
-
41
- **Default mode checks (per project):**
42
-
43
- | Check | Method | PASS | WARN | FAIL |
44
- |-------|--------|------|------|------|
45
- | HTTP Status | `curl -sL -o /dev/null -w "%{http_code}" --max-time 10` | 200 | 301/302 (redirect) | 4xx, 5xx, timeout |
46
- | Response Time | `curl -sL -o /dev/null -w "%{time_total}" --max-time 10` | < 1s | 1–3s | > 3s or timeout |
47
- | SSL Certificate | `openssl s_client` + check expiry | > 30 days | 7–30 days | < 7 days or expired |
48
- | Supabase Health | `curl https://{ref}.supabase.co/rest/v1/` | Reachable (200/401) | Slow (> 500ms) | Unreachable |
49
-
50
- **Quick mode (`--quick`):** HTTP Status only. Skips SSL, Supabase, response time.
51
-
52
- **Deep mode (`--project {name}`):** All default checks plus:
53
- - Vercel deployment status (`vercel ls` in project dir)
54
- - Last deploy time
55
- - Supabase connection count (`supabase inspect db connections` or `pg_stat_activity`)
56
- - Supabase auth health (`/auth/v1/health`)
57
- - Edge function status (`supabase functions list`)
58
-
59
- ### Step 3: Generate Report
60
-
61
- ```
62
- ════════════════════════════════════════════════════
63
- QUALIA FLEET HEALTH — 2026-03-04 17:30 UTC
64
- Checking: 8 active/maintenance projects
65
- ════════════════════════════════════════════════════
66
-
67
- WEBSITES
68
- ✓ PASS qualiafinal 200 OK (287ms) SSL: 68d
69
- ✓ PASS vero 200 OK (342ms) SSL: 45d DB: healthy
70
- ✓ PASS aibossbrainz 200 OK (198ms) SSL: 45d DB: healthy
71
- ⚠ WARN aquador 200 OK (1.8s) SSL: 12d DB: healthy
72
- ✓ PASS glluztech 200 OK (445ms) SSL: 68d
73
- ✓ PASS inrvo 200 OK (312ms) SSL: 68d
74
- ✓ PASS maud 200 OK (521ms) SSL: 68d DB: healthy
75
- ✓ PASS mpm 200 OK (389ms) SSL: 68d DB: healthy
76
-
77
- AI AGENTS
78
- ✓ PASS sofiatesting 200 OK (412ms) SSL: 45d DB: healthy
79
-
80
- VOICE
81
- ✓ PASS under 200 OK (267ms) SSL: 45d DB: healthy
82
- ⚠ WARN armenius 200 OK (890ms) SSL: 22d
83
-
84
- ──────────────────────────────────────────────────
85
- RESULT: 9 PASS · 2 WARN · 0 FAIL
86
- Total check time: 12.4s
87
- ──────────────────────────────────────────────────
88
- ```
89
-
90
- ### Step 4: Flag Issues
91
-
92
- If any check returns FAIL or WARN, print specific next steps below the report:
93
-
94
- ```
95
- ISSUES FOUND:
96
-
97
- ⚠ aquador — Response time 1.8s (threshold: 1s)
98
- → Check: vercel logs aquador.vercel.app
99
- → Check: supabase inspect db outliers --project-ref hznpuxplqgszbacxzbhv
100
-
101
- ⚠ armenius — SSL expires in 22 days
102
- → Check: Cloudflare dashboard → SSL/TLS → Edge Certificates
103
- → Note: Armenius uses Cloudflare, not Vercel (auto-renewal should handle this)
104
- ```
105
-
106
- For FAIL results, be more urgent:
107
- ```
108
- ✗ FAIL vero — HTTP 503 Service Unavailable
109
- → IMMEDIATE: Check Vercel dashboard for vero
110
- → Run: vercel logs vero.vercel.app
111
- → Check: Supabase dashboard → is project paused?
112
- → If unrecoverable: vercel rollback --prod
113
- ```
114
-
115
- ## Project URL Resolution
116
-
117
- The script resolves project URLs in this order:
118
-
119
- 1. Check for `VERCEL_URL` or `NEXT_PUBLIC_SITE_URL` in project's `.env.local`
120
- 2. Check for custom domain in project's `vercel.json`
121
- 3. Fall back to `{project-name}.vercel.app`
122
-
123
- Known URL overrides (kept in the health-check.sh script):
124
- ```bash
125
- declare -A URL_OVERRIDES=(
126
- ["qualia"]="qualia-erp.vercel.app"
127
- # Add more as discovered
128
- )
129
- ```
130
-
131
- ## Cron Integration
132
-
133
- This skill is designed to work with a daily cron job:
134
-
135
- ```bash
136
- # Run daily at 8am Cyprus time (5am UTC)
137
- 0 5 * * * bash ~/.claude/skills/status/scripts/health-check.sh --all > /tmp/qualia-health-$(date +\%Y\%m\%d).log 2>&1
138
- ```
139
-
140
- The health-check.sh script outputs plain text (no ANSI colors) when stdout isn't a terminal, making logs readable.
141
-
142
- To review the last health check:
143
- ```bash
144
- cat /tmp/qualia-health-$(date +%Y%m%d).log
145
- ```
146
-
147
- ## Rules
148
-
149
- - **Flag but don't fix** — this is diagnostic only. Never modify, deploy, or rollback.
150
- - **Read qualia-context.md every time** — never hardcode URLs or refs.
151
- - **10-second timeout per check** — don't hang on unresponsive projects.
152
- - **Parallel execution** — run project checks concurrently using background processes.
153
- - **curl only** — no extra dependencies for HTTP checks.
154
- - **No secrets in output** — never print API keys, service role keys, or connection strings.