Standardmäßig ist der Prompt ausgewählt, der zuerst die Quelle prüft. Sie können zu einem direkten Befehl wechseln oder eine lokale Kopie herunterladen.
Quelldateien prüfen
Lesen Sie SKILL.md und alle von SkillsMP angezeigten Begleitdateien, bevor Sie sich für eine Installation entscheiden.
Mit Codex oder Claude installieren Kopieren Sie diesen Prompt, fügen Sie ihn in Codex, Claude oder einen anderen Assistant ein und lassen Sie die Skill-Seite prüfen und installieren.
Ein direkter Befehl überspringt den Prüf-Prompt. Prüfen Sie die Quelle, bevor Sie ihn ausführen.
Designed for Claude Code, also compatible with Codex and OpenClaw
Freshie Inventory Manager
Interactive command center for the freshie ecosystem inventory database.
Current DB Status
!sqlite3 freshie/inventory.sqlite "SELECT 'Run #' || id || ' — ' || run_date || ' | Plugins: ' || total_plugins || ' | Skills: ' || total_skills || ' | Packs: ' || COALESCE(total_packs, 0) FROM discovery_runs ORDER BY id DESC LIMIT 3;" 2>/dev/null || echo "DB not found at freshie/inventory.sqlite"
!sqlite3 freshie/inventory.sqlite "SELECT grade || ': ' || COUNT(*) FROM skill_compliance GROUP BY grade ORDER BY grade;" 2>/dev/null
Overview
The freshie database is the single source of truth for ecosystem-wide metrics — plugin counts,
skill compliance grades, pack coverage, anomaly detection, and historical trends across versioned
discovery runs. This skill is an interactive wizard — it always asks what you want to do,
then delegates heavy operations to specialized subagents.
Database location:freshie/inventory.sqlite (51 tables, versioned by run_id)
Key scripts:
freshie/scripts/rebuild-inventory.py — full repo scan, creates new discovery run
scripts/validate-skills-schema.py — enterprise validation with DB population
freshie/scripts/run-delta.py [--run-id N] [--alert-on-regression] — (re)generate a run's
delta report (schema-vs-data changes + grade regressions; exit 4 signal on regressions)
freshie/scripts/dolt-sync.py [--alert-on-regression] — Dolt sync; emits the delta report
post-commit and can exit 4 when grades regressed
Prerequisites
sqlite3 CLI available on PATH
python3 with pyyaml installed
Working directory is the repo root (claude-code-plugins/)
Database exists at freshie/inventory.sqlite
/email skill installed (for PDF report emailing)
Instructions
Step 1: Present Main Menu
When invoked, ALWAYS start by presenting this menu using AskUserQuestion:
FRESHIE INVENTORY COMMAND CENTER
================================================================
What would you like to do?
1. Dashboard — Current status, grades, staleness
2. Discovery Scan — Full repo scan, create new run
3. Compliance Check — Enterprise validation + DB population
4. Remediation — Batch fix compliance issues
5. Query — Ad-hoc SQLite queries
6. Compare Runs — Delta analysis between runs
7. Export Data — CSV exports to freshie/exports/
8. Anomaly Scan — Data quality + outlier detection
9. Pack Coverage — SaaS pack completeness metrics
10. Full Audit — Scan + validate + report (end-to-end)
11. Report Only — Generate summary from existing data
Use AskUserQuestion with these options. If the user's initial prompt already contains
a clear intent (e.g., "freshie status"), skip the menu and route directly.
Step 2: Execute Chosen Workflow
Based on selection, follow the matching workflow below. Every workflow ends with
Step 3 (Email Report).
Workflow A: Dashboard
Run these queries and present as a formatted dashboard:
sqlite3 freshie/inventory.sqlite "SELECT id, run_date, total_plugins, total_skills, COALESCE(total_packs,0) FROM discovery_runs ORDER BY id DESC LIMIT 1;"
sqlite3 freshie/inventory.sqlite "SELECT grade, COUNT(*) FROM skill_compliance WHERE run_id=(SELECT MAX(id) FROM discovery_runs) GROUP BY grade ORDER BY grade;"
sqlite3 freshie/inventory.sqlite "SELECT CAST(julianday('now') - julianday(run_date) AS INTEGER) FROM discovery_runs ORDER BY id DESC LIMIT 1;"
sqlite3 freshie/inventory.sqlite "SELECT 'plugins', COUNT(*) FROM plugins WHERE run_id=(SELECT MAX(id) FROM discovery_runs) UNION ALL SELECT 'skills', COUNT(*) FROM skills WHERE run_id=(SELECT MAX(id) FROM discovery_runs) UNION ALL SELECT 'packs', COUNT(*) FROM packs WHERE run_id=(SELECT MAX(id) FROM discovery_runs) UNION ALL SELECT 'anomalies', COUNT(*) FROM anomalies WHERE run_id=(SELECT MAX(id) FROM discovery_runs);"# Core vs SaaS pack breakdown
sqlite3 freshie/inventory.sqlite "SELECT CASE WHEN path LIKE '%saas-packs%' THEN 'saas-pack-skills' ELSE 'core-skills' END as type, COUNT(*) FROM skills WHERE run_id=(SELECT MAX(id) FROM discovery_runs) GROUP BY type;"
If Critical (>7 days), recommend a discovery scan.
Workflow B: Discovery Scan
Delegate to the discovery-scanner subagent via the Agent tool:
Launch Agent: discovery-scanner
Prompt: "Run a full freshie discovery scan. Show current state first, execute
rebuild-inventory.py, then report the delta (plugin/skill count changes)
compared to the previous run."
The subagent handles the long-running scan in isolation and returns the delta report.
Workflow C: Compliance Check
Delegate to the compliance-validator subagent via the Agent tool:
Launch Agent: compliance-validator
Prompt: "Run enterprise compliance validation against the freshie DB.
Execute: python3 scripts/validate-skills-schema.py --enterprise --populate-db freshie/inventory.sqlite --verbose
Then summarize: grade distribution with percentages, and list all D/F grade skills."
The subagent runs the full validation pipeline and returns a structured summary.
Workflow D: Remediation
CRITICAL: Always dry-run first, then confirm before executing.
Skills that changed grade (upgrades/downgrades with score delta)
New skills added since previous run
Skills removed since previous run
Workflow G: Export Data
mkdir -p freshie/exports
Use AskUserQuestion to let user pick what to export:
EXPORT OPTIONS
================================================================
What should I export?
- Skill Grades — All skill compliance scores + grades
- Plugin Inventory — All plugins with category and version
- Pack Coverage — Pack names, skill counts, categories
- Full Dump — All three exports
- Custom Query — Export any query result to CSV
Delegate to the anomaly-detector subagent via the Agent tool:
Launch Agent: anomaly-detector
Prompt: "Run anomaly detection on the freshie inventory DB. Check:
1. Stored anomalies from the latest discovery run
2. Skills with word count < 50 (likely stubs)
3. Plugins with no skills
4. Skills with high template-text density (>10%)
5. Duplicate files
Report all findings grouped by severity."
Workflow I: Pack Coverage
sqlite3 freshie/inventory.sqlite "SELECT name, skill_count, category FROM packs WHERE run_id=(SELECT MAX(id) FROM discovery_runs) ORDER BY skill_count DESC;"
Also flag packs below minimum viable (< 3 skills) and show grade distribution within packs.
Use pack coverage queries from common-queries.md.
Workflow J: Full Audit
This is the power workflow — runs everything end-to-end:
Discovery Scan (Workflow B) — via subagent
Compliance Check (Workflow C) — via subagent
Anomaly Scan (Workflow H) — via subagent
Report Generation (Workflow K) — compile all results
Launch steps 1-3 as parallel subagents, then compile the report when all complete.
Workflow K: Report Only
Generate a summary report from existing data (no new scans). Gather dashboard data
(Workflow A queries) and compile:
After ANY workflow completes, use AskUserQuestion to offer the report:
WORKFLOW COMPLETE
================================================================
{Brief summary of what was done}
Would you like a PDF report emailed?
- Yes, email me — Generate PDF + send to jeremy@intentsolutions.io
- Yes, email someone — Specify recipient
- Save PDF only — Generate PDF, no email
- No thanks — Done
If the user wants a report:
Generate markdown report — write the workflow results to /tmp/freshie-report-{date}.md
Convert to PDF using the email skill's converter:
python3 ~/.claude/skills/email/scripts/md-to-pdf.py /tmp/freshie-report-{date}.md /tmp/freshie-report-{date}.pdf --style professional
Send via /email skill — invoke the Skill tool with skill: "email" and args describing:
All operations produce structured text output. Dashboards use fixed-width formatting.
Query results use table format. Deltas show +/- indicators. CSV exports write to
freshie/exports/. PDF reports write to /tmp/ and optionally email.
Error Handling
Error
Cause
Solution
"DB not found"
Missing freshie/inventory.sqlite
Run python3 freshie/scripts/rebuild-inventory.py to create
"no such table"
DB schema outdated or empty
Run a fresh discovery scan (Workflow B)
Empty grades
Compliance not yet populated
Run compliance validation (Workflow C)
rebuild-inventory.py fails
Missing pyyaml
pip install pyyaml
Stale data (>7 days)
No recent scans
Run discovery scan, then compliance
PDF generation fails
Missing weasyprint
pip install weasyprint
Email send fails
Missing env vars
Check ~/.env for GMAIL_APP_PASSWORD
Examples
See examples.md for detailed input/output examples covering all workflows:
Quick status check (direct intent, skips menu)
Full audit with email PDF report (parallel subagents)
Ad-hoc query with CSV export follow-up
Remediation cycle (dry-run, confirm, re-validate)
Compare discovery runs (delta analysis)
Pack coverage analysis
Resources
Common Queries — pre-built SQLite query library: grades, stubs, plugins, packs, content quality, trends, anomalies, field analysis, cross-references
freshie/scripts/rebuild-inventory.py — full repo scanner, versioned discovery runs