triage-ai 1.6.0 → 1.6.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/README.md +68 -8
- package/SKILL.md +89 -0
- package/examples/agents-md-example.md +27 -0
- package/examples/gemini-md-example.md +27 -0
- package/package.json +8 -3
package/README.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# triage-ai
|
|
2
2
|
|
|
3
|
-
**
|
|
3
|
+
**Collaborative AI triage for code, plans and architecture — Claude, Gemini and Codex independently explore your codebase, then merge findings with consensus scoring into one prioritized report. Use it for security audits, bug hunts, plan reviews, second opinions on AI-generated code, and more. Available as a Claude Code skill or MCP server for any AI editor.**
|
|
4
4
|
|
|
5
|
-
    
|
|
5
|
+
     
|
|
6
6
|
|
|
7
7
|
---
|
|
8
8
|
|
|
@@ -216,9 +216,29 @@ triage-ai ready [models] # smoke test all or specific models
|
|
|
216
216
|
| **S2** | Medium | N+1 queries, missing validation |
|
|
217
217
|
| **S3** | Low | Naming conventions, dead code |
|
|
218
218
|
|
|
219
|
-
##
|
|
219
|
+
## AI Editor Integration
|
|
220
220
|
|
|
221
|
-
|
|
221
|
+
triage-ai works in any AI editor — as a **Claude Code skill** (auto-discovered, richest experience) or as an **MCP server** (universal, works everywhere).
|
|
222
|
+
|
|
223
|
+
### Claude Code (Skill — recommended)
|
|
224
|
+
|
|
225
|
+
triage-ai ships with a `SKILL.md` that Claude Code discovers automatically after install. Claude will know when and how to run triage without any configuration.
|
|
226
|
+
|
|
227
|
+
```bash
|
|
228
|
+
npm install -g triage-ai
|
|
229
|
+
# That's it — ask Claude to "run a triage" or "find security issues"
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
You can also use the `/triage` slash command:
|
|
233
|
+
|
|
234
|
+
```bash
|
|
235
|
+
cp examples/claude-code-skill.md ~/.claude/commands/triage.md
|
|
236
|
+
# Then: /triage "find security vulnerabilities"
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
### Claude Code (MCP)
|
|
240
|
+
|
|
241
|
+
Alternatively, add triage as an MCP server in `~/.claude/settings.json`:
|
|
222
242
|
|
|
223
243
|
```json
|
|
224
244
|
{
|
|
@@ -231,15 +251,55 @@ Add to your editor's MCP configuration:
|
|
|
231
251
|
}
|
|
232
252
|
```
|
|
233
253
|
|
|
234
|
-
|
|
254
|
+
### Gemini CLI
|
|
255
|
+
|
|
256
|
+
Add to `~/.gemini/settings.json`:
|
|
235
257
|
|
|
236
|
-
|
|
258
|
+
```json
|
|
259
|
+
{
|
|
260
|
+
"mcpServers": {
|
|
261
|
+
"triage": {
|
|
262
|
+
"command": "triage-ai",
|
|
263
|
+
"args": ["--mcp"]
|
|
264
|
+
}
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
```
|
|
268
|
+
|
|
269
|
+
For project-level context, copy the example memory file:
|
|
237
270
|
|
|
238
271
|
```bash
|
|
239
|
-
cp examples/
|
|
272
|
+
cp examples/gemini-md-example.md your-project/GEMINI.md
|
|
273
|
+
```
|
|
274
|
+
|
|
275
|
+
### OpenAI Codex
|
|
276
|
+
|
|
277
|
+
Add to your Codex MCP configuration, or run directly:
|
|
278
|
+
|
|
279
|
+
```bash
|
|
280
|
+
codex "run triage-ai to find bugs"
|
|
281
|
+
```
|
|
282
|
+
|
|
283
|
+
For project-level context, copy the example memory file:
|
|
284
|
+
|
|
285
|
+
```bash
|
|
286
|
+
cp examples/agents-md-example.md your-project/AGENTS.md
|
|
240
287
|
```
|
|
241
288
|
|
|
242
|
-
|
|
289
|
+
### Cursor / Windsurf / Cline / VS Code (Copilot) / Zed / Continue
|
|
290
|
+
|
|
291
|
+
Add to your editor's MCP configuration:
|
|
292
|
+
|
|
293
|
+
```json
|
|
294
|
+
{
|
|
295
|
+
"mcpServers": {
|
|
296
|
+
"triage": {
|
|
297
|
+
"command": "triage-ai",
|
|
298
|
+
"args": ["--mcp"]
|
|
299
|
+
}
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
```
|
|
243
303
|
|
|
244
304
|
## Configuration
|
|
245
305
|
|
package/SKILL.md
ADDED
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: triage
|
|
3
|
+
description: Triage — Collaborative AI analysis with Claude, Gemini and Codex for code review, plan review, security audits, architecture review and bug hunts. Each model independently explores the codebase, then findings are merged with consensus scoring. Use this skill when the user asks to "triage", "run triage", "code review", "security audit", "find bugs", "review this plan", "second opinion", "check for vulnerabilities", "review my changes", "architecture review", "audit", mentions "triage-ai", or wants collaborative multi-model analysis of their code, plans or architecture.
|
|
4
|
+
version: 1.6.1
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Triage — Collaborative AI analysis with Claude, Gemini and Codex
|
|
8
|
+
|
|
9
|
+
Run `triage-ai` to launch Claude Code, Gemini CLI and OpenAI Codex as a collaborative review team. Each model independently explores the codebase, then findings are merged with consensus scoring into one prioritized report. Works for code review, plan review, security audits, architecture analysis, bug hunts, and getting second opinions on AI-generated code. When multiple models independently flag the same issue, confidence is high.
|
|
10
|
+
|
|
11
|
+
## Prerequisites
|
|
12
|
+
|
|
13
|
+
triage-ai must be installed globally:
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
npm install -g triage-ai
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
At least one AI CLI must be installed and authenticated:
|
|
20
|
+
- **Claude Code**: `npm install -g @anthropic-ai/claude-code` then `claude auth login`
|
|
21
|
+
- **Gemini CLI**: `npm install -g @google/gemini-cli` then `gemini auth login`
|
|
22
|
+
- **OpenAI Codex**: `npm install -g @openai/codex` then set `OPENAI_API_KEY`
|
|
23
|
+
|
|
24
|
+
Run `triage-ai ready` to verify which models are available.
|
|
25
|
+
|
|
26
|
+
## How to Run
|
|
27
|
+
|
|
28
|
+
**IMPORTANT: Run the triage command in the background** using `run_in_background: true` on the Bash tool. This lets you relay progress to the user as it happens instead of showing a truncated bash window.
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
triage-ai "<user's prompt>" --nice 10 --timeout 300 --verbose
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
### Common invocations
|
|
35
|
+
|
|
36
|
+
```bash
|
|
37
|
+
# Full 3-model review
|
|
38
|
+
triage-ai "find bugs and security issues"
|
|
39
|
+
|
|
40
|
+
# Single model, quick check
|
|
41
|
+
triage-ai --models claude "quick security scan"
|
|
42
|
+
|
|
43
|
+
# Review only uncommitted changes
|
|
44
|
+
triage-ai --diff-only "check my changes for bugs"
|
|
45
|
+
|
|
46
|
+
# Save report + remember findings in project memory
|
|
47
|
+
triage-ai --remember --out report.md "full security audit"
|
|
48
|
+
|
|
49
|
+
# Preview patches without applying
|
|
50
|
+
triage-ai --dry-run "fix the SQL injection"
|
|
51
|
+
|
|
52
|
+
# Restrict models to pre-gathered context only (faster, no filesystem exploration)
|
|
53
|
+
triage-ai --context-only "review this code for issues"
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## While triage is running
|
|
57
|
+
|
|
58
|
+
1. Tell the user: "Running triage with Claude, Gemini and Codex in parallel — I'll relay progress as each model completes."
|
|
59
|
+
2. Check the output file periodically (every 15-20s) to relay status updates
|
|
60
|
+
3. Look for these markers in the output:
|
|
61
|
+
- `=== triage-ai vX.Y.Z ===` = startup confirmed (version check)
|
|
62
|
+
- `[phase:N/6] name — Title` = phase transition (N of 6 total phases)
|
|
63
|
+
- `[assess] ModelName…` = model still running (with elapsed time)
|
|
64
|
+
- `[assess] ModelName ✓` = model completed (with finding count and time)
|
|
65
|
+
- `[assess] ModelName ✗` = model failed (with error hint)
|
|
66
|
+
- `=== TRIAGE COMPLETE ===` = all done — read full output
|
|
67
|
+
- `=== REPORT START ===` / `=== REPORT END ===` = report body delimiters
|
|
68
|
+
4. When you see a model complete, tell the user immediately, e.g. "Codex finished — 5 findings in 12.3s"
|
|
69
|
+
|
|
70
|
+
## Interpreting results
|
|
71
|
+
|
|
72
|
+
- **Auth failures**: If a model shows "not authenticated" or "rate limited", tell the user the fix:
|
|
73
|
+
- Claude: `claude auth login`
|
|
74
|
+
- Gemini: `gemini auth login`
|
|
75
|
+
- Codex: `codex` interactively, or set `OPENAI_API_KEY`
|
|
76
|
+
- **Severity levels**: S0 = blockers (fix now), S1 = high, S2 = medium, S3 = low
|
|
77
|
+
- **Consensus findings** (2+ models agree): highest confidence — present these first
|
|
78
|
+
- **Prose responses**: "(prose)" in model results means the model responded but couldn't produce structured findings
|
|
79
|
+
- **Context truncation**: `⚠ Context was truncated` in summary means large files were cut short — warn the user
|
|
80
|
+
|
|
81
|
+
## After triage completes
|
|
82
|
+
|
|
83
|
+
1. Show a summary: "X models completed, Y findings (Z consensus)"
|
|
84
|
+
2. If any model failed, explain why and how to fix it
|
|
85
|
+
3. Present findings in a table: severity, title, consensus status
|
|
86
|
+
4. Show S0/S1 findings with full detail
|
|
87
|
+
5. For S2/S3, provide a brief list unless the user asks for more
|
|
88
|
+
6. If patches were generated, offer to show or apply them
|
|
89
|
+
7. **ALWAYS ask the user before implementing any fixes** — never auto-implement
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Triage AI — Project Instructions for Codex
|
|
2
|
+
|
|
3
|
+
Copy this file to your project root as `AGENTS.md` so Codex knows how to use triage-ai.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Triage
|
|
8
|
+
|
|
9
|
+
This project uses [triage-ai](https://github.com/wyman101/triage-ai) for multi-model code analysis.
|
|
10
|
+
|
|
11
|
+
### Running a triage
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
triage-ai "<prompt>" --nice 10 --timeout 300 --verbose
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Examples:
|
|
18
|
+
- `triage-ai "find security vulnerabilities"`
|
|
19
|
+
- `triage-ai "review authentication flow for bugs"`
|
|
20
|
+
- `triage-ai --diff-only "check my changes for bugs"`
|
|
21
|
+
- `triage-ai --remember "full security audit"` (saves findings to AGENTS.md)
|
|
22
|
+
|
|
23
|
+
### Interpreting results
|
|
24
|
+
|
|
25
|
+
- **S0** = blockers (fix immediately), **S1** = high, **S2** = medium, **S3** = low
|
|
26
|
+
- **Consensus findings** (flagged by 2+ models) have high confidence — prioritize these
|
|
27
|
+
- Always ask the user before implementing any fixes from the triage report
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Triage AI — Project Instructions for Gemini
|
|
2
|
+
|
|
3
|
+
Copy this file to your project root as `GEMINI.md` so Gemini CLI knows how to use triage-ai.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Triage
|
|
8
|
+
|
|
9
|
+
This project uses [triage-ai](https://github.com/wyman101/triage-ai) for multi-model code analysis.
|
|
10
|
+
|
|
11
|
+
### Running a triage
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
triage-ai "<prompt>" --nice 10 --timeout 300 --verbose
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Examples:
|
|
18
|
+
- `triage-ai "find security vulnerabilities"`
|
|
19
|
+
- `triage-ai "review authentication flow for bugs"`
|
|
20
|
+
- `triage-ai --diff-only "check my changes for bugs"`
|
|
21
|
+
- `triage-ai --remember "full security audit"` (saves findings to GEMINI.md)
|
|
22
|
+
|
|
23
|
+
### Interpreting results
|
|
24
|
+
|
|
25
|
+
- **S0** = blockers (fix immediately), **S1** = high, **S2** = medium, **S3** = low
|
|
26
|
+
- **Consensus findings** (flagged by 2+ models) have high confidence — prioritize these
|
|
27
|
+
- Always ask the user before implementing any fixes from the triage report
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "triage-ai",
|
|
3
|
-
"version": "1.6.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "1.6.1",
|
|
4
|
+
"description": "Collaborative AI triage for code, plans and architecture — Claude, Gemini and Codex independently analyze your codebase then merge findings with consensus scoring. Security audits, bug hunts, plan reviews, second opinions. Claude Code skill + MCP server.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/cli.js",
|
|
7
7
|
"bin": {
|
|
@@ -20,6 +20,7 @@
|
|
|
20
20
|
"dist",
|
|
21
21
|
"README.md",
|
|
22
22
|
"LICENSE",
|
|
23
|
+
"SKILL.md",
|
|
23
24
|
"examples"
|
|
24
25
|
],
|
|
25
26
|
"keywords": [
|
|
@@ -44,7 +45,11 @@
|
|
|
44
45
|
"linter",
|
|
45
46
|
"bug-detection",
|
|
46
47
|
"consensus",
|
|
47
|
-
"llm"
|
|
48
|
+
"llm",
|
|
49
|
+
"claude-code",
|
|
50
|
+
"claude-code-skill",
|
|
51
|
+
"skill",
|
|
52
|
+
"plugin"
|
|
48
53
|
],
|
|
49
54
|
"author": {
|
|
50
55
|
"name": "wyman101",
|