skills/project-rx/SKILL.md
Project completeness inspector — identifies missing components, capabilities, and infrastructure for your project type. Detects project archetype (SaaS, API Platform, Marketplace, Internal Tool, Mobile Backend, AI Product, CLI, Library) and evaluates against a mandatory component checklist. Use when starting a project, planning features, doing gap analysis, or when the user says "what's missing", "run project-rx", "project audit", "completeness check", "gap analysis", "what should I build next", or "inspect project". Produces a completeness scorecard with prioritized build plan.
npx skillsauth add acardozzo/rx-suite project-rxInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
None (POSIX only)
Check all dependencies: bash scripts/rx-deps.sh or bash scripts/rx-deps.sh --install
"What does this project NEED but DOESN'T HAVE?"
While other rx skills grade the quality of what exists, project-rx identifies what's MISSING — like a building inspector checking if a house has all required components.
Detect the project type by examining codebase signals. Assign exactly ONE primary archetype and optionally ONE secondary archetype.
| # | Archetype | Key Signals | |---|-----------|-------------| | A1 | SaaS | Subscription logic, tenant isolation, billing integration, dashboard UI, pricing page | | A2 | API Platform | OpenAPI/Swagger, API key management, rate limiting, developer docs, SDK generation | | A3 | Marketplace | Buyer/seller roles, listings, transactions, reviews, escrow/payment splits | | A4 | Internal Tool | Admin panels, internal auth (SSO/LDAP), data tables, forms, reports, no public marketing | | A5 | Mobile Backend | Push notification config, mobile-specific APIs, device tokens, app store references | | A6 | AI Product | LLM/ML imports, embeddings, vector DB, prompt templates, model config, inference endpoints | | A7 | CLI Tool | CLI framework (commander/yargs/clap/cobra), no HTTP server, args parsing, terminal output | | A8 | Library/Package | Exports-focused, no app entry point, published to registry, README-centric, minimal deps |
Run these checks in parallel to classify the project:
1. Read package.json / Cargo.toml / pyproject.toml / go.mod for dependency signals
2. Scan for route definitions (pages/, routes/, controllers/)
3. Check for DB schema files (migrations/, prisma/, drizzle/, schema.sql)
4. Look for billing/payment code (stripe, paddle, billing, subscription)
5. Check for auth setup (auth/, login, signup, next-auth, clerk, supabase auth)
6. Look for API documentation (swagger, openapi, redoc)
7. Check for CLI entry points (bin/, cli.ts, main.rs with clap)
8. Scan for ML/AI imports (openai, langchain, transformers, embeddings)
9. Check for marketplace signals (listing, seller, buyer, review, cart)
10. Check for mobile signals (expo, react-native, push notification, FCM, APNs)
Assign the archetype with the strongest signal match. If ambiguous, default to SaaS (most common).
Each archetype adjusts the base weights. See references/grading-framework.md for the full adjustment tables.
| Dimension | Base Weight | |-----------|-------------| | D1: Identity & Access | 12% | | D2: Data & Storage | 10% | | D3: Communication & Notifications | 10% | | D4: Business Logic & Domain | 12% | | D5: API & Integration | 10% | | D6: Reliability & Operations | 10% | | D7: Security & Compliance | 10% | | D8: Developer Experience & CI/CD | 8% | | D9: User Experience Infrastructure | 10% | | D10: Growth & Analytics | 8% |
Deploy 5 parallel agents to scan the codebase:
| Agent | Dimensions | What to Scan | |-------|-----------|--------------| | Agent 1: Identity & Security | D1 + D7 | Auth files, middleware, guards, policies, session config, security headers, secrets management, audit logging | | Agent 2: Data & Communication | D2 + D3 | Database config, migrations, models, cache config, search setup, email templates, WebSocket handlers, push config, webhooks | | Agent 3: Business & API | D4 + D5 | Domain models, business rules, tenant logic, billing/payment code, API routes, API docs, integrations, API keys | | Agent 4: Ops & DX | D6 + D8 | Health checks, monitoring config, error tracking setup, logging config, CI/CD files, dev scripts, linters, documentation | | Agent 5: UX & Growth | D9 + D10 | Error pages, loading states, responsive setup, onboarding flows, analytics setup, feature flags, export/import, admin panels |
For every sub-metric in their assigned dimensions:
NOT_PRESENT (0) — No evidence whatsoeverMINIMAL (40) — Placeholder, stub, or extremely partialBASIC (70) — Works for MVP, missing advanced featuresPRODUCTION (85) — Solid, covers main use casesWORLD_CLASS (100) — Fully featured, best-in-classEach agent uses these search patterns (non-exhaustive):
D1: Identity & Access
auth/, login, signup, next-auth, clerk, supabase.auth, passport, @auth/*roles, permissions, guards, policies, can(), authorize, middleware/authsession, token, refresh, jwt, cookie, revoke, deviceusers/, profile, avatar, invite, disable, user.create, user.updateD2: Data & Storage
prisma/, drizzle/, migrations/, schema.sql, mongoose, typeorm, knexupload, s3, storage, multer, sharp, cloudinary, CDNredis, cache, memcached, lru-cache, unstable_cache, revalidateelasticsearch, algolia, meilisearch, typesense, full-text, search indexD3: Communication & Notifications
email/, mailer, sendgrid, resend, postmark, ses, email templatewebsocket, socket.io, pusher, ably, SSE, EventSource, realtimepush notification, FCM, APNs, web-push, service-worker, notification preferenceswebhook, event delivery, webhook.send, hmac, webhook dashboardD4: Business Logic & Domain
entities/, models/, domain/, aggregates, value-objectsrules/, validators/, workflows/, state-machine, xstatetenant, organization, workspace, team, org_id, tenant_idstripe, billing, subscription, plan, invoice, payment, meteringD5: API & Integration
routes/, controllers/, api/, trpc, graphql, grpc, versioningswagger, openapi, redoc, api-docs, spec.yaml, spec.jsonintegrations/, oauth, providers/, connectors/, third-party SDKsapi-key, developer portal, key management, usage tracking, rate limitD6: Reliability & Operations
health, readiness, liveness, /healthz, /ready, pingprometheus, datadog, grafana, metrics, dashboard, alertsentry, bugsnag, error boundary, source map, error reportingwinston, pino, bunyan, structured log, correlation-id, log levelD7: Security & Compliance
zod, joi, yup, class-validator, ajv, sanitize, schema validationhelmet, CSP, CORS, HSTS, X-Frame, security headers.env, vault, infisical, doppler, aws secretsmanager, .env.exampleaudit, activity log, who-what-when, changelog, event sourcingD8: Developer Experience & CI/CD
.github/workflows/, Jenkinsfile, .gitlab-ci.yml, Dockerfile, deploydocker-compose, Makefile, dev script, seed, .nvmrc, dev.sheslint, prettier, biome, husky, lint-staged, tsconfig, type-checkREADME.md, docs/, ADR, ARCHITECTURE.md, CONTRIBUTING.mdD9: User Experience Infrastructure
404, 500, error.tsx, not-found.tsx, empty-state, fallbackloading.tsx, Skeleton, toast, progress, spinner, Suspense@media, sm:, md:, aria-, role=, sr-only, keyboardonboarding, welcome, getting-started, setup wizard, tour, tooltipD10: Growth & Analytics
analytics, posthog, mixpanel, amplitude, gtag, segment, track(feature flag, launchdarkly, flagsmith, unleash, growthbook, flagexport, import, CSV, download, data portability, GDPRadmin/, back-office, dashboard/admin, manage users, admin routeUnlike other rx skills that measure quality, project-rx measures existence and completeness:
| Score | Level | Meaning | |-------|-------|---------| | 100 | World-class | Fully featured, best-in-class, nothing missing | | 85 | Production-ready | Solid implementation, covers main use cases | | 70 | Basic / MVP | Works, but missing advanced features | | 40 | Minimal | Placeholder, stub, or extremely partial | | 0 | Not present | No evidence of this component |
Each dimension has 4 sub-metrics, equally weighted (25% each within the dimension):
dimension_score = (M_x.1 + M_x.2 + M_x.3 + M_x.4) / 4
overall_score = sum(dimension_score_i * archetype_weight_i) for i in 1..10
| Grade | Range | Meaning | |-------|-------|---------| | A+ | 97-100 | Exemplary completeness | | A | 93-96 | Excellent completeness | | A- | 90-92 | Very strong | | B+ | 87-89 | Strong | | B | 83-86 | Good completeness | | B- | 80-82 | Above average | | C+ | 77-79 | Fair | | C | 73-76 | Adequate for early stage | | C- | 70-72 | Below expectations | | D+ | 67-69 | Significant gaps | | D | 63-66 | Many missing components | | D- | 60-62 | Barely functional | | F | 0-59 | Critical completeness failures |
================================================================
PROJECT-RX COMPLETENESS SCORECARD
Project: {project_name}
Archetype: {detected_archetype} ({confidence}%)
Date: {date}
================================================================
OVERALL SCORE: {score}/100 ({grade})
┌─────────────────────────────────────────┬───────┬───────┐
│ Dimension │ Score │ Grade │
├─────────────────────────────────────────┼───────┼───────┤
│ D1: Identity & Access ({weight}%) │ {s} │ {g} │
│ M1.1 Authentication │ {s} │ │
│ M1.2 Authorization / RBAC │ {s} │ │
│ M1.3 Session Management │ {s} │ │
│ M1.4 User Management │ {s} │ │
├─────────────────────────────────────────┼───────┼───────┤
│ D2: Data & Storage ({weight}%) │ {s} │ {g} │
│ M2.1 Primary Data Store │ {s} │ │
│ M2.2 File/Media Storage │ {s} │ │
│ M2.3 Caching Layer │ {s} │ │
│ M2.4 Search Capability │ {s} │ │
├─────────────────────────────────────────┼───────┼───────┤
│ D3: Communication ({weight}%) │ {s} │ {g} │
│ M3.1 Email System │ {s} │ │
│ M3.2 Real-time Updates │ {s} │ │
│ M3.3 Push Notifications │ {s} │ │
│ M3.4 Webhook Outbound │ {s} │ │
├─────────────────────────────────────────┼───────┼───────┤
│ D4: Business Logic ({weight}%) │ {s} │ {g} │
│ M4.1 Core Domain Model │ {s} │ │
│ M4.2 Business Rules Engine │ {s} │ │
│ M4.3 Multi-tenancy │ {s} │ │
│ M4.4 Billing & Subscription │ {s} │ │
├─────────────────────────────────────────┼───────┼───────┤
│ D5: API & Integration ({weight}%) │ {s} │ {g} │
│ M5.1 API Layer │ {s} │ │
│ M5.2 API Documentation │ {s} │ │
│ M5.3 Third-party Integrations │ {s} │ │
│ M5.4 API Keys & Developer Portal │ {s} │ │
├─────────────────────────────────────────┼───────┼───────┤
│ D6: Reliability & Ops ({weight}%) │ {s} │ {g} │
│ M6.1 Health Checks │ {s} │ │
│ M6.2 Monitoring & Alerting │ {s} │ │
│ M6.3 Error Tracking │ {s} │ │
│ M6.4 Logging │ {s} │ │
├─────────────────────────────────────────┼───────┼───────┤
│ D7: Security & Compliance ({weight}%) │ {s} │ {g} │
│ M7.1 Input Validation │ {s} │ │
│ M7.2 Security Headers │ {s} │ │
│ M7.3 Secrets Management │ {s} │ │
│ M7.4 Audit Trail │ {s} │ │
├─────────────────────────────────────────┼───────┼───────┤
│ D8: Developer Experience ({weight}%) │ {s} │ {g} │
│ M8.1 CI/CD Pipeline │ {s} │ │
│ M8.2 Development Setup │ {s} │ │
│ M8.3 Code Quality Tooling │ {s} │ │
│ M8.4 Documentation │ {s} │ │
├─────────────────────────────────────────┼───────┼───────┤
│ D9: UX Infrastructure ({weight}%) │ {s} │ {g} │
│ M9.1 Error & Empty States │ {s} │ │
│ M9.2 Loading & Feedback │ {s} │ │
│ M9.3 Responsive & Accessible │ {s} │ │
│ M9.4 Onboarding Flow │ {s} │ │
├─────────────────────────────────────────┼───────┼───────┤
│ D10: Growth & Analytics ({weight}%) │ {s} │ {g} │
│ M10.1 Analytics Tracking │ {s} │ │
│ M10.2 Feature Flags │ {s} │ │
│ M10.3 Data Export / Import │ {s} │ │
│ M10.4 Admin Panel │ {s} │ │
└─────────────────────────────────────────┴───────┴───────┘
For every sub-metric scoring 0 (Not Present), output:
================================================================
MISSING COMPONENTS — BUILD PLAN
================================================================
Priority Legend: [BLOCKER] [CRITICAL] [HIGH] [MEDIUM] [LOW]
Effort Legend: S (< 1 day) M (1-3 days) L (3-7 days) XL (1-2 weeks)
┌────┬─────────────────────────┬──────────┬────────┬─────────────────────────────────┬──────────────┐
│ # │ Component │ Priority │ Effort │ Suggested Approach │ Follow-up RX │
├────┼─────────────────────────┼──────────┼────────┼─────────────────────────────────┼──────────────┤
│ 1 │ M1.1 Authentication │ BLOCKER │ M │ Implement NextAuth/Clerk/... │ sec-rx │
│ 2 │ M6.1 Health Checks │ HIGH │ S │ Add /healthz endpoint with... │ ops-rx │
│ ...│ │ │ │ │ │
└────┴─────────────────────────┴──────────┴────────┴─────────────────────────────────┴──────────────┘
Priority is determined by archetype + dimension weight:
| Condition | Priority | |-----------|----------| | Sub-metric is in a dimension with archetype weight >= 15% | BLOCKER | | Sub-metric is in a dimension with archetype weight >= 12% | CRITICAL | | Sub-metric is in a dimension with archetype weight >= 10% | HIGH | | Sub-metric is in a dimension with archetype weight >= 8% | MEDIUM | | Sub-metric is in a dimension with archetype weight < 8% or marked N/A | LOW |
Sort missing components by:
After building a component, recommend the appropriate rx skill for quality assessment:
| Component Area | Follow-up RX | |----------------|-------------| | Auth, sessions, RBAC | sec-rx | | API layer, docs, integrations | api-rx (if available), code-rx | | Domain model, business rules | code-rx, arch-rx | | Database, storage, caching | code-rx, ops-rx | | CI/CD, dev setup, tooling | ops-rx | | UI states, responsiveness, a11y | ux-rx | | Monitoring, logging, health | ops-rx | | Tests (after building anything) | test-rx | | Documentation | doc-rx | | Security headers, secrets, audit | sec-rx | | Analytics, feature flags, admin | code-rx |
After the scorecard, provide:
List the top 3-5 BLOCKER/CRITICAL missing components with concrete next steps.
Group HIGH/MEDIUM missing components into logical build phases.
Flag any components at score 40 (minimal) that need upgrading before production.
Always detect archetype first. The archetype determines weight adjustments and priority assignments. Never skip detection.
Evidence-based scoring only. Every score must cite specific files, config entries, or code patterns. No guessing. If uncertain, score lower and note the uncertainty.
Score 0 means truly absent. Not "I couldn't find it" but "I searched comprehensively and confirmed it doesn't exist." Document what you searched for.
Score 40 requires visible code. A TODO comment or empty file counts as 0, not 40. There must be actual functioning (even if minimal) code.
Score 70 requires working functionality. The component must actually work end-to-end for the basic case. Untested code that might work scores 40.
Score 85 requires production evidence. Error handling, edge cases covered, configuration externalized, tested.
Score 100 is rare and earned. Must demonstrate advanced features, comprehensive testing, monitoring, documentation. Almost never given.
Archetype N/A components score 100. If a component is not applicable to the archetype (e.g., billing for a Library), score it 100 and mark as "N/A — not applicable to {archetype}". This prevents penalizing projects for things they don't need.
Never inflate scores for potential. Score what EXISTS, not what's planned or easy to add. The build plan handles what to add next.
The build plan is mandatory. Even if the project scores well, there are always improvements. Always produce the build plan section.
Parallel agents must not overlap. Each agent scans only their assigned dimensions. No duplicate scanning.
Cross-reference dependencies. When listing missing components, note dependencies (e.g., "M4.4 Billing requires M1.1 Authentication first").
Effort estimates are for MVP-level (score 70). The effort to go from 0 to 70 (basic working implementation), not to 100.
Respect the project's tech stack. Suggestions in the build plan must use the project's existing framework, language, and tooling. Don't suggest Django solutions for a Next.js project.
Run this skill before other rx skills. project-rx identifies WHAT to build; other rx skills assess HOW WELL it's built. The recommended workflow is: project-rx first, build missing components, then run specific rx skills for quality assessment.
After generating the scorecard and saving the report to docs/audits/:
docs/rx-plans/{this-skill-name}/{date}-report.mdrx-plan skill to create or update the improvement plan at docs/rx-plans/{this-skill-name}/{dimension}/v{N}-{date}-plan.mddocs/rx-plans/{this-skill-name}/summary.md with current scoresdocs/rx-plans/dashboard.md with overall progressThis happens automatically — the user does not need to run /rx-plan separately.
development
Prescriptive UX/UI evaluation producing scored opportunity maps for Next.js + shadcn/ui projects. Evaluates user experience against Nielsen Heuristics, WCAG 2.2, Core Web Vitals, Laws of UX, and Atomic Design. Use when: auditing UX quality, evaluating accessibility, reviewing component usage, identifying missing shadcn components, improving form UX, or when the user says "ux audit", "run ux-rx", "evaluate UX", "accessibility check", "improve user experience", "shadcn review", "how to reach A+ UX", or "UX opportunities". Measures 11 dimensions (44 sub-metrics). Fixed stack: Next.js App Router + shadcn/ui + Tailwind CSS. Leverages shadcn registry to recommend ready-to-use components. Outputs per-page scorecards with before/after Mermaid diagrams.
development
Evaluates testing strategy and completeness across 8 dimensions (32 sub-metrics): test pyramid balance, test effectiveness, contract/API testing, UI/visual testing, performance/load testing, test data management, CI integration, and test organization. Produces a scored diagnostic with actionable improvement plans.
development
Code-level security posture evaluation. Scans for OWASP Top 10 vulnerabilities, authentication flaws, injection vectors, authorization gaps, and data protection issues. Complements arch-rx D9 (architectural security) by inspecting actual source code patterns, dependencies, and security configurations. Produces a scored report across 8 dimensions with 32 sub-metrics mapped to OWASP ASVS and CWE references.
testing
Generates versioned improvement plans from rx report results. Creates one plan per dimension that scores below A+ (97). Plans are saved to docs/rx-plans/{domain}/{dimension}/v{N}-{date}-plan.md. Use after running any rx skill, or when the user says "create plan from report", "rx plan", "plan improvements", "generate improvement plan", "what should I fix first", "create roadmap", "improvement plan", "plan from audit", or "next steps from rx".