qualia-framework 2.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 (261) hide show
  1. package/README.md +50 -0
  2. package/bin/cli.js +519 -0
  3. package/framework/agents/architecture-strategist.md +53 -0
  4. package/framework/agents/backend-agent.md +150 -0
  5. package/framework/agents/code-simplicity-reviewer.md +86 -0
  6. package/framework/agents/frontend-agent.md +111 -0
  7. package/framework/agents/kieran-typescript-reviewer.md +96 -0
  8. package/framework/agents/performance-oracle.md +111 -0
  9. package/framework/agents/qualia-codebase-mapper.md +760 -0
  10. package/framework/agents/qualia-debugger.md +1203 -0
  11. package/framework/agents/qualia-executor.md +881 -0
  12. package/framework/agents/qualia-integration-checker.md +423 -0
  13. package/framework/agents/qualia-phase-researcher.md +453 -0
  14. package/framework/agents/qualia-plan-checker.md +699 -0
  15. package/framework/agents/qualia-planner.md +1241 -0
  16. package/framework/agents/qualia-project-researcher.md +602 -0
  17. package/framework/agents/qualia-research-synthesizer.md +236 -0
  18. package/framework/agents/qualia-roadmapper.md +605 -0
  19. package/framework/agents/qualia-verifier.md +685 -0
  20. package/framework/agents/team-orchestrator.md +228 -0
  21. package/framework/agents/teams/full-stack-team.md +48 -0
  22. package/framework/agents/teams/optimize-team.md +53 -0
  23. package/framework/agents/teams/review-team.md +62 -0
  24. package/framework/agents/teams/ship-team.md +86 -0
  25. package/framework/agents/test-agent.md +182 -0
  26. package/framework/askpass.sh +2 -0
  27. package/framework/commands/design.md +53 -0
  28. package/framework/commands/quick-db.md +22 -0
  29. package/framework/config/retention.json +35 -0
  30. package/framework/core/PRINCIPLES.md +77 -0
  31. package/framework/hooks/auto-format.sh +45 -0
  32. package/framework/hooks/block-env-edit.sh +42 -0
  33. package/framework/hooks/branch-guard.sh +46 -0
  34. package/framework/hooks/confirm-delete.sh +56 -0
  35. package/framework/hooks/migration-validate.sh +68 -0
  36. package/framework/hooks/notification-speak.sh +15 -0
  37. package/framework/hooks/pre-commit.sh +80 -0
  38. package/framework/hooks/pre-compact.sh +55 -0
  39. package/framework/hooks/pre-deploy-gate.sh +151 -0
  40. package/framework/hooks/qualia-colors.sh +32 -0
  41. package/framework/hooks/retention-cleanup.sh +43 -0
  42. package/framework/hooks/save-session-state.sh +153 -0
  43. package/framework/hooks/session-context-loader.sh +28 -0
  44. package/framework/hooks/session-learn.sh +30 -0
  45. package/framework/knowledge/claudecode-bible.md +1384 -0
  46. package/framework/knowledge/client-prefs.md +22 -0
  47. package/framework/knowledge/common-fixes.md +25 -0
  48. package/framework/knowledge/deployment-map.md +35 -0
  49. package/framework/knowledge/email-signature.html +1 -0
  50. package/framework/knowledge/employees.md +8 -0
  51. package/framework/knowledge/learned-patterns.md +51 -0
  52. package/framework/knowledge/optimization-research-2026.md +137 -0
  53. package/framework/knowledge/qualia-context.md +67 -0
  54. package/framework/knowledge/supabase-patterns.md +50 -0
  55. package/framework/knowledge/voice-agent-patterns.md +46 -0
  56. package/framework/qualia-engine/VERSION +1 -0
  57. package/framework/qualia-engine/bin/qualia-tools.js +2160 -0
  58. package/framework/qualia-engine/bin/qualia-tools.test.js +1054 -0
  59. package/framework/qualia-engine/references/checkpoints.md +775 -0
  60. package/framework/qualia-engine/references/continuation-format.md +249 -0
  61. package/framework/qualia-engine/references/decimal-phase-calculation.md +65 -0
  62. package/framework/qualia-engine/references/design-quality.md +56 -0
  63. package/framework/qualia-engine/references/git-integration.md +254 -0
  64. package/framework/qualia-engine/references/git-planning-commit.md +50 -0
  65. package/framework/qualia-engine/references/model-profile-resolution.md +32 -0
  66. package/framework/qualia-engine/references/model-profiles.md +73 -0
  67. package/framework/qualia-engine/references/phase-argument-parsing.md +61 -0
  68. package/framework/qualia-engine/references/planning-config.md +195 -0
  69. package/framework/qualia-engine/references/questioning.md +141 -0
  70. package/framework/qualia-engine/references/tdd.md +263 -0
  71. package/framework/qualia-engine/references/ui-brand.md +160 -0
  72. package/framework/qualia-engine/references/verification-patterns.md +612 -0
  73. package/framework/qualia-engine/templates/DEBUG.md +159 -0
  74. package/framework/qualia-engine/templates/DESIGN.md +81 -0
  75. package/framework/qualia-engine/templates/UAT.md +247 -0
  76. package/framework/qualia-engine/templates/codebase/architecture.md +255 -0
  77. package/framework/qualia-engine/templates/codebase/concerns.md +310 -0
  78. package/framework/qualia-engine/templates/codebase/conventions.md +307 -0
  79. package/framework/qualia-engine/templates/codebase/integrations.md +280 -0
  80. package/framework/qualia-engine/templates/codebase/stack.md +186 -0
  81. package/framework/qualia-engine/templates/codebase/structure.md +285 -0
  82. package/framework/qualia-engine/templates/codebase/testing.md +480 -0
  83. package/framework/qualia-engine/templates/config.json +35 -0
  84. package/framework/qualia-engine/templates/context.md +283 -0
  85. package/framework/qualia-engine/templates/continue-here.md +78 -0
  86. package/framework/qualia-engine/templates/debug-subagent-prompt.md +91 -0
  87. package/framework/qualia-engine/templates/discovery.md +146 -0
  88. package/framework/qualia-engine/templates/milestone-archive.md +123 -0
  89. package/framework/qualia-engine/templates/milestone.md +115 -0
  90. package/framework/qualia-engine/templates/phase-prompt.md +567 -0
  91. package/framework/qualia-engine/templates/planner-subagent-prompt.md +117 -0
  92. package/framework/qualia-engine/templates/project.md +184 -0
  93. package/framework/qualia-engine/templates/projects/ai-agent.md +156 -0
  94. package/framework/qualia-engine/templates/projects/mobile-app.md +181 -0
  95. package/framework/qualia-engine/templates/projects/voice-agent.md +134 -0
  96. package/framework/qualia-engine/templates/projects/website.md +137 -0
  97. package/framework/qualia-engine/templates/requirements.md +231 -0
  98. package/framework/qualia-engine/templates/research-project/ARCHITECTURE.md +204 -0
  99. package/framework/qualia-engine/templates/research-project/FEATURES.md +147 -0
  100. package/framework/qualia-engine/templates/research-project/PITFALLS.md +200 -0
  101. package/framework/qualia-engine/templates/research-project/STACK.md +120 -0
  102. package/framework/qualia-engine/templates/research-project/SUMMARY.md +170 -0
  103. package/framework/qualia-engine/templates/research.md +552 -0
  104. package/framework/qualia-engine/templates/roadmap.md +202 -0
  105. package/framework/qualia-engine/templates/state.md +176 -0
  106. package/framework/qualia-engine/templates/summary-complex.md +59 -0
  107. package/framework/qualia-engine/templates/summary-minimal.md +41 -0
  108. package/framework/qualia-engine/templates/summary-standard.md +48 -0
  109. package/framework/qualia-engine/templates/summary.md +246 -0
  110. package/framework/qualia-engine/templates/user-setup.md +311 -0
  111. package/framework/qualia-engine/templates/verification-report.md +322 -0
  112. package/framework/qualia-engine/workflows/add-phase.md +179 -0
  113. package/framework/qualia-engine/workflows/add-todo.md +157 -0
  114. package/framework/qualia-engine/workflows/audit-milestone.md +241 -0
  115. package/framework/qualia-engine/workflows/check-todos.md +176 -0
  116. package/framework/qualia-engine/workflows/complete-milestone.md +858 -0
  117. package/framework/qualia-engine/workflows/diagnose-issues.md +219 -0
  118. package/framework/qualia-engine/workflows/discovery-phase.md +289 -0
  119. package/framework/qualia-engine/workflows/discuss-phase.md +534 -0
  120. package/framework/qualia-engine/workflows/execute-phase.md +559 -0
  121. package/framework/qualia-engine/workflows/execute-plan.md +438 -0
  122. package/framework/qualia-engine/workflows/help.md +470 -0
  123. package/framework/qualia-engine/workflows/insert-phase.md +220 -0
  124. package/framework/qualia-engine/workflows/list-phase-assumptions.md +178 -0
  125. package/framework/qualia-engine/workflows/map-codebase.md +327 -0
  126. package/framework/qualia-engine/workflows/new-milestone.md +363 -0
  127. package/framework/qualia-engine/workflows/new-project.md +1037 -0
  128. package/framework/qualia-engine/workflows/pause-work.md +122 -0
  129. package/framework/qualia-engine/workflows/plan-milestone-gaps.md +256 -0
  130. package/framework/qualia-engine/workflows/plan-phase.md +422 -0
  131. package/framework/qualia-engine/workflows/progress.md +354 -0
  132. package/framework/qualia-engine/workflows/quick.md +252 -0
  133. package/framework/qualia-engine/workflows/remove-phase.md +326 -0
  134. package/framework/qualia-engine/workflows/research-phase.md +74 -0
  135. package/framework/qualia-engine/workflows/resume-project.md +306 -0
  136. package/framework/qualia-engine/workflows/set-profile.md +80 -0
  137. package/framework/qualia-engine/workflows/settings.md +145 -0
  138. package/framework/qualia-engine/workflows/transition.md +556 -0
  139. package/framework/qualia-engine/workflows/update.md +197 -0
  140. package/framework/qualia-engine/workflows/verify-phase.md +195 -0
  141. package/framework/qualia-engine/workflows/verify-work.md +625 -0
  142. package/framework/rules/context7.md +11 -0
  143. package/framework/rules/deployment.md +29 -0
  144. package/framework/rules/frontend.md +33 -0
  145. package/framework/rules/security.md +12 -0
  146. package/framework/rules/speed.md +20 -0
  147. package/framework/scripts/__pycache__/say.cpython-314.pyc +0 -0
  148. package/framework/scripts/apply-retention.sh +120 -0
  149. package/framework/scripts/bootstrap-pop-os.sh +354 -0
  150. package/framework/scripts/claude-voice +13 -0
  151. package/framework/scripts/cleanup.sh +131 -0
  152. package/framework/scripts/cowork-mode.sh +141 -0
  153. package/framework/scripts/generate-project-claude-md.sh +153 -0
  154. package/framework/scripts/load-test-webhook.js +172 -0
  155. package/framework/scripts/say.py +236 -0
  156. package/framework/scripts/showcase-video-recorder/ffmpeg-builder.js +167 -0
  157. package/framework/scripts/showcase-video-recorder/playwright-helpers.js +216 -0
  158. package/framework/scripts/speak.py +55 -0
  159. package/framework/scripts/speak.sh +18 -0
  160. package/framework/scripts/status.sh +138 -0
  161. package/framework/scripts/sync-to-framework.sh +65 -0
  162. package/framework/scripts/voice-hotkey.py +227 -0
  163. package/framework/scripts/voice-input.sh +51 -0
  164. package/framework/skills/animate/SKILL.md +202 -0
  165. package/framework/skills/bolder/SKILL.md +144 -0
  166. package/framework/skills/browser-qa/SKILL.md +536 -0
  167. package/framework/skills/clarify/SKILL.md +179 -0
  168. package/framework/skills/colorize/SKILL.md +170 -0
  169. package/framework/skills/critique/SKILL.md +126 -0
  170. package/framework/skills/deep-research/SKILL.md +271 -0
  171. package/framework/skills/delight/SKILL.md +329 -0
  172. package/framework/skills/deploy/SKILL.md +261 -0
  173. package/framework/skills/deploy-verify/SKILL.md +377 -0
  174. package/framework/skills/deploy-verify/scripts/canary-check.sh +206 -0
  175. package/framework/skills/deploy-verify/scripts/check-console-errors.js +147 -0
  176. package/framework/skills/deploy-verify/scripts/check-cwv.js +139 -0
  177. package/framework/skills/deploy-verify/scripts/project-detect.sh +84 -0
  178. package/framework/skills/deploy-verify/scripts/verify.sh +548 -0
  179. package/framework/skills/design-quieter/SKILL.md +130 -0
  180. package/framework/skills/distill/SKILL.md +149 -0
  181. package/framework/skills/docs-lookup/SKILL.md +78 -0
  182. package/framework/skills/fcm-notifications/SKILL.md +125 -0
  183. package/framework/skills/financial-ledger/SKILL.md +1039 -0
  184. package/framework/skills/frontend-master/NOTICE.md +4 -0
  185. package/framework/skills/frontend-master/SKILL.md +127 -0
  186. package/framework/skills/frontend-master/reference/color-and-contrast.md +132 -0
  187. package/framework/skills/frontend-master/reference/interaction-design.md +123 -0
  188. package/framework/skills/frontend-master/reference/motion-design.md +99 -0
  189. package/framework/skills/frontend-master/reference/responsive-design.md +114 -0
  190. package/framework/skills/frontend-master/reference/spatial-design.md +100 -0
  191. package/framework/skills/frontend-master/reference/typography.md +131 -0
  192. package/framework/skills/frontend-master/reference/ux-writing.md +107 -0
  193. package/framework/skills/harden/SKILL.md +357 -0
  194. package/framework/skills/i18n-rtl/SKILL.md +752 -0
  195. package/framework/skills/learn/SKILL.md +71 -0
  196. package/framework/skills/memory/SKILL.md +50 -0
  197. package/framework/skills/mobile-expo/SKILL.md +864 -0
  198. package/framework/skills/mobile-expo/references/store-checklist.md +550 -0
  199. package/framework/skills/nestjs-backend/README.md +73 -0
  200. package/framework/skills/nestjs-backend/SKILL.md +446 -0
  201. package/framework/skills/nestjs-backend/references/templates.md +1173 -0
  202. package/framework/skills/normalize/SKILL.md +79 -0
  203. package/framework/skills/onboard/SKILL.md +242 -0
  204. package/framework/skills/polish/SKILL.md +209 -0
  205. package/framework/skills/pr/SKILL.md +66 -0
  206. package/framework/skills/qualia/SKILL.md +153 -0
  207. package/framework/skills/qualia-add-todo/SKILL.md +68 -0
  208. package/framework/skills/qualia-audit-milestone/SKILL.md +92 -0
  209. package/framework/skills/qualia-check-todos/SKILL.md +55 -0
  210. package/framework/skills/qualia-complete-milestone/SKILL.md +108 -0
  211. package/framework/skills/qualia-debug/SKILL.md +149 -0
  212. package/framework/skills/qualia-design/SKILL.md +203 -0
  213. package/framework/skills/qualia-discuss-phase/SKILL.md +72 -0
  214. package/framework/skills/qualia-execute-phase/SKILL.md +86 -0
  215. package/framework/skills/qualia-help/SKILL.md +67 -0
  216. package/framework/skills/qualia-idk/SKILL.md +352 -0
  217. package/framework/skills/qualia-list-phase-assumptions/SKILL.md +67 -0
  218. package/framework/skills/qualia-new-milestone/SKILL.md +72 -0
  219. package/framework/skills/qualia-new-project/SKILL.md +92 -0
  220. package/framework/skills/qualia-optimize/SKILL.md +417 -0
  221. package/framework/skills/qualia-pause-work/SKILL.md +96 -0
  222. package/framework/skills/qualia-plan-milestone-gaps/SKILL.md +57 -0
  223. package/framework/skills/qualia-plan-phase/SKILL.md +101 -0
  224. package/framework/skills/qualia-progress/SKILL.md +53 -0
  225. package/framework/skills/qualia-quick/SKILL.md +89 -0
  226. package/framework/skills/qualia-research-phase/SKILL.md +88 -0
  227. package/framework/skills/qualia-resume-work/SKILL.md +62 -0
  228. package/framework/skills/qualia-review/SKILL.md +263 -0
  229. package/framework/skills/qualia-start/SKILL.md +182 -0
  230. package/framework/skills/qualia-verify-work/SKILL.md +105 -0
  231. package/framework/skills/qualia-workflow/SKILL.md +130 -0
  232. package/framework/skills/rag/SKILL.md +750 -0
  233. package/framework/skills/responsive/SKILL.md +231 -0
  234. package/framework/skills/retro/SKILL.md +284 -0
  235. package/framework/skills/sakani-conventions/SKILL.md +136 -0
  236. package/framework/skills/sakani-conventions/evals/evals.json +23 -0
  237. package/framework/skills/sakani-conventions/references/entities.md +365 -0
  238. package/framework/skills/sakani-conventions/references/error-codes.md +95 -0
  239. package/framework/skills/seo-master/SKILL.md +490 -0
  240. package/framework/skills/seo-master/references/checklist.md +199 -0
  241. package/framework/skills/seo-master/references/structured-data.md +609 -0
  242. package/framework/skills/ship/SKILL.md +202 -0
  243. package/framework/skills/stack-researcher/SKILL.md +215 -0
  244. package/framework/skills/status/SKILL.md +154 -0
  245. package/framework/skills/status/scripts/health-check.sh +562 -0
  246. package/framework/skills/subscription-payments/SKILL.md +250 -0
  247. package/framework/skills/supabase/SKILL.md +973 -0
  248. package/framework/skills/supabase/references/templates.md +159 -0
  249. package/framework/skills/team/SKILL.md +67 -0
  250. package/framework/skills/test-runner/SKILL.md +202 -0
  251. package/framework/skills/voice-agent/SKILL.md +407 -0
  252. package/framework/skills/zoho-workflow/SKILL.md +51 -0
  253. package/framework/statusline-command.sh +117 -0
  254. package/package.json +24 -0
  255. package/profiles/fawzi.json +16 -0
  256. package/profiles/hasan.json +16 -0
  257. package/profiles/moayad.json +16 -0
  258. package/templates/CLAUDE-owner.md +52 -0
  259. package/templates/CLAUDE.md.hbs +58 -0
  260. package/templates/env.claude.template +12 -0
  261. package/templates/settings.json +141 -0
