@valentia-ai-skills/framework 2.0.7 → 2.0.9
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/README.md +150 -6
- package/bin/cli.js +772 -56
- package/bin/code-audit-config.mjs +323 -0
- package/package.json +1 -1
- package/skills/global/aisupportapp-project-architecture/SKILL.md +1 -1
- package/skills/global/aisupportapp-project-conventions/SKILL.md +1 -1
- package/skills/global/aisupportapp-project-workflows/SKILL.md +1 -1
- package/skills/global/api-design/SKILL.md +1 -1
- package/skills/global/appointment-oas-app/SKILL.md +1 -1
- package/skills/global/code-quality-auditor/SKILL.md +704 -0
- package/skills/global/code-standards/SKILL.md +1 -1
- package/skills/global/codebase-legacy-intelligence/SKILL.md +1 -1
- package/skills/global/legacy-api-converter/SKILL.md +979 -0
- package/skills/global/legacy-redevelopment-planner/SKILL.md +622 -0
- package/skills/global/observability-integrations/SKILL.md +835 -0
- package/skills/global/project-scanner/SKILL.md +1 -1
- package/skills/global/ui-replication-engine/SKILL.md +591 -0
- package/skills/global/aisupportapp-test-installation/SKILL.md +0 -32
- package/skills/global/viteapp-core-workflows/SKILL.md +0 -32
package/README.md
CHANGED
|
@@ -58,10 +58,26 @@ npx ai-skills status # Show installed entities, team info, detected tool
|
|
|
58
58
|
npx ai-skills list # List locally bundled skills
|
|
59
59
|
npx ai-skills analyze # Analyze staged/last commit against active skills
|
|
60
60
|
npx ai-skills analyze --last # Analyze the most recent commit
|
|
61
|
+
npx ai-skills upload-code-audit --path ./CodeMatters/ # Upload a CodeMatters audit package
|
|
62
|
+
npx ai-skills audit-status --project "My Project" # Show latest audit summary for a project
|
|
61
63
|
npx ai-skills doctor # Health check (config, API, tools, entity counts)
|
|
62
64
|
npx ai-skills help # Show help
|
|
63
65
|
```
|
|
64
66
|
|
|
67
|
+
#### Code Quality Audits
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
# Upload a CodeMatters audit package to the Skills Console
|
|
71
|
+
npx ai-skills upload-code-audit --path ./CodeMatters/
|
|
72
|
+
npx ai-skills upload-code-audit --path ./CodeMatters/ --dry-run # validate only
|
|
73
|
+
npx ai-skills upload-code-audit --path ./CodeMatters/ --token <token>
|
|
74
|
+
|
|
75
|
+
# Show the latest audit summary for a project in the terminal
|
|
76
|
+
npx ai-skills audit-status --project "Clinical Sanctuary"
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
The `--path` directory for `upload-code-audit` must contain a `manifest.json` file and the generated markdown reports from the `code-quality-auditor` skill. See the [Code Quality Audits](#code-quality-audits) section below for the expected format.
|
|
80
|
+
|
|
65
81
|
#### Legacy Codebase Intelligence Scanner
|
|
66
82
|
|
|
67
83
|
```bash
|
|
@@ -93,6 +109,8 @@ The `--path` directory for `upload-legacy-scan` must contain a `manifest.json` f
|
|
|
93
109
|
| `AI_SKILLS_API_URL` | Override the Supabase Edge Function URL |
|
|
94
110
|
| `AI_SKILLS_ANALYZE_URL` | Override the analyze commit function URL |
|
|
95
111
|
| `AI_SKILLS_SCAN_URL` | Override the scan results function URL |
|
|
112
|
+
| `AI_SKILLS_UPLOAD_CODE_AUDIT_URL` | Override the upload-code-audit Edge Function URL |
|
|
113
|
+
| `AI_SKILLS_MANAGE_CODE_AUDITS_URL` | Override the manage-code-audits Edge Function URL |
|
|
96
114
|
| `AI_SKILLS_UPLOAD_LEGACY_URL` | Override the upload-legacy-scan Edge Function URL |
|
|
97
115
|
| `AI_SKILLS_MANAGE_LEGACY_URL` | Override the manage-legacy-projects Edge Function URL |
|
|
98
116
|
|
|
@@ -279,6 +297,121 @@ A post-commit git hook is automatically installed during setup to run analysis a
|
|
|
279
297
|
|
|
280
298
|
---
|
|
281
299
|
|
|
300
|
+
## Code Quality Audits
|
|
301
|
+
|
|
302
|
+
The framework supports ingesting audit packages generated by the `code-quality-auditor` skill. Once uploaded, the audit becomes reviewable in the **Skills Console** under the **Code Audits** section, with score history preserved per project.
|
|
303
|
+
|
|
304
|
+
### How It Works
|
|
305
|
+
|
|
306
|
+
1. **Audit** — Run the `code-quality-auditor` skill against a codebase and generate a `CodeMatters/` folder
|
|
307
|
+
2. **Upload** — `npx ai-skills upload-code-audit --path <folder>` sends the package to the Skills Console and creates a new historical audit entry
|
|
308
|
+
3. **Review** — Tech leads review the latest audit in the **Code Audits** section, update review status, and compare it against previous runs
|
|
309
|
+
4. **Track** — The console keeps score trends, finding counts, report tabs, diagrams, and remediation guidance per project
|
|
310
|
+
5. **Check** — Developers can run `npx ai-skills audit-status --project <name>` to see the latest audit summary in the terminal
|
|
311
|
+
|
|
312
|
+
### CodeMatters Package Format
|
|
313
|
+
|
|
314
|
+
The folder passed to `--path` should follow this layout:
|
|
315
|
+
|
|
316
|
+
```text
|
|
317
|
+
CodeMatters/
|
|
318
|
+
├── manifest.json
|
|
319
|
+
├── CODE_AUDIT_OVERVIEW.md
|
|
320
|
+
├── SECURITY_AUDIT.md
|
|
321
|
+
├── ERROR_HANDLING.md
|
|
322
|
+
├── CORRECTNESS.md
|
|
323
|
+
├── CRASH_RISK.md
|
|
324
|
+
├── CODE_QUALITY.md
|
|
325
|
+
├── STANDARDS.md
|
|
326
|
+
├── PERFORMANCE.md
|
|
327
|
+
├── MAINTAINABILITY.md
|
|
328
|
+
├── DEPENDENCY_HEALTH.md
|
|
329
|
+
├── ACCESSIBILITY.md
|
|
330
|
+
├── TEST_COVERAGE.md
|
|
331
|
+
├── ARCHITECTURE.md
|
|
332
|
+
├── FRAMEWORK_REVIEW.md
|
|
333
|
+
├── REMEDIATION_PLAN.md
|
|
334
|
+
└── *.mmd / *.mermaid # optional diagrams
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
**Canonical `manifest.json` shape:**
|
|
338
|
+
|
|
339
|
+
```json
|
|
340
|
+
{
|
|
341
|
+
"project_name": "Clinical Sanctuary",
|
|
342
|
+
"audited_at": "2026-04-02T12:00:00.000Z",
|
|
343
|
+
"overall_score": 48,
|
|
344
|
+
"overall_grade": "D",
|
|
345
|
+
"tech_stack": {
|
|
346
|
+
"language": "TypeScript",
|
|
347
|
+
"framework": "React",
|
|
348
|
+
"runtime_version": "Node 20"
|
|
349
|
+
},
|
|
350
|
+
"is_healthcare": true,
|
|
351
|
+
"findings": {
|
|
352
|
+
"critical": 5,
|
|
353
|
+
"high": 5,
|
|
354
|
+
"medium": 5,
|
|
355
|
+
"low": 18,
|
|
356
|
+
"total": 33
|
|
357
|
+
},
|
|
358
|
+
"scores": {
|
|
359
|
+
"security": { "score": 42, "grade": "F", "finding_count": { "critical": 5, "high": 5, "medium": 5, "low": 18 } },
|
|
360
|
+
"error_handling": { "score": 55, "grade": "D", "finding_count": { "critical": 0, "high": 1, "medium": 4, "low": 3 } },
|
|
361
|
+
"correctness": { "score": 65, "grade": "C", "finding_count": { "critical": 0, "high": 1, "medium": 3, "low": 2 } },
|
|
362
|
+
"crash_risk": { "score": 50, "grade": "D", "finding_count": { "critical": 0, "high": 2, "medium": 2, "low": 1 } },
|
|
363
|
+
"code_quality": { "score": 72, "grade": "C", "finding_count": { "critical": 0, "high": 0, "medium": 2, "low": 6 } },
|
|
364
|
+
"standards": { "score": 60, "grade": "C", "finding_count": { "critical": 0, "high": 0, "medium": 2, "low": 4 } },
|
|
365
|
+
"performance": { "score": 65, "grade": "C", "finding_count": { "critical": 0, "high": 0, "medium": 2, "low": 3 } },
|
|
366
|
+
"maintainability": { "score": 68, "grade": "C", "finding_count": { "critical": 0, "high": 0, "medium": 1, "low": 5 } },
|
|
367
|
+
"dependency_health": { "score": 35, "grade": "F", "finding_count": { "critical": 0, "high": 3, "medium": 1, "low": 2 } },
|
|
368
|
+
"accessibility": { "score": 55, "grade": "D", "finding_count": { "critical": 0, "high": 0, "medium": 3, "low": 4 } },
|
|
369
|
+
"test_coverage": { "score": 0, "grade": "F", "finding_count": { "critical": 0, "high": 0, "medium": 0, "low": 6 } },
|
|
370
|
+
"architecture": { "score": 72, "grade": "C", "finding_count": { "critical": 0, "high": 0, "medium": 1, "low": 2 } }
|
|
371
|
+
}
|
|
372
|
+
}
|
|
373
|
+
```
|
|
374
|
+
|
|
375
|
+
The uploader is slightly defensive around aliases such as `project`, `name`, `overallScore`, `overallGrade`, `auditedAt`, `category_scores`, and `categories`, but the shape above is the supported v1 contract.
|
|
376
|
+
|
|
377
|
+
### Skills Console — Code Audits View
|
|
378
|
+
|
|
379
|
+
After upload, each project appears in the **Code Audits** section with:
|
|
380
|
+
|
|
381
|
+
| View | Contents |
|
|
382
|
+
|------|----------|
|
|
383
|
+
| **List** | Latest audit per project, score bars, severity totals, status, delta vs previous |
|
|
384
|
+
| **Detail** | Score breakdown, comparison panel, audit history chart, review status, reviewer notes |
|
|
385
|
+
| **Report Tabs** | Overview, category reports, remediation plan, diagrams |
|
|
386
|
+
| **All Files** | Full file list with filtering and inline preview |
|
|
387
|
+
|
|
388
|
+
### CLI Commands
|
|
389
|
+
|
|
390
|
+
```bash
|
|
391
|
+
# Upload a new audit run (history is preserved)
|
|
392
|
+
npx ai-skills upload-code-audit --path ./CodeMatters/
|
|
393
|
+
|
|
394
|
+
# Validate the payload without uploading
|
|
395
|
+
npx ai-skills upload-code-audit --path ./CodeMatters/ --dry-run
|
|
396
|
+
|
|
397
|
+
# Show the latest audit summary for a project
|
|
398
|
+
npx ai-skills audit-status --project "Clinical Sanctuary"
|
|
399
|
+
```
|
|
400
|
+
|
|
401
|
+
### Deployment Requirements
|
|
402
|
+
|
|
403
|
+
To enable Code Audits in a deployed environment, you need to ship the backend pieces and the updated console:
|
|
404
|
+
|
|
405
|
+
1. Run the new Supabase migration: `skills-console/supabase/migrations/015_code_audits.sql`
|
|
406
|
+
2. Deploy the new Edge Functions:
|
|
407
|
+
`supabase functions deploy upload-code-audit`
|
|
408
|
+
`supabase functions deploy manage-code-audits`
|
|
409
|
+
3. Redeploy the Skills Console frontend so `/code-audits` and `/code-audits/:id` are available
|
|
410
|
+
|
|
411
|
+
The `upload-code-audit` function will attempt to create and use the `code-audits` Storage bucket automatically as a best-effort backup mirror. Postgres remains the source of truth even if the storage mirror is unavailable.
|
|
412
|
+
|
|
413
|
+
---
|
|
414
|
+
|
|
282
415
|
## Legacy Codebase Intelligence Scanner
|
|
283
416
|
|
|
284
417
|
The framework supports ingesting intelligence packages generated by legacy codebase scanners. Once uploaded, the extracted skills, architecture diagrams, and reports become reviewable in the **Skills Console** under the **Legacy Scanners** section.
|
|
@@ -310,24 +443,35 @@ my-project-intelligence/
|
|
|
310
443
|
├── api-registry.md
|
|
311
444
|
├── business-rules.md
|
|
312
445
|
├── risk-assessment.md
|
|
313
|
-
|
|
446
|
+
├── reproduction-guide.md
|
|
447
|
+
└── custom-audit-findings.md
|
|
314
448
|
```
|
|
315
449
|
|
|
316
450
|
**`manifest.json` schema:**
|
|
317
451
|
|
|
318
452
|
```json
|
|
319
453
|
{
|
|
320
|
-
"
|
|
321
|
-
"
|
|
454
|
+
"project": "legacy-billing-service",
|
|
455
|
+
"scanned_at": "2026-03-30T12:00:00.000Z",
|
|
456
|
+
"skills": [],
|
|
322
457
|
"statistics": {
|
|
323
|
-
"
|
|
324
|
-
"total_endpoints": 68,
|
|
325
|
-
"total_business_rules": 142,
|
|
458
|
+
"total_modules": 24,
|
|
326
459
|
"completeness_score": 78
|
|
460
|
+
},
|
|
461
|
+
"reports": [
|
|
462
|
+
{ "document_type": "api_registry", "file": "reports/api-registry.md" },
|
|
463
|
+
{ "document_type": "custom_audit_findings", "name": "Custom Audit Findings", "file": "reports/custom-audit-findings.md", "type": "report" }
|
|
464
|
+
],
|
|
465
|
+
"tech_stack": {
|
|
466
|
+
"language": "Node.js",
|
|
467
|
+
"database": "PostgreSQL",
|
|
468
|
+
"frontend": "React"
|
|
327
469
|
}
|
|
328
470
|
}
|
|
329
471
|
```
|
|
330
472
|
|
|
473
|
+
Any extra markdown file in `reports/` is uploaded as a `report` document automatically, even if it is not one of the built-in report names. If you want explicit control, add it to `manifest.json -> reports`; custom entries must use `type: "report"`. Built-in `overview` and `reproduction_guide` remain guide documents.
|
|
474
|
+
|
|
331
475
|
### Skills Console — Legacy Scanners View
|
|
332
476
|
|
|
333
477
|
After upload, each project appears in the **Legacy Scanners** section of the Skills Console with five tabs:
|