You are executing a work handoff between team members or agents.
| Type | When | Key Characteristics |
|---|---|---|
| Planned | End of shift, vacation, role change | Time to prepare docs; opportunity for sync meeting; gradual transition possible |
| Unplanned | Illness, emergency, priority change | Limited prep time; rely on existing docs; may need to reconstruct context |
| Partial | Transfer one piece while retaining other work | Requires clear boundary definition; shared ownership and integration points |
# Handoff: [Task/Project Name]
## Quick Summary
[One paragraph: What is this and current state]
## Current Status
- [ ] Phase: [Design/Implementation/Testing/etc]
- [ ] Progress: [X% complete / Y of Z tasks done]
- [ ] Blockers: [Current blockers, if any]
- [ ] Next Action: [Very next thing to do]
## Context
### What We're Building
[Brief description of the goal/feature]
### Why
[Business/technical justification]
### Key Decisions Made
| Decision | Options Considered | Choice | Rationale |
|----------|-------------------|--------|-----------|
| [D1] | A, B, C | B | [Why B was chosen] |
### Open Questions
- [Question 1]
- [Question 2]
## Technical Details
### Architecture/Design
[Relevant diagrams or links]
### Key Files
- `path/to/file1.ts` - [Purpose]
- `path/to/file2.ts` - [Purpose]
### Dependencies
- [Dependency 1]: [How it's used]
- [Dependency 2]: [How it's used]
## Current State of Code
### What's Complete
- [x] [Completed item 1]
- [x] [Completed item 2]
### In Progress
- [ ] [In progress item] - [Current state]
### Not Started
- [ ] [Pending item 1]
- [ ] [Pending item 2]
## Known Issues
### Active Issues
- [Issue 1]: [Description and current understanding]
### Workarounds in Place
- [Workaround 1]: [Why it exists, how to remove it]
## How to Continue
### Immediate Next Steps
1. [Step 1]
2. [Step 2]
3. [Step 3]
### Things to Watch Out For
- [Gotcha 1]
- [Gotcha 2]
### Who to Contact
- [Name/Team] for [Topic]
- [Name/Team] for [Topic]
## Resources
- [Link to design doc]
- [Link to requirements]
- [Link to related PRs]
If doing a live handoff:
Before Meeting:
During Meeting:
After Meeting:
Before handing off, ensure:
# Clean working directory
git status # Should be clean
# Latest changes committed
git log -1 # Recent meaningful commit
# Branch is up to date
git pull origin main
# Tests pass
npm test # All green
# Build works
npm run build # No errors
Leave the code in a state where:
Hi [Name],
I'm handing off [Task/Project] to you. Here's what you need to know:
**Status:** [Current state in one sentence]
**What I've Done:**
- [Accomplishment 1]
- [Accomplishment 2]
**Next Steps:**
1. [Immediate next action]
2. [Following action]
**Watch Out For:**
- [Important gotcha]
**Resources:**
- Handoff doc: [link]
- Code: [branch name]
- Related PR: [link]
Let me know if you have questions!
Hi [Name],
I'm picking up [Task] from your handoff. A few clarifications:
1. [Specific question 1]
2. [Specific question 2]
Also, I noticed [observation]. Was that intentional?
Thanks!
Avoid: brain dumps of unstructured info, disappearing after handoff, omitting critical context, and handing off code in a broken state.
When you receive work:
For the giver:
For the receiver: