qualia-framework 6.2.9 → 6.3.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 (93) hide show
  1. package/AGENTS.md +1 -0
  2. package/CLAUDE.md +1 -0
  3. package/README.md +26 -30
  4. package/agents/builder.md +7 -7
  5. package/agents/planner.md +39 -3
  6. package/agents/research-synthesizer.md +1 -1
  7. package/agents/researcher.md +3 -3
  8. package/agents/roadmapper.md +7 -7
  9. package/agents/verifier.md +18 -6
  10. package/agents/visual-evaluator.md +8 -7
  11. package/bin/cli.js +160 -16
  12. package/bin/command-surface.js +71 -0
  13. package/bin/contract-runner.js +219 -0
  14. package/bin/harness-eval.js +296 -0
  15. package/bin/host-adapters.js +66 -0
  16. package/bin/install.js +116 -172
  17. package/bin/knowledge-flush.js +21 -10
  18. package/bin/knowledge.js +1 -1
  19. package/bin/plan-contract.js +99 -2
  20. package/bin/planning-hygiene.js +262 -0
  21. package/bin/project-snapshot.js +20 -0
  22. package/bin/report-payload.js +18 -0
  23. package/bin/runtime-manifest.js +35 -0
  24. package/bin/state-ledger.js +184 -0
  25. package/bin/state.js +330 -20
  26. package/bin/trust-score.js +268 -0
  27. package/bin/work-packet.js +228 -0
  28. package/docs/erp-contract.md +81 -1
  29. package/docs/onboarding.html +4 -14
  30. package/guide.md +16 -16
  31. package/hooks/fawzi-approval-guard.js +143 -0
  32. package/hooks/pre-deploy-gate.js +74 -1
  33. package/hooks/session-start.js +29 -1
  34. package/package.json +1 -1
  35. package/qualia-design/design-rubric.md +17 -5
  36. package/qualia-design/frontend.md +6 -2
  37. package/qualia-design/graphics.md +47 -0
  38. package/rules/codex-goal.md +1 -1
  39. package/rules/command-output.md +35 -0
  40. package/rules/one-opinion.md +2 -2
  41. package/rules/speed.md +0 -1
  42. package/skills/qualia/SKILL.md +12 -12
  43. package/skills/qualia-build/SKILL.md +20 -14
  44. package/skills/qualia-discuss/SKILL.md +10 -10
  45. package/skills/qualia-doctor/SKILL.md +140 -0
  46. package/skills/qualia-feature/SKILL.md +24 -22
  47. package/skills/qualia-fix/SKILL.md +216 -0
  48. package/skills/qualia-handoff/SKILL.md +9 -9
  49. package/skills/qualia-learn/SKILL.md +11 -11
  50. package/skills/qualia-map/SKILL.md +2 -2
  51. package/skills/qualia-milestone/SKILL.md +15 -15
  52. package/skills/qualia-new/REFERENCE.md +9 -9
  53. package/skills/qualia-new/SKILL.md +14 -14
  54. package/skills/qualia-optimize/REFERENCE.md +1 -1
  55. package/skills/qualia-optimize/SKILL.md +23 -16
  56. package/skills/qualia-plan/SKILL.md +23 -13
  57. package/skills/qualia-polish/REFERENCE.md +15 -15
  58. package/skills/qualia-polish/SKILL.md +81 -21
  59. package/skills/qualia-polish/scripts/loop.mjs +3 -3
  60. package/skills/qualia-polish/scripts/score.mjs +9 -3
  61. package/skills/{qualia-vibe/scripts/extract.mjs → qualia-polish/scripts/vibe-extract.mjs} +5 -5
  62. package/skills/{qualia-vibe/scripts/tokens.mjs → qualia-polish/scripts/vibe-tokens.mjs} +6 -6
  63. package/skills/qualia-postmortem/SKILL.md +9 -9
  64. package/skills/qualia-report/SKILL.md +23 -23
  65. package/skills/qualia-research/SKILL.md +5 -5
  66. package/skills/qualia-review/SKILL.md +28 -12
  67. package/skills/qualia-road/SKILL.md +30 -22
  68. package/skills/qualia-ship/SKILL.md +31 -24
  69. package/skills/qualia-test/SKILL.md +5 -5
  70. package/skills/qualia-verify/SKILL.md +45 -23
  71. package/skills/zoho-workflow/SKILL.md +1 -1
  72. package/templates/help.html +11 -20
  73. package/tests/bin.test.sh +178 -76
  74. package/tests/hooks.test.sh +81 -1
  75. package/tests/install-smoke.test.sh +35 -5
  76. package/tests/lib.test.sh +432 -0
  77. package/tests/published-install-smoke.test.sh +4 -3
  78. package/tests/refs.test.sh +9 -4
  79. package/tests/runner.js +32 -28
  80. package/tests/skills.test.sh +4 -4
  81. package/tests/state.test.sh +133 -3
  82. package/skills/qualia-debug/SKILL.md +0 -185
  83. package/skills/qualia-flush/SKILL.md +0 -198
  84. package/skills/qualia-help/SKILL.md +0 -74
  85. package/skills/qualia-hook-gen/SKILL.md +0 -206
  86. package/skills/qualia-idk/SKILL.md +0 -166
  87. package/skills/qualia-issues/SKILL.md +0 -151
  88. package/skills/qualia-pause/SKILL.md +0 -68
  89. package/skills/qualia-resume/SKILL.md +0 -52
  90. package/skills/qualia-skill-new/SKILL.md +0 -173
  91. package/skills/qualia-triage/SKILL.md +0 -152
  92. package/skills/qualia-vibe/SKILL.md +0 -226
  93. package/skills/qualia-zoom/SKILL.md +0 -51
