create-feature-pr
Create a new feature branch, implement feature work, commit with commit-message, and open a PR with gh using standardized templates. Use when the user asks to develop a new feature, start a feature branch, or open a feature PR; also when asked to draft a feature PR based on the latest commit message.
When & Why to Use This Skill
This Claude skill automates the end-to-end software development workflow, including branch creation, feature implementation, semantic commits, and standardized GitHub Pull Request generation. It streamlines the transition from idea to code review by enforcing best practices, consistent naming conventions, and automated documentation linking.
Use Cases
- Accelerating Feature Launches: Quickly spin up new feature branches and draft comprehensive PRs based on high-level descriptions or acceptance criteria.
- Enforcing Team Standards: Ensure every Pull Request follows a specific template and every commit adheres to semantic versioning rules automatically without manual oversight.
- Automated Documentation: Maintain a clear audit trail by automatically linking progress files and updating status within the GitHub repository during the PR creation process.
- Hands-free Git Management: Manage complex git workflows and GitHub CLI interactions through natural language commands, reducing context switching for developers.
| name | create-feature-pr |
|---|---|
| description | Create a new feature branch, implement feature work, commit with semantic-commit, and open a PR with gh using standardized templates. Use when the user asks to develop a new feature, start a feature branch, or open a feature PR; also when asked to draft a feature PR based on the latest commit message. |
Create Feature PR
Contract
Prereqs:
- Run inside the target git repo with a clean working tree (or stash unrelated changes).
gitandghavailable onPATH, andgh auth statussucceeds.$AGENT_KIT_HOMEpoints at the repo root (or tools are otherwise available).
Inputs:
- Feature summary + acceptance criteria (preferred) or inferred from the latest commit subject.
- Related progress file path under
docs/progress/to link in the PR body.
Outputs:
- A new branch
feat/<slug>, one or more commits, and a GitHub PR created viagh. - PR body populated from
references/PR_TEMPLATE.mdwith a full GitHub URL to the progress file.
Exit codes:
- N/A (multi-command workflow; failures surfaced from underlying
git/ghcommands)
Failure modes:
- Dirty working tree or wrong base branch.
- Missing
ghauth or insufficient permissions to push/create PR. - PR body missing required sections or missing/invalid progress link.
Setup
- Load commands with
source $AGENT_KIT_HOME/scripts/kit-tools.sh
Inputs
- Prefer explicit user feature description and acceptance criteria.
- If missing, read the latest commit message:
git log -1 --pretty=%B. - If still unclear, ask for a 1-2 sentence feature summary and expected behavior.
Branch naming
- Prefix:
feat/. - Build the slug from the feature summary or latest commit subject.
- Slug rules: lowercase; replace non-alphanumeric with hyphens; collapse hyphens; trim to 3-6 words.
- If a ticket ID like ABC-123 appears, prefix it:
feat/abc-123-<slug>.
Workflow
- Confirm the working tree is clean; stash or commit if needed.
- Determine the base branch (default
origin/HEAD); ask if unclear. - Create the branch:
git checkout -b feat/<slug>. - Implement the feature with minimal scope; avoid unrelated refactors.
- Add or update tests when reasonable; run available lint/test/build commands.
- Commit using the
semantic-commitskill; prefer a single commit unless splitting is justified. - Push the branch and open a PR with
gh pr createusingreferences/PR_TEMPLATE.md.
PR rules
- Title: capitalize the first word; reflect the feature outcome; do not reuse the commit subject verbatim.
- Replace the first H1 line in
references/PR_TEMPLATE.mdwith the PR title. - Progress: include a link to the related progress file under
docs/progress/(and update todocs/progress/archived/when DONE).- Use a full GitHub URL (e.g.
https://github.com/<owner>/<repo>/blob/<branch>/docs/progress/...) because PR bodies resolve relative links under/pull/.
- Use a full GitHub URL (e.g.
- Always include Summary, Changes, Testing, and Risk/Notes sections.
- If tests are not run, state "not run (reason)".
- Use
scripts/render_feature_pr.sh --prto generate the PR template quickly.
Output
- Use
references/OUTPUT_TEMPLATE.mdas the response format. - Use
scripts/render_feature_pr.sh --outputto generate the output template quickly.