* Update create-agent-skills to match 2026 official docs, add /triage-prs command - Rewrite SKILL.md to document that commands and skills are now merged - Add new frontmatter fields: disable-model-invocation, user-invocable, context, agent - Add invocation control table and dynamic context injection docs - Fix skill-structure.md: was incorrectly recommending XML tags over markdown headings - Update official-spec.md with complete 2026 specification - Add local /triage-prs command for PR triage workflow - Add PR triage plan document Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * [2.31.0] Reduce context token usage by 79%, include recent community contributions The plugin was consuming 316% of Claude Code's description character budget (~50,500 chars vs 16,000 limit), causing components to be silently excluded. Now at 65% (~10,400 chars) with all components visible. Changes: - Trim all 29 agent descriptions (move examples to body) - Add disable-model-invocation to 18 manual commands - Add disable-model-invocation to 6 manual skills - Include recent community contributions in changelog - Fix component counts (29 agents, 24 commands, 18 skills) Contributors: @trevin, @terryli, @robertomello, @zacwilliams, @aarnikoskela, @samxie, @davidalley Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * Fix: keep disable-model-invocation off commands called by /lfg, rename xcode-test - Remove disable-model-invocation from test-browser, feature-video, resolve_todo_parallel — these are called programmatically by /lfg and /slfg - Rename xcode-test to test-xcode to match test-browser naming convention Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * Fix: keep git-worktree skill auto-invocable (used by /workflows:work) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> * feat(converter): support disable-model-invocation frontmatter Parse disable-model-invocation from command and skill frontmatter. Commands/skills with this flag are excluded from OpenCode command maps and Codex prompt/skill generation, matching Claude Code behavior where these components are user-only invocable. Bump converter version to 0.3.0. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
101 lines
3.0 KiB
Markdown
101 lines
3.0 KiB
Markdown
---
|
|
name: reproduce-bug
|
|
description: Reproduce and investigate a bug using logs, console inspection, and browser screenshots
|
|
argument-hint: "[GitHub issue number]"
|
|
disable-model-invocation: true
|
|
---
|
|
|
|
# Reproduce Bug Command
|
|
|
|
Look at github issue #$ARGUMENTS and read the issue description and comments.
|
|
|
|
## Phase 1: Log Investigation
|
|
|
|
Run the following agents in parallel to investigate the bug:
|
|
|
|
1. Task rails-console-explorer(issue_description)
|
|
2. Task appsignal-log-investigator(issue_description)
|
|
|
|
Think about the places it could go wrong looking at the codebase. Look for logging output we can look for.
|
|
|
|
Run the agents again to find any logs that could help us reproduce the bug.
|
|
|
|
Keep running these agents until you have a good idea of what is going on.
|
|
|
|
## Phase 2: Visual Reproduction with Playwright
|
|
|
|
If the bug is UI-related or involves user flows, use Playwright to visually reproduce it:
|
|
|
|
### Step 1: Verify Server is Running
|
|
|
|
```
|
|
mcp__plugin_compound-engineering_pw__browser_navigate({ url: "http://localhost:3000" })
|
|
mcp__plugin_compound-engineering_pw__browser_snapshot({})
|
|
```
|
|
|
|
If server not running, inform user to start `bin/dev`.
|
|
|
|
### Step 2: Navigate to Affected Area
|
|
|
|
Based on the issue description, navigate to the relevant page:
|
|
|
|
```
|
|
mcp__plugin_compound-engineering_pw__browser_navigate({ url: "http://localhost:3000/[affected_route]" })
|
|
mcp__plugin_compound-engineering_pw__browser_snapshot({})
|
|
```
|
|
|
|
### Step 3: Capture Screenshots
|
|
|
|
Take screenshots at each step of reproducing the bug:
|
|
|
|
```
|
|
mcp__plugin_compound-engineering_pw__browser_take_screenshot({ filename: "bug-[issue]-step-1.png" })
|
|
```
|
|
|
|
### Step 4: Follow User Flow
|
|
|
|
Reproduce the exact steps from the issue:
|
|
|
|
1. **Read the issue's reproduction steps**
|
|
2. **Execute each step using Playwright:**
|
|
- `browser_click` for clicking elements
|
|
- `browser_type` for filling forms
|
|
- `browser_snapshot` to see the current state
|
|
- `browser_take_screenshot` to capture evidence
|
|
|
|
3. **Check for console errors:**
|
|
```
|
|
mcp__plugin_compound-engineering_pw__browser_console_messages({ level: "error" })
|
|
```
|
|
|
|
### Step 5: Capture Bug State
|
|
|
|
When you reproduce the bug:
|
|
|
|
1. Take a screenshot of the bug state
|
|
2. Capture console errors
|
|
3. Document the exact steps that triggered it
|
|
|
|
```
|
|
mcp__plugin_compound-engineering_pw__browser_take_screenshot({ filename: "bug-[issue]-reproduced.png" })
|
|
```
|
|
|
|
## Phase 3: Document Findings
|
|
|
|
**Reference Collection:**
|
|
|
|
- [ ] Document all research findings with specific file paths (e.g., `app/services/example_service.rb:42`)
|
|
- [ ] Include screenshots showing the bug reproduction
|
|
- [ ] List console errors if any
|
|
- [ ] Document the exact reproduction steps
|
|
|
|
## Phase 4: Report Back
|
|
|
|
Add a comment to the issue with:
|
|
|
|
1. **Findings** - What you discovered about the cause
|
|
2. **Reproduction Steps** - Exact steps to reproduce (verified)
|
|
3. **Screenshots** - Visual evidence of the bug (upload captured screenshots)
|
|
4. **Relevant Code** - File paths and line numbers
|
|
5. **Suggested Fix** - If you have one
|