@@ -25,7 +25,7 @@ Generate tests for client project code. Detect framework, classify targets, writ
25
25
  ## Process
26
26
 
27
27
  ```bash
28
- node ~/.claude/bin/qualia-ui.js banner test
28
+ node ${QUALIA_BIN}/qualia-ui.js banner test
29
29
  ```
30
30
 
31
31
  ### 1. Detect Test Framework
@@ -118,10 +118,10 @@ npx vitest run --coverage 2>&1 | tail -30
118
118
  ### 5. Report
119
119
 
120
120
  ```bash
121
- node ~/.claude/bin/qualia-ui.js divider
122
- node ~/.claude/bin/qualia-ui.js info "Files tested: {N}"
123
- node ~/.claude/bin/qualia-ui.js ok "Passing: {pass}/{total}"
124
- node ~/.claude/bin/qualia-ui.js end "TESTS DONE"
121
+ node ${QUALIA_BIN}/qualia-ui.js divider
122
+ node ${QUALIA_BIN}/qualia-ui.js info "Files tested: {N}"
123
+ node ${QUALIA_BIN}/qualia-ui.js ok "Passing: {pass}/{total}"
124
+ node ${QUALIA_BIN}/qualia-ui.js end "TESTS DONE"
125
125
  ```
126
126
 
127
127
  If any tests fail, show the failures and offer to fix them.
@@ -28,30 +28,44 @@ Spawn verifier to check phase goal. Does NOT trust build summaries; greps codeba
28
28
  ```bash
29
29
  echo "---PLAN---"
30
30
  cat .planning/phase-{N}-plan.md 2>/dev/null
31
+ echo "---CONTRACT---"
32
+ cat .planning/phase-{N}-contract.json 2>/dev/null || echo "NO_JSON_CONTRACT"
31
33
  echo "---PREVIOUS---"
32
34
  cat .planning/phase-{N}-verification.md 2>/dev/null || echo "NONE"
33
35
  ```
34
36
 
35
- ### 2. Spawn Verifier (Fresh Context)
37
+ ### 2. Run Machine Contract First
38
+
39
+ If `.planning/phase-{N}-contract.json` exists, run:
40
+
41
+ ```bash
42
+ node ${QUALIA_BIN}/contract-runner.js .planning/phase-{N}-contract.json
43
+ ```
44
+
45
+ If it fails, the phase cannot PASS. Still spawn the verifier to explain the failure and identify the smallest gap-closure tasks. If it passes, pass the evidence file into the verifier prompt.
46
+
47
+ ### 3. Spawn Verifier (Fresh Context)
36
48
 
37
49
  ```bash
38
- node ~/.claude/bin/qualia-ui.js banner verify {N} "{phase name}"
39
- node ~/.claude/bin/qualia-ui.js spawn verifier "Goal-backward check..."
50
+ node ${QUALIA_BIN}/qualia-ui.js banner verify {N} "{phase name}"
51
+ node ${QUALIA_BIN}/qualia-ui.js spawn verifier "Goal-backward check..."
40
52
  ```
