commit
Selectively stages and commits only the changes related to the current session, skipping unrelated modifications.
Commits changes grouped by done-plans, rebases main, runs build and quality gates, then creates or updates a PR. Replaces the commit command. Use when you're ready to open or update a pull request.
$ npx -y skills add dcouple/Pane --skill prepare-pr --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/prepare-prContext preview
The summary Claude sees to decide when to auto-load this skill.
Commits changes grouped by done-plans, rebases main, runs build and quality gates, then creates or updates a PR. Replaces the commit command. Use when you're ready to open or update a pull request.
name: prepare-pr description: Commits changes grouped by done-plans, rebases main, runs build and quality gates, then creates or updates a PR. Replaces the commit command. Use when you're ready to open or update a pull request. argument-hint: "[optional: PR title or description]" disable-model-invocation: true
Commit, rebase, build, and open/update a pull request — all in one step.
1. List all done plans: `ls ./tmp/done-plans/` 2. Read each done-plan to understand what files and features it covers. 3. Run `git diff` and `git diff --cached` to see all staged and unstaged changes.
For each changed file: 1. Read the diff to understand what changed. 2. Match to a done-plan by topic, referenced files, or feature area. 3. Group into logical commit units — one commit per plan.
**Grouping rules**:
For each group: 1. `git add <specific files>` — **never** `git add .` or `git add -A` 2. Review staged diff for secrets or credentials — warn the user if found. 3. Commit with message: `type: short description` (feat, fix, refactor, docs, chore). Under 72 chars. Imperative mood.
**Conventions**: Reference the plan name in the commit body if helpful. Keep subjects concise.
1. Fetch latest main: `git fetch origin main` 2. Rebase: `git rebase origin/main` 3. If conflicts occur:
4. After rebase completes, verify with `git log --oneline -10` that history looks correct.
Run the build and quality gates, fixing any errors:
pnpm build
pnpm lint
pnpm typecheck
For each command: 1. If it **passes**, move on. 2. If it **fails**, read the error output carefully:
3. If a fix requires non-trivial changes (architectural issues, missing dependencies), tell the user and ask how to proceed.
**Commit build fixes** as a separate commit: `fix: resolve build errors`
1. Check for existing PR: `gh pr view --json number,title,body,url,state 2>/dev/null`
gh pr create --title "<title>" --body "$(cat <<'EOF' <body> EOF )"
gh pr edit --title "<title>" --body "$(cat <<'EOF' <body> EOF )"
Build the PR description from the done-plans. List work in **chronological order** based on plan dates (the `YYYY-MM-DD` prefix in filenames). When updating an existing PR, **append** new work to the existing description — never overwrite previous entries.
## Summary [1-3 sentence overview derived from done-plans and context.md] ## Work Completed ### 1. [Plan/Feature Name from earliest done-plan] - Key changes and what they accomplish ### 2. [Plan/Feature Name from next done-plan] - Key changes and what they accomplish ### 3. [Plan/Feature Name from latest done-plan] - Key changes and what they accomplish ## Pre-Merge Testing - [ ] [Short, specific thing to test based on the changes — e.g., "Verify new endpoint returns 200 with valid payload"] - [ ] [Another key behavior to verify] - [ ] [Edge case or integration point worth checking] ## Build Verification - [x] `pnpm build` passes - [x] `pnpm lint` passes - [x] `pnpm typecheck` passes
Use `$ARGUMENTS` as the PR title if provided, otherwise derive one from the done-plans.
1. Push the branch: `git push -u origin <branch> --force-with-lease`
2. If `--force-with-lease` fails (remote has new commits not in local), tell the user and ask how to proceed.
Present the final result:
PR ready. Commits: - <commit summaries> Build: PASS Lint: PASS Typecheck: PASS PR: <url> Branch: <branch name> (rebased on main) Done-plans included: - <list of plan files>
Repo: dcouple/Pane
Selectively stages and commits only the changes related to the current session, skipping unrelated modifications.
Creates a reconciled implementation plan by combining a structured plan draft with a normalized intent brief and a PRP-style research dossier, then…
Have an interactive discussion about a topic, approach, or feature. Researches the codebase as needed, talks through options, and updates ./tmp/context.md with…
Executes an approved plan with one primary implementation stream by default, using bounded parallel sidecars only when the write scopes are truly disjoint.…
Investigates bugs through hypothesis-driven root cause analysis. Automatically invoked when the user reports a bug, error, broken behavior, or something not…
Conducts extensive web research on technical topics with validated references and citations. Use when you need external documentation, library comparisons, or…