| name | plan |
| description | Investigate a GitHub issue and produce a structured implementation plan.
Fetches issue details, explores the codebase, identifies affected layers
(UI, BLoC, Repository, Client), and outputs a step-by-step plan with
files to modify, testing strategy, and risk assessment. Works for bugs,
features, and tasks. Invoke with /plan.
|
| author | Claude Code |
| version | 1.0.0 |
| date | "2026-02-09T00:00:00.000Z" |
| user_invocable | true |
| invocation_hint | /plan |
| arguments | Required: GitHub issue number or URL
Example: /plan 142
Example: /plan #142
Example: /plan https://github.com/divinevideo/divine-mobile/issues/142
If no argument is provided, ask the user which issue to investigate.
|
Issue Investigation & Planning Skill
Purpose
Investigate a GitHub issue thoroughly and produce a structured, actionable
implementation plan. The plan follows the project's layered architecture
(UI -> BLoC -> Repository -> Client) and includes files to modify,
implementation steps, testing strategy, and risk assessment.
Workflow
Phase 1: Fetch Issue
Retrieve the full issue context using gh CLI and GraphQL.
gh issue view <number> --json title,body,comments,labels,state,assignees
gh api graphql -f query='{ repository(owner: "divinevideo", name: "divine-mobile") {
issue(number: <NUMBER>) {
id
title
body
issueType { id name }
subIssues(first: 20) { nodes { number title state } }
parentIssue { number title }
}
} }'
Determine the issue type from:
- Title prefix:
fix: = Bug, feat: = Feature, task: = Task
- GraphQL
issueType field
- Labels (e.g.,
bug label)
Extract key information:
- Bug: Steps to reproduce, actual vs expected result, environment, evidence
- Feature: Requirements, acceptance criteria, user stories
- Task: Description, scope, implementation notes
Phase 2: Explore Codebase
Search the codebase to understand the relevant code. Approach varies by type.
For Bugs
- Search for keywords from the bug description (error messages, screen names, widget names) using
Grep
- Identify the screen/page where the bug manifests using
Glob on lib/screens/ and lib/widgets/
- Trace the code path from UI through BLoC to Repository to Client
- Check for related tests using
Glob on test/
- If Nostr-related, use
mcp__nostr__read_kind or mcp__nostr__read_nip for protocol context
For Features
- Search for similar existing features using
Grep and Glob
- Identify which architectural layers are needed (new BLoC? New repository? New package?)