41
53
 
42
54
  ```
43
55
  Agent(prompt="
44
- Role: @~/.claude/agents/verifier.md
56
+ Role: @${QUALIA_AGENTS}/verifier.md
45
57
 
46
58
  Project: @.planning/PROJECT.md
47
59
  Plan + AC + validation: @.planning/phase-{N}-plan.md
60
+ Machine contract: @.planning/phase-{N}-contract.json
61
+ Contract evidence: @.planning/evidence/phase-{N}-contract-run.json
48
62
  {Re-verify → previous gaps: @.planning/phase-{N}-verification.md}
49
63
 
50
64
  Verify phase. Every finding needs file:line evidence. Severity Rubric for all labels. Output: .planning/phase-{N}-verification.md
51
65
  ", subagent_type="qualia-verifier", description="Verify phase {N}")
52
66
  ```
53
67
 
54
- ### 2b. Browser QA (if phase touched frontend)
68
+ ### 3b. Browser QA (if phase touched frontend)
55
69
 
56
70
  If plan Files include `.tsx`/`.jsx`/`.css`/`.scss` or `app/`/`pages/`/`components/` paths, spawn browser QA parallel:
57
71
 
@@ -64,7 +78,7 @@ If frontend:
64
78
 
65
79
  ```
66
80
  Agent(prompt="
67
- Role: @~/.claude/agents/qa-browser.md
81
+ Role: @${QUALIA_AGENTS}/qa-browser.md
68
82
 
69
83
  Plan: @.planning/phase-{N}-plan.md
70
84
  Verification: @.planning/phase-{N}-verification.md
@@ -75,17 +89,17 @@ Drive dev server, test routes phase touched. Append '## Browser QA' to verificat
75
89
 
76
90
  Wait for both verifier + QA before step 3. Playwright MCP unavailable → QA returns BLOCKED (note, not phase failure).
77
91
 
78
- ### 2c. Adversarial Second Opinion (--adversarial flag, optional)
92
+ ### 3c. Adversarial Second Opinion (--adversarial flag, optional)
79
93
 
80
94
  `--adversarial` in args, OR milestone is `Handoff`, OR plan touches `auth|payment|migration|rls|service_role` → spawn SECOND verifier in fresh context. Mitigates self-grading bias (~70% fewer findings without adversarial pass).
81
95
 
82
96
  ```bash
83
- node ~/.claude/bin/qualia-ui.js spawn verifier "Adversarial pass — find what's wrong"
97
+ node ${QUALIA_BIN}/qualia-ui.js spawn verifier "Adversarial pass — find what's wrong"
84
98
  ```
85
99
 
86
100
  ```
