qualia-framework 2.6.0 → 3.2.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 (321) hide show
  1. package/CLAUDE.md +64 -0
  2. package/README.md +103 -30
  3. package/agents/builder.md +110 -0
  4. package/agents/planner.md +134 -0
  5. package/agents/qa-browser.md +186 -0
  6. package/agents/verifier.md +221 -0
  7. package/bin/cli.js +336 -531
  8. package/bin/install.js +570 -0
  9. package/bin/qualia-ui.js +299 -0
  10. package/bin/state.js +630 -0
  11. package/bin/statusline.js +252 -0
  12. package/guide.md +63 -0
  13. package/hooks/auto-update.js +139 -0
  14. package/hooks/branch-guard.js +47 -0
  15. package/hooks/migration-guard.js +60 -0
  16. package/hooks/pre-compact.js +32 -0
  17. package/hooks/pre-deploy-gate.js +110 -0
  18. package/hooks/pre-push.js +33 -0
  19. package/hooks/session-start.js +170 -0
  20. package/package.json +29 -20
  21. package/rules/design-reference.md +179 -0
  22. package/rules/frontend.md +126 -0
  23. package/skills/qualia/SKILL.md +87 -0
  24. package/skills/qualia-build/SKILL.md +97 -0
  25. package/skills/qualia-debug/SKILL.md +87 -0
  26. package/skills/qualia-design/SKILL.md +93 -0
  27. package/skills/qualia-handoff/SKILL.md +66 -0
  28. package/skills/qualia-idk/SKILL.md +8 -0
  29. package/skills/qualia-learn/SKILL.md +88 -0
  30. package/skills/qualia-new/SKILL.md +323 -0
  31. package/{framework/skills → skills}/qualia-optimize/SKILL.md +1 -1
  32. package/skills/qualia-pause/SKILL.md +63 -0
  33. package/skills/qualia-plan/SKILL.md +101 -0
  34. package/skills/qualia-polish/SKILL.md +157 -0
  35. package/skills/qualia-quick/SKILL.md +37 -0
  36. package/skills/qualia-report/SKILL.md +105 -0
  37. package/skills/qualia-resume/SKILL.md +49 -0
  38. package/skills/qualia-review/SKILL.md +76 -0
  39. package/skills/qualia-ship/SKILL.md +90 -0
  40. package/skills/qualia-skill-new/SKILL.md +167 -0
  41. package/skills/qualia-task/SKILL.md +91 -0
  42. package/skills/qualia-verify/SKILL.md +113 -0
  43. package/templates/DESIGN.md +137 -0
  44. package/templates/plan.md +28 -0
  45. package/templates/project.md +22 -0
  46. package/templates/state.md +27 -0
  47. package/templates/tracking.json +20 -0
  48. package/tests/bin.test.sh +673 -0
  49. package/tests/hooks.test.sh +315 -0
  50. package/tests/state.test.sh +535 -0
  51. package/tests/statusline.test.sh +243 -0
  52. package/bin/collect-metrics.sh +0 -62
  53. package/framework/.claudeignore +0 -51
  54. package/framework/CLAUDE.md +0 -51
  55. package/framework/MCP_SETUP.md +0 -229
  56. package/framework/agents/architecture-strategist.md +0 -53
  57. package/framework/agents/backend-agent.md +0 -150
  58. package/framework/agents/code-simplicity-reviewer.md +0 -86
  59. package/framework/agents/frontend-agent.md +0 -111
  60. package/framework/agents/kieran-typescript-reviewer.md +0 -96
  61. package/framework/agents/performance-oracle.md +0 -111
  62. package/framework/agents/qualia-codebase-mapper.md +0 -761
  63. package/framework/agents/qualia-debugger.md +0 -1204
  64. package/framework/agents/qualia-executor.md +0 -882
  65. package/framework/agents/qualia-integration-checker.md +0 -424
  66. package/framework/agents/qualia-phase-researcher.md +0 -457
  67. package/framework/agents/qualia-plan-checker.md +0 -700
  68. package/framework/agents/qualia-planner.md +0 -1245
  69. package/framework/agents/qualia-project-researcher.md +0 -603
  70. package/framework/agents/qualia-research-synthesizer.md +0 -200
  71. package/framework/agents/qualia-roadmapper.md +0 -606
  72. package/framework/agents/qualia-verifier.md +0 -686
  73. package/framework/agents/red-team-qa.md +0 -130
  74. package/framework/agents/security-auditor.md +0 -72
  75. package/framework/agents/team-orchestrator.md +0 -229
  76. package/framework/agents/teams/framework-audit-team.md +0 -66
  77. package/framework/agents/teams/full-stack-team.md +0 -48
  78. package/framework/agents/teams/optimize-team.md +0 -53
  79. package/framework/agents/teams/review-team.md +0 -70
  80. package/framework/agents/teams/ship-team.md +0 -86
  81. package/framework/agents/test-agent.md +0 -182
  82. package/framework/hooks/auto-format.sh +0 -54
  83. package/framework/hooks/block-env-edit.sh +0 -42
  84. package/framework/hooks/branch-guard.sh +0 -43
  85. package/framework/hooks/confirm-delete.sh +0 -59
  86. package/framework/hooks/migration-validate.sh +0 -77
  87. package/framework/hooks/notification-speak.sh +0 -16
  88. package/framework/hooks/pre-commit.sh +0 -100
  89. package/framework/hooks/pre-compact.sh +0 -56
  90. package/framework/hooks/pre-deploy-gate.sh +0 -160
  91. package/framework/hooks/qualia-colors.sh +0 -32
  92. package/framework/hooks/retention-cleanup.sh +0 -62
  93. package/framework/hooks/save-session-state.sh +0 -185
  94. package/framework/hooks/session-context-loader.sh +0 -96
  95. package/framework/hooks/session-learn.sh +0 -32
  96. package/framework/hooks/skill-announce.sh +0 -123
  97. package/framework/hooks/tool-error-announce.sh +0 -27
  98. package/framework/install.ps1 +0 -323
  99. package/framework/install.sh +0 -313
  100. package/framework/qualia-framework/VERSION +0 -1
  101. package/framework/qualia-framework/assets/qualia-logo.png +0 -0
  102. package/framework/qualia-framework/bin/collect-metrics.sh +0 -67
  103. package/framework/qualia-framework/bin/generate-report-docx.py +0 -429
  104. package/framework/qualia-framework/bin/qualia-tools.js +0 -2201
  105. package/framework/qualia-framework/bin/qualia-tools.test.js +0 -1054
  106. package/framework/qualia-framework/references/checkpoints.md +0 -775
  107. package/framework/qualia-framework/references/completion-checklists.md +0 -359
  108. package/framework/qualia-framework/references/continuation-format.md +0 -249
  109. package/framework/qualia-framework/references/continuation-prompt.md +0 -97
  110. package/framework/qualia-framework/references/decimal-phase-calculation.md +0 -65
  111. package/framework/qualia-framework/references/design-quality.md +0 -56
  112. package/framework/qualia-framework/references/employee-guide.md +0 -167
  113. package/framework/qualia-framework/references/git-integration.md +0 -254
  114. package/framework/qualia-framework/references/git-planning-commit.md +0 -50
  115. package/framework/qualia-framework/references/model-profile-resolution.md +0 -32
  116. package/framework/qualia-framework/references/model-profiles.md +0 -73
  117. package/framework/qualia-framework/references/phase-argument-parsing.md +0 -61
  118. package/framework/qualia-framework/references/planning-config.md +0 -195
  119. package/framework/qualia-framework/references/questioning.md +0 -141
  120. package/framework/qualia-framework/references/tdd.md +0 -263
  121. package/framework/qualia-framework/references/ui-brand.md +0 -160
  122. package/framework/qualia-framework/references/verification-patterns.md +0 -612
  123. package/framework/qualia-framework/templates/DEBUG.md +0 -159
  124. package/framework/qualia-framework/templates/DESIGN.md +0 -81
  125. package/framework/qualia-framework/templates/UAT.md +0 -247
  126. package/framework/qualia-framework/templates/codebase/architecture.md +0 -255
  127. package/framework/qualia-framework/templates/codebase/concerns.md +0 -310
  128. package/framework/qualia-framework/templates/codebase/conventions.md +0 -307
  129. package/framework/qualia-framework/templates/codebase/integrations.md +0 -280
  130. package/framework/qualia-framework/templates/codebase/stack.md +0 -186
  131. package/framework/qualia-framework/templates/codebase/structure.md +0 -285
  132. package/framework/qualia-framework/templates/codebase/testing.md +0 -480
  133. package/framework/qualia-framework/templates/config.json +0 -35
  134. package/framework/qualia-framework/templates/context.md +0 -283
  135. package/framework/qualia-framework/templates/continue-here.md +0 -78
  136. package/framework/qualia-framework/templates/debug-subagent-prompt.md +0 -91
  137. package/framework/qualia-framework/templates/discovery.md +0 -146
  138. package/framework/qualia-framework/templates/lab-notes.md +0 -16
  139. package/framework/qualia-framework/templates/milestone-archive.md +0 -123
  140. package/framework/qualia-framework/templates/milestone.md +0 -115
  141. package/framework/qualia-framework/templates/phase-prompt.md +0 -567
  142. package/framework/qualia-framework/templates/planner-subagent-prompt.md +0 -117
  143. package/framework/qualia-framework/templates/project.md +0 -184
  144. package/framework/qualia-framework/templates/projects/ai-agent.md +0 -156
  145. package/framework/qualia-framework/templates/projects/mobile-app.md +0 -181
  146. package/framework/qualia-framework/templates/projects/voice-agent.md +0 -134
  147. package/framework/qualia-framework/templates/projects/website.md +0 -137
  148. package/framework/qualia-framework/templates/requirements.md +0 -231
  149. package/framework/qualia-framework/templates/research-project/ARCHITECTURE.md +0 -204
  150. package/framework/qualia-framework/templates/research-project/FEATURES.md +0 -147
  151. package/framework/qualia-framework/templates/research-project/PITFALLS.md +0 -200
  152. package/framework/qualia-framework/templates/research-project/STACK.md +0 -120
  153. package/framework/qualia-framework/templates/research-project/SUMMARY.md +0 -170
  154. package/framework/qualia-framework/templates/research.md +0 -552
  155. package/framework/qualia-framework/templates/roadmap.md +0 -206
  156. package/framework/qualia-framework/templates/state.md +0 -179
  157. package/framework/qualia-framework/templates/summary-complex.md +0 -59
  158. package/framework/qualia-framework/templates/summary-minimal.md +0 -41
  159. package/framework/qualia-framework/templates/summary-standard.md +0 -48
  160. package/framework/qualia-framework/templates/summary.md +0 -246
  161. package/framework/qualia-framework/templates/user-setup.md +0 -311
  162. package/framework/qualia-framework/templates/verification-report.md +0 -322
  163. package/framework/qualia-framework/workflows/add-phase.md +0 -179
  164. package/framework/qualia-framework/workflows/add-todo.md +0 -157
  165. package/framework/qualia-framework/workflows/audit-milestone.md +0 -241
  166. package/framework/qualia-framework/workflows/check-todos.md +0 -176
  167. package/framework/qualia-framework/workflows/complete-milestone.md +0 -858
  168. package/framework/qualia-framework/workflows/diagnose-issues.md +0 -219
  169. package/framework/qualia-framework/workflows/discovery-phase.md +0 -289
  170. package/framework/qualia-framework/workflows/discuss-phase.md +0 -534
  171. package/framework/qualia-framework/workflows/execute-phase.md +0 -559
  172. package/framework/qualia-framework/workflows/execute-plan.md +0 -438
  173. package/framework/qualia-framework/workflows/help.md +0 -470
  174. package/framework/qualia-framework/workflows/insert-phase.md +0 -220
  175. package/framework/qualia-framework/workflows/list-phase-assumptions.md +0 -178
  176. package/framework/qualia-framework/workflows/map-codebase.md +0 -327
  177. package/framework/qualia-framework/workflows/new-milestone.md +0 -363
  178. package/framework/qualia-framework/workflows/new-project.md +0 -982
  179. package/framework/qualia-framework/workflows/pause-work.md +0 -122
  180. package/framework/qualia-framework/workflows/plan-milestone-gaps.md +0 -256
  181. package/framework/qualia-framework/workflows/plan-phase.md +0 -422
  182. package/framework/qualia-framework/workflows/progress.md +0 -389
  183. package/framework/qualia-framework/workflows/quick.md +0 -252
  184. package/framework/qualia-framework/workflows/remove-phase.md +0 -326
  185. package/framework/qualia-framework/workflows/research-phase.md +0 -74
  186. package/framework/qualia-framework/workflows/resume-project.md +0 -306
  187. package/framework/qualia-framework/workflows/set-profile.md +0 -80
  188. package/framework/qualia-framework/workflows/settings.md +0 -145
  189. package/framework/qualia-framework/workflows/transition.md +0 -556
  190. package/framework/qualia-framework/workflows/update.md +0 -197
  191. package/framework/qualia-framework/workflows/verify-phase.md +0 -195
  192. package/framework/qualia-framework/workflows/verify-work.md +0 -625
  193. package/framework/rules/context7.md +0 -14
  194. package/framework/rules/frontend.md +0 -33
  195. package/framework/rules/speed.md +0 -23
  196. package/framework/scripts/__pycache__/say.cpython-314.pyc +0 -0
  197. package/framework/scripts/apply-retention.sh +0 -120
  198. package/framework/scripts/bootstrap-pop-os.sh +0 -354
  199. package/framework/scripts/claude-voice +0 -13
  200. package/framework/scripts/cleanup.sh +0 -131
  201. package/framework/scripts/cowork-mode.sh +0 -141
  202. package/framework/scripts/generate-project-claude-md.sh +0 -153
  203. package/framework/scripts/load-test-webhook.js +0 -172
  204. package/framework/scripts/say.py +0 -236
  205. package/framework/scripts/showcase-video-recorder/ffmpeg-builder.js +0 -167
  206. package/framework/scripts/showcase-video-recorder/playwright-helpers.js +0 -216
  207. package/framework/scripts/speak.py +0 -55
  208. package/framework/scripts/speak.sh +0 -18
  209. package/framework/scripts/status.sh +0 -138
  210. package/framework/scripts/sync-to-framework.sh +0 -65
  211. package/framework/scripts/voice-hotkey.py +0 -227
  212. package/framework/scripts/voice-input.sh +0 -51
  213. package/framework/skills/animate/SKILL.md +0 -202
  214. package/framework/skills/bolder/SKILL.md +0 -144
  215. package/framework/skills/browser-qa/SKILL.md +0 -536
  216. package/framework/skills/clarify/SKILL.md +0 -179
  217. package/framework/skills/client-handoff/SKILL.md +0 -135
  218. package/framework/skills/collab-onboard/SKILL.md +0 -111
  219. package/framework/skills/colorize/SKILL.md +0 -170
  220. package/framework/skills/critique/SKILL.md +0 -126
  221. package/framework/skills/deep-research/SKILL.md +0 -240
  222. package/framework/skills/delight/SKILL.md +0 -329
  223. package/framework/skills/deploy/SKILL.md +0 -261
  224. package/framework/skills/deploy-verify/SKILL.md +0 -377
  225. package/framework/skills/deploy-verify/scripts/canary-check.sh +0 -206
  226. package/framework/skills/deploy-verify/scripts/check-console-errors.js +0 -147
  227. package/framework/skills/deploy-verify/scripts/check-cwv.js +0 -139
  228. package/framework/skills/deploy-verify/scripts/project-detect.sh +0 -84
  229. package/framework/skills/deploy-verify/scripts/verify.sh +0 -548
  230. package/framework/skills/design-quieter/SKILL.md +0 -130
  231. package/framework/skills/distill/SKILL.md +0 -149
  232. package/framework/skills/docs-lookup/SKILL.md +0 -79
  233. package/framework/skills/fcm-notifications/SKILL.md +0 -125
  234. package/framework/skills/financial-ledger/SKILL.md +0 -1039
  235. package/framework/skills/frontend-master/NOTICE.md +0 -4
  236. package/framework/skills/frontend-master/SKILL.md +0 -127
  237. package/framework/skills/frontend-master/reference/color-and-contrast.md +0 -132
  238. package/framework/skills/frontend-master/reference/interaction-design.md +0 -123
  239. package/framework/skills/frontend-master/reference/motion-design.md +0 -99
  240. package/framework/skills/frontend-master/reference/responsive-design.md +0 -114
  241. package/framework/skills/frontend-master/reference/spatial-design.md +0 -100
  242. package/framework/skills/frontend-master/reference/typography.md +0 -131
  243. package/framework/skills/frontend-master/reference/ux-writing.md +0 -107
  244. package/framework/skills/harden/SKILL.md +0 -357
  245. package/framework/skills/i18n-rtl/SKILL.md +0 -752
  246. package/framework/skills/learn/SKILL.md +0 -95
  247. package/framework/skills/memory/SKILL.md +0 -50
  248. package/framework/skills/mobile-expo/SKILL.md +0 -977
  249. package/framework/skills/mobile-expo/references/store-checklist.md +0 -550
  250. package/framework/skills/nestjs-backend/README.md +0 -73
  251. package/framework/skills/nestjs-backend/SKILL.md +0 -446
  252. package/framework/skills/nestjs-backend/references/templates.md +0 -1173
  253. package/framework/skills/normalize/SKILL.md +0 -79
  254. package/framework/skills/onboard/SKILL.md +0 -242
  255. package/framework/skills/openrouter-agent/SKILL.md +0 -922
  256. package/framework/skills/polish/SKILL.md +0 -209
  257. package/framework/skills/pr/SKILL.md +0 -66
  258. package/framework/skills/qualia/SKILL.md +0 -199
  259. package/framework/skills/qualia-add-todo/SKILL.md +0 -68
  260. package/framework/skills/qualia-audit-milestone/SKILL.md +0 -95
  261. package/framework/skills/qualia-check-todos/SKILL.md +0 -55
  262. package/framework/skills/qualia-complete-milestone/SKILL.md +0 -134
  263. package/framework/skills/qualia-debug/SKILL.md +0 -149
  264. package/framework/skills/qualia-design/SKILL.md +0 -203
  265. package/framework/skills/qualia-discuss-phase/SKILL.md +0 -72
  266. package/framework/skills/qualia-evolve/SKILL.md +0 -200
  267. package/framework/skills/qualia-execute-phase/SKILL.md +0 -89
  268. package/framework/skills/qualia-framework-audit/SKILL.md +0 -604
  269. package/framework/skills/qualia-guide/SKILL.md +0 -32
  270. package/framework/skills/qualia-help/SKILL.md +0 -114
  271. package/framework/skills/qualia-idk/SKILL.md +0 -352
  272. package/framework/skills/qualia-list-phase-assumptions/SKILL.md +0 -67
  273. package/framework/skills/qualia-new-milestone/SKILL.md +0 -72
  274. package/framework/skills/qualia-new-project/SKILL.md +0 -232
  275. package/framework/skills/qualia-pause-work/SKILL.md +0 -96
  276. package/framework/skills/qualia-plan-milestone-gaps/SKILL.md +0 -57
  277. package/framework/skills/qualia-plan-phase/SKILL.md +0 -104
  278. package/framework/skills/qualia-production-check/SKILL.md +0 -0
  279. package/framework/skills/qualia-progress/SKILL.md +0 -53
  280. package/framework/skills/qualia-quick/SKILL.md +0 -89
  281. package/framework/skills/qualia-report/SKILL.md +0 -166
  282. package/framework/skills/qualia-research-phase/SKILL.md +0 -88
  283. package/framework/skills/qualia-resume-work/SKILL.md +0 -62
  284. package/framework/skills/qualia-review/SKILL.md +0 -263
  285. package/framework/skills/qualia-start/SKILL.md +0 -161
  286. package/framework/skills/qualia-verify-work/SKILL.md +0 -132
  287. package/framework/skills/rag/SKILL.md +0 -750
  288. package/framework/skills/responsive/SKILL.md +0 -231
  289. package/framework/skills/retro/SKILL.md +0 -284
  290. package/framework/skills/sakani-conventions/SKILL.md +0 -136
  291. package/framework/skills/sakani-conventions/evals/evals.json +0 -23
  292. package/framework/skills/sakani-conventions/references/entities.md +0 -365
  293. package/framework/skills/sakani-conventions/references/error-codes.md +0 -95
  294. package/framework/skills/seo-master/SKILL.md +0 -490
  295. package/framework/skills/seo-master/references/checklist.md +0 -199
  296. package/framework/skills/seo-master/references/structured-data.md +0 -609
  297. package/framework/skills/ship/SKILL.md +0 -239
  298. package/framework/skills/stack-researcher/SKILL.md +0 -215
  299. package/framework/skills/status/SKILL.md +0 -154
  300. package/framework/skills/status/scripts/health-check.sh +0 -562
  301. package/framework/skills/subscription-payments/SKILL.md +0 -250
  302. package/framework/skills/supabase/SKILL.md +0 -973
  303. package/framework/skills/supabase/references/templates.md +0 -159
  304. package/framework/skills/team/SKILL.md +0 -67
  305. package/framework/skills/test-runner/SKILL.md +0 -202
  306. package/framework/skills/voice-agent/SKILL.md +0 -1312
  307. package/framework/skills/zoho-workflow/SKILL.md +0 -51
  308. package/framework/statusline-command.sh +0 -117
  309. package/framework/teams/default/inboxes/plan-04.json +0 -9
  310. package/framework/teams/review-team.md +0 -75
  311. package/framework/teams/ship-team.md +0 -86
  312. package/profiles/fawzi.json +0 -16
  313. package/profiles/hasan.json +0 -16
  314. package/profiles/moayad.json +0 -16
  315. package/templates/CLAUDE-owner.md +0 -52
  316. package/templates/CLAUDE.md.hbs +0 -58
  317. package/templates/env.claude.template +0 -12
  318. package/templates/settings.json +0 -172
  319. package/uninstall.sh +0 -90
  320. /package/{framework/rules → rules}/deployment.md +0 -0
  321. /package/{framework/rules → rules}/security.md +0 -0
