close-task-commit-push-pr
Skill689 starsChanged 7 days agoMITView on GitHub
Close the active backlog task (detected from branch name), commit all changes, push to remote, and open a pull request. Use when the user says "close task and ship it", "close task commit push pr", or invokes /close-task-commit-push-pr.
- Reads credentials
- Deletes or force-pushes
- Commits and pushes
In this repository7 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- git-commit-push-prSkill
- prSkill
- releaseSkill
- reviewSkill
- start-taskSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
18 rules. About 0 are common, 12 are distinctive, and 6 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈12
Distinctive · estimate
This author's own choices. Worth a look.
6
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- could be automatic: a setting could enforce it
- Distinctive: line 24
If no task ID is found in the branch name, ask the user which task to close.
- Very specific: line 30
Use mcp__backlog__task_view to read the task details (title, acceptance criteria).
- Distinctive: line 33
Check off all acceptance criteria that were completed (review the diff to determine which ones)
- Very specific: line 34
Write a finalSummary that concisely describes what was implemented
- Very specific: line 35
Use mcp__backlog__task_complete to move the task to the completed folder.
- Distinctive: line 39
Before committing, analyze git status and git diff HEAD to identify logically distinct groups of changes.
- Very specific: line 49
Create one commit per logical group identified above.
- Distinctive: line 50
Write a clean, descriptive commit message for each commit using conventional commits style.
- Distinctive: line 53
Use a HEREDOC to pass the commit message for correct formatting.
- Distinctive: line 58
If the current branch is main or master, create a new feature branch first (use a descriptive name based on the changes).
- Very specific: line 63
Create a PR using gh pr create targeting the main branch.
- Distinctive: line 64
Keep the PR title short (under 70 characters), using conventional commit style.
- Distinctive: line 65
Use a HEREDOC for the PR body with this format:
- Distinctive: line 91
Do all steps in as few messages as possible.
- Distinctive: line 92
Do not read or explore code beyond what git provides in the context above.
- Very specific: line 93
Do not use interactive git flags (-i).
- Distinctive: line 94
Never force-push or amend existing commits.
- Distinctive: line 95
If a pre-commit hook fails, fix the issue and create a NEW commit (do not amend).
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Close Task, Commit, Push & PR
Context
- Current git status: !
git status - Current git diff (staged and unstaged changes): !
git diff HEAD - Current branch: !
git branch --show-current - Main branch: !
git rev-parse --verify main 2>/dev/null && echo main || echo master - Recent commits: !
git log --oneline -10
Your task
Close the active backlog task, commit all changes, push, and open a pull request.
Step 0 — Identify the task
- Extract the task ID from the current branch name (e.g.
feature/task-113-split-css-modules→task-113). - If no task ID is found in the branch name, ask the user which task to close.
Step 1 — Close the backlog task
Close the task before committing so the task file changes are included in the commit and PR.
- Use
mcp__backlog__task_viewto read the task details (title, acceptance criteria). - Use
mcp__backlog__task_editto:- Set status to
Done - Check off all acceptance criteria that were completed (review the diff to determine which ones)
- Write a
finalSummarythat concisely describes what was implemented
- Set status to
- Use
mcp__backlog__task_completeto move the task to the completed folder.
Step 2 — Analyze changes and plan commits
Before committing, analyze git status and git diff HEAD to identify logically distinct groups of changes. Group by feature or concern — for example:
- New files that form a self-contained module → one commit
- Modifications to an existing file that depend on the new module → separate commit
- Task/backlog file changes → include in the final commit (or a dedicated chore commit)
Print a short commit plan (list of planned commits with the files in each) so the grouping is visible.
Step 3 — Commit
- Create one commit per logical group identified above. Stage only the files for that group using explicit file names (never
git add -A; never stage.envor credential files). - Write a clean, descriptive commit message for each commit using conventional commits style.
- End every commit message with:
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> - Use a HEREDOC to pass the commit message for correct formatting.
- Include the closed task file in the final commit.
Step 4 — Push
- If the current branch is
mainormaster, create a new feature branch first (use a descriptive name based on the changes). - Push the branch to origin with
-uto set upstream tracking.
Step 5 — Pull Request
- Create a PR using
gh pr createtargeting the main branch. - Keep the PR title short (under 70 characters), using conventional commit style.
- Use a HEREDOC for the PR body with this format:
## Summary
<1-3 bullet points describing the changes>
## Test plan
- [ ] <testing checklist items>
🤖 Generated with [Claude Code](https://claude.com/claude-code)Step 6 — Update task with PR reference
- Now that you have the PR number, use
mcp__backlog__task_editto append the PR URL/number to thefinalSummary.
Step 7 — Amend commit with updated task file
- Stage the updated task file and amend the last commit to include the PR reference:
git commit --amend --no-editthengit push --force-with-lease.
Step 8 — Report
- Print the PR URL and confirm the task was closed.
Rules
- Do all steps in as few messages as possible. Parallelize independent tool calls.
- Do not read or explore code beyond what git provides in the context above.
- Do not use interactive git flags (
-i). - Never force-push or amend existing commits.
- If a pre-commit hook fails, fix the issue and create a NEW commit (do not amend).
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

