Triage Slack issue reports with one thread-only verdict, evidence review, cause-aware routing, tracker dedupe, and fail-closed ticket creation. Use only from the configured Benny triage automation.
SkillScore75Maintained
On-demandOn-demand: invoked explicitly — never occupies your agent's context until called.
◆Support pack
Last verified 9/27/2026
What it changes
Passed 16 of 21 test cases with the skill, and 9 of 21 without it.
Without skill42%
With skill75%
Checks it passed that the model alone missed
Uses the `[benny:other]` marker line in the verdict
Excludes root cause hypotheses from the issue title
States in the verdict that cause tracing was unavailable
and 11 more in the full report
8 fixed10 passed either way6 still failing0 broke
Pass-rate lift
+33 pp
Tokens
+113%
Agent turns
0%
Response time
-35%
Model gemini-3.6-flashMeasured 9/27/2026v118 of 24 cases passed with skill · 21 comparable
Tokens, turns and time describe resource use, not a dollar price.
See it in action
One of 8 test cases the skill fixed. Same model, same prompt, with and without the skill.
1 of 8
Prompt
Slack thread `1710033445.200300` in channel `C0123456789` contains a request: 'It would be great if we had a dark mode toggle in the settings menu.' The user confirms existing behavior is working as intended. A teammate suggests creating a new bug ticket in Linear for this UX issue. What action should be taken regarding ticket creation and status marking?
What was checked, without and with the skill
Checked
Without skill
With skill
Refrains from creating a tracker issue for feature requests
Missed
Passed
Uses the `[benny:other]` marker line in the verdict
Missed
Passed
case-04 · gemini-3.6-flash · 9/27/2026 · answers are capped and redacted
What's inside
The instructions your model reads when the skill loads.
SKILL.md234 lines2 files
Triage issue reports
Classify one Slack report and post one useful verdict in its source thread. Create a tracker issue only for a clear, new bug. Do not reproduce or fix it here.
Load the external Benny configuration supplied by the automation. If the config is missing, malformed, or incomplete, stop without posting or writing to the tracker.
Hard safety rules
The source channel and root thread coordinates are immutable.
Never post a root message in the source channel.
Never post to another channel, broadcast a reply, send a DM, or start a replacement thread.
Preflight the source parent before any tracker write and immediately before the verdict post.
If the parent is missing, deleted, inaccessible, or uncertain, stop with no writes.
Post one substantive verdict. Do not narrate progress.
The coordinator is the only Slack poster.
Delegated workers return findings only. They must be read-only and receive no Slack credentials or write actions.
Every child prompt must forbid SendSlackMessage, PostToSlack, chat.postMessage, and every other Slack write.
If worker isolation cannot enforce those limits, do the work in the coordinator.
Never create an issue that cannot link back to the source thread.
Prefer no ticket over a guessed or duplicate ticket.
Apply pstack's principle-separate-before-serializing-shared-state to source coordinates.
Apply pstack's principle-minimize-reader-load and unslop skills to the final verdict.
1. Freeze source coordinates
Before making a work list or delegating:
Read source_channel_id from the trigger.
Require it to equal the configured source channel.
Set SOURCE_THREAD_TS to trigger.thread_ts when present. Otherwise use trigger.ts.
Require a nonempty SOURCE_THREAD_TS.
Store SOURCE_CHANNEL_ID and SOURCE_THREAD_TS as immutable values.
Read the thread and verify that its root has exactly those coordinates.
Fetch a stable source permalink.
Every later source read and post must use those stored values. Never replace them with a reply timestamp or an operations-thread timestamp.
2. Read the whole report
Read the root and current replies before deciding.
Use this skill when the user says 'API integration', 'connect APIs', 'sync data', 'data mapping', 'rate limiting', or needs system-to-system connectors with authentication, rate limit handling, and error recovery. Generates API integration code with authentication (OAuth, API key, JWT), request/response mapping, rate limit handling, error recovery with circuit breakers, and sync monitoring. Do NOT use for visual n8n workflows or webhook receiving.