feat: initial open marketplace with llm-security, config-audit, ultraplan-local
This commit is contained in:
commit
f93d6abdae
380 changed files with 65935 additions and 0 deletions
120
plugins/config-audit/commands/posture.md
Normal file
120
plugins/config-audit/commands/posture.md
Normal file
|
|
@ -0,0 +1,120 @@
|
|||
---
|
||||
name: config-audit:posture
|
||||
description: Quick configuration health assessment — scorecard with A-F grades
|
||||
argument-hint: "[path] [--drift] [--plugin-health]"
|
||||
allowed-tools: Read, Write, Glob, Grep, Bash
|
||||
model: sonnet
|
||||
---
|
||||
|
||||
# Config-Audit: Health Assessment
|
||||
|
||||
Quick, deterministic configuration health scorecard. No agents needed — runs all scanners + scoring in one pass.
|
||||
|
||||
## What the user gets
|
||||
|
||||
- Health grade (A-F) with plain-language explanation
|
||||
- Per-area breakdown for 7 quality areas with grades and actionable notes
|
||||
- Opportunity count — how many features could enhance their setup (not a grade)
|
||||
- Grade-appropriate next steps
|
||||
|
||||
## Implementation
|
||||
|
||||
### Step 1: Determine target
|
||||
|
||||
Parse `$ARGUMENTS` for a path (default: current working directory). Resolve relative paths.
|
||||
|
||||
Tell the user:
|
||||
|
||||
```
|
||||
## Configuration Health
|
||||
|
||||
Running quick assessment{if path != cwd: " on `{path}`"}...
|
||||
```
|
||||
|
||||
### Step 2: Run posture scanner
|
||||
|
||||
Run silently — all output goes to a file:
|
||||
|
||||
```bash
|
||||
node ${CLAUDE_PLUGIN_ROOT}/scanners/posture.mjs <target-path> --json --output-file /tmp/config-audit-posture-$$.json 2>/dev/null; echo $?
|
||||
```
|
||||
|
||||
If exit code is non-zero, tell the user: "Assessment couldn't complete. Check that the path exists and contains Claude Code configuration files."
|
||||
|
||||
### Step 3: Read and interpret results
|
||||
|
||||
Read the JSON output file using the Read tool. Extract:
|
||||
|
||||
- `overallGrade`, `opportunityCount`
|
||||
- `areas[]` — each with `name`, `grade`, `score`, `findingCount`
|
||||
|
||||
### Step 4: Present the scorecard
|
||||
|
||||
```markdown
|
||||
**Health: {overallGrade}** | {qualityAreaCount} areas scanned
|
||||
|
||||
{grade-based context — pick ONE:}
|
||||
- A: "Your configuration is correct and well-maintained."
|
||||
- B: "Solid configuration with minor improvements available."
|
||||
- C: "Working configuration with some issues worth addressing."
|
||||
- D: "Configuration needs attention in several areas."
|
||||
- F: "Significant issues found — addressing these will improve your experience."
|
||||
|
||||
### Area Scores
|
||||
|
||||
| Area | Grade | Score | Findings | |
|
||||
|------|-------|-------|----------|-|
|
||||
{for each area EXCEPT Feature Coverage:}
|
||||
| {name} | {grade} | {score}/100 | {findingCount} | {plain-language note: A="Excellent", B="Good", C="Needs work", D/F="Issues found"} |
|
||||
|
||||
{if opportunityCount > 0:}
|
||||
{opportunityCount} feature opportunities available — run `/config-audit feature-gap` for context-aware recommendations.
|
||||
|
||||
### What's next
|
||||
```
|
||||
|
||||
**Grade A or B:**
|
||||
```
|
||||
Your configuration health is strong. Re-run after major changes to catch regressions.
|
||||
For feature recommendations: `/config-audit feature-gap`
|
||||
```
|
||||
|
||||
**Grade C:**
|
||||
```
|
||||
Run `/config-audit fix` to auto-fix what's possible, then `/config-audit plan` for a prioritized improvement path.
|
||||
```
|
||||
|
||||
**Grade D or F:**
|
||||
```
|
||||
Start with `/config-audit fix` — it handles the most impactful issues automatically with backup and rollback.
|
||||
Then run `/config-audit plan` for a step-by-step path to a better configuration.
|
||||
```
|
||||
|
||||
### Step 5: Optional sections
|
||||
|
||||
**If `--drift` flag is present:**
|
||||
|
||||
Run drift comparison silently:
|
||||
```bash
|
||||
node ${CLAUDE_PLUGIN_ROOT}/scanners/drift-cli.mjs <target-path> 2>/dev/null
|
||||
```
|
||||
|
||||
Read stdout output and append a "Configuration Drift" section showing what changed since the last baseline.
|
||||
|
||||
**If `--plugin-health` flag is present:**
|
||||
|
||||
Run plugin health scanner silently:
|
||||
```bash
|
||||
node ${CLAUDE_PLUGIN_ROOT}/scanners/plugin-health-scanner.mjs <target-path> 2>/dev/null
|
||||
```
|
||||
|
||||
Read stdout output and append a "Plugin Health" section.
|
||||
|
||||
**If both flags:** Use `scanners/lib/report-generator.mjs` to produce a unified markdown report.
|
||||
|
||||
### Step 6: Save to session (if active)
|
||||
|
||||
If a config-audit session exists, save results:
|
||||
```bash
|
||||
node ${CLAUDE_PLUGIN_ROOT}/scanners/posture.mjs <target-path> --json --output-file ~/.claude/config-audit/sessions/<session-id>/posture.json 2>/dev/null
|
||||
```
|
||||
Loading…
Add table
Add a link
Reference in a new issue