@@ -0,0 +1,182 @@
1
+ ---
2
+ name: qualia-start
3
+ description: "Activate Qualia mode for the entire session. Auto-invoked on SessionStart. Detects project type, gathers cross-session context, runs system health checks, loads relevant skills and patterns, enables all quality gates. Use when starting any work session to get full framework intelligence on every interaction."
4
+ user-invocable: true
5
+ args: []
6
+ ---
7
+
8
+ # Qualia Mode — Teal Activation Dashboard
9
+
10
+ Activate all framework intelligence. Gather session context, run diagnostics, render branded teal dashboard.
11
+
12
+ **Auto-invoked on SessionStart and /clear.** Also callable manually with `/qualia-start`.
13
+
14
+ ## How This Works
15
+
16
+ You will:
17
+ 1. Run bash commands to gather project data + session context
18
+ 2. Format everything into a teal-branded dashboard yourself (not raw bash output)
19
+ 3. Activate behavioral rules for the session
20
+
21
+ **CRITICAL**: Do NOT dump raw bash output. YOU format the dashboard as styled text output.
22
+
23
+ ## Step 1: Gather Project Data
24
+
25
+ Run these bash commands to collect info (combine where possible):
26
+
27
+ ```bash
28
+ pwd
29
+ ```
30
+
31
+ ```bash
32
+ node -e "try{const p=require('./package.json');console.log(p.name||'')}catch(e){console.log('')}" 2>/dev/null
33
+ ```
34
+
35
+ ```bash
36
+ git branch --show-current 2>/dev/null || echo ""
37
+ ```
38
+
39
+ ```bash
40
+ git status --porcelain 2>/dev/null | wc -l
41
+ ```
42
+
43
+ ```bash
44
+ node -v 2>/dev/null || echo "none"
45
+ ```
46
+
47
+ ```bash
48
+ test -f tsconfig.json && echo "yes" || echo "no"
49
+ ```
50
+
51
+ ```bash
52
+ test -d supabase && echo "supabase:yes" || echo "supabase:no"; test -d .planning && echo "planning:yes" || echo "planning:no"; ls next.config.* 2>/dev/null | head -1; ls app.json expo.json 2>/dev/null | head -1; ls app.py main.py 2>/dev/null | head -1
53
+ ```
54
+
55
+ ```bash
56
+ HOOKS_OK=0; HOOKS_TOTAL=0; for h in branch-guard pre-commit confirm-delete migration-validate pre-deploy-gate block-env-edit auto-format session-context-loader retention-cleanup pre-compact save-session-state session-learn notification-speak qualia-colors; do HOOKS_TOTAL=$((HOOKS_TOTAL+1)); test -f "$HOME/.claude/hooks/${h}.sh" && HOOKS_OK=$((HOOKS_OK+1)); done; echo "${HOOKS_OK}/${HOOKS_TOTAL}"
57
+ ```
58
+
59
+ If `.planning/STATE.md` exists, read it. If `.planning/ROADMAP.md` exists, read it.
60
+
61
+ Classify project type from signals: `web` | `voice` | `mobile` | `python-agent` | `edge-functions` | `framework` | `unknown`
62
+
63
+ ## Step 2: Gather Session Context
64
+
65
+ This replaces the old session-context-loader. Run these:
66
+
67
+ ```bash
68
+ # Cross-project session digest (last 5 sessions)
69
+ tail -n +4 ~/.claude/knowledge/session-digest.md 2>/dev/null | head -5
70
+ ```
71
+
72
+ ```bash
73
+ # Stale knowledge detection (>30 days) — only top-level .md files
74
+ NOW=$(date +%s); find ~/.claude/knowledge -maxdepth 1 -name "*.md" -type f | while read f; do B=$(basename "$f"); [ "$B" = "session-digest.md" ] && continue; AGE=$(( (NOW - $(stat -c %Y "$f" 2>/dev/null || echo $NOW)) / 86400 )); [ "$AGE" -gt 30 ] && echo "STALE: ${B} (${AGE}d)"; done
75
+ ```
76
+
77
+ ```bash
78
+ # Project pulse (git activity in last 7 days)
79
+ for DIR in ~/Projects/*/; do [ -d "$DIR/.git" ] || continue; LAST=$(git -C "$DIR" log --oneline -1 --since="7 days ago" --format="%ar" 2>/dev/null); [ -n "$LAST" ] && echo "$(basename "$DIR")(${LAST})"; done | head -10
80
+ ```
81
+
82
+ ```bash
83
+ # Check for .continue-here.md (auto-handoff from previous session)
84
+ test -f .continue-here.md && echo "HANDOFF: .continue-here.md exists" || echo ""
85
+ ```
86
+
87
+ ## Step 3: Render the Dashboard
88
+
89
+ **CRITICAL RENDERING RULE**: Output the dashboard as plain text directly from your response — do NOT use Bash, printf, or echo to render it. Write it as regular markdown text output. ANSI escape codes do NOT work in Claude Code text output — they show as raw garbage. Use markdown formatting instead.
90
+
91
+ **Use this format** (plain text with unicode symbols, no ANSI codes):
92
+
93
+ **Dashboard example** (adapt with real data, output as plain markdown text):
94
+
95
+ ```
96
+ ◆ Q U A L I A M O D E
97
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
98
+
99
+ Project underdogsales
100
+ Type web
101
+ Branch fix/header-nav
102
+ Git clean (0 changes)
103
+
104
+ ── SYSTEM ──────────────────────────────
105
+ ✓ Hooks 14/14
106
+ ✓ Node v22.x TS: yes
107
+ ✓ Supabase linked
108
+
109
+ ── SESSION ─────────────────────────────
110
+ Recent under(3h) giulio-agent(5h)
111
+ Pulse qualia-erp underdogsales vero
112
+ ▲ Stale: employees.md (5d)
113
+
114
+ ── PROJECT ─────────────────────────────
115
+ Phase 3/6 — Auth Integration
116
+ Status executed
117
+ DESIGN.md ✓ REVIEW.md ▲ stale
118
+
119
+ ── GATES ───────────────────────────────
120
+ ✓ Frontend guard ✓ Deploy guard
121
+ ✓ Intent verify ✓ Security rules
122
+ ✓ TypeScript ✓ .env protection
123
+
124
+ ── PATTERNS ────────────────────────────
125
+ frontend-master responsive seo-master ship
126
+
127
+ ── NEXT ────────────────────────────────
128
+ → /qualia-verify-work 3
129
+
130
+ Session armed. All quality gates active.
131
+ ```
132
+
133
+ ### Rules:
134
+ - Output this as **plain text** in your response, NOT via Bash/printf
135
+ - Use `✓` for pass, `✗` for fail, `▲` for warning, `·` for skipped
136
+ - If no `.planning/` → show "ad-hoc mode" in PROJECT section
137
+ - If no git → show "no git"
138
+ - If no package.json → use directory name as project
139
+ - If .continue-here.md exists → show "▲ Handoff: read .continue-here.md" in SESSION
140
+ - Omit sections that have no data (e.g., no SESSION section if no digest/pulse)
141
+
142
+ ## Step 4: Route to Next Action
143
+
144
+ The NEXT section shows one routing suggestion:
145
+ - Phase needs planning → `Run /qualia-plan-phase N`
146
+ - Phase planned → `Run /qualia-execute-phase N`
147
+ - Phase executed → `Run /qualia-verify-work N`
148
+ - Gaps found → `Run /qualia-plan-phase N --gaps`
149
+ - All phases done → `Run /qualia-audit-milestone`
150
+ - No .planning → `Start with /qualia-new-project or work ad-hoc`
151
+ - .continue-here.md exists → `Read .continue-here.md and resume`
152
+
153
+ ## Step 5: Activate Behavioral Rules
154
+
155
+ After rendering the dashboard, activate these for the rest of the session:
156
+
157
+ 1. **Frontend guard**: Before writing *.tsx, *.jsx, *.css — read DESIGN.md first
158
+ 2. **Deploy guard**: Before vercel --prod — check REVIEW.md freshness
159
+ 3. **Intent verification**: When 3+ files will change — list and confirm
160
+ 4. **Quality defaults**: Security rules, tsc checks, RLS consideration
161
+
162
+ ## Step 6: Load Patterns
163
+
164
+ Note relevant skills for the session (do NOT read them now):
165
+
166
+ | Project Type | Active Patterns |
167
+ |-------------|-----------------|
168
+ | web | frontend-master, responsive, seo-master, qualia-review, ship, deploy-verify |
169
+ | voice | voice-agent, ship, deploy-verify |
170
+ | mobile | mobile-expo, i18n-rtl, fcm-notifications |
171
+ | python-agent | test-runner |
172
+ | edge-functions | supabase, ship |
173
+ | framework | test-runner |
174
+
175
+ If Sakani detected: also load sakani-conventions, i18n-rtl, nestjs-backend, financial-ledger, subscription-payments.
176
+
177
+ ## Persistence
178
+
179
+ Qualia mode persists through the session via:
180
+ 1. CLAUDE.md "Qualia Mode" section describes always-on behaviors
181
+ 2. Compaction rules preserve "Qualia mode: active" state
182
+ 3. If `/compact` is needed, compacted context includes "Qualia mode is active"
@@ -0,0 +1,105 @@
1
+ ---
2
+ name: qualia-verify-work
3
+ description: "Conversational UAT testing for a completed phase — verify work meets requirements with persistent test tracking. Use this skill whenever the user says 'verify', 'test phase', 'check work', 'UAT', 'verify work', or wants to validate that a completed phase meets its acceptance criteria. Also trigger when user mentions 'quality check', 'does this work', or needs to run through verification of implemented features."
4
+ ---
5
+
6
+ # Qualia Verify Work — Phase UAT Testing
7
+
8
+ Run conversational UAT (User Acceptance Testing) for a completed phase with persistent state tracking.
9
+
10
+ ## Usage
11
+
12
+ `/qualia-verify-work 3` — Verify phase 3
13
+ `/qualia-verify-work` — Auto-detect phase needing verification
14
+
15
+ ## Process
16
+
17
+ ### 1. Load Context
18
+
19
+ Read:
20
+ - `.planning/STATE.md`
21
+ - `.planning/ROADMAP.md`
22
+ - Phase PLAN.md — for acceptance criteria
23
+ - Phase SUMMARY.md — for what was implemented
24
+
25
+ Reference: `~/.claude/qualia-engine/workflows/verify-work.md`
26
+
27
+ ### 2. Create UAT Tracking
28
+
29
+ Create `{phase}-UAT.md` using template from `~/.claude/qualia-engine/templates/UAT.md`:
30
+
31
+ ```markdown
32
+ # Phase {N}: {Name} — UAT Results
33
+
34
+ ## Test Results
35
+
36
+ | # | Test | Status | Notes |
37
+ |---|------|--------|-------|
38
+ | 1 | [from acceptance criteria] | ⏳ | |
39
+ | 2 | ... | ⏳ | |
40
+
41
+ ## Issues Found
42
+ (none yet)
43
+
44
+ ## Overall: ⏳ In Progress
45
+ ```
46
+
47
+ ### 3. Conversational Testing
48
+
49
+ Walk through each acceptance criterion from the PLAN.md:
50
+ - Test the feature/behavior
51
+ - Record pass (✅) or fail (❌) in the UAT table
52
+ - For failures, document what went wrong
53
+
54
+ This is interactive — discuss findings with the user as you go.
55
+
56
+ ### 4. Handle Results
57
+
58
+ #### All tests pass:
59
+ Update UAT.md overall status to ✅ PASSED. Update STATE.md phase status to `verified`.
60
+ > "Phase {N} verified! Run `/qualia-progress` for next steps."
61
+
62
+ #### Issues found:
63
+ Document gaps in UAT.md. For each gap:
64
+ - What's wrong
65
+ - Severity (blocker, major, minor)
66
+ - Suggested fix approach
67
+
68
+ Then offer:
69
+ > "Found {N} issues. Run `/qualia-plan-phase {phase} --gaps` to create fix plans, then `/qualia-execute-phase {phase} --gaps-only` to fix them."
70
+
71
+ ### 5. Shipping Checklist Cross-Reference
72
+
73
+ After UAT testing, cross-reference results against the relevant shipping checklist from `~/Projects/qualia-erp/docs/completion-checklists.md`.
74
+
75
+ Detect project type from `.planning/PROJECT.md` or `package.json` and load:
76
+ - **website** → "Website-Specific Checklist" + "Universal Checklist"
77
+ - **agent** → "AI Agent Checklist" + "Universal Checklist"
78
+ - **voice** → "Voice Agent Checklist" + "Universal Checklist"
79
+ - **mobile** → "Mobile App Checklist" + "Universal Checklist"
80
+ - **platform** → "Platform with LLM Checklist" + "Universal Checklist"
81
+
82
+ For items relevant to this phase's scope, verify each one:
83
+ - Run automated checks where possible (grep for service_role, check meta tags, etc.)
84
+ - Add unchecked items as additional UAT entries in the phase UAT.md
85
+ - Report: "Shipping checklist: X/Y items verified for this phase"
86
+
87
+ Do NOT check items outside this phase's scope (e.g., don't check deployment items during a Phase 1 verify).
88
+
89
+ ### 6. Design Quality Check (Frontend Phases)
90
+
91
+ If the phase involves frontend work (detected from PLAN.md file references or phase description), after UAT passes with zero issues, suggest the design quality workflow:
92
+
93
+ `/critique` → `/polish` → `/harden` → then proceed to next phase.
94
+
95
+ This is advisory — user can skip by running the next command directly.
96
+
97
+ ### 7. Update State
98
+
99
+ Update `.planning/STATE.md` to reflect verification status.
100
+
101
+ ### Agents Used
102
+ | Agent | File | Role |
103
+ |-------|------|------|
104
+ | `qualia-planner` | `~/.claude/agents/qualia-planner.md` | Creates fix plans from diagnosed gaps |
105
+ | `qualia-plan-checker` | `~/.claude/agents/qualia-plan-checker.md` | Validates fix plans (max 3 iterations) |
@@ -0,0 +1,130 @@
1
+ ---
2
+ name: qualia-workflow
3
+ description: Qualia Solutions project conventions - structure, patterns, deployment checklist. Use when starting or auditing Qualia client projects.
4
+ tags: [qualia, workflow, nextjs, supabase, vercel]
5
+ ---
6
+
7
+ # Qualia Solutions Conventions
8
+
9
+ Project conventions for Qualia Solutions client work. For specific tooling, use dedicated skills (`/supabase`, `/voice-agent`, `/deploy`, etc.).
10
+
11
+ ## Standard Tech Stack
12
+
13
+ | Layer | Technology | Notes |
14
+ |-------|------------|-------|
15
+ | Frontend | Next.js 16+ + React 19 + TypeScript | App Router, Server Components |
16
+ | Styling | Tailwind CSS + shadcn/ui | Custom themes per client |
17
+ | Backend | Supabase | Postgres, Auth, RLS, Edge Functions |
18
+ | Deployment | Vercel | Preview on PR, Production on main |
19
+ | Voice AI | VAPI or Hume EVI | Depending on emotion needs |
20
+ | Automation | n8n | Workflow orchestration |
21
+ | Monitoring | LangSmith | LLM observability |
22
+
23
+ ## Project Structure
24
+
25
+ ```
26
+ project/
27
+ ├── app/ # Next.js App Router
28
+ │ ├── (auth)/ # Auth-required routes
29
+ │ ├── (marketing)/ # Public pages
30
+ │ ├── api/ # API routes (minimal, prefer server actions)
31
+ │ └── layout.tsx # Root layout
32
+ ├── components/
33
+ │ ├── ui/ # shadcn/ui components
34
+ │ ├── forms/ # Form components
35
+ │ └── [feature]/ # Feature-specific components
36
+ ├── lib/
37
+ │ ├── supabase/ # Supabase clients (server/client)
38
+ │ ├── utils.ts # Utility functions
39
+ │ └── constants.ts # App constants
40
+ ├── types/
41
+ │ ├── database.ts # Generated from Supabase
42
+ │ └── index.ts # App types
43
+ ├── supabase/
44
+ │ ├── migrations/ # SQL migrations
45
+ │ └── functions/ # Edge functions
46
+ ├── hooks/ # Custom React hooks
47
+ ├── actions/ # Server actions
48
+ └── public/ # Static assets
49
+ ```
50
+
51
+ ## Key Patterns
52
+
53
+ - **Server Components first** -- only add `'use client'` when interactivity is needed
54
+ - **Server Actions for mutations** -- always auth check first (`supabase.auth.getUser()`)
55
+ - **Prefer server actions over API routes** -- fewer files, same security
56
+ - **Generate types** after every migration: `npx supabase gen types typescript`
57
+
58
+ ## Server Action Template
59
+
60
+ ```typescript
61
+ 'use server'
62
+
63
+ import { revalidatePath } from 'next/cache'
64
+ import { createClient } from '@/lib/supabase/server'
65
+
66
+ export async function createProduct(formData: FormData) {
67
+ const supabase = await createClient()
68
+
69
+ // Auth check first
70
+ const { data: { user }, error: authError } = await supabase.auth.getUser()
71
+ if (authError || !user) throw new Error('Unauthorized')
72
+
73
+ const { error } = await supabase
74
+ .from('products')
75
+ .insert({ name: formData.get('name') })
76
+
77
+ if (error) throw new Error('Failed to create product')
78
+
79
+ revalidatePath('/products')
80
+ }
81
+ ```
82
+
83
+ ## Deployment Checklist
84
+
85
+ 1. **Environment Variables**
86
+ - [ ] All secrets in Vercel (not in code)
87
+ - [ ] Different keys for preview vs production
88
+ - [ ] NEXT_PUBLIC_ prefix only for client-safe vars
89
+
90
+ 2. **Database**
91
+ - [ ] Migrations applied
92
+ - [ ] RLS policies on all tables
93
+ - [ ] Indexes on frequently queried columns
94
+ - [ ] Types generated and committed
95
+
96
+ 3. **Security**
97
+ - [ ] No exposed API keys
98
+ - [ ] CORS configured
99
+ - [ ] Rate limiting on API routes
100
+ - [ ] Input validation everywhere
101
+
102
+ 4. **Performance**
103
+ - [ ] Images optimized (next/image)
104
+ - [ ] Fonts optimized (next/font)
105
+ - [ ] Bundle analyzed
106
+ - [ ] Core Web Vitals passing
107
+
108
+ ## New Feature Workflow
109
+
110
+ ```
111
+ 1. Database schema first (if needed)
112
+ 2. Supabase migration
113
+ 3. Generate types: npx supabase gen types typescript
114
+ 4. Server Components for data display
115
+ 5. Server Actions for mutations
116
+ 6. Client Components only for interactivity
117
+ ```
118
+
119
+ ## External Tools Available
120
+
121
+ - **Supabase**: Use `/supabase` skill (CLI-first) or Supabase MCP plugin
122
+ - **Context7 MCP**: Library documentation lookup
123
+ - **VAPI MCP**: Voice agent configuration
124
+ - **Telnyx MCP**: Phone numbers, messaging, calls
125
+ - **ElevenLabs MCP**: Voice synthesis
126
+ - **Playwright MCP**: Browser automation and testing
127
+ - **Sentry MCP**: Error tracking and monitoring
128
+ - **Firecrawl MCP**: Web scraping and search
129
+ - **Google Calendar MCP**: Calendar operations
130
+ - **GitHub CLI** (`gh`): PRs, issues, code review (NOT MCP — use Bash)