Draft GitHub Pull Request titles and bodies that follow the project's PR convention (sections, checklist, screenshot policy, issue linking). Reads style from `.claude/android-skills.json` and onboards once if missing. Use when the user asks to open a PR, write a PR description, draft PR body, or runs `gh pr create`. Triggers include "PR 설명", "PR 본문", "pull request", "PR 만들어줘", "gh pr create".
npx claudepluginhub kez-lab/android-custom-skillsThis skill uses the workspace's default tool permissions.
Generates a PR title and body tailored to the repo's conventions. The skill drafts the text — the user (or Claude in a follow-up) decides when to actually call `gh pr create`.
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Checks Next.js compilation errors using a running Turbopack dev server after code edits. Fixes actionable issues before reporting complete. Replaces `next build`.
Generates a PR title and body tailored to the repo's conventions. The skill drafts the text — the user (or Claude in a follow-up) decides when to actually call gh pr create.
Source: .claude/android-skills.json at the git repo root.
{
"git": {
"issueTracker": "github",
"language": "ko",
"prSections": ["summary", "changes", "test-plan", "screenshots", "checklist"],
"prChecklist": [
"lint 통과 (`./gradlew detekt ktlintCheck`)",
"단위 테스트 통과 (`./gradlew test`)",
"Compose 프리뷰 확인",
"다크 모드 확인",
"접근성 라벨 확인"
],
"screenshotPolicy": "required-for-ui",
"titleStyle": "conventional"
}
}
| Field | Values | Notes |
|---|---|---|
prSections | ordered list of section ids | Choose from summary, changes, motivation, test-plan, screenshots, checklist, breaking-changes, rollout. |
prChecklist | string[] | Each entry becomes a - [ ] item. |
screenshotPolicy | none, required-for-ui, always | Whether to demand a screenshot/GIF. |
titleStyle | conventional, conventional-ko, plain | Mirrors commitStyle from the commit-message skill but applied to PR title. |
language | ko, en | Body language. |
issueTracker | none, github, linear, jira | Decides linking syntax: Closes #N / Fixes ENG-45. |
If .claude/android-skills.json has no git.prSections:
ko 또는 en?"none / required-for-ui / always?"summary, changes, test-plan, screenshots, checklist)."titleStyle = conventional, default prChecklist for Android: lint, tests, Compose previews, dark mode, accessibility)..claude/android-skills.json (do not overwrite). Create the file if needed.Default title: subject of the most recent commit on the branch. If the branch has multiple commits, ask the user which one summarizes the PR — or synthesize one in the configured titleStyle.
conventional: feat(scope): subjectconventional-ko: feat(scope): subject (English prefix, Korean subject)plain: free-form, sentence case, no trailing periodCap at 70 chars.
Render only the sections listed in prSections, in that order. Each section uses ## Title headings.
summary2–4 sentences answering: what changed and why does this PR exist. No code blocks. No bulleted lists here — keep prose so reviewers know the goal before diving in.
motivation(Optional, used when the change is non-obvious.) Explains the underlying problem or constraint that drove the change. Reference issue/incident IDs.
changesBulleted list of concrete changes. One bullet per logical change, ordered most → least significant. Reference key files inline:
- Added `BiometricFallbackController` ([auth/BiometricFallbackController.kt](...))
- Replaced `runBlocking` in `LoginViewModel` with structured `viewModelScope.launch`
test-planMarkdown checklist of how to verify. Should be concrete enough that another engineer can run through it without context.
- [ ] Cold-launch the app on a Pixel 8 → biometric prompt appears
- [ ] Cancel biometric 3× → PIN entry shown
- [ ] Run `./gradlew :auth:test` → all green
screenshotsBehavior depends on screenshotPolicy:
none → omit section.required-for-ui → include section with a <!-- attach screenshot or GIF --> placeholder. If the diff doesn't touch UI files (Compose, XML, drawables), omit.always → include section with a placeholder.Layout for UI changes: a 2-column markdown table (Before / After) so reviewers can diff visually.
checklistUse prChecklist from config. Append Closes #<issue> line at the bottom if the user provided an issue number or the branch name encodes one.
breaking-changesOnly include if the diff actually breaks public API or runtime behavior. Format:
**Breaking**: `AuthClient.login(String)` removed; use `AuthClient.login(LoginRequest)` instead.
rolloutOnly for changes with rollout risk (DB migrations, behavior flags, perf-sensitive paths). State the rollout plan: "feature flag auth_v2_enabled defaulted off; will ramp via Firebase RC."
git log --oneline <base>..HEAD and git diff <base>...HEAD (where <base> is the merge base with the default branch). Synthesize the body from the diff, not from a verbal description.git symbolic-ref refs/remotes/origin/HEAD to find the default branch (usually main or master). Do not assume.Closes #N / Fixes ENG-45 when the user provided the ID, the branch name encodes one (feature/ENG-45-foo), or recent commits reference it.gh pr create autonomously. Output the title + body in fenced blocks. The user runs the command (or asks Claude to in a follow-up turn). Exception: explicit "open the PR" instruction.git rev-parse --show-toplevel → repo root.<root>/.claude/android-skills.json. Onboard if git.prSections is missing.git symbolic-ref --short refs/remotes/origin/HEAD 2>/dev/null \
| sed 's@^origin/@@' \
|| echo main
git log --oneline <base>..HEAD and git diff --stat <base>...HEAD.prSections, render per the rules above. Skip optional sections that don't apply.## Title (single-line code block)## Body (multi-line, copy-paste ready)gh pr create command at the end (do not run it).git diff is for[x] without evidence## Test plan section that just says "tested locally"gh pr create after drafting (user reviews first)