trustabl/agent-reliability-analyzer/trustabl-enrich
Claude Code and agent skill by trustabl/agent-reliability-analyzer
- community
Checking that the SKILL.md file is still in the repository.
Enriches source files flagged by a Trustabl scan — adds what is missing and corrects what is wrong, guided entirely by the scan's own explanation and fix text. Use after `trustabl scan` to apply findings directly to source files without manual editing.
Install
npx vskill@latest install trustabl/agent-reliability-analyzer/trustabl-enrichSKILL.md
Trustabl Enrich
Applies Trustabl scan findings directly to source files. "Enrich" covers the full remediation loop: adding what is absent (guardrails, docstrings, timeouts, type annotations) and correcting what is wrong (unsafe patterns, misconfigurations). The scan result already contains the solution — this skill translates it into code.
When to Use
- You have output from
trustabl scan(JSON, SARIF, or plain text) and want findings applied to source files automatically - You want to remediate agent misconfigurations without editing each file manually
- You are triaging findings to separate real issues from false positives before applying changes
This skill does not run trustabl scan. Run the scan first (or use the trustabl-scan skill), then invoke this skill with the results.
Input Formats
All three formats produced by the Trustabl CLI are accepted. The skill detects the format automatically.
| Format | Command | |
|---|---|---|
| JSON | trustabl scan --format json | |
| SARIF 2.1.0 | trustabl scan --format sarif | |
| Plain text | paste terminal output directly |
When you runtrustabl scanyourself (e.g. to produce input, or to re-verify at the end), resolve the binary the way the trustabl-scan skill does: prefer"$TRUSTABL_BIN", then the plugin-managed path reported by the TrustablSessionStartcheck this session, thentrustablonPATH.
If the input cannot be parsed or contains zero findings, report clearly and stop — do not proceed to enrichment.
SARIF extraction path:
- Findings:
runs[0].results[] - File + line:
locations[0].physicalLocation.artifactLocation.uri+locations[0].physicalLocation.region.startLine - Explanation:
message.text - Fix (primary):
result.fixes[0].description.text— present on most results - Fix (fallback):
runs[0].tool.driver.rules[]— match onid == ruleId, readhelp.text; use whenfixesarray is absent
JSON extraction path:
- Findings:
findings[] - File + line range:
file_path+start_line…end_line(1-indexed, inclusive; a single-line finding setsend_line == start_line; both are0for repo-level findings with no location). Note: Trustabl 0.1.4 renamed the former flatlinefield tostart_line/end_line— read those, notline. - Explanation:
explanation· Fix:suggested_fix - Also present per finding:
rule_id,scope,severity,confidence. Dependency CVE findings (when the scan ran with--vuln-scan/vuln_scan) appear in the samefindingsarray — the advisory id (CVE / GHSA / PYSEC) is therule_id, andstart_linepoints at the dependency's line in its manifest. The structuredvulnerabilities[]array carries the same matches withfixed_inversions.
Workflow
- Parse — detect the format and normalize every finding into:
file,start_line,end_line,rule_id,scope,severity,confidence,explanation,suggested_fix. (For SARIF,end_linemay be absent for a single-line region — fall back tostart_line.)
- Summarize — render a Markdown table before touching any file:
- Enrich per file — group findings by file. For each file:
- Read the current file content
- Pass all findings for that file plus the file content to the model
- The model returns replacement ranges guided by the scan's
explanationandsuggested_fix
- Apply bottom-up — within each file, sort enrichments by
line_startdescending, then apply using the Edit tool. Bottom-up order prevents line-offset drift.
- Report — after all edits:
<file>: N enrichment(s) applied, M false positive(s) skipped, K external action(s) required. Then ask: "Re-run `trustabl scan` to confirm findings are resolved?" — never run it automatically.
System Prompt
Use this prompt verbatim for each file's model call.
Applying Enrichments
After the model returns the JSON array:
If the response cannot be parsed as a JSON array, halt immediately and report the raw model response to the user — do not attempt heuristic extraction.
- Group enrichments by file.
- Sort each file's enrichments by
line_startdescending. - Apply each enrichment with the Edit tool.
- Skip and log entries where
line_start == 0as:[external action required] <rule_id>: <suggested_fix> - Skip and log entries where
false_positive == trueas:[false positive] <rule_id>: <reason>
Findings with no file location (META findings and repo-scoped findings where file_path is empty): show them in the summary table with File: (repo-level) and Line: —, then log them as external actions — do not attempt an Edit for these.
Constraints
MUST DO
- Show the findings table before touching any file
- Read the current file content before generating enrichments for it
- Apply enrichments bottom-up within each file
- Echo
rule_idin every enrichment object - Mark false positives with an explicit reason
- Log
line_start == 0entries as external actions required - Ask before re-running
trustabl scan
MUST NOT DO
- Run
trustabl scan— this skill enriches only - Change lines outside
line_start–line_endunless required for syntactic validity - Invent findings not present in the scan output
- Deviate from the scan's
suggested_fixfield - Add comments to enriched code
- Collapse multiple findings into one edit
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/trustabl-enrich/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/trustabl/agent-reliability-analyzer/trustabl-enrich)