@@ -1,123 +0,0 @@
1
- #!/bin/bash
2
- # Announce skill activation — fires on every Skill() invocation
3
- # Shows teal-branded banner on stderr (visible in terminal) + systemMessage for transcript
4
-
5
- source "$(dirname "$0")/qualia-colors.sh"
6
-
7
- if [ ! -t 0 ]; then
8
- INPUT=$(cat)
9
- SKILL_NAME=$(echo "$INPUT" | node -e "try{const d=JSON.parse(require('fs').readFileSync('/dev/stdin','utf8'));process.stdout.write(d.tool_input?.skill||d.tool_input?.name||'')}catch(e){}" 2>/dev/null)
10
- fi
11
-
12
- [ -z "$SKILL_NAME" ] && printf '{"continue":true}' && exit 0
13
-
14
- # Skill descriptions for the banner
15
- declare -A SKILL_DESC
16
- SKILL_DESC=(
17
- # Pipeline
18
- ["qualia-new-project"]="Initializing new project"
19
- ["qualia-new-milestone"]="Starting new milestone"
20
- ["qualia-discuss-phase"]="Clarifying phase decisions"
21
- ["qualia-list-phase-assumptions"]="Surfacing assumptions"
22
- ["qualia-research-phase"]="Researching phase domain"
23
- ["qualia-plan-phase"]="Creating execution plans"
24
- ["qualia-execute-phase"]="Executing phase plans"
25
- ["qualia-verify-work"]="Verifying deliverables"
26
- ["qualia-audit-milestone"]="Auditing milestone completion"
27
- ["qualia-complete-milestone"]="Completing milestone"
28
- ["qualia-plan-milestone-gaps"]="Planning gap fixes"
29
- # Navigation
30
- ["qualia-start"]="Activating Qualia mode"
31
- ["qualia-progress"]="Checking progress"
32
- ["qualia-guide"]="Showing developer guide"
33
- ["qualia-idk"]="Analyzing next steps"
34
- ["qualia"]="Routing to next action"
35
- ["qualia-resume-work"]="Restoring session context"
36
- ["qualia-pause-work"]="Saving session state"
37
- # Quality
38
- ["qualia-review"]="Running code review"
39
- ["qualia-optimize"]="Running optimization pass"
40
- ["qualia-evolve"]="Evolving framework"
41
- ["qualia-production-check"]="Running production audit"
42
- ["qualia-framework-audit"]="Auditing framework"
43
- ["deep-research"]="Spawning research agents"
44
- # Design
45
- ["critique"]="Evaluating design"
46
- ["polish"]="Final detail pass"
47
- ["bolder"]="Amplifying design"
48
- ["design-quieter"]="Toning down design"
49
- ["distill"]="Stripping complexity"
50
- ["colorize"]="Adding color"
51
- ["normalize"]="Matching design system"
52
- ["responsive"]="Fixing responsive layout"
53
- ["animate"]="Adding motion"
54
- ["clarify"]="Improving UX copy"
55
- ["delight"]="Adding personality"
56
- ["harden"]="Hardening edge cases"
57
- ["onboard"]="Designing onboarding"
58
- ["frontend-master"]="Building frontend"
59
- ["qualia-design"]="Full design transformation"
60
- # Deploy
61
- ["ship"]="Deploying to production"
62
- ["deploy"]="Quick deploy"
63
- ["deploy-verify"]="Verifying deployment"
64
- ["status"]="Fleet health check"
65
- # Debug & Quick
66
- ["qualia-debug"]="Structured debugging"
67
- ["qualia-quick"]="Quick task with quality gates"
68
- # Research
69
- ["stack-researcher"]="Researching tech stack"
70
- ["docs-lookup"]="Fetching documentation"
71
- # Domain
72
- ["supabase"]="Supabase operations"
73
- ["voice-agent"]="Building voice agent"
74
- ["seo-master"]="SEO audit"
75
- ["browser-qa"]="Browser QA testing"
76
- # Utility
77
- ["learn"]="Capturing lesson"
78
- ["memory"]="Managing memory"
79
- ["pr"]="Creating pull request"
80
- ["team"]="Orchestrating agent team"
81
- ["retro"]="Generating retrospective"
82
- ["test-runner"]="Running tests"
83
- ["zoho-workflow"]="Zoho operations"
84
- )
85
-
86
- # Get description or fallback
87
- DESC="${SKILL_DESC[$SKILL_NAME]}"
88
- [ -z "$DESC" ] && DESC="Activating"
89
-
90
- # Clean name for display
91
- DISPLAY_NAME=$(echo "$SKILL_NAME" | sed 's/-/ /g')
92
-
93
- # Determine skill category icon
94
- case "$SKILL_NAME" in
95
- qualia-new-*|qualia-plan-*|qualia-execute-*|qualia-verify-*|qualia-audit-*|qualia-complete-*|qualia-discuss-*|qualia-list-*|qualia-research-*)
96
- ICON="▶" ;;
97
- qualia-review|qualia-optimize|qualia-production-check|qualia-framework-audit|deep-research)
98
- ICON="⊘" ;;
99
- critique|polish|bolder|design-quieter|distill|colorize|normalize|responsive|animate|clarify|delight|harden|onboard|frontend-master|qualia-design)
100
- ICON="◇" ;;
101
- ship|deploy|deploy-verify|status)
102
- ICON="↑" ;;
103
- qualia-debug|qualia-quick)
104
- ICON="⚡" ;;
105
- *)
106
- ICON="◆" ;;
107
- esac
108
-
109
- # Build the teal banner — output to stderr (visible in terminal)
110
- WIDTH=44
111
- SKILL_UPPER="${DISPLAY_NAME^^}"
112
- PAD_LEN=$(( WIDTH - ${#SKILL_UPPER} - 6 ))
113
- [ "$PAD_LEN" -lt 2 ] && PAD_LEN=2
114
- PADDING=$(printf '─%.0s' $(seq 1 $PAD_LEN))
115
-
116
- printf "\n" >&2
117
- printf "${Q_TEAL}${ICON}${Q_RESET} ${Q_BRIGHT}QUALIA${Q_RESET} ${Q_DIM}───${Q_RESET} ${Q_TEAL}/%s${Q_RESET} ${Q_DIM}%s${Q_RESET}\n" "$SKILL_NAME" "$PADDING" >&2
118
- printf " ${Q_WHITE}%s${Q_RESET}${Q_DIM}...${Q_RESET}\n" "$DESC" >&2
119
- printf "${Q_TEAL}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${Q_RESET}\n" >&2
120
-
121
- # Also send systemMessage for transcript visibility
122
- printf '{"continue":true,"systemMessage":"◆ QUALIA ─── /%s ─── %s"}' "$SKILL_NAME" "$DESC"
123
- exit 0
@@ -1,27 +0,0 @@
1
- #!/bin/bash
2
- # Announce tool failures — fires on PostToolUseFailure
3
- # Shows teal-branded error on stderr + systemMessage for transcript
4
-
5
- source "$(dirname "$0")/qualia-colors.sh"
6
-
7
- if [ ! -t 0 ]; then
8
- INPUT=$(cat)
9
- TOOL_NAME=$(echo "$INPUT" | node -e "try{const d=JSON.parse(require('fs').readFileSync('/dev/stdin','utf8'));process.stdout.write(d.tool_name||'')}catch(e){}" 2>/dev/null)
10
- ERROR=$(echo "$INPUT" | node -e "try{const d=JSON.parse(require('fs').readFileSync('/dev/stdin','utf8'));process.stdout.write((d.error||d.tool_output?.stderr||'').substring(0,200).replace(/\\/g,'\\\\').replace(/\"/g,'\\\"'))}catch(e){}" 2>/dev/null)
11
- fi
12
-
13
- [ -z "$TOOL_NAME" ] && printf '{"continue":true}' && exit 0
14
-
15
- # Teal-branded error banner on stderr
16
- printf "\n" >&2
17
- printf "${Q_FAIL}✗${Q_RESET} ${Q_BRIGHT}QUALIA${Q_RESET} ${Q_DIM}───${Q_RESET} ${Q_FAIL}%s failed${Q_RESET}\n" "$TOOL_NAME" >&2
18
- [ -n "$ERROR" ] && printf " ${Q_DIM}%s${Q_RESET}\n" "$(echo "$ERROR" | head -c 120)" >&2
19
- printf "${Q_TEAL}━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━${Q_RESET}\n" >&2
20
-
21
- # systemMessage for transcript
22
- MSG="◆ ERROR: ${TOOL_NAME} failed"
23
- [ -n "$ERROR" ] && MSG="${MSG} — $(echo "$ERROR" | head -c 100)"
24
- MSG=$(echo "$MSG" | sed 's/"/\\"/g' | tr '\n' ' ')
25
-
26
- printf '{"continue":true,"systemMessage":"%s"}' "$MSG"
27
- exit 0
@@ -1,323 +0,0 @@
1
- # Qualia Framework v2.0 — Windows Installer (PowerShell)
2
- # Usage: git clone <repo> && cd qualia-framework && .\install.ps1
3
- #
4
- # Requires: Node.js 18+, Claude Code CLI, PowerShell 5.1+, Git Bash (for hooks)
5
-
6
- $ErrorActionPreference = "Stop"
7
-
8
- $ClaudeDir = "$env:USERPROFILE\.claude"
9
- $ScriptDir = Split-Path -Parent $MyInvocation.MyCommand.Path
10
-
11
- Write-Host ""
12
- Write-Host " --- " -ForegroundColor Cyan -NoNewline
13
- Write-Host "* QUALIA FRAMEWORK v2.0" -ForegroundColor Cyan
14
- Write-Host ""
15
-
16
- # ─── Step 1: Verify source ───
17
- if (-not (Test-Path "$ScriptDir\skills") -or -not (Test-Path "$ScriptDir\agents")) {
18
- Write-Host " x Run this script from the qualia-framework directory." -ForegroundColor Red
19
- exit 1
20
- }
21
-
22
- Write-Host "[1/6] Prerequisites" -ForegroundColor Yellow
23
-
24
- # Check Claude Code
25
- try {
26
- $null = Get-Command claude -ErrorAction Stop
27
- Write-Host " + Claude Code CLI" -ForegroundColor Green
28
- } catch {
29
- Write-Host " x Claude Code CLI not found" -ForegroundColor Red
30
- Write-Host " npm install -g @anthropic-ai/claude-code"
31
- exit 1
32
- }
33
-
34
- # Check Node.js
35
- try {
36
- $nodeVersion = node -v
37
- Write-Host " + Node.js $nodeVersion" -ForegroundColor Green
38
- } catch {
39
- Write-Host " x Node.js not found" -ForegroundColor Red
40
- exit 1
41
- }
42
-
43
- # Check Git Bash (required for hooks)
44
- $gitBash = Get-Command bash -ErrorAction SilentlyContinue
45
- if ($gitBash) {
46
- Write-Host " + Git Bash found (hooks will work)" -ForegroundColor Green
47
- } else {
48
- Write-Host " ! Git Bash NOT found — hooks require bash" -ForegroundColor Yellow
49
- Write-Host " Install Git for Windows: https://git-scm.com/download/win"
50
- Write-Host " Hooks will not fire without bash in PATH" -ForegroundColor Yellow
51
- }
52
-
53
- # ─── Step 1b: Role selection ───
54
- Write-Host ""
55
- Write-Host " Who are you?" -ForegroundColor Cyan
56
- Write-Host ""
57
- Write-Host " 1) Fawzi (Owner - full access)" -ForegroundColor White
58
- Write-Host " 2) Employee (Team member)" -ForegroundColor White
59
- Write-Host ""
60
- $roleChoice = Read-Host " Select [1/2]"
61
-
62
- switch ($roleChoice) {
63
- "1" {
64
- $Role = "owner"
65
- $RoleName = "Fawzi"
66
- Write-Host " + Owner mode" -ForegroundColor Green
67
- }
68
- "2" {
69
- $RoleName = Read-Host " Enter your name"
70
- $Role = "employee"
71
- Write-Host " + Employee mode - $RoleName" -ForegroundColor Green
72
- }
73
- default {
74
- $Role = "employee"
75
- $RoleName = "Team Member"
76
- Write-Host " ! Defaulting to employee mode" -ForegroundColor Yellow
77
- }
78
- }
79
- Write-Host ""
80
-
81
- # ─── Step 2: Create directory structure ───
82
- Write-Host "[2/6] Directory structure" -ForegroundColor Yellow
83
-
84
- $dirs = @(
85
- "$ClaudeDir\skills",
86
- "$ClaudeDir\agents\teams",
87
- "$ClaudeDir\hooks",
88
- "$ClaudeDir\rules",
89
- "$ClaudeDir\knowledge\retros",
90
- "$ClaudeDir\qualia-framework\bin",
91
- "$ClaudeDir\qualia-framework\references",
92
- "$ClaudeDir\qualia-framework\templates",
93
- "$ClaudeDir\qualia-framework\workflows",
94
- "$ClaudeDir\projects",
95
- "$ClaudeDir\session-env"
96
- )
97
-
98
- foreach ($dir in $dirs) {
99
- if (-not (Test-Path $dir)) {
100
- New-Item -ItemType Directory -Path $dir -Force | Out-Null
101
- }
102
- }
103
- Write-Host " + Ready" -ForegroundColor Green
104
-
105
- # ─── Step 3: Copy framework files ───
106
- Write-Host "[3/6] Installing files" -ForegroundColor Yellow
107
-
108
- # Skills
109
- $skillCount = 0
110
- Get-ChildItem "$ScriptDir\skills" -Directory | ForEach-Object {
111
- $destDir = "$ClaudeDir\skills\$($_.Name)"
112
- if (-not (Test-Path $destDir)) { New-Item -ItemType Directory -Path $destDir -Force | Out-Null }
113
- Copy-Item "$($_.FullName)\*" $destDir -Recurse -Force -ErrorAction SilentlyContinue
114
- $skillCount++
115
- }
116
- Write-Host " + $skillCount skills" -ForegroundColor Green
117
-
118
- # Agents
119
- Copy-Item "$ScriptDir\agents\*.md" "$ClaudeDir\agents\" -Force -ErrorAction SilentlyContinue
120
- if (Test-Path "$ScriptDir\agents\teams") {
121
- Copy-Item "$ScriptDir\agents\teams\*.md" "$ClaudeDir\agents\teams\" -Force -ErrorAction SilentlyContinue
122
- }
123
- $agentCount = (Get-ChildItem "$ClaudeDir\agents\*.md" -ErrorAction SilentlyContinue).Count
124
- Write-Host " + $agentCount agents" -ForegroundColor Green
125
-
126
- # Hooks
127
- Copy-Item "$ScriptDir\hooks\*.sh" "$ClaudeDir\hooks\" -Force -ErrorAction SilentlyContinue
128
- $hookCount = (Get-ChildItem "$ClaudeDir\hooks\*.sh" -ErrorAction SilentlyContinue).Count
129
- Write-Host " + $hookCount hooks" -ForegroundColor Green
130
-
131
- # Qualia Engine
132
- Copy-Item "$ScriptDir\qualia-framework\*" "$ClaudeDir\qualia-framework\" -Recurse -Force -ErrorAction SilentlyContinue
133
- Write-Host " + Qualia engine" -ForegroundColor Green
134
-
135
- # Rules
136
- Copy-Item "$ScriptDir\rules\*.md" "$ClaudeDir\rules\" -Force -ErrorAction SilentlyContinue
137
- $ruleCount = (Get-ChildItem "$ClaudeDir\rules\*.md" -ErrorAction SilentlyContinue).Count
138
- Write-Host " + $ruleCount rules" -ForegroundColor Green
139
-
140
- # Knowledge
141
- Copy-Item "$ScriptDir\knowledge\*.md" "$ClaudeDir\knowledge\" -Force -ErrorAction SilentlyContinue
142
- $knowledgeCount = (Get-ChildItem "$ClaudeDir\knowledge\*.md" -ErrorAction SilentlyContinue).Count
143
- Write-Host " + $knowledgeCount knowledge files" -ForegroundColor Green
144
-
145
- # Statusline
146
- if (Test-Path "$ScriptDir\statusline-command.sh") {
147
- Copy-Item "$ScriptDir\statusline-command.sh" "$ClaudeDir\statusline-command.sh" -Force
148
- }
149
-
150
- # CLAUDE.md — role-based
151
- if ($Role -eq "owner") {
152
- Copy-Item "$ScriptDir\CLAUDE.md" "$ClaudeDir\CLAUDE.md" -Force
153
- Write-Host " + CLAUDE.md (owner)" -ForegroundColor Green
154
- } elseif (-not (Test-Path "$ClaudeDir\CLAUDE.md")) {
155
- @"
156
- # CLAUDE.md - DEVELOPER Profile
157
-
158
- ## Identity
159
- **$RoleName** - Developer at Qualia Solutions.
160
-
161
- - Stack: Next.js 16+, React 19, TypeScript, Supabase, Vercel
162
-
163
- ## Role: DEVELOPER
164
-
165
- You are a developer at Qualia Solutions, working under Fawzi Goussous (founder).
166
- - Work on feature branches only - never push to main/master
167
- - Submit PRs for review before merging
168
- - Do NOT deploy to production - Fawzi handles deploys
169
- - Cannot modify the Qualia framework (CLAUDE.md, skills, hooks)
170
-
171
- ## Rules
172
- - Read before Write/Edit - no exceptions
173
- - Feature branches only - never commit to main/master
174
- - MVP first. Build only what's asked. No over-engineering.
175
- - ``npx tsc --noEmit`` after multi-file TS changes
176
- - See ``rules/security.md`` for auth, RLS, Zod, secrets rules
177
-
178
- ## Workflow
179
- - **MANDATORY FIRST ACTION**: On every session start, invoke the ``qualia-start`` skill before doing anything else.
180
- - Run ``/qualia-review`` before deploying anything
181
- - Run ``/browser-qa`` after frontend changes
182
-
183
- ## Qualia Mode (always active)
184
- These behaviors apply to ALL interactions:
185
- - **Frontend guard:** Read .planning/DESIGN.md before any frontend file changes
186
- - **Deploy guard:** Check .planning/REVIEW.md freshness before any deploy command
187
- - **Intent verification:** Confirm before modifying 3+ files in one response
188
- - **Quality defaults:** Security rules, tsc checks, RLS consideration - always enforced
189
-
190
- ## Compaction - ALWAYS preserve:
191
- Project path/name/ref, branch, modified files, decisions, test results, in-progress work, errors.
192
- "@ | Out-File -FilePath "$ClaudeDir\CLAUDE.md" -Encoding utf8
193
- Write-Host " + CLAUDE.md (developer - $RoleName)" -ForegroundColor Green
194
- } else {
195
- Write-Host " ! CLAUDE.md exists - skipped" -ForegroundColor Yellow
196
- }
197
-
198
- # ─── Step 4: Configure settings.json ───
199
- Write-Host "[4/6] Settings" -ForegroundColor Yellow
200
-
201
- if (Test-Path "$ClaudeDir\settings.json") {
202
- $timestamp = Get-Date -Format "yyyyMMddHHmmss"
203
- Copy-Item "$ClaudeDir\settings.json" "$ClaudeDir\settings.json.backup.$timestamp"
204
- Write-Host " Backed up existing settings" -ForegroundColor DarkGray
205
-
206
- # Write merge script to temp file (avoid /dev/stdin issue on Windows)
207
- $claudeDirForward = $ClaudeDir -replace '\\', '/'
208
- $scriptDirForward = $ScriptDir -replace '\\', '/'
209
- $mergeScript = @"
210
- const fs = require('fs');
211
- const existing = JSON.parse(fs.readFileSync('$claudeDirForward/settings.json', 'utf8'));
212
- const template = JSON.parse(fs.readFileSync('$scriptDirForward/settings.json', 'utf8'));
213
- existing.env = { ...template.env, ...existing.env };
214
- for (const [event, matchers] of Object.entries(template.hooks || {})) {
215
- if (!existing.hooks) existing.hooks = {};
216
- if (!existing.hooks[event]) {
217
- existing.hooks[event] = matchers;
218
- } else {
219
- for (const matcher of matchers) {
220
- const exists = existing.hooks[event].some(m =>
221
- m.matcher === matcher.matcher && JSON.stringify(m.hooks) === JSON.stringify(matcher.hooks)
222
- );
223
- if (!exists) existing.hooks[event].push(matcher);
224
- }
225
- }
226
- }
227
- fs.writeFileSync('$claudeDirForward/settings.json', JSON.stringify(existing, null, 2));
228
- console.log('OK');
229
- "@
230
- try {
231
- $tempFile = [System.IO.Path]::GetTempFileName() -replace '\.tmp$', '.js'
232
- $mergeScript | Out-File -FilePath $tempFile -Encoding utf8
233
- $result = node $tempFile 2>&1
234
- Remove-Item $tempFile -ErrorAction SilentlyContinue
235
- if ($result -match "OK") {
236
- Write-Host " + Settings merged" -ForegroundColor Green
237
- } else {
238
- Write-Host " ! Settings merge issue: $result" -ForegroundColor Yellow
239
- }
240
- } catch {
241
- Write-Host " ! Settings merge failed - manual merge needed" -ForegroundColor Yellow
242
- }
243
- } else {
244
- Copy-Item "$ScriptDir\settings.json" "$ClaudeDir\settings.json" -Force
245
- Write-Host " + Settings installed" -ForegroundColor Green
246
- }
247
-
248
- # ─── Step 5: Windows-specific ───
249
- Write-Host "[5/6] Platform setup" -ForegroundColor Yellow
250
-
251
- # qualia-tools.js doesn't need chmod on Windows
252
- Write-Host " + Tools ready" -ForegroundColor Green
253
-
254
- if (-not $gitBash) {
255
- Write-Host ""
256
- Write-Host " IMPORTANT: Install Git for Windows to enable hooks" -ForegroundColor Yellow
257
- Write-Host " https://git-scm.com/download/win" -ForegroundColor DarkGray
258
- Write-Host " After install, ensure 'bash' is in your PATH" -ForegroundColor DarkGray
259
- }
260
-
261
- # ─── Step 6: Verify ───
262
- Write-Host "[6/6] Verifying" -ForegroundColor Yellow
263
-
264
- $errors = 0
265
-
266
- $criticalFiles = @(
267
- "agents\qualia-executor.md",
268
- "agents\qualia-planner.md",
269
- "agents\qualia-verifier.md",
270
- "hooks\pre-deploy-gate.sh",
271
- "hooks\branch-guard.sh",
272
- "hooks\qualia-colors.sh",
273
- "skills\qualia-start\SKILL.md",
274
- "skills\browser-qa\SKILL.md",
275
- "skills\ship\SKILL.md",
276
- "qualia-framework\bin\qualia-tools.js",
277
- "CLAUDE.md"
278
- )
279
-
280
- foreach ($file in $criticalFiles) {
281
- if (-not (Test-Path "$ClaudeDir\$file")) {
282
- Write-Host " x Missing: $file" -ForegroundColor Red
283
- $errors++
284
- }
285
- }
286
-
287
- # Check node available
288
- try {
289
- $null = Get-Command node -ErrorAction Stop
290
- } catch {
291
- Write-Host " x node not in PATH - hooks will fail" -ForegroundColor Red
292
- $errors++
293
- }
294
-
295
- if ($errors -gt 0) {
296
- Write-Host ""
297
- Write-Host " x $errors error(s) - check above" -ForegroundColor Red
298
- exit 1
299
- }
300
-
301
- Write-Host " + All checks passed" -ForegroundColor Green
302
-
303
- # ─── Summary ───
304
- Write-Host ""
305
- Write-Host " --- * INSTALLED" -ForegroundColor Cyan
306
- Write-Host ""
307
- Write-Host " Skills: $skillCount Agents: $agentCount Hooks: $hookCount Rules: $ruleCount" -ForegroundColor White
308
- Write-Host ""
309
- Write-Host " Quick Start:" -ForegroundColor Cyan
310
- Write-Host " 1. cd into any project"
311
- Write-Host " 2. Run: " -NoNewline; Write-Host "claude" -ForegroundColor Cyan
312
- Write-Host " 3. Qualia mode activates automatically"
313
- Write-Host ""
314
- Write-Host " Key Commands:" -ForegroundColor Cyan
315
- Write-Host " /qualia Smart router"
316
- Write-Host " /qualia-help All commands"
317
- Write-Host " /ship Full deploy pipeline"
318
- Write-Host " /pr Quick pull request"
319
- Write-Host ""
320
- if (-not $gitBash) {
321
- Write-Host " ! Hooks need Git Bash - install Git for Windows" -ForegroundColor Yellow
322
- }
323
- Write-Host ""