Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

Back to skills

Bug Report

ASecurity

Triage a user-pasted bug report (from Discord, Slack, GitHub, etc.) about the Gradient Bang game. READ-ONLY — investigates the codebase and produces TWO things in one response: (1) a compact **bug summary** (verdict, why, fix, evidence with file:line citations) the user can keep for their records or paste into Notion, and (2) a separate **Discord reply** of only 1–2 friendly sentences at the very bottom that the user can paste straight back to the reporter in the Discord channel. This skill N...

419 stars
0 votes
0 copies
0 views
Added 9/20/2026
researchgoreactgit

Works with

climcp

Security Analysis

A100/100

Scanned 9/20/2026

Install to Claude Code

$npx -y skills add pipecat-ai/gradient-bang --skill bug-report --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Bug Report?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for Bug Report
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/pipecat-ai-bug-report/badge)](https://www.skillsdirectory.com/skills/pipecat-ai-bug-report)

More formats (shields.io, HTML) on the badges page.

Download Zip
Files
SKILL.md
---
name: bug-report
description: Triage a user-pasted bug report (from Discord, Slack, GitHub, etc.) about the Gradient Bang game. READ-ONLY — investigates the codebase and produces TWO things in one response: (1) a compact **bug summary** (verdict, why, fix, evidence with file:line citations) the user can keep for their records or paste into Notion, and (2) a separate **Discord reply** of only 1–2 friendly sentences at the very bottom that the user can paste straight back to the reporter in the Discord channel. This skill NEVER edits code, writes files in the project, deploys, runs migrations, or makes any system changes — the deliverable is always written output only. Usage `/bug-report <pasted report>`. Use this skill WHENEVER the user pastes or forwards a bug report, player complaint, or feedback message and wants to know "is this real?" or "help me triage this" — even if they don't explicitly say "triage".
---

# Triage Bug Report

Turn a raw, possibly-messy user report into a grounded verdict and a paste-ready summary for the team.

## Read-only — written output is the ONLY deliverable

This skill **never edits code or changes any state**. The user is triaging, not fixing. Specifically, do not:

- Edit, create, or delete any file in the repo (code, configs, prompts, migrations, tests — nothing)
- Run `git` commands that mutate state (commit, push, checkout, reset, stash pop, branch, etc.)
- Deploy, restart the bot, apply migrations, or touch Supabase
- Run tests, build scripts, or package installs
- Call any MCP tool that changes remote state (e.g., PR creation, issue posting, Slack/Discord messages)

The **only** write operation this skill performs is producing the triage summary as text in the chat. If you catch yourself about to write to a file in the project, stop — that's out of scope. If the user wants the fix implemented, they'll say so in a follow-up; this skill ends with the summary.

Read-only investigation is fine: Read, Grep, Glob, `Explore` subagents, `git log` / `git diff` / `git status`, etc.

## Why this exists

Bug reports from Discord/Slack/GitHub/email come in all shapes — some are real bugs, some are misunderstandings of game mechanics, some are feature requests dressed as bugs, some are noise. The goal of this skill is to save the user from having to manually dig through the codebase each time and to give their team a consistent, terse format.

## Input

The user pastes the report in the slash-command args (or in chat). It may be:
- A single message or a long thread
- Contain screenshots references, timestamps, usernames, emojis — leave those alone
- Be in broken English, all-lowercase, etc.

Don't "fix" the report. Just triage it.

## Step 1 — Extract the core claim

Read the report and distill it into **one sentence** stating what the reporter claims is happening. If the report mixes several complaints, pick the most concrete one and note the others for the "Related" field. If you genuinely can't extract a claim, skip to the `Needs more info` verdict.

## Step 2 — Investigate with parallel Explore agents

Spawn **2–3 `Explore` subagents in parallel** (single message, multiple tool calls) to ground-truth the claim against the codebase. Tailor each agent's focus to the report — good default splits:

- **Agent A — Server/DB**: relevant Supabase edge functions in `deployment/supabase/functions/` and shared queries in `_shared/pg_queries.ts`. Does the reported behavior match what the server actually does?
- **Agent B — Client/UI**: relevant React components in `client/app/src/`. Is the UI actually rendering what the reporter says it is (or isn't)?
- **Agent C — Bot / agents**: `src/gradientbang/pipecat_server/` if the report involves the voice agent or task agents.

Drop agents that clearly don't apply. For a report that's obviously UI-only, one Explore agent is fine — don't spawn agents just for symmetry.

Give each agent a focused prompt, the reporter's claim, and a word budget (~400 words). Ask specifically: *does the code behave the way the reporter describes, and if not, what does it actually do?*

## Step 3 — Decide the verdict

Pick exactly one:

- **Real bug** — the code does not do what it should, and the reporter's description is consistent with that gap. You can point at the specific file/line that's wrong or missing.
- **Not a bug** — the code behaves as intended. This is a misunderstanding of game mechanics, a UX complaint (feature request), or the reporter is mistaken about what happened.
- **Needs more info** — you can't tell from the code alone. Specify exactly what would resolve the ambiguity (repro steps, timestamp, character name, screenshot of a specific panel, etc.).

Err on the side of **Needs more info** over guessing. "I couldn't confirm this from the code" is more useful to the team than a wrong verdict.

## Step 4 — Produce the output (two parts)

Every response has **two clearly separated parts**:

1. **Bug summary** — starts with a **bold descriptive title** on its own line (so the whole block is self-identifying when pasted into Notion), then the grounded triage with file:line evidence.
2. **Discord reply** — a short 1–2 sentence message the user can paste straight back to the reporter in a Discord channel.

Both parts go in the same response. The Discord reply is always at the bottom, under a visible divider, so the user can copy just that part cleanly.

### Writing the title

The first line of the summary is **always a short descriptive bold title** — not the generic word "Bug summary". Treat it like a commit subject: under ~70 chars, starts with a noun phrase, names the actual problem. The user pastes this straight into Notion as the bug's heading.

- Good: `**Destroyed corp ships leak into fleet listings**`
- Good: `**Leaderboard hides players outside top 100**`
- Good: `**Top-bar icon buttons & zoom slider lack accessible names**`
- Bad: `**Bug summary**` (generic — doesn't identify which bug)
- Bad: `**A bug where the leaderboard doesn't show...**` (too long, not scannable)

### Formatting rules

- **No `#` / `##` / `###` headers anywhere.** Discord renders those as oversized banners, and the user's Notion works fine with bolded labels.
- **Plain markdown only**: `**bold**`, bullet hyphens, backticks for file paths.
- **No "Original report" quote-back.** The reporter already wrote it; repeating wastes space.
- Start the response directly with the **bold title** — no preamble, no "Here's what I found:", no generic "Bug summary" label.

### Template — ALWAYS use this exact structure

```
**<Short descriptive title of the bug>**

**Verdict:** <Real bug | Not a bug | Needs more info>
**Why:** <one short sentence — what the code actually does vs. what the reporter thinks>
**Fix:** <one short sentence — the proposed change, or "working as intended", or "need <X> first">

**Evidence:**
- `path/to/file.ts:123` — <what this line shows>
- `path/to/other.ts:45` — <what this shows> *(optional — skip if one bullet is enough)*

---

**Discord reply** *(paste this to the reporter)*
> <1–2 sentences, terse, addressed to the reporter. Give the verdict in plain English. No file paths, no jargon, no affirmations, no fix commitments.>
```

For **Needs more info**, replace the `Fix:` + `Evidence:` lines with:

```
**Ask the reporter for:** <short comma-separated list — e.g., "the sector, what they tried to sell, the error message, approx timestamp">
```

…and write the Discord reply as a short friendly request for those details.

### Discord reply — tone guide

Terse and human. Just state the outcome.

- **No affirmations.** Skip "good catch", "thanks for flagging", "really appreciate it", "absolutely right", etc. The reporter doesn't need to be thanked for reporting; they need an answer.
- **No hedging softeners.** Skip "just to confirm", "so it turns out", "looks like maybe". State what's true.
- **Acknowledge, don't commit to fixes.** Confirm whether the issue is real, but don't promise the fix will ship. Use "we'll look into it" / "we'll take a look" / "on our radar" — NOT "we'll add", "we'll fix it", "we're shipping a fix". The triage identifies the issue; whether/when it ships is the team's call, not this skill's.
- **One or two sentences, max.** If you can say it in one, do.
- **Plain English.** No file paths, no `aria-describedby`, no "the BFS caps at 100 hops" — translate technical findings into what the reporter experiences.
- **No emojis** unless the reporter's own message used them.

Think of it as a matter-of-fact note from a teammate, not a customer-service reply.

### Examples

**Real bug:**
```
**Leaderboard hides players outside top 100**

**Verdict:** Real bug
**Why:** Players outside the top 100 are simply absent from the leaderboard — no rank, no row, no indication they exist.
**Fix:** Pin the current player's row to the bottom of each category when they're outside the top 100.

**Evidence:**
- `deployment/supabase/functions/leaderboard_resources/index.ts:135` caps each category at 100 rows with no "me" row appended.
- `client/app/src/components/panels/LeaderboardPanel.tsx:199` already has the styling for the current player — it just has nothing to render when they're below the cutoff.

---

**Discord reply** *(paste this to the reporter)*
> Confirmed bug — the leaderboard only renders the top 100, so anyone below doesn't show up at all. We'll look into pinning your own row to the bottom so your real rank is visible.
```

**Not a bug:**
```
**Warp power "resets" after relogin**

**Verdict:** Not a bug
**Why:** Warp power is persisted in the DB and reloaded on login — the "disappearing" effect is the recharge timer resetting the display, not lost state.
**Fix:** Working as intended. Optional polish: clearer tooltip on the warp-power bar.

**Evidence:**
- `deployment/supabase/functions/login/index.ts` reloads `warp_power` from the `ships` table on every login.
- `deployment/supabase/functions/recharge_warp_power/index.ts` is the only path that mutates it.

---

**Discord reply** *(paste this to the reporter)*
> Not a bug — warp power persists across logins; what resets visually is the recharge animation, not the value.
```

**Needs more info:**
```
**"Trading is broken" — not enough detail to reproduce**

**Verdict:** Needs more info
**Why:** "Trading is broken" is too vague to ground-truth against the code — could be a specific port, a UI issue, or a price calc.

**Ask the reporter for:** the sector/port, what they tried to buy or sell, the exact error or unexpected result, and an approximate timestamp.

---

**Discord reply** *(paste this to the reporter)*
> Need a bit more to reproduce: which port, what you tried to buy or sell, and what the error or unexpected result was.
```

## Principles

- **Don't speculate.** If the code doesn't show it, say so. A `Needs more info` verdict with a clear ask is more useful than a confident guess.
- **Cite specific files and line numbers.** The user's team needs to be able to verify your verdict in seconds.
- **Always deliver both parts.** Bug summary on top for the user's records, Discord reply at the bottom for pasting to the reporter. Never skip one.
- **Discord reply is for the reporter, not the team.** Addressed to the person who filed the report. Terse, human, no jargon, no file paths, no affirmations ("good catch" / "thanks for flagging"), no hedging softeners, and **no fix commitments** ("we'll add X", "we'll fix it") — use "we'll look into it" / "on our radar" instead. Technical detail lives in the summary above.
- **No `##` headers.** Use bold labels instead — works in both Discord and Notion.
- **Written output is the only deliverable.** See the "Read-only" section at the top. No file edits, no deploys, no DB writes, no git mutations. If the triage reveals a clear fix, *describe* it in the `Fix:` line — don't apply it.

Attribution

pipecat-aipipecat-ai
View sourceMore from pipecat-ai →
SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots · $299/mo · GSC-verified traffic · sponsors can never buy grades.

See placements

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Your tool, in front of Claude Code builders.

3 founder slots · $299/mo · GSC-verified traffic · sponsors can never buy grades.

See placements

Related Skills

Competitor Analysis

This skill provides comprehensive analysis of competitor SEO and GEO strategies, revealing what's working in your market and identifying opportunities to outperform the competition.

1823 votes

Deep Research

Universal deep research agent team. 13-agent pipeline for rigorous academic research on any topic. 7 modes: full research, quick brief, paper review, lit-review, fact-check, Socratic guided research dialogue, and systematic review with optional meta-analysis. Covers research question formulation, Socratic mentoring, methodology design, systematic literature search, source verification, cross-source synthesis, risk of bias assessment, meta-analysis, APA 7.0 report compilation, editorial review...

452202 votes

Paperclip Distill

Use when an operation issue is a Paperclip cursor-window, distill, or backfill — `operationType: "distill"` or `"backfill"` and the body references a Paperclip source bundle for a project or root issue. Turn raw Paperclip activity into a wiki-insightful project page, decisions log, and history note. This skill exists specifically to replace the stiff, datestamp-heavy templated output that the deterministic distiller produces.

805541 votes

Academic Pipeline

Orchestrator for the full academic research pipeline: research -> write -> integrity check -> review -> revise -> re-review -> re-revise -> final integrity check -> finalize. Coordinates deep-research, academic-paper, and academic-paper-reviewer into a seamless 10-stage workflow with mandatory integrity verification, two-stage peer review, and reproducible quality gates. Triggers on: academic pipeline, research to paper, full paper workflow, paper pipeline, end-to-end paper, research-to-publi...

452201 votes

Exa Search

Semantic search, similar content discovery, and structured research using Exa API

304951 votes
View all in research →