uv-suite 0.2.0 → 0.3.1
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/agents/claude-code/anti-slop-guard.md +5 -1
- package/agents/claude-code/architect.md +8 -0
- package/agents/claude-code/cartographer.md +10 -1
- package/agents/claude-code/eval-writer.md +4 -0
- package/agents/claude-code/reviewer.md +5 -1
- package/agents/claude-code/security.md +5 -1
- package/agents/claude-code/spec-writer.md +4 -0
- package/install.sh +158 -1
- package/package.json +1 -1
- package/personas/professional.json +1 -1
- package/personas/spike.json +1 -1
- package/settings.json +1 -1
- package/skills/architect/SKILL.md +12 -0
- package/skills/map-codebase/SKILL.md +4 -0
- package/skills/map-stack/SKILL.md +4 -0
- package/skills/review/SKILL.md +14 -0
- package/skills/security-review/SKILL.md +14 -0
- package/skills/slop-check/SKILL.md +10 -0
- package/skills/write-evals/SKILL.md +6 -0
- package/skills/write-tests/SKILL.md +10 -0
|
@@ -9,14 +9,18 @@ tools:
|
|
|
9
9
|
- Read
|
|
10
10
|
- Grep
|
|
11
11
|
- Glob
|
|
12
|
-
disallowedTools:
|
|
13
12
|
- Write
|
|
13
|
+
disallowedTools:
|
|
14
14
|
- Edit
|
|
15
15
|
effort: high
|
|
16
16
|
---
|
|
17
17
|
|
|
18
18
|
You are the **Anti-Slop Guard** — your job is to catch AI-generated low-quality output that looks plausible but adds no value or actively hurts the codebase.
|
|
19
19
|
|
|
20
|
+
## Artifact Output
|
|
21
|
+
|
|
22
|
+
Write the slop report to `uv-out/slop-check-YYYY-MM-DD.md`. Create the directory if needed. Summarize findings in the conversation.
|
|
23
|
+
|
|
20
24
|
## What You Scan For
|
|
21
25
|
|
|
22
26
|
### Comment Slop
|
|
@@ -49,6 +49,14 @@ For each key decision, document:
|
|
|
49
49
|
- [ ] [Concrete, testable check]
|
|
50
50
|
```
|
|
51
51
|
|
|
52
|
+
## Artifact Output
|
|
53
|
+
|
|
54
|
+
Write all output to `uv-out/architecture/`:
|
|
55
|
+
- `uv-out/architecture/decisions.md` — architecture decision records
|
|
56
|
+
- `uv-out/architecture/acts-plan.md` — Acts breakdown with tasks and cycle budgets
|
|
57
|
+
|
|
58
|
+
Create the directory if needed. Summarize the design in the conversation.
|
|
59
|
+
|
|
52
60
|
### 4. Task Dependency Graph
|
|
53
61
|
Mermaid diagram showing parallelism opportunities.
|
|
54
62
|
|
|
@@ -11,8 +11,8 @@ tools:
|
|
|
11
11
|
- Grep
|
|
12
12
|
- Glob
|
|
13
13
|
- Bash
|
|
14
|
-
disallowedTools:
|
|
15
14
|
- Write
|
|
15
|
+
disallowedTools:
|
|
16
16
|
- Edit
|
|
17
17
|
effort: high
|
|
18
18
|
---
|
|
@@ -86,6 +86,15 @@ Report: graphify-out/GRAPH_REPORT.md
|
|
|
86
86
|
### If manual exploration:
|
|
87
87
|
Produce all 6 sections (Architecture Overview, Tech Stack, Dependency Graph, Business Domain Map, Sequence Diagrams, Entry Points) as Mermaid + Markdown.
|
|
88
88
|
|
|
89
|
+
## Artifact Output
|
|
90
|
+
|
|
91
|
+
Write all output to `uv-out/`. Create the directory if it doesn't exist.
|
|
92
|
+
|
|
93
|
+
- `uv-out/map-codebase.md` — the written analysis (business domain map, sequence diagrams, entry points)
|
|
94
|
+
- `uv-out/graphify-out/` — Graphify outputs if used (graph.html, graph.json, GRAPH_REPORT.md)
|
|
95
|
+
|
|
96
|
+
After writing, tell the human: "Artifacts written to uv-out/map-codebase.md" and summarize key findings in the conversation.
|
|
97
|
+
|
|
89
98
|
## Rules
|
|
90
99
|
|
|
91
100
|
- Graphify first, manual second. Always check.
|
|
@@ -44,6 +44,10 @@ You are the **Eval Writer** — your job is to write evaluations that verify AI/
|
|
|
44
44
|
rubric: "Scoring criteria"
|
|
45
45
|
```
|
|
46
46
|
|
|
47
|
+
## Artifact Output
|
|
48
|
+
|
|
49
|
+
Write evals to `uv-out/evals/`. Create the directory if needed. Match the project's eval framework format (DeepEval preferred).
|
|
50
|
+
|
|
47
51
|
## Grading Rubric (be this specific)
|
|
48
52
|
|
|
49
53
|
```yaml
|
|
@@ -10,8 +10,8 @@ tools:
|
|
|
10
10
|
- Grep
|
|
11
11
|
- Glob
|
|
12
12
|
- Bash
|
|
13
|
-
disallowedTools:
|
|
14
13
|
- Write
|
|
14
|
+
disallowedTools:
|
|
15
15
|
- Edit
|
|
16
16
|
effort: high
|
|
17
17
|
---
|
|
@@ -63,6 +63,10 @@ You are the **Reviewer** — your job is to catch bugs, security issues, perform
|
|
|
63
63
|
| **Medium** | Style, naming, minor refactor | Fix if easy |
|
|
64
64
|
| **Low** | Nitpick, suggestion | Author's discretion |
|
|
65
65
|
|
|
66
|
+
## Artifact Output
|
|
67
|
+
|
|
68
|
+
Write the review report to `uv-out/review-YYYY-MM-DD.md`. Create the directory if needed. Summarize key findings in the conversation.
|
|
69
|
+
|
|
66
70
|
## Common Findings (be this specific)
|
|
67
71
|
|
|
68
72
|
**Null dereference:**
|
|
@@ -10,8 +10,8 @@ tools:
|
|
|
10
10
|
- Grep
|
|
11
11
|
- Glob
|
|
12
12
|
- Bash
|
|
13
|
-
disallowedTools:
|
|
14
13
|
- Write
|
|
14
|
+
disallowedTools:
|
|
15
15
|
- Edit
|
|
16
16
|
effort: high
|
|
17
17
|
---
|
|
@@ -31,6 +31,10 @@ You are the **Security Agent** — your job is to find security vulnerabilities
|
|
|
31
31
|
- A09: Logging Failures — Are security events logged? Is PII excluded from logs?
|
|
32
32
|
- A10: SSRF — Are outbound requests validated?
|
|
33
33
|
|
|
34
|
+
## Artifact Output
|
|
35
|
+
|
|
36
|
+
Write the security report to `uv-out/security-review-YYYY-MM-DD.md`. Create the directory if needed. Summarize critical/high findings in the conversation.
|
|
37
|
+
|
|
34
38
|
## Process
|
|
35
39
|
|
|
36
40
|
1. Read the code diff or specified files
|
|
@@ -60,6 +60,10 @@ How do we know this is done?
|
|
|
60
60
|
Unit, integration, e2e, load?
|
|
61
61
|
```
|
|
62
62
|
|
|
63
|
+
## Artifact Output
|
|
64
|
+
|
|
65
|
+
Write the spec to `uv-out/specs/[feature-name]-spec.md`. Create the directory if needed. Summarize the spec in the conversation.
|
|
66
|
+
|
|
63
67
|
## Process
|
|
64
68
|
|
|
65
69
|
1. Parse the input into discrete requirements
|
package/install.sh
CHANGED
|
@@ -142,6 +142,69 @@ if [ "$INSTALL_MODE" = "project" ]; then
|
|
|
142
142
|
done
|
|
143
143
|
fi
|
|
144
144
|
|
|
145
|
+
# --- Write UV Suite context to CLAUDE.md (before bundled tools, which can be slow) ---
|
|
146
|
+
if [ "$INSTALL_MODE" = "project" ]; then
|
|
147
|
+
PROJECT_ROOT="$(dirname "$TARGET_DIR")"
|
|
148
|
+
CLAUDE_MD="$PROJECT_ROOT/CLAUDE.md"
|
|
149
|
+
UV_VERSION=$(grep '"version"' "$UV_SUITE_DIR/package.json" 2>/dev/null | head -1 | sed 's/.*": "//;s/".*//')
|
|
150
|
+
|
|
151
|
+
# Remove existing UV Suite section if present
|
|
152
|
+
if [ -f "$CLAUDE_MD" ] && grep -q "## UV Suite" "$CLAUDE_MD" 2>/dev/null; then
|
|
153
|
+
echo "Updating UV Suite section in CLAUDE.md..."
|
|
154
|
+
# Create temp file without UV Suite section
|
|
155
|
+
awk '/^## UV Suite$/{found=1; next} /^## [^U]/{if(found){found=0}} !found' "$CLAUDE_MD" > "$CLAUDE_MD.tmp"
|
|
156
|
+
mv "$CLAUDE_MD.tmp" "$CLAUDE_MD"
|
|
157
|
+
else
|
|
158
|
+
echo "Adding UV Suite section to CLAUDE.md..."
|
|
159
|
+
# Create CLAUDE.md if it doesn't exist
|
|
160
|
+
touch "$CLAUDE_MD"
|
|
161
|
+
fi
|
|
162
|
+
|
|
163
|
+
# Determine active hooks text
|
|
164
|
+
HOOKS_TEXT=""
|
|
165
|
+
case "$PERSONA" in
|
|
166
|
+
professional)
|
|
167
|
+
HOOKS_TEXT="- auto-lint (on file write), slop check (on file write), danger zone (on file edit), destructive block (on bash), review reminder (on session end)" ;;
|
|
168
|
+
auto)
|
|
169
|
+
HOOKS_TEXT="- auto-lint (on file write), destructive block (on bash)" ;;
|
|
170
|
+
sport)
|
|
171
|
+
HOOKS_TEXT="- auto-lint (on file write)" ;;
|
|
172
|
+
spike)
|
|
173
|
+
HOOKS_TEXT="- doc slop check (on file write)" ;;
|
|
174
|
+
esac
|
|
175
|
+
|
|
176
|
+
cat >> "$CLAUDE_MD" << EOF
|
|
177
|
+
|
|
178
|
+
## UV Suite
|
|
179
|
+
|
|
180
|
+
This project uses [UV Suite](https://github.com/utsavanand/uv-suite) v${UV_VERSION} for AI-assisted development.
|
|
181
|
+
|
|
182
|
+
**Active persona:** ${PERSONA_LABEL}
|
|
183
|
+
|
|
184
|
+
### Skills
|
|
185
|
+
|
|
186
|
+
/map-codebase, /map-stack, /spec, /architect, /review, /write-tests, /write-evals, /slop-check, /prototype, /security-review
|
|
187
|
+
|
|
188
|
+
### Artifacts
|
|
189
|
+
|
|
190
|
+
Agent output is written to uv-out/. Agents read prior artifacts automatically:
|
|
191
|
+
- /map-codebase writes uv-out/map-codebase.md (read by /architect, /review, /security-review)
|
|
192
|
+
- /spec writes uv-out/specs/ (read by /architect, /write-tests, /write-evals)
|
|
193
|
+
- /architect writes uv-out/architecture/ (read by /review, /write-tests, /slop-check)
|
|
194
|
+
- /review writes uv-out/review-*.md (read by /slop-check, /security-review)
|
|
195
|
+
|
|
196
|
+
### Hooks
|
|
197
|
+
|
|
198
|
+
${HOOKS_TEXT}
|
|
199
|
+
|
|
200
|
+
### Personas
|
|
201
|
+
|
|
202
|
+
Start sessions with: ./uv.sh spike | sport | pro | auto
|
|
203
|
+
EOF
|
|
204
|
+
|
|
205
|
+
echo " ✓ UV Suite section added to CLAUDE.md"
|
|
206
|
+
fi
|
|
207
|
+
|
|
145
208
|
# --- Install bundled tools ---
|
|
146
209
|
echo "Installing bundled integrations..."
|
|
147
210
|
|
|
@@ -162,7 +225,7 @@ if [ -n "$PIP_CMD" ]; then
|
|
|
162
225
|
echo " ✓ $label (already installed)"
|
|
163
226
|
else
|
|
164
227
|
echo " Installing $label..."
|
|
165
|
-
$PIP_CMD install "$pkg" --quiet 2>/dev/null
|
|
228
|
+
timeout 60 $PIP_CMD install "$pkg" --quiet 2>/dev/null
|
|
166
229
|
if command -v "$cmd" &>/dev/null || $PIP_CMD show "$pkg" &>/dev/null; then
|
|
167
230
|
echo " ✓ $label installed"
|
|
168
231
|
else
|
|
@@ -221,6 +284,100 @@ else
|
|
|
221
284
|
fi
|
|
222
285
|
fi
|
|
223
286
|
|
|
287
|
+
# --- Write UV Suite context to CLAUDE.md ---
|
|
288
|
+
if [ "$INSTALL_MODE" = "project" ]; then
|
|
289
|
+
PROJECT_ROOT="$(dirname "$TARGET_DIR")"
|
|
290
|
+
CLAUDE_MD="$PROJECT_ROOT/CLAUDE.md"
|
|
291
|
+
|
|
292
|
+
# Check if UV Suite section already exists
|
|
293
|
+
if [ -f "$CLAUDE_MD" ] && grep -q "## UV Suite" "$CLAUDE_MD" 2>/dev/null; then
|
|
294
|
+
echo "Updating UV Suite section in CLAUDE.md..."
|
|
295
|
+
# Remove old UV Suite section and rewrite
|
|
296
|
+
sed -i.bak '/^## UV Suite$/,/^## [^U]/{ /^## [^U]/!d; }' "$CLAUDE_MD" 2>/dev/null || true
|
|
297
|
+
rm -f "$CLAUDE_MD.bak" 2>/dev/null
|
|
298
|
+
else
|
|
299
|
+
echo "Adding UV Suite section to CLAUDE.md..."
|
|
300
|
+
fi
|
|
301
|
+
|
|
302
|
+
cat >> "$CLAUDE_MD" << CLAUDEMD
|
|
303
|
+
|
|
304
|
+
## UV Suite
|
|
305
|
+
|
|
306
|
+
This project uses [UV Suite](https://github.com/utsavanand/uv-suite) for AI-assisted development.
|
|
307
|
+
|
|
308
|
+
**Active persona:** $PERSONA_LABEL
|
|
309
|
+
**Version:** $(cat "$UV_SUITE_DIR/package.json" 2>/dev/null | grep '"version"' | head -1 | sed 's/.*: "//;s/".*//')
|
|
310
|
+
|
|
311
|
+
### Available skills (slash commands)
|
|
312
|
+
|
|
313
|
+
| Command | Agent | What it does |
|
|
314
|
+
|---------|-------|-------------|
|
|
315
|
+
| /map-codebase [dir] | Cartographer | Build knowledge graph of codebase |
|
|
316
|
+
| /map-stack [dir] | Cartographer | Map multiple services and their connections |
|
|
317
|
+
| /spec [requirements] | Spec Writer | Write technical specification |
|
|
318
|
+
| /architect [spec] | Architect | Design architecture, decompose into Acts |
|
|
319
|
+
| /review | Reviewer | Code review (correctness, security, perf, slop) |
|
|
320
|
+
| /write-tests [file] | Test Writer | Generate tests matching project conventions |
|
|
321
|
+
| /write-evals [prompt] | Eval Writer | Write AI/LLM evaluation cases |
|
|
322
|
+
| /slop-check | Anti-Slop Guard | Detect 6 categories of AI-generated slop |
|
|
323
|
+
| /prototype [concept] | Prototype Builder | Build static React prototype |
|
|
324
|
+
| /security-review | Security Agent | OWASP audit, dependency scan, secret detection |
|
|
325
|
+
|
|
326
|
+
### Artifacts
|
|
327
|
+
|
|
328
|
+
All agent output is written to \`uv-out/\`. Each agent reads relevant prior artifacts from this directory automatically.
|
|
329
|
+
|
|
330
|
+
| Artifact | Written by | Read by |
|
|
331
|
+
|----------|-----------|---------|
|
|
332
|
+
| uv-out/map-codebase.md | /map-codebase | /architect, /review, /security-review |
|
|
333
|
+
| uv-out/specs/*.md | /spec | /architect, /write-tests, /write-evals |
|
|
334
|
+
| uv-out/architecture/*.md | /architect | /review, /write-tests, /slop-check |
|
|
335
|
+
| uv-out/review-*.md | /review | /slop-check, /security-review |
|
|
336
|
+
| uv-out/security-review-*.md | /security-review | — |
|
|
337
|
+
| uv-out/slop-check-*.md | /slop-check | — |
|
|
338
|
+
|
|
339
|
+
### Active hooks
|
|
340
|
+
|
|
341
|
+
Hooks fire automatically on every relevant action. You do not invoke these.
|
|
342
|
+
|
|
343
|
+
$(if [ "$PERSONA" = "professional" ]; then
|
|
344
|
+
cat << 'HOOKS'
|
|
345
|
+
- **auto-lint** (on file write) — runs prettier/ruff/gofmt
|
|
346
|
+
- **slop check** (on file write) — Haiku scans for obvious slop
|
|
347
|
+
- **danger zone** (on file edit) — warns if file is in DANGER-ZONES.md
|
|
348
|
+
- **destructive block** (on bash) — blocks rm -rf, force push
|
|
349
|
+
- **review reminder** (on session end) — reminds to /review if uncommitted changes
|
|
350
|
+
HOOKS
|
|
351
|
+
elif [ "$PERSONA" = "auto" ]; then
|
|
352
|
+
cat << 'HOOKS'
|
|
353
|
+
- **auto-lint** (on file write) — runs prettier/ruff/gofmt
|
|
354
|
+
- **destructive block** (on bash) — blocks rm -rf, force push
|
|
355
|
+
HOOKS
|
|
356
|
+
elif [ "$PERSONA" = "sport" ]; then
|
|
357
|
+
cat << 'HOOKS'
|
|
358
|
+
- **auto-lint** (on file write) — runs prettier/ruff/gofmt
|
|
359
|
+
HOOKS
|
|
360
|
+
elif [ "$PERSONA" = "spike" ]; then
|
|
361
|
+
cat << 'HOOKS'
|
|
362
|
+
- **doc slop check** (on file write) — Haiku checks documentation quality
|
|
363
|
+
HOOKS
|
|
364
|
+
fi)
|
|
365
|
+
|
|
366
|
+
### Personas
|
|
367
|
+
|
|
368
|
+
Switch persona by starting a new session:
|
|
369
|
+
|
|
370
|
+
\`\`\`
|
|
371
|
+
./uv.sh spike # Research & docs (Opus, max)
|
|
372
|
+
./uv.sh sport # New projects (Sonnet, high)
|
|
373
|
+
./uv.sh pro # Production code (all hooks, all guardrails)
|
|
374
|
+
./uv.sh auto # Fully autonomous (max, everything approved)
|
|
375
|
+
\`\`\`
|
|
376
|
+
CLAUDEMD
|
|
377
|
+
|
|
378
|
+
echo " ✓ UV Suite section added to CLAUDE.md"
|
|
379
|
+
fi
|
|
380
|
+
|
|
224
381
|
# --- Install launcher script ---
|
|
225
382
|
echo "Installing session launcher..."
|
|
226
383
|
cp "$UV_SUITE_DIR/uv.sh" "$TARGET_DIR/../uv.sh" 2>/dev/null || true
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "uv-suite",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.3.1",
|
|
4
4
|
"description": "Portable framework for AI-assisted software development. 10 agents, 9 skills, 5 hooks, 4 personas. Works with Claude Code, Cursor, and Codex.",
|
|
5
5
|
"author": "Utsav Anand",
|
|
6
6
|
"license": "MIT",
|
|
@@ -85,7 +85,7 @@
|
|
|
85
85
|
{
|
|
86
86
|
"type": "prompt",
|
|
87
87
|
"prompt": "Quickly scan the code that was just written or edited for the most obvious AI slop patterns: (1) comments that restate the code like '// Initialize the database' above initDatabase(), (2) try/catch around code that can't throw, (3) single-implementation interfaces or factories, (4) toBeTruthy()/toBeDefined() in tests. If you find any of these specific patterns, respond with {\"ok\": false, \"reason\": \"Slop detected: [specific finding with line reference]. Fix: [specific fix].\"} If the code is clean, respond with {\"ok\": true}. Only flag the most obvious violations — do not be overly strict.",
|
|
88
|
-
"model": "claude-haiku",
|
|
88
|
+
"model": "claude-haiku-4-5",
|
|
89
89
|
"timeout": 15,
|
|
90
90
|
"statusMessage": "Checking for AI slop..."
|
|
91
91
|
}
|
package/personas/spike.json
CHANGED
|
@@ -43,7 +43,7 @@
|
|
|
43
43
|
{
|
|
44
44
|
"type": "prompt",
|
|
45
45
|
"prompt": "The agent just wrote a documentation or analysis file. Check for documentation slop: (1) vague adjectives like 'robust', 'scalable', 'comprehensive', 'leverages', 'facilitates', (2) feature lists that could describe any system, (3) overview sections that don't say what the system actually does, (4) claims without specifics ('industry-standard best practices'). If you find slop, respond {\"ok\": false, \"reason\": \"Doc slop: [finding]. Fix: replace with specific facts.\"}. If clean, respond {\"ok\": true}.",
|
|
46
|
-
"model": "claude-haiku",
|
|
46
|
+
"model": "claude-haiku-4-5",
|
|
47
47
|
"timeout": 15,
|
|
48
48
|
"statusMessage": "Checking documentation quality..."
|
|
49
49
|
}
|
package/settings.json
CHANGED
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
{
|
|
85
85
|
"type": "prompt",
|
|
86
86
|
"prompt": "Quickly scan the code that was just written or edited for the most obvious AI slop patterns: (1) comments that restate the code like '// Initialize the database' above initDatabase(), (2) try/catch around code that can't throw, (3) single-implementation interfaces or factories, (4) toBeTruthy()/toBeDefined() in tests. If you find any of these specific patterns, respond with {\"ok\": false, \"reason\": \"Slop detected: [specific finding with line reference]. Fix: [specific fix].\"} If the code is clean, respond with {\"ok\": true}. Only flag the most obvious violations — do not be overly strict.",
|
|
87
|
-
"model": "claude-haiku",
|
|
87
|
+
"model": "claude-haiku-4-5",
|
|
88
88
|
"timeout": 15,
|
|
89
89
|
"statusMessage": "Checking for AI slop..."
|
|
90
90
|
}
|
|
@@ -24,3 +24,15 @@ $ARGUMENTS
|
|
|
24
24
|
## Project context
|
|
25
25
|
|
|
26
26
|
!`cat CLAUDE.md 2>/dev/null || echo "No CLAUDE.md found"`
|
|
27
|
+
|
|
28
|
+
## Prior analysis
|
|
29
|
+
|
|
30
|
+
### Codebase map
|
|
31
|
+
|
|
32
|
+
!`cat uv-out/map-codebase.md 2>/dev/null | head -100 || echo "No codebase map — run /map-codebase first for better architecture context"`
|
|
33
|
+
|
|
34
|
+
### Spec (if written)
|
|
35
|
+
|
|
36
|
+
!`ls uv-out/specs/*.md 2>/dev/null | head -5 || echo "No specs found"`
|
|
37
|
+
|
|
38
|
+
!`cat $(ls -t uv-out/specs/*.md 2>/dev/null | head -1) 2>/dev/null | head -80 || echo ""`
|
|
@@ -48,3 +48,7 @@ cat graphify-out/GRAPH_REPORT.md 2>/dev/null | head -80 || echo "No existing gra
|
|
|
48
48
|
## Danger zones
|
|
49
49
|
|
|
50
50
|
!`cat DANGER-ZONES.md 2>/dev/null || echo "No DANGER-ZONES.md found"`
|
|
51
|
+
|
|
52
|
+
## Prior analysis (if re-mapping)
|
|
53
|
+
|
|
54
|
+
!`cat uv-out/map-codebase.md 2>/dev/null | head -30 || echo "No prior map — fresh scan"`
|
|
@@ -38,6 +38,10 @@ This is NOT a single-repo mapping. You are mapping an entire tech stack — mult
|
|
|
38
38
|
|
|
39
39
|
!`cat CLAUDE.md 2>/dev/null || echo "No CLAUDE.md found"`
|
|
40
40
|
|
|
41
|
+
## Prior codebase maps (from /map-codebase runs)
|
|
42
|
+
|
|
43
|
+
!`cat uv-out/map-codebase.md 2>/dev/null | head -80 || echo "No prior codebase map — will scan from scratch"`
|
|
44
|
+
|
|
41
45
|
## Discover services
|
|
42
46
|
|
|
43
47
|
```!
|
package/skills/review/SKILL.md
CHANGED
|
@@ -37,3 +37,17 @@ $ARGUMENTS
|
|
|
37
37
|
## Danger zones
|
|
38
38
|
|
|
39
39
|
!`cat DANGER-ZONES.md 2>/dev/null || echo "No DANGER-ZONES.md found"`
|
|
40
|
+
|
|
41
|
+
## Prior analysis (from other UV Suite agents)
|
|
42
|
+
|
|
43
|
+
### Architecture map
|
|
44
|
+
|
|
45
|
+
!`cat uv-out/map-codebase.md 2>/dev/null | head -100 || echo "No codebase map — run /map-codebase first for better review context"`
|
|
46
|
+
|
|
47
|
+
### Architecture decisions
|
|
48
|
+
|
|
49
|
+
!`cat uv-out/architecture/decisions.md 2>/dev/null | head -60 || echo "No architecture decisions found"`
|
|
50
|
+
|
|
51
|
+
### Acts plan
|
|
52
|
+
|
|
53
|
+
!`cat uv-out/architecture/acts-plan.md 2>/dev/null | head -60 || echo "No acts plan found"`
|
|
@@ -40,6 +40,20 @@ $ARGUMENTS
|
|
|
40
40
|
|
|
41
41
|
!`cat DANGER-ZONES.md 2>/dev/null || echo "No DANGER-ZONES.md found"`
|
|
42
42
|
|
|
43
|
+
## Prior analysis
|
|
44
|
+
|
|
45
|
+
### Codebase map
|
|
46
|
+
|
|
47
|
+
!`cat uv-out/map-codebase.md 2>/dev/null | head -80 || echo "No codebase map found"`
|
|
48
|
+
|
|
49
|
+
### Recent code review findings
|
|
50
|
+
|
|
51
|
+
!`cat $(ls -t uv-out/review-*.md 2>/dev/null | head -1) 2>/dev/null | head -60 || echo "No prior review found"`
|
|
52
|
+
|
|
53
|
+
### Recent slop check
|
|
54
|
+
|
|
55
|
+
!`cat $(ls -t uv-out/slop-check-*.md 2>/dev/null | head -1) 2>/dev/null | head -40 || echo "No prior slop check found"`
|
|
56
|
+
|
|
43
57
|
## Available security tools
|
|
44
58
|
|
|
45
59
|
```!
|
|
@@ -28,3 +28,13 @@ $ARGUMENTS
|
|
|
28
28
|
### Full diff
|
|
29
29
|
|
|
30
30
|
!`git diff --cached 2>/dev/null || git diff 2>/dev/null || echo ""`
|
|
31
|
+
|
|
32
|
+
## Prior analysis
|
|
33
|
+
|
|
34
|
+
### Architecture decisions (check code against stated rationale)
|
|
35
|
+
|
|
36
|
+
!`cat uv-out/architecture/decisions.md 2>/dev/null | head -40 || echo "No architecture decisions found"`
|
|
37
|
+
|
|
38
|
+
### Recent review findings
|
|
39
|
+
|
|
40
|
+
!`cat $(ls -t uv-out/review-*.md 2>/dev/null | head -1) 2>/dev/null | head -40 || echo "No prior review found"`
|
|
@@ -26,3 +26,9 @@ $ARGUMENTS
|
|
|
26
26
|
## Existing eval framework
|
|
27
27
|
|
|
28
28
|
!`find . -name "*eval*" -o -name "*evals*" 2>/dev/null | head -10 || echo "No eval files found"`
|
|
29
|
+
|
|
30
|
+
## Prior analysis
|
|
31
|
+
|
|
32
|
+
### Spec (requirements to evaluate against)
|
|
33
|
+
|
|
34
|
+
!`cat $(ls -t uv-out/specs/*.md 2>/dev/null | head -1) 2>/dev/null | head -60 || echo "No spec found"`
|
|
@@ -38,3 +38,13 @@ $ARGUMENTS
|
|
|
38
38
|
## Project test command
|
|
39
39
|
|
|
40
40
|
!`cat package.json 2>/dev/null | grep -A2 '"test"' || echo "No package.json test script"`
|
|
41
|
+
|
|
42
|
+
## Prior analysis
|
|
43
|
+
|
|
44
|
+
### Spec (what to test against)
|
|
45
|
+
|
|
46
|
+
!`cat $(ls -t uv-out/specs/*.md 2>/dev/null | head -1) 2>/dev/null | head -60 || echo "No spec found — test based on code behavior"`
|
|
47
|
+
|
|
48
|
+
### Acts plan (current task context)
|
|
49
|
+
|
|
50
|
+
!`cat uv-out/architecture/acts-plan.md 2>/dev/null | head -40 || echo "No acts plan found"`
|