Agent skill
finish-task
Close task or complete task/project with commit, PR, and completion report
Install this agent skill to your Project
npx add-skill https://github.com/majiayu000/claude-skill-registry/tree/main/skills/other/finish-task
SKILL.md
Finish Task Skill
Use this skill when completing a task that involved code modifications.
Completion Checklist
Complete ALL steps in order:
1. Verify All Changes Are Ready
# Check what's changed
git status
git diff --stat
Review that all intended changes are present and no unintended files are modified.
2. Run Tests (if applicable)
# For configurator
cd inav-configurator
npm test
# For firmware - build check
cd inav
make SITL
3. Stage Changes
Stage files selectively:
git add <specific-files>
Review what's staged:
git diff --cached --stat
4. Create Commit Message
Write a clear commit message. Do NOT mention Claude, AI, or automation.
Format:
<short summary - what changed>
<detailed explanation if needed>
- bullet points for multiple changes
- explain the "why" not just the "what"
Fixes #<issue-number> (if applicable)
Open in gedit for review:
# Write message to temp file and open in gedit
cat > /tmp/commit_msg.txt << 'EOF'
<your commit message here>
EOF
gedit /tmp/commit_msg.txt
After reviewing/editing in gedit, commit:
git commit -F /tmp/commit_msg.txt
5. Push to Remote
git push origin <branch-name>
# If new branch, set upstream:
git push -u origin <branch-name>
6. Create PR (if appropriate)
When to create a PR:
- Task is complete and ready for upstream review
- Branch contains a coherent, reviewable set of changes
When NOT to create a PR:
- Work is still in progress
- Changes are local-only or experimental
Check if PR already exists:
gh pr list --head <branch-name>
Create PR using gh CLI:
# For configurator
cd inav-configurator
gh pr create --title "<descriptive title>" --body "$(cat << 'EOF'
## Summary
<Brief description of changes>
## Changes
- Change 1
- Change 2
## Testing
<How this was tested>
## Related Issues
Fixes #<issue-number> (if applicable)
EOF
)"
# For firmware
cd inav
gh pr create --title "<descriptive title>" --body "$(cat << 'EOF'
## Summary
<Brief description of changes>
## Changes
- Change 1
- Change 2
## Testing
<How this was tested>
## Related Issues
Fixes #<issue-number> (if applicable)
EOF
)"
7. Release the Lock
# For firmware
rm claude/locks/inav.lock
# For configurator
rm claude/locks/inav-configurator.lock
8. Send Completion Report
Create a comprehensive completion report in claude/developer/email/sent/. The manager will use this to update claude/projects/<project-name>/.
Filename: YYYY-MM-DD-HHMM-completed-<task-name>.md
# Task Completion: <Task Name>
**Date:** <date>
**From:** Developer
**Task:** <task-name>
**Project:** <project-name in claude/projects/>
## Status: COMPLETE
## Summary
<Brief summary of what was accomplished>
## Implementation Approach
<How you implemented it and key technical decisions>
## Changes Made
- <change 1>
- <change 2>
## Test Results
<What testing was done, results>
## Known Limitations / Follow-up
<Any limitations or future work needed>
## Commit
- **Branch:** <branch-name>
- **Commit:** <commit-hash>
## PR (if created)
- **PR:** #<number>
- **URL:** <url>
## Lock Released
Released <repo>.lock
---
**Developer**
Copy to manager inbox:
cp claude/developer/email/sent/<report>.md claude/manager/email/inbox/
Role Separation
Developer responsibilities:
- Complete the code work
- Add reports, analysis, or notes to the project directory (
active/<project>/) - Create commit and PR
- Release the lock
- Send completion report to manager inbox
Manager responsibilities (after receiving report):
- Verify work is complete
- Move project directory from
active/tocompleted/ - Update
INDEX.md(remove entry) - Update
completed/INDEX.md(add entry) - Archive the completion report
The developer updates project content. The manager handles project lifecycle (moving directories, updating indexes).
Commit Message Guidelines
Good:
Fix GPS recovery after signal loss
Move lastUpdateTime update outside isFirstGPSUpdate block so timestamp
is recorded on first reading after recovery, preventing position
estimate timeout.
Fixes #11049
Bad:
🤖 Generated with Claude Code
Co-Authored-By: Claude <[email protected]>
Never include:
- References to Claude, AI, LLM, or automation
- Emojis (unless project convention)
- Co-authored-by AI lines
- "Generated by" attributions
Be sure any files you created are organized properly according to claude/developer/INDEX.md
Related Skills
- start-task - Begin tasks with proper setup
- create-pr - Create pull request after task completion
- check-builds - Verify builds pass before finishing
- git-workflow - Commit changes and manage branches
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
agent-ops-spec
Manage specification documents in .agent/specs/. Use when user provides requirements, acceptance criteria, or feature descriptions that need to be tracked and validated against implementation.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-testing
Test strategy, execution, and coverage analysis. Use when designing tests, running test suites, or analyzing test results beyond baseline checks.
agent-ops-state
Maintain .agent state files. Use at session start, after meaningful steps, and before concluding: read/update constitution/memory/focus/issues/baseline consistently.
Didn't find tool you were looking for?