From research-convensions
Converts a GitHub issue into a PR containing an implementation plan. Guides brainstorming, plan writing, and pushing a plan-only PR.
How this skill is triggered — by the user, by Claude, or both
Slash command
/research-convensions:issue-to-prThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Convert a GitHub issue into an actionable PR whose only content is an implementation plan. The implementation itself happens in a follow-up commit (by you, a teammate, or an automated agent triggered by the PR body).
Convert a GitHub issue into an actionable PR whose only content is an implementation plan. The implementation itself happens in a follow-up commit (by you, a teammate, or an automated agent triggered by the PR body).
gh.Accept any of these forms:
123 → issue #123 in the current repohttps://github.com/<owner>/<repo>/issues/123 → issue #123<owner>/<repo>#123 → issue #123 in a specific repogh issue view <number> --json title,body,labels,assignees
Summarize for the user: title, current state, what the issue is asking for, any open questions.
REQUIRED: invoke a brainstorming skill (superpowers:brainstorming if available) before writing the plan. Otherwise have an explicit discussion with the user.
The goal is to:
Do not skip brainstorming. Do not write a plan without prior discussion.
Save to docs/plans/issue-<number>-<slug>.md (adjust the path to whatever the repo uses):
# <Title from brainstorming>
Issue: #<number>
## Context
<Brief problem statement — what's broken or missing.>
## Approach
<The chosen approach from brainstorming and why it was chosen over the alternatives.>
## Tasks
1. <Specific, ordered implementation task>
2. <Another task>
3. ...
## Acceptance Criteria
- <Observable criterion from the issue or brainstorming>
- <Another>
## Out of scope
- <Anything explicitly deferred>
Keep tasks small and ordered. Each task should be a clear unit a reviewer can check off.
NUMBER=<issue-number>
SLUG=<short-kebab-slug>
TITLE=<title>
git checkout -b "issue-${NUMBER}-${SLUG}"
git add "docs/plans/issue-${NUMBER}-${SLUG}.md"
git commit -m "Add plan for #${NUMBER}: ${TITLE}"
git push -u origin "issue-${NUMBER}-${SLUG}"
gh pr create --title "Fix #${NUMBER}: ${TITLE}" --body "$(cat <<EOF
[action]
## Summary
<1-3 sentence summary from brainstorming.>
Closes #${NUMBER}
EOF
)"
Important:
[action], /claude implement), put it as the first line of the PR body. Many trigger-watchers only parse the first line.issue-<n>-<slug> matches the convention from CONVENTIONS.md.Different teams use different automation triggers. Check the repo's CLAUDE.md or .github/workflows/ to confirm what (if anything) parses the PR body. Common patterns: [action], /agent run, claude: implement. If no automation is configured, you can drop the trigger line — the PR is still useful as a reviewable plan.
| Mistake | Fix |
|---|---|
| Skipping brainstorming | Always brainstorm before planning. The issue text is rarely complete. |
| Trigger token not on line 1 | If your automation expects it first, putting it elsewhere silently does nothing. |
| Committing code along with the plan | Plan-only PR. Implementation goes in a follow-up commit. |
| Generic plan | Use specifics from the brainstorming. "Refactor X" is not a plan; "Extract function foo from bar.rs lines 40-90" is. |
| Wrong issue ref in PR body | Closes #<n> only auto-closes if the PR's base is the default branch. |
npx claudepluginhub codingthrust/templates --plugin research-convensionsGuides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.