qualia-framework 2.2.1 → 2.4.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.
- package/framework/hooks/confirm-delete.sh +2 -2
- package/framework/hooks/migration-validate.sh +2 -2
- package/framework/hooks/pre-commit.sh +4 -4
- package/framework/hooks/pre-deploy-gate.sh +6 -21
- package/framework/install.sh +9 -4
- package/framework/qualia-engine/VERSION +1 -1
- package/framework/qualia-engine/templates/projects/ai-agent.md +1 -1
- package/framework/qualia-engine/templates/projects/voice-agent.md +4 -4
- package/framework/qualia-engine/templates/roadmap.md +10 -0
- package/framework/qualia-engine/templates/state.md +3 -0
- package/framework/qualia-engine/workflows/new-project.md +22 -21
- package/framework/skills/client-handoff/SKILL.md +125 -0
- package/framework/skills/collab-onboard/SKILL.md +111 -0
- package/framework/skills/docs-lookup/SKILL.md +4 -3
- package/framework/skills/learn/SKILL.md +1 -1
- package/framework/skills/mobile-expo/SKILL.md +117 -4
- package/framework/skills/openrouter-agent/SKILL.md +922 -0
- package/framework/skills/qualia/SKILL.md +11 -5
- package/framework/skills/qualia-audit-milestone/SKILL.md +5 -2
- package/framework/skills/qualia-complete-milestone/SKILL.md +9 -5
- package/framework/skills/qualia-execute-phase/SKILL.md +5 -2
- package/framework/skills/qualia-help/SKILL.md +96 -62
- package/framework/skills/qualia-new-project/SKILL.md +184 -62
- package/framework/skills/qualia-plan-phase/SKILL.md +5 -2
- package/framework/skills/qualia-verify-work/SKILL.md +14 -4
- package/framework/skills/qualia-workflow/SKILL.md +5 -5
- package/framework/skills/ship/SKILL.md +32 -6
- package/framework/skills/voice-agent/SKILL.md +1174 -269
- package/package.json +1 -1
|
@@ -22,11 +22,11 @@ Read:
|
|
|
22
22
|
- Phase PLAN.md — for acceptance criteria
|
|
23
23
|
- Phase SUMMARY.md — for what was implemented
|
|
24
24
|
|
|
25
|
-
Reference: `~/.claude/qualia-
|
|
25
|
+
Reference: `~/.claude/qualia-framework/workflows/verify-work.md`
|
|
26
26
|
|
|
27
27
|
### 2. Create UAT Tracking
|
|
28
28
|
|
|
29
|
-
Create `{phase}-UAT.md` using template from `~/.claude/qualia-
|
|
29
|
+
Create `{phase}-UAT.md` using template from `~/.claude/qualia-framework/templates/UAT.md`:
|
|
30
30
|
|
|
31
31
|
```markdown
|
|
32
32
|
# Phase {N}: {Name} — UAT Results
|
|
@@ -57,7 +57,14 @@ This is interactive — discuss findings with the user as you go.
|
|
|
57
57
|
|
|
58
58
|
#### All tests pass:
|
|
59
59
|
Update UAT.md overall status to ✅ PASSED. Update STATE.md phase status to `verified`.
|
|
60
|
-
|
|
60
|
+
|
|
61
|
+
Then check ROADMAP.md for remaining phases:
|
|
62
|
+
|
|
63
|
+
**If more phases exist after this one:**
|
|
64
|
+
> "Phase {N} verified! Next up: Phase {N+1} — {phase name}. Run `/qualia-plan-phase {N+1}`."
|
|
65
|
+
|
|
66
|
+
**If this was the last phase:**
|
|
67
|
+
> "All phases complete! Run `/qualia-audit-milestone` to verify the full milestone before wrapping up."
|
|
61
68
|
|
|
62
69
|
#### Issues found:
|
|
63
70
|
Document gaps in UAT.md. For each gap:
|
|
@@ -70,7 +77,7 @@ Then offer:
|
|
|
70
77
|
|
|
71
78
|
### 5. Shipping Checklist Cross-Reference
|
|
72
79
|
|
|
73
|
-
After UAT testing, cross-reference results against the relevant shipping checklist from `~/.claude/qualia-
|
|
80
|
+
After UAT testing, cross-reference results against the relevant shipping checklist from `~/.claude/qualia-framework/references/completion-checklists.md`.
|
|
74
81
|
|
|
75
82
|
Detect project type from `.planning/PROJECT.md` or `package.json` and load:
|
|
76
83
|
- **website** → "Website-Specific Checklist" + "Universal Checklist"
|
|
@@ -103,3 +110,6 @@ Update `.planning/STATE.md` to reflect verification status.
|
|
|
103
110
|
|-------|------|------|
|
|
104
111
|
| `qualia-planner` | `~/.claude/agents/qualia-planner.md` | Creates fix plans from diagnosed gaps |
|
|
105
112
|
| `qualia-plan-checker` | `~/.claude/agents/qualia-plan-checker.md` | Validates fix plans (max 3 iterations) |
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
> Stuck? Type `/qualia-idk` · Lost? Type `/qualia-help`
|
|
@@ -16,9 +16,9 @@ Project conventions for Qualia Solutions client work. For specific tooling, use
|
|
|
16
16
|
| Styling | Tailwind CSS + shadcn/ui | Custom themes per client |
|
|
17
17
|
| Backend | Supabase | Postgres, Auth, RLS, Edge Functions |
|
|
18
18
|
| Deployment | Vercel | Preview on PR, Production on main |
|
|
19
|
-
| Voice AI |
|
|
20
|
-
|
|
|
21
|
-
|
|
|
19
|
+
| Voice AI | Retell AI + ElevenLabs | Call orchestration + TTS/voice cloning |
|
|
20
|
+
| AI Models | OpenRouter | Model-flexible (Claude, Mistral, etc.) |
|
|
21
|
+
| Payments | Stripe / HyperPay | Region-dependent |
|
|
22
22
|
|
|
23
23
|
## Project Structure
|
|
24
24
|
|
|
@@ -120,9 +120,9 @@ export async function createProduct(formData: FormData) {
|
|
|
120
120
|
|
|
121
121
|
- **Supabase**: Use `/supabase` skill (CLI-first) or Supabase MCP plugin
|
|
122
122
|
- **Context7 MCP**: Library documentation lookup
|
|
123
|
-
- **
|
|
123
|
+
- **Retell AI**: Voice agent call orchestration
|
|
124
|
+
- **ElevenLabs MCP**: Voice synthesis and cloning
|
|
124
125
|
- **Telnyx MCP**: Phone numbers, messaging, calls
|
|
125
|
-
- **ElevenLabs MCP**: Voice synthesis
|
|
126
126
|
- **Playwright MCP**: Browser automation and testing
|
|
127
127
|
- **Sentry MCP**: Error tracking and monitoring
|
|
128
128
|
- **Firecrawl MCP**: Web scraping and search
|
|
@@ -21,7 +21,7 @@ Reference `.planning/PROJECT.md` and `.planning/STATE.md` for project config. If
|
|
|
21
21
|
Detect project type from codebase signals:
|
|
22
22
|
|
|
23
23
|
- **agent**: Has AI provider imports (`openai`, `anthropic`, `@ai-sdk`), webhook handlers, agent logic
|
|
24
|
-
- **voice**: Has
|
|
24
|
+
- **voice**: Has Retell/ElevenLabs/Telnyx imports, voice webhook handlers, `x-retell-signature`
|
|
25
25
|
- **website**: Has `app/page.tsx` or `pages/index.tsx`, no AI provider imports, primarily UI components
|
|
26
26
|
- **edge-functions**: Has `supabase/functions/` directory, no frontend
|
|
27
27
|
|
|
@@ -29,7 +29,7 @@ If ambiguous, ask user. If pure edge functions, skip tsc/eslint quality gates.
|
|
|
29
29
|
|
|
30
30
|
## Shipping Checklist Gate
|
|
31
31
|
|
|
32
|
-
Before deploying, load the relevant shipping checklist from `~/.claude/qualia-
|
|
32
|
+
Before deploying, load the relevant shipping checklist from `~/.claude/qualia-framework/references/completion-checklists.md`:
|
|
33
33
|
|
|
34
34
|
- **website** → "Website-Specific Checklist" + "Universal Checklist"
|
|
35
35
|
- **agent** → "AI Agent Checklist" + "Universal Checklist"
|
|
@@ -53,7 +53,12 @@ Include the checklist results in the final deploy report (Step 8).
|
|
|
53
53
|
|
|
54
54
|
### 2. Quality Gates
|
|
55
55
|
|
|
56
|
-
Run in sequence,
|
|
56
|
+
Run in sequence. **If any gate fails, DO NOT dump raw errors to the employee.** Instead:
|
|
57
|
+
|
|
58
|
+
1. Summarize what failed in plain language
|
|
59
|
+
2. Auto-fix the issues
|
|
60
|
+
3. Re-run the gate
|
|
61
|
+
4. If auto-fix works, continue. If not, tell the employee what's happening.
|
|
57
62
|
|
|
58
63
|
```bash
|
|
59
64
|
npx tsc --noEmit # TypeScript check — skip if no tsconfig or pure edge functions
|
|
@@ -61,6 +66,21 @@ npx eslint . --max-warnings 0 # Lint check — skip if no eslint config
|
|
|
61
66
|
npm run build # Build verification — skip if pure edge functions
|
|
62
67
|
```
|
|
63
68
|
|
|
69
|
+
**On TypeScript failure:**
|
|
70
|
+
> "Found {N} code errors. Fixing them now..."
|
|
71
|
+
> Fix the errors, then re-run `npx tsc --noEmit`.
|
|
72
|
+
> If still failing after 2 attempts: "Some errors need your input. Here's what's wrong: {plain language summary}. Tell me how to proceed."
|
|
73
|
+
|
|
74
|
+
**On ESLint failure:**
|
|
75
|
+
> "Found {N} code quality issues. Fixing them now..."
|
|
76
|
+
> Run `npx eslint . --fix` first, then re-check.
|
|
77
|
+
> If still failing: "Some lint issues can't be auto-fixed: {summary}. Fixing manually..."
|
|
78
|
+
|
|
79
|
+
**On build failure:**
|
|
80
|
+
> "The build failed. Investigating..."
|
|
81
|
+
> Read the error, diagnose, fix, and retry.
|
|
82
|
+
> If still failing: "Build is failing because {plain language reason}. This needs investigation — try `/qualia-debug` or escalate to Fawzi."
|
|
83
|
+
|
|
64
84
|
### 2a. Run Tests
|
|
65
85
|
|
|
66
86
|
If test infrastructure exists (per `~/.claude/skills/test-runner/SKILL.md` detection):
|
|
@@ -70,7 +90,10 @@ npm test 2>&1 | tail -30 # Unit/Integration
|
|
|
70
90
|
npx playwright test 2>&1 # E2E (if configured)
|
|
71
91
|
```
|
|
72
92
|
|
|
73
|
-
|
|
93
|
+
**On test failure:**
|
|
94
|
+
> "Tests are failing. Fixing now..."
|
|
95
|
+
> Attempt to fix failing tests. Re-run.
|
|
96
|
+
> If still failing after 2 attempts: "{N} tests still failing. Here's the summary: {plain language}. Fix these before deploying, or say 'ship anyway' to skip tests."
|
|
74
97
|
If no test infrastructure: skip silently.
|
|
75
98
|
|
|
76
99
|
### 2b. Review Gate
|
|
@@ -101,7 +124,7 @@ Based on detected or specified type:
|
|
|
101
124
|
|
|
102
125
|
#### If voice (Voice Agent):
|
|
103
126
|
|
|
104
|
-
- **Webhook signature verification** — Grep for signature check (`x-
|
|
127
|
+
- **Webhook signature verification** — Grep for signature check (`x-retell-signature`, `signature`, `hmac`, `verify`). Report: PASS/WARN
|
|
105
128
|
- **Edge function latency note** — First-response latency target: < 500ms. After deploy, test with: `curl -w "%{time_total}" -X POST <webhook-url>`
|
|
106
129
|
|
|
107
130
|
#### If website (Website):
|
|
@@ -199,4 +222,7 @@ If production issues detected:
|
|
|
199
222
|
- **Supabase migrations**: Create reverse migration
|
|
200
223
|
- **Emergency**: Vercel dashboard manual rollback
|
|
201
224
|
|
|
202
|
-
If ANY quality gate or safety check FAILS:
|
|
225
|
+
If ANY quality gate or safety check FAILS: attempt to auto-fix. If auto-fix fails after 2 attempts, explain the issue in plain language and suggest next steps. Never dump raw error output without a plain-language summary first.
|
|
226
|
+
|
|
227
|
+
---
|
|
228
|
+
> Stuck? Type `/qualia-idk` · Lost? Type `/qualia-help`
|