87
101
  Agent(prompt="
88
- Role: @~/.claude/agents/verifier.md
102
+ Role: @${QUALIA_AGENTS}/verifier.md
89
103
 
90
104
  ADVERSARIAL reviewer. Find what's WRONG. Assume cooperative verifier missed something. Same Severity Rubric + evidence-citation req. Bias toward edge cases:
91
105
  - Untested error paths?
@@ -104,14 +118,14 @@ Append '## Adversarial Findings' to verification file. Empty section fine if not
104
118
 
105
119
  Findings merge into main report. Union PASS/FAIL: either pass found CRITICAL/HIGH → phase FAIL.
106
120
 
107
- ### 2d. INSUFFICIENT EVIDENCE downgrade (mandatory)
121
+ ### 3d. INSUFFICIENT EVIDENCE downgrade (mandatory)
108
122
 
109
123
  The verifier marks criteria it could not check (budget exhaustion, missing context) as `INSUFFICIENT EVIDENCE`. The orchestrator must treat those as FAIL before declaring PASS. Grep the verification file and downgrade immediately:
110
124
 
111
125
  ```bash
112
126
  IE_COUNT=$(grep -c "INSUFFICIENT EVIDENCE" .planning/phase-{N}-verification.md 2>/dev/null || echo 0)
113
127
  if [ "$IE_COUNT" -gt 0 ]; then
114
- node ~/.claude/bin/qualia-ui.js warn "${IE_COUNT} criteria marked INSUFFICIENT EVIDENCE — downgrading verdict to FAIL"
128
+ node ${QUALIA_BIN}/qualia-ui.js warn "${IE_COUNT} criteria marked INSUFFICIENT EVIDENCE — downgrading verdict to FAIL"
115
129
  # Rewrite the verdict line in-place
116
130
  sed -i 's/^result: PASS$/result: FAIL/' .planning/phase-{N}-verification.md
117
131
  sed -i 's/^## Verdict$/## Verdict\n\n**Downgraded to FAIL:** '"${IE_COUNT}"' criteria left unchecked. Re-run with larger budget (`max(25, tasks*5)` already applied) or simplify the phase plan./' .planning/phase-{N}-verification.md
@@ -126,20 +140,20 @@ Read verification report. Present:
126
140
 
127
141
  **PASS:**
128
142
  ```bash
129
- node ~/.claude/bin/qualia-ui.js ok "All {count} criteria passed"
130
- node ~/.claude/bin/qualia-ui.js end "PHASE {N} VERIFIED" "/qualia-plan {N+1}"
143
+ node ${QUALIA_BIN}/qualia-ui.js ok "All {count} criteria passed"
144
+ node ${QUALIA_BIN}/qualia-ui.js end "PHASE {N} VERIFIED" "/qualia-plan {N+1}"
131
145
  ```
132
146
  (Last phase → `/qualia-polish` as next command.)
133
147
 
134
148
  **FAIL:**
135
149
  ```bash
136
- node ~/.claude/bin/qualia-ui.js ok "Passed: {pass_count}"
137
- node ~/.claude/bin/qualia-ui.js fail "Failed: {fail_count}"
150
+ node ${QUALIA_BIN}/qualia-ui.js ok "Passed: {pass_count}"
151
+ node ${QUALIA_BIN}/qualia-ui.js fail "Failed: {fail_count}"
138
152
  ```
139
153
 
140
154
  Per gap:
141
155
  ```bash
142
- node ~/.claude/bin/qualia-ui.js fail "{gap description}"
156
+ node ${QUALIA_BIN}/qualia-ui.js fail "{gap description}"
143
157
  ```
144
158
 
145
159
  **Self-healing:** before re-planning gaps, run postmortem so the framework learns from the miss. Writes `.planning/phase-{N}-postmortem.md`. Does NOT auto-apply deltas unless user runs `/qualia-postmortem --apply`.
@@ -150,13 +164,21 @@ node ~/.claude/bin/qualia-ui.js fail "{gap description}"
150
164
 
151
165
  End:
152
166
  ```bash
153
- node ~/.claude/bin/qualia-ui.js end "PHASE {N} GAPS FOUND" "/qualia-plan {N} --gaps"
167
+ node ${QUALIA_BIN}/qualia-ui.js end "PHASE {N} GAPS FOUND" "/qualia-plan {N} --gaps"
154
168
  ```
155
169
 
156
170
  ### 4. Update State
157
171
 
172
+ Write the deterministic eval artifact before changing state:
173
+
174
+ ```bash
175
+ node ${QUALIA_BIN}/harness-eval.js --phase {N} --run --write
176
+ ```
177
+
178
+ If the eval status is `FAIL`, do not mark the phase PASS. The state machine also refuses PASS when a contract exists but `.planning/evidence/phase-{N}-contract-run.json` is missing/failing, or when the verification report contains `INSUFFICIENT EVIDENCE`.
179
+
158
180
  ```bash
159
- node ~/.claude/bin/state.js transition --to verified --phase {N} --verification {pass|fail}
181
+ node ${QUALIA_BIN}/state.js transition --to verified --phase {N} --verification {pass|fail} --evidence .planning/evals/harness-eval-*.json
160
182
  ```
161
183
  PASS + more phases → state.js auto-advances.
162
184
  FAIL + gap_cycles >= limit → GAP_CYCLE_LIMIT, escalate.
@@ -166,7 +188,7 @@ Do NOT edit STATE.md or tracking.json manually; state.js handles both.
166
188
  Capture new state for auto-chain routing:
167
189
 
168
190
  ```bash
169
- NEW_STATE=$(node ~/.claude/bin/state.js check)
191
+ NEW_STATE=$(node ${QUALIA_BIN}/state.js check)
170
192
  # Parse: .phase, .total_phases, .status, .verification
171
193
  # Read .planning/JOURNEY.md to check if last phase of milestone
172
194
  ```
@@ -189,8 +211,8 @@ Handoff: milestone name == "Handoff" AND last phase.
189
211
  **Halt (gap cycle limit):**
190
212
 
191
213
  ```bash
192
- node ~/.claude/bin/qualia-ui.js fail "Phase {N} failed verification {cycles} times -- gap limit reached"
193
- node ~/.claude/bin/qualia-ui.js warn "Human intervention required. Options:"
214
+ node ${QUALIA_BIN}/qualia-ui.js fail "Phase {N} failed verification {cycles} times -- gap limit reached"
215
+ node ${QUALIA_BIN}/qualia-ui.js warn "Human intervention required. Options:"
194
216
  echo " 1. Re-plan from scratch: /qualia-plan {N}"
195
217
  echo " 2. Adjust roadmap (scope wrong)"
196
218
  echo " 3. Escalate to Fawzi (EMPLOYEE role)"
@@ -200,9 +222,9 @@ echo " 3. Escalate to Fawzi (EMPLOYEE role)"
200
222
 
201
223
  ```bash
202
224
  # PASS (or "/qualia-milestone" if last phase, "/qualia-polish" if overall last)
203
- node ~/.claude/bin/qualia-ui.js end "PHASE {N} VERIFIED" "/qualia-plan {N+1}"
225
+ node ${QUALIA_BIN}/qualia-ui.js end "PHASE {N} VERIFIED" "/qualia-plan {N+1}"
204
226
  # FAIL
205
- node ~/.claude/bin/qualia-ui.js end "PHASE {N} GAPS FOUND" "/qualia-plan {N} --gaps"
227
+ node ${QUALIA_BIN}/qualia-ui.js end "PHASE {N} GAPS FOUND" "/qualia-plan {N} --gaps"
206
228
  ```
207
229
 
208
230
  ### 5. Passive Knowledge Capture (on FAIL)
@@ -43,7 +43,7 @@ The full handoff runbook lives in the qualia-erp repo: `docs/finance-runbook.md`
43
43
  ## Email Formatting Rules (MANDATORY)
44
44
 
45
45
  - Always append Fawzi's signature at the bottom of every email
46
- - Read signature HTML from `~/.claude/knowledge/email-signature.html`
46
+ - Read signature HTML from `${QUALIA_KNOWLEDGE}/email-signature.html`
47
47
  - Never use dashes (---) or horizontal separators
48
48
  - Never use emojis
49
49
  - Professional, direct tone
@@ -297,7 +297,7 @@
297
297
  <div class="header-content">
298
298
  <h1><span>Qualia</span> Framework</h1>
299
299
  <p>Plan, build, verify, ship. The AI-powered workflow for Qualia Solutions.</p>
300
- <div class="version">{{VERSION}} &middot; 33 skills</div>
300
+ <div class="version">{{VERSION}} &middot; 35 skills</div>
301
301
  </div>
302
302
  </div>
303
303
 
@@ -328,7 +328,7 @@
328
328
 
329
329
  <!-- Skills -->
330
330
  <section>
331
- <h2>Skills (28)</h2>
331
+ <h2>Skills</h2>
332
332
 
333
333
  <!-- Road (core flow) -->
334
334
  <div class="cmd-group">
@@ -360,15 +360,13 @@
360
360
  <!-- Quality -->
361
361
  <div class="cmd-group">
362
362
  <h3>Quality</h3>
363
- <p class="cmd-group-note">Diagnose, audit, optimize, polish, test.</p>
363
+ <p class="cmd-group-note">Fix, diagnose, audit, optimize, polish, test.</p>
364
364
  <div class="commands">
365
- <div class="cmd"><span class="cmd-name">/qualia-debug</span><span class="cmd-desc">Structured debugging &mdash; symptom gathering, diagnosis confirmation, root cause analysis. Trigger on 'debug', 'find bug', 'fix error', 'something is broken'.</span></div>
366
- <div class="cmd"><span class="cmd-name">/qualia-review</span><span class="cmd-desc">Production audit with scored diagnostics. Runs real commands, scores findings by severity. Trigger on 'review', 'audit', 'code review', 'security check'.</span></div>
367
- <div class="cmd"><span class="cmd-name">/qualia-optimize</span><span class="cmd-desc">Deep optimization pass &mdash; reads .planning/ AND codebase to find performance, design, UI, backend, and frontend issues. Spawns parallel specialist agents. Supports --perf, --ui, --backend, --alignment, --fix flags.</span></div>
365
+ <div class="cmd"><span class="cmd-name">/qualia-doctor</span><span class="cmd-desc">Framework health check &mdash; install, state, contracts, memory, hooks, and ERP queue. Use when Qualia itself feels broken or Codex/Claude is not picking it up.</span></div>
366
+ <div class="cmd"><span class="cmd-name">/qualia-fix</span><span class="cmd-desc">Repair broken existing behavior &mdash; build a feedback loop, find root cause, patch minimally, verify, write a fix report. Trigger on 'fix this', 'bug', 'broken', 'failing test', 'regression'.</span></div>
367
+ <div class="cmd"><span class="cmd-name">/qualia-review</span><span class="cmd-desc">Read-only production audit with scored diagnostics. Runs real commands, scores findings by severity, then routes repairs to /qualia-fix, /qualia-polish, or /qualia-optimize.</span></div>
368
+ <div class="cmd"><span class="cmd-name">/qualia-optimize</span><span class="cmd-desc">Deep improvement discovery &mdash; reads .planning/ AND codebase to find performance, design, UI, backend, alignment, and architecture opportunities. Writes OPTIMIZE.md/RFCs; specific repairs route through /qualia-fix.</span></div>
368
369
  <div class="cmd"><span class="cmd-name">/qualia-test</span><span class="cmd-desc">Generate or run tests for client projects. Trigger on 'write tests', 'add tests', 'test this', 'test coverage'.</span></div>
369
- <div class="cmd"><span class="cmd-name">/qualia-zoom</span><span class="cmd-desc">Focus on a single file or function with full context (glossary terms, depending callers, ADRs touched). Use when a fresh agent needs surgical context for a tricky area.</span></div>
370
- <div class="cmd"><span class="cmd-name">/qualia-issues</span><span class="cmd-desc">Break a phase plan into independent vertical-slice GitHub issues with needs-triage label. Externalizes work to the open queue so other sessions or contributors can pull from it.</span></div>
371
- <div class="cmd"><span class="cmd-name">/qualia-triage</span><span class="cmd-desc">State machine over open GH issues — labels each as needs-triage, needs-info, ready-for-agent, ready-for-human, or wontfix. Pairs with /qualia-issues for the autonomous queue.</span></div>
372
370
  </div>
373
371
  </div>
374
372
 
@@ -377,9 +375,9 @@
377
375
  <h3>Quick Paths</h3>
378
376
  <p class="cmd-group-note">Lightweight alternatives when the full road is overkill.</p>
379
377
  <div class="commands">
380
- <div class="cmd"><span class="cmd-name">/qualia-feature</span><span class="cmd-desc">Auto-scoped single-feature build. Inline for trivia (typo, config), fresh builder spawn for 1-5 file features. Refuses and routes to /qualia-plan for phase-sized work. Flags: --force-spawn, --force-inline.</span></div>
381
- <div class="cmd"><span class="cmd-name">/qualia-polish</span><span class="cmd-desc">Design pass, scope-adaptive &mdash; component, route, full app, redesign, critique, quick. Add --loop for the autonomous screenshot &rarr; score &rarr; fix loop.</span></div>
382
- <div class="cmd"><span class="cmd-name">/qualia-vibe</span><span class="cmd-desc">Fast aesthetic pivot (~3 min) &mdash; swap design tokens (color, type, depth, motion), keep layout untouched. Default proposes ONE direction. Modes: --variants for A/B/C, --extract URL to reverse-engineer DESIGN.md from a reference site, --sync for code &harr; DESIGN.md back-sync.</span></div>
378
+ <div class="cmd"><span class="cmd-name">/qualia-feature</span><span class="cmd-desc">Auto-scoped new-feature build. Inline for trivia (copy, config), fresh builder spawn for 1-5 file features. Broken existing behavior routes to /qualia-fix. Flags: --force-spawn, --force-inline.</span></div>
379
+ <div class="cmd"><span class="cmd-name">/qualia-polish</span><span class="cmd-desc">Visual quality pass, scope-adaptive &mdash; component, route, full app, redesign, critique, quick. It fixes style/layout/accessibility only; functional bugs route to /qualia-fix.</span></div>
380
+ <div class="cmd"><span class="cmd-name">/qualia-polish --vibe</span><span class="cmd-desc">Fast aesthetic-token pivot (~3 min) &mdash; swap color, type, depth, and motion, keep layout untouched. Structural redesign routes to /qualia-polish --redesign.</span></div>
383
381
  </div>
384
382
  </div>
385
383
 
@@ -389,7 +387,6 @@
389
387
  <p class="cmd-group-note">Persist learnings and log work.</p>
390
388
  <div class="commands">
391
389
  <div class="cmd"><span class="cmd-name">/qualia-learn</span><span class="cmd-desc">Save a learning, pattern, fix, or client preference to the knowledge base. Persists across projects and sessions.</span></div>
392
- <div class="cmd"><span class="cmd-name">/qualia-flush</span><span class="cmd-desc">Promote raw daily logs into curated knowledge concepts. Use weekly or when session logs contain durable lessons.</span></div>
393
390
  <div class="cmd"><span class="cmd-name">/qualia-report</span><span class="cmd-desc">Generate session report and commit to repo. Mandatory before clock-out.</span></div>
394
391
  </div>
395
392
  </div>
@@ -399,8 +396,6 @@
399
396
  <h3>Session</h3>
400
397
  <p class="cmd-group-note">Hand off and resume context cleanly.</p>
401
398
  <div class="commands">
402
- <div class="cmd"><span class="cmd-name">/qualia-pause</span><span class="cmd-desc">Save session context for seamless handoff. Creates .continue-here.md so the next session picks up exactly where you left off.</span></div>
403
- <div class="cmd"><span class="cmd-name">/qualia-resume</span><span class="cmd-desc">Restore context from a previous session. Reads .continue-here.md or STATE.md, summarizes where you left off, routes to next action.</span></div>
404
399
  </div>
405
400
  </div>
406
401
 
@@ -410,8 +405,6 @@
410
405
  <p class="cmd-group-note">When you don't know what to do next.</p>
411
406
  <div class="commands">
412
407
  <div class="cmd"><span class="cmd-name">/qualia</span><span class="cmd-desc">Smart router &mdash; reads project state, classifies your situation, tells you the exact next command. Use whenever you're unsure about your next step.</span></div>
413
- <div class="cmd"><span class="cmd-name">/qualia-idk</span><span class="cmd-desc">Diagnostic intelligence &mdash; spawns two isolated scans (planning + codebase) in parallel, cross-references against your confusion, explains the situation in plain language with a concrete next step. Use when something feels off or you need to understand what's going on.</span></div>
414
- <div class="cmd"><span class="cmd-name">/qualia-help</span><span class="cmd-desc">Open the Qualia Framework reference guide in the browser. A beautiful themed HTML page with all commands, rules, services, and the road.</span></div>
415
408
  <div class="cmd"><span class="cmd-name">/qualia-road</span><span class="cmd-desc">Terminal workflow map — Project → Journey → Milestones → Phases → Tasks. Use in headless/SSH sessions or when you want the road in chat instead of the browser.</span></div>
416
409
  </div>
417
410
  </div>
@@ -421,9 +414,7 @@
421
414
  <h3>Meta</h3>
422
415
  <p class="cmd-group-note">Extend the framework itself.</p>
423
416
  <div class="commands">
424
- <div class="cmd"><span class="cmd-name">/qualia-skill-new</span><span class="cmd-desc">Author a new Qualia skill or agent. Generates the SKILL.md, registers it in the right location, and optionally ships to the framework repo.</span></div>
425
417
  <div class="cmd"><span class="cmd-name">/qualia-postmortem</span><span class="cmd-desc">Analyze a verification failure and turn the lesson into a framework improvement.</span></div>
426
- <div class="cmd"><span class="cmd-name">/qualia-hook-gen</span><span class="cmd-desc">Convert a CLAUDE.md or rules instruction into a deterministic Claude Code pre-tool-use hook. Lets you shrink your instruction budget instead of just hearing the advice.</span></div>
427
418
  <div class="cmd"><span class="cmd-name">/zoho-workflow</span><span class="cmd-desc">Internal Qualia Solutions ops — Zoho Invoice and Mail integration via ERP-first routing.</span></div>
428
419
  </div>
429
420
  </div>
@@ -548,7 +539,7 @@
548
539
  <div class="footer">
549
540
  <strong>Welcome to the future with Qualia.</strong><br>
550
541
  Qualia Solutions &mdash; Nicosia, Cyprus
551
- <span class="footer-version">qualia-framework {{VERSION}} &middot; 33 skills</span>
542
+ <span class="footer-version">qualia-framework {{VERSION}} &middot; 35 skills</span>
552
543
  </div>
553
544
 
554
545
  </body>