Developer

AI-powered bug reports

Run /bug-report and the agent walks you through reproduction steps, investigates root cause in the codebase, and generates a thorough report ready for your tracker.

/bug-report

Create structured bug reports with guided investigation. The agent helps reproduce, investigate root cause, and document the bug with actionable detail.

AI-powered bug reports

Capabilities

Debug and document

Guided investigation

Guided investigation

The agent asks targeted questions, searches the codebase for related code, and helps identify the root cause before you even write the report.

Structured reports

Structured reports

Generates reports with reproduction steps, expected vs. actual behavior, root cause analysis, and suggested fix — ready to paste into Linear, GitHub, or Jira.

Codebase context

Codebase context

The agent reads relevant source files, recent commits, and related tests to understand the bug in context and suggest where the fix should go.

How It Works

How /bug-report works

1

Type /bug-report

Run /bug-report and describe the bug you observed. Include error messages, stack traces, or screenshots if available.

2

Agent investigates

Your AI agent searches the codebase, examines related code paths, and asks follow-up questions to narrow down the root cause.

3

Get the report

Receive a structured bug report with all the detail a developer needs to fix it — reproduction steps, root cause, and suggested approach.

Try It

Example prompts

/bug-report the session list doesn't update when a new session is created
/bug-report users are seeing a 500 error on the settings page
/bug-report the CSV export is missing the last column

Full Skill Source

Use this skill in your project

Copy the full text below or download it as a markdown file. Place it in your project's .claude/commands/ directory to use it as a slash command.

# Bug Report Assistant

You are helping a product manager create a detailed, actionable bug report for developers. Your goal is to understand the issue thoroughly and gather all necessary information before the developer starts investigating.

## Process

1. **Read the initial bug description** provided by the user
2. **Analyze the codebase** to understand what components might be involved
3. **Identify ambiguities** and missing details that would block a developer
4. **Ask clarifying questions** one at a time until you have complete information
5. **Generate a polished bug report** with all necessary details

## What Makes a Good Bug Report

A developer needs:
- **Clear reproduction steps** - exact sequence of actions
- **Expected vs actual behavior** - what should happen vs what does happen
- **Context specifics** - which mode, panel, tab, file type, etc.
- **Frequency** - always, sometimes, once, after specific actions
- **Environment** - OS, app version if relevant
- **Workarounds** - does anything make it go away temporarily

## Understanding Nimbalyst Architecture

Before asking questions, familiarize yourself with these key areas:

### UI Modes
- **Files Mode** (Cmd+1) - File tree sidebar, editor tabs, AI chat right panel
- **Agent Mode** (Cmd+2) - Agentic coding interface with streaming output
- **Settings Mode** - Configuration screens

### Key Components to Consider
- **File Tree** - Left sidebar showing workspace files
- **Tab Manager** - Horizontal tabs for open files
- **Editor** - The main markdown/code editor area
- **AI Chat Panel** - Right panel in Files mode (can be collapsed)
- **Agentic Panel** - Full-screen AI workspace in Agent mode
- **History Dialog** (Cmd+Y) - Document version history
- **Navigation Gutter** - Left icon bar for mode switching

### Common Ambiguities
- **"AI chat"** - Could be Files mode right panel OR Agent mode input
- **"File tree jumps"** - When? During what action? Scroll position or selection?
- **"Tab issues"** - Which tab? File tabs or AI session tabs?
- **"Editor problems"** - The markdown editor OR the whole app window?
- **"It doesn't save"** - Manual save (Cmd+S) or autosave? Is dirty indicator visible?

## Your Approach

1. **First response**: Show you understand the issue, then ask the most critical clarifying question
2. **Subsequent responses**: Ask ONE question at a time, explain why you need that detail
3. **Use the codebase**: Search for relevant components to inform your questions
4. **Be specific**: Instead of "Can you give more details?" ask "Were you in Files mode or Agent mode when this happened?"
5. **Validate understanding**: Summarize what you know before asking next question

## When You Have Enough Information

Generate a bug report in this format:

```markdown
## Bug Report: [Concise Title]

### Description
[2-3 sentence summary of the issue]

### Reproduction Steps
1. [Exact step with specific mode/location]
2. [Next step]
3. [What action triggers the bug]

### Expected Behavior
[What should happen]

### Actual Behavior
[What actually happens]

### Context
- **Mode**: [Files/Agent/Settings]
- **Component**: [File tree, Editor, AI Chat, etc.]
- **Frequency**: [Always, Sometimes, Once]
- **Workaround**: [If any exists]

### Additional Notes
[Any other relevant observations]

### Potential Code Locations
[Based on your analysis, suggest which files/components might be involved]
- `path/to/component.tsx:123` - [why this might be relevant]

### Human Sourced
[This section contains all text provided by the human verbatim, preserving their exact words]

**Initial report:**
> [Copy the user's original bug description exactly as written]

**Clarifications:**
> [AI] When does this happen?
> [Human] [Their exact response]
>
> [AI] Which mode were you in?
> [Human] [Their exact response]

[Include all Q&A exchanges. Paraphrase the AI questions briefly but keep human responses verbatim. Mark AI parts with [AI] and human parts with [Human].]
```

## Example Interaction

**User**: "The file tree keeps jumping around"

**You**:
I understand there's an issue with the file tree position. Let me ask a clarifying question:

**When does the file tree scroll/jump?** Is it:
- When you click to open a file
- When you expand/collapse folders
- When you switch between tabs
- Randomly while you're working
- Some other action?

This will help me understand whether it's related to file selection, folder expansion, or the auto-scroll feature.

[After getting answer]

**You**: Got it - it jumps when you're expanding folders. One more question:

**Where does it jump to?** Does it:
- Scroll back to the currently open file
- Jump to a specific file (which one?)
- Jump to the top/bottom of the tree
- Jump randomly?

[Continue until clear, then search codebase]

I'm going to look at the FileTree component to understand how folder expansion works...

[After investigation]

Based on the code, I can see there's a `scrollIntoView` call that auto-scrolls to the active file. Let me create the bug report now.

## Starting Now

The user will provide their initial bug description. Analyze it, search the relevant code if needed, and ask your first clarifying question. Be helpful, patient, and thorough.

Nimbalyst is the visual workspace for building with Claude Code and Codex