class-ai-agent 1.4.1 → 1.5.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/.agent/README.md +10 -5
- package/.agent/rules/agent-continuity.md +44 -0
- package/.agent/rules/antigravity-overview.md +38 -0
- package/.agent/rules/api-conventions.md +85 -0
- package/.agent/rules/clean-code.md +211 -0
- package/.agent/rules/code-style.md +92 -0
- package/.agent/rules/codegraph.md +47 -0
- package/.agent/rules/database.md +66 -0
- package/.agent/rules/error-handling.md +98 -0
- package/.agent/rules/git-workflow.md +83 -0
- package/.agent/rules/monitoring.md +317 -0
- package/.agent/rules/naming-conventions.md +266 -0
- package/.agent/rules/project-structure.md +71 -0
- package/.agent/rules/security.md +95 -0
- package/.agent/rules/system-design.md +168 -0
- package/.agent/rules/tech-stack.md +463 -0
- package/.agent/rules/testing.md +110 -0
- package/.agents/agents/backend.md +395 -0
- package/.agents/agents/business-analyst.md +380 -0
- package/.agents/agents/code-reviewer.md +110 -0
- package/.agents/agents/copywriter-seo.md +236 -0
- package/.agents/agents/frontend.md +384 -0
- package/.agents/agents/project-manager.md +201 -0
- package/.agents/agents/qa.md +221 -0
- package/.agents/agents/security-auditor.md +143 -0
- package/.agents/agents/systems-architect.md +211 -0
- package/.agents/agents/test-engineer.md +123 -0
- package/.agents/agents/ui-ux-designer.md +210 -0
- package/.agents/references/accessibility-checklist.md +174 -0
- package/.agents/references/agent-continuity.md +42 -0
- package/.agents/references/codegraph.md +90 -0
- package/.agents/references/mcp-antigravity.md +71 -0
- package/.agents/references/performance-checklist.md +150 -0
- package/.agents/references/security-checklist.md +94 -0
- package/.agents/references/supabase.md +55 -0
- package/.agents/references/testing-patterns.md +183 -0
- package/.agents/skills/agent-continuity/SKILL.md +70 -0
- package/.agents/skills/code-review/SKILL.md +208 -0
- package/.agents/skills/deploy/SKILL.md +68 -0
- package/.agents/skills/deploy/deploy.md +735 -0
- package/.agents/skills/incremental-implementation/SKILL.md +210 -0
- package/.agents/skills/security-review/SKILL.md +71 -0
- package/.agents/skills/supabase/SKILL.md +135 -0
- package/.agents/skills/supabase/UPSTREAM.md +16 -0
- package/.agents/skills/supabase/assets/feedback-issue-template.md +17 -0
- package/.agents/skills/supabase/references/skill-feedback.md +17 -0
- package/.agents/skills/supabase-postgres-best-practices/SKILL.md +64 -0
- package/.agents/skills/supabase-postgres-best-practices/UPSTREAM.md +16 -0
- package/.agents/skills/supabase-postgres-best-practices/references/_contributing.md +170 -0
- package/.agents/skills/supabase-postgres-best-practices/references/_sections.md +39 -0
- package/.agents/skills/supabase-postgres-best-practices/references/_template.md +34 -0
- package/.agents/skills/supabase-postgres-best-practices/references/advanced-full-text-search.md +55 -0
- package/.agents/skills/supabase-postgres-best-practices/references/advanced-jsonb-indexing.md +49 -0
- package/.agents/skills/supabase-postgres-best-practices/references/conn-idle-timeout.md +46 -0
- package/.agents/skills/supabase-postgres-best-practices/references/conn-limits.md +44 -0
- package/.agents/skills/supabase-postgres-best-practices/references/conn-pooling.md +41 -0
- package/.agents/skills/supabase-postgres-best-practices/references/conn-prepared-statements.md +46 -0
- package/.agents/skills/supabase-postgres-best-practices/references/data-batch-inserts.md +54 -0
- package/.agents/skills/supabase-postgres-best-practices/references/data-n-plus-one.md +53 -0
- package/.agents/skills/supabase-postgres-best-practices/references/data-pagination.md +50 -0
- package/.agents/skills/supabase-postgres-best-practices/references/data-upsert.md +50 -0
- package/.agents/skills/supabase-postgres-best-practices/references/lock-advisory.md +56 -0
- package/.agents/skills/supabase-postgres-best-practices/references/lock-deadlock-prevention.md +68 -0
- package/.agents/skills/supabase-postgres-best-practices/references/lock-short-transactions.md +50 -0
- package/.agents/skills/supabase-postgres-best-practices/references/lock-skip-locked.md +54 -0
- package/.agents/skills/supabase-postgres-best-practices/references/monitor-explain-analyze.md +45 -0
- package/.agents/skills/supabase-postgres-best-practices/references/monitor-pg-stat-statements.md +55 -0
- package/.agents/skills/supabase-postgres-best-practices/references/monitor-vacuum-analyze.md +55 -0
- package/.agents/skills/supabase-postgres-best-practices/references/query-composite-indexes.md +44 -0
- package/.agents/skills/supabase-postgres-best-practices/references/query-covering-indexes.md +40 -0
- package/.agents/skills/supabase-postgres-best-practices/references/query-index-types.md +48 -0
- package/.agents/skills/supabase-postgres-best-practices/references/query-missing-indexes.md +43 -0
- package/.agents/skills/supabase-postgres-best-practices/references/query-partial-indexes.md +45 -0
- package/.agents/skills/supabase-postgres-best-practices/references/schema-constraints.md +80 -0
- package/.agents/skills/supabase-postgres-best-practices/references/schema-data-types.md +46 -0
- package/.agents/skills/supabase-postgres-best-practices/references/schema-foreign-key-indexes.md +59 -0
- package/.agents/skills/supabase-postgres-best-practices/references/schema-lowercase-identifiers.md +55 -0
- package/.agents/skills/supabase-postgres-best-practices/references/schema-partitioning.md +55 -0
- package/.agents/skills/supabase-postgres-best-practices/references/schema-primary-keys.md +61 -0
- package/.agents/skills/supabase-postgres-best-practices/references/security-privileges.md +54 -0
- package/.agents/skills/supabase-postgres-best-practices/references/security-rls-basics.md +50 -0
- package/.agents/skills/supabase-postgres-best-practices/references/security-rls-performance.md +63 -0
- package/.agents/skills/tdd/SKILL.md +217 -0
- package/.agents/skills/ui-ux-pro-max/SKILL.md +288 -0
- package/.agents/skills/ui-ux-pro-max/data/charts.csv +26 -0
- package/.agents/skills/ui-ux-pro-max/data/colors.csv +97 -0
- package/.agents/skills/ui-ux-pro-max/data/icons.csv +101 -0
- package/.agents/skills/ui-ux-pro-max/data/landing.csv +31 -0
- package/.agents/skills/ui-ux-pro-max/data/products.csv +97 -0
- package/.agents/skills/ui-ux-pro-max/data/react-performance.csv +45 -0
- package/.agents/skills/ui-ux-pro-max/data/stacks/astro.csv +54 -0
- package/.agents/skills/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
- package/.agents/skills/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
- package/.agents/skills/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
- package/.agents/skills/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
- package/.agents/skills/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
- package/.agents/skills/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
- package/.agents/skills/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
- package/.agents/skills/ui-ux-pro-max/data/stacks/react.csv +54 -0
- package/.agents/skills/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
- package/.agents/skills/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
- package/.agents/skills/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
- package/.agents/skills/ui-ux-pro-max/data/stacks/vue.csv +50 -0
- package/.agents/skills/ui-ux-pro-max/data/styles.csv +68 -0
- package/.agents/skills/ui-ux-pro-max/data/typography.csv +58 -0
- package/.agents/skills/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
- package/.agents/skills/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
- package/.agents/skills/ui-ux-pro-max/data/web-interface.csv +31 -0
- package/.agents/skills/ui-ux-pro-max/scripts/core.py +253 -0
- package/.agents/skills/ui-ux-pro-max/scripts/design_system.py +1067 -0
- package/.agents/skills/ui-ux-pro-max/scripts/search.py +114 -0
- package/.agents/workflows/build.md +132 -0
- package/.agents/workflows/debug.md +242 -0
- package/.agents/workflows/deploy.md +43 -0
- package/.agents/workflows/fix-issue.md +45 -0
- package/.agents/workflows/handoff.md +93 -0
- package/.agents/workflows/plan.md +125 -0
- package/.agents/workflows/publish-npm.md +122 -0
- package/.agents/workflows/resume.md +106 -0
- package/.agents/workflows/review.md +53 -0
- package/.agents/workflows/simplify.md +221 -0
- package/.agents/workflows/spec.md +95 -0
- package/.agents/workflows/test.md +213 -0
- package/.cursor/rules/cursor-overview.mdc +3 -2
- package/.kiro/steering/kiro-overview.md +2 -2
- package/AGENTS.md +4 -1
- package/GEMINI.md +152 -0
- package/README.md +52 -15
- package/bin/class-ai-agent.cjs +85 -9
- package/package.json +9 -4
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: Code Review & Quality
|
|
3
|
+
description: Five-axis code review for comprehensive quality assessment
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Code Review & Quality Skill
|
|
7
|
+
|
|
8
|
+
## Philosophy
|
|
9
|
+
|
|
10
|
+
> "Approve a change when it definitely improves overall code health, even if it isn't perfect."
|
|
11
|
+
|
|
12
|
+
Progress over perfection. Continuous incremental improvement.
|
|
13
|
+
|
|
14
|
+
---
|
|
15
|
+
|
|
16
|
+
## Five-Axis Review Framework
|
|
17
|
+
|
|
18
|
+
### Axis 1: Correctness
|
|
19
|
+
|
|
20
|
+
**Questions to ask:**
|
|
21
|
+
- Does the implementation match the specification?
|
|
22
|
+
- Are edge cases handled?
|
|
23
|
+
- Are error paths covered?
|
|
24
|
+
- Are there potential runtime issues?
|
|
25
|
+
- Off-by-one errors
|
|
26
|
+
- Race conditions
|
|
27
|
+
- Null/undefined access
|
|
28
|
+
- Resource leaks
|
|
29
|
+
|
|
30
|
+
**Test adequacy:**
|
|
31
|
+
- Do tests verify the claimed behavior?
|
|
32
|
+
- Are negative cases tested?
|
|
33
|
+
- Would a bug slip through?
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
### Axis 2: Readability & Simplicity
|
|
38
|
+
|
|
39
|
+
**Questions to ask:**
|
|
40
|
+
- Can another engineer understand this without explanation?
|
|
41
|
+
- Are names clear and descriptive?
|
|
42
|
+
- Is control flow straightforward?
|
|
43
|
+
- Is the code organized logically?
|
|
44
|
+
|
|
45
|
+
**Complexity checks:**
|
|
46
|
+
- Deep nesting (> 3 levels)?
|
|
47
|
+
- Long functions (> 30 lines)?
|
|
48
|
+
- Clever tricks that obscure intent?
|
|
49
|
+
- Unnecessary abstractions?
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
### Axis 3: Architecture
|
|
54
|
+
|
|
55
|
+
**Questions to ask:**
|
|
56
|
+
- Does this follow existing patterns in the codebase?
|
|
57
|
+
- Are module boundaries respected?
|
|
58
|
+
- Is there code duplication that should be extracted?
|
|
59
|
+
- Is the abstraction level appropriate?
|
|
60
|
+
- Do dependencies flow in the right direction?
|
|
61
|
+
|
|
62
|
+
**Over-engineering checks:**
|
|
63
|
+
- Is this simpler than it needs to be?
|
|
64
|
+
- Are there abstractions "for future use"?
|
|
65
|
+
- Would a simpler approach work?
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
### Axis 4: Security
|
|
70
|
+
|
|
71
|
+
**Input validation:**
|
|
72
|
+
- Is user input validated and sanitized?
|
|
73
|
+
- Are queries parameterized?
|
|
74
|
+
- Is output properly encoded?
|
|
75
|
+
|
|
76
|
+
**Authentication & Authorization:**
|
|
77
|
+
- Are auth checks in place?
|
|
78
|
+
- Is ownership verified for resources?
|
|
79
|
+
- Are permissions enforced?
|
|
80
|
+
|
|
81
|
+
**Secrets management:**
|
|
82
|
+
- No hardcoded secrets?
|
|
83
|
+
- Sensitive data excluded from logs?
|
|
84
|
+
- External data treated as untrusted?
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
### Axis 5: Performance
|
|
89
|
+
|
|
90
|
+
**Common issues:**
|
|
91
|
+
- N+1 query patterns?
|
|
92
|
+
- Unbounded operations (loops, queries)?
|
|
93
|
+
- Missing pagination?
|
|
94
|
+
- Unnecessary re-renders (React)?
|
|
95
|
+
- Objects created in hot paths?
|
|
96
|
+
- Missing indexes for queries?
|
|
97
|
+
|
|
98
|
+
**Async handling:**
|
|
99
|
+
- Are async operations properly awaited?
|
|
100
|
+
- Could operations be parallelized?
|
|
101
|
+
|
|
102
|
+
---
|
|
103
|
+
|
|
104
|
+
## Change Sizing Guidelines
|
|
105
|
+
|
|
106
|
+
| Size | Lines | Guidance |
|
|
107
|
+
|------|-------|----------|
|
|
108
|
+
| **Ideal** | ~100 | Easy to review thoroughly |
|
|
109
|
+
| **Acceptable** | ~300 | Requires focused review |
|
|
110
|
+
| **Too Large** | 1000+ | Split into smaller PRs |
|
|
111
|
+
|
|
112
|
+
Each PR should be **one logical change**, not an entire feature.
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## Comment Severity Labels
|
|
117
|
+
|
|
118
|
+
Use prefixes to clarify intent:
|
|
119
|
+
|
|
120
|
+
| Label | Meaning | Action Required |
|
|
121
|
+
|-------|---------|-----------------|
|
|
122
|
+
| (none) | Required change | Must fix before merge |
|
|
123
|
+
| `Critical:` | Merge blocker | Must fix before merge |
|
|
124
|
+
| `Nit:` | Minor/style | Optional, author's choice |
|
|
125
|
+
| `Optional:` | Suggestion | Consider, not required |
|
|
126
|
+
| `FYI:` | Informational | No action needed |
|
|
127
|
+
|
|
128
|
+
**Examples:**
|
|
129
|
+
```
|
|
130
|
+
Critical: This allows SQL injection via the `name` parameter.
|
|
131
|
+
|
|
132
|
+
Nit: Consider renaming `data` to `userData` for clarity.
|
|
133
|
+
|
|
134
|
+
Optional: You could use `Array.from()` here instead of spread.
|
|
135
|
+
|
|
136
|
+
FYI: We have a shared utility for this in `src/utils/format.ts`.
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
---
|
|
140
|
+
|
|
141
|
+
## Review Process
|
|
142
|
+
|
|
143
|
+
### Step 1: Understand Context
|
|
144
|
+
|
|
145
|
+
- What is this PR trying to achieve?
|
|
146
|
+
- Is there a linked issue or spec?
|
|
147
|
+
- What's the scope of changes?
|
|
148
|
+
|
|
149
|
+
### Step 2: Review Tests First
|
|
150
|
+
|
|
151
|
+
Tests reveal:
|
|
152
|
+
- What behavior is expected
|
|
153
|
+
- What edge cases are considered
|
|
154
|
+
- Whether coverage is adequate
|
|
155
|
+
|
|
156
|
+
### Step 3: Examine Implementation
|
|
157
|
+
|
|
158
|
+
Walk through changes with the 5 axes in mind.
|
|
159
|
+
|
|
160
|
+
### Step 4: Categorize Findings
|
|
161
|
+
|
|
162
|
+
- **Must fix** — Correctness, security, critical bugs
|
|
163
|
+
- **Should fix** — Readability, architecture concerns
|
|
164
|
+
- **Consider** — Suggestions, style preferences
|
|
165
|
+
|
|
166
|
+
### Step 5: Provide Actionable Feedback
|
|
167
|
+
|
|
168
|
+
```
|
|
169
|
+
❌ "This is confusing"
|
|
170
|
+
|
|
171
|
+
✅ "This nested conditional is hard to follow. Consider extracting
|
|
172
|
+
the inner logic to a named function like `isEligibleForDiscount()`"
|
|
173
|
+
```
|
|
174
|
+
|
|
175
|
+
---
|
|
176
|
+
|
|
177
|
+
## Review Output Format
|
|
178
|
+
|
|
179
|
+
```markdown
|
|
180
|
+
## Review: [PR Title]
|
|
181
|
+
|
|
182
|
+
### Summary
|
|
183
|
+
[1-2 sentences on overall assessment]
|
|
184
|
+
|
|
185
|
+
### Critical Issues
|
|
186
|
+
- **[file:line]** [Issue description]
|
|
187
|
+
|
|
188
|
+
### Important
|
|
189
|
+
- **[file:line]** [Issue description]
|
|
190
|
+
|
|
191
|
+
### Suggestions
|
|
192
|
+
- **[file:line]** [Suggestion]
|
|
193
|
+
|
|
194
|
+
### Verdict
|
|
195
|
+
- [ ] Approve
|
|
196
|
+
- [ ] Request changes
|
|
197
|
+
- [ ] Needs discussion
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
---
|
|
201
|
+
|
|
202
|
+
## Rules
|
|
203
|
+
|
|
204
|
+
- **Don't accept "I'll clean it up later"** — It won't happen
|
|
205
|
+
- **Remove dead code** — Don't comment it out
|
|
206
|
+
- **Review within 1 business day** — Faster is better
|
|
207
|
+
- **Be kind, not nice** — Honest feedback helps everyone
|
|
208
|
+
- **One approval minimum** — Before any merge
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: deploy
|
|
3
|
+
description: Skill to automate the full deployment process including build, test, and release steps
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Deploy Skill
|
|
7
|
+
|
|
8
|
+
## Purpose
|
|
9
|
+
Automate the deployment pipeline: build → test → deploy → verify.
|
|
10
|
+
|
|
11
|
+
## Prerequisites
|
|
12
|
+
- All tests passing
|
|
13
|
+
- Environment variables configured
|
|
14
|
+
- Access to deployment target
|
|
15
|
+
|
|
16
|
+
## Steps
|
|
17
|
+
|
|
18
|
+
### 1. Verify Clean State
|
|
19
|
+
```bash
|
|
20
|
+
git status
|
|
21
|
+
git pull origin main
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
### 2. Run Tests
|
|
25
|
+
```bash
|
|
26
|
+
npm test
|
|
27
|
+
```
|
|
28
|
+
If tests fail → STOP. Report failures.
|
|
29
|
+
|
|
30
|
+
### 3. Build
|
|
31
|
+
```bash
|
|
32
|
+
npm run build
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
### 4. Deploy by Environment
|
|
36
|
+
|
|
37
|
+
**Development:**
|
|
38
|
+
```bash
|
|
39
|
+
docker-compose -f docker-compose.dev.yml up -d --build
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
**Production:**
|
|
43
|
+
```bash
|
|
44
|
+
docker-compose -f docker-compose.prod.yml pull
|
|
45
|
+
docker-compose -f docker-compose.prod.yml up -d
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
### 5. Health Check
|
|
49
|
+
```bash
|
|
50
|
+
curl -f http://localhost:3000/health || echo "Health check failed"
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### 6. Tail Logs (first 30 seconds)
|
|
54
|
+
```bash
|
|
55
|
+
docker-compose logs --tail=50 -f app
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
## Rollback
|
|
59
|
+
```bash
|
|
60
|
+
git revert HEAD --no-edit
|
|
61
|
+
git push origin main
|
|
62
|
+
# Redeploy previous version
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Success Criteria
|
|
66
|
+
- Health endpoint returns 200
|
|
67
|
+
- No error logs in initial 30 seconds
|
|
68
|
+
- All smoke tests pass
|