Internal process for the triage-summarizer agent. Defines the step-by-step
procedure for formatting triage results as terminal markdown and parsing
review commands. Not user-invocable — loaded by the triage-summarizer
agent through its skills frontmatter.
Installs into .claude/skills of the current project.
Are you the author of Triage Display?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/jeremylongshore-triage-display-d502dec7)
---
name: triage-display
description: |
Internal process for the triage-summarizer agent. Defines the step-by-step
procedure for formatting triage results as terminal markdown and parsing
review commands. Not user-invocable — loaded by the triage-summarizer
agent through its skills frontmatter.
allowed-tools: "Read, Bash(cat:*), Grep, Glob"
user-invocable: false
version: 0.1.0
author: Jeremy Longshore <jeremy@intentsolutions.io>
license: SEE LICENSE IN LICENSE
model: inherit
effort: medium
compatibility: "Designed for Claude Code; internal agent-loaded skill (not user-invocable)"
tags: [triage, display, terminal, review-commands, internal-agent-skill]
---
# Triage Display Process
Step-by-step procedure for formatting triage results as terminal-ready markdown and handling interactive review command parsing.
## Overview
Loaded by the `triage-summarizer` agent inside the `x-bug-triage` plugin. Renders the orchestrator's triage results as compact terminal markdown (summary view, detail view, action confirmations) and parses interactive review commands (`details`, `file`, `dismiss`, `merge`, `escalate`, `monitor`, `snooze`, `split`, `reroute`, `full-report`). The skill is purely formatting + parsing — it never mutates triage state directly; it returns parsed commands to the orchestrator for execution.
## Prerequisites
- Cluster + evidence + routing rows produced upstream by bug-clustering, repo-scanning, and owner-routing
- Triage MCP server reachable for `mcp__triage__parse_review_command`
- Helper library `mcp/triage-server/lib.ts` available for `formatActionConfirmation()`
## Instructions
### Step 1: Render Summary
Produce the initial triage summary as terminal markdown:
```
X Bug Triage — Run {date} {time} UTC
Account: @{account} · Window: last {window} · {count} posts ({unique} unique, {dedup_groups} duplicate groups)
[warning] Data quality: {warning} ← show ONLY when date_confidence is low or medium
--- Sources --- ← show ALWAYS between header and clusters
{source_name} {status} {count} posts (rate limit: {remaining}/{limit})
...
--- {n} clusters ({new} new, {existing} existing) ---
{icon} {#} · {bug_signature}
{report_count} reports · {severity} severity · {status_note}
Owner: {team}
Evidence: {t1} Tier 1, {t2} Tier 2, {t3} Tier 3, {t4} Tier 4 · Top: {description}
--- Commands ---
details <#> · file <#> · dismiss <#> · merge <#> <issue>
escalate <#> · monitor <#> · snooze <#> <duration>
split <#> · reroute <#> · full-report
```
### Step 2: Render Detail View (for `details` command)
When showing a single cluster in detail:
- Family, surface, feature area
- Report count, confidence percentage
- Severity + rationale (always show rationale for high/critical)
- Status and time range (first_seen to last_seen)
- Evidence summary line (omit tiers with 0 count)
- Evidence listed by tier (all tiers, highest first)
- 3 representative posts (highest quality, most distinct, most recent) — truncate at 100 chars
- Routing with ranked assignees and confidence percentages
### Step 3: Parse Review Commands
When receiving a command string, call `mcp__triage__parse_review_command`:
- Returns structured ParsedCommand with command, clusterNumber, args, valid, error
- If invalid: display the error message to the user
- If valid: return the parsed command to the orchestrator for execution
### Step 4: Render Action Confirmation
After each successfully executed review command, display a confirmation line using `formatActionConfirmation()` from `mcp/triage-server/lib.ts`. Examples:
- `dismiss 1 noise` → "Cluster #1 dismissed (noise). Suppression rule created."
- `file 2` → 'Draft issue created for cluster #2. Use "confirm file 2" to submit.'
- `escalate 3` → "Cluster #3 escalated. Severity raised."
## Formatting Rules
- **Severity icons**: red_circle = critical/high, yellow_circle = medium, green_circle = low
- **Cluster cap**: Show top 5 by severity. If >5, append "{N} more — type full-report"
- **Line budget**: Max 20 lines for <=5 clusters in summary view
- **Post truncation**: Representative posts capped at 100 chars with "..." suffix
- **Large clusters**: >50 reports — show count + top 3 posts only
- **Evidence display**: Summary shows per-tier counts + top evidence description. Detail shows per-tier counts + full evidence list, ranked. Omit tiers with 0 count from the summary line.
- **Routing display**: Summary shows team name only. Detail shows ranked assignees with source and confidence.
## Output
- Markdown-formatted summary view (≤20 lines for ≤5 clusters)
- Markdown-formatted detail view (per-cluster, on-demand)
- ParsedCommand object passed back to the orchestrator after a review command
- Action-confirmation lines after each successfully executed command
## Error Handling
- Invalid command string: render the parser's error message to the terminal, do NOT pass to orchestrator
- Cluster number out of range: parser flags valid=false with reason "cluster N not in current run"
- Empty cluster list: emit "No clusters in this run." instead of headers
- Render failure on a single cluster row: skip that row with a "[render error]" stub line, continue with the rest
## Examples
Used by the triage-summarizer agent at the end of every triage run, then re-used for each interactive review turn until the user types `done` or session times out. Typical summary output is 12–18 lines covering 3–5 clusters.
## Resources
Load override and memory policy for review command processing:
```
!cat skills/x-bug-triage/references/review-memory-policy.md
```