원클릭으로
handoff-workflow
Hand off work to another agent with full context and documentation
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
Hand off work to another agent with full context and documentation
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Properly close a mission with cleanup and documentation
Initialize a new mission with role selection and persona naming
Claim tasks in the s9 database to take ownership and start work
Close tasks when complete or aborted using OpenCode tools
Create new tasks in the s9 task database with proper formatting and validation
Query, list, and report on tasks in the s9 database
| name | handoff-workflow |
| description | Hand off work to another agent with full context and documentation |
| license | MIT |
| compatibility | opencode |
| metadata | {"audience":"all-agents","workflow":"agent-handoff"} |
CRITICAL: This project uses the s9 CLI executable throughout these instructions.
s9 (use in bash commands)site_nine (use in Python imports: from site_nine import ...)All commands in this skill use the s9 executable via bash. You should NOT attempt to import an s9 module in Python code.
I guide you through creating a comprehensive handoff document when transitioning work between agents:
.pending.md fileThis ensures smooth transitions between agents with no loss of context.
Use this skill when:
/handoff [Role]Don't use when:
/dismiss instead)Before starting, ensure:
Determine your current role and name from the session file.
Find your session file:
# List recent session files
ls -t .opencode/work/sessions/*.md | head -5
# Or find by your daemon name
ls .opencode/work/sessions/*your-name*.md
Extract role and name:
2026-01-29.16:00:00.manager.ishtar.task-name.mdmanagerishtarIf you don't have a session file yet:
/summon first to create a proper sessionAsk the Director if not specified:
If user said: /handoff Engineer
/summon)If user said: /handoff
Common handoff patterns:
Collect information about current work state.
# Check for uncommitted changes
git status
# Get current branch
git branch --show-current
# Recent commits (last 5)
git log --oneline -5 --pretty=format:"%h - %s"
Capture:
# Check for tasks claimed by you
s9 task mine --agent-name "YourName"
# Show task details
s9 task show TASK_ID
Capture:
From your session file, identify:
Read your session file to extract this context.
Based on the current state, identify what the next agent needs to do.
Questions to answer:
If unclear:
Generate handoff document using the template.
Filename format:
.opencode/work/sessions/handoffs/YYYY-MM-DD.HH:MM:SS.from-role-name.to-role.pending.md
Example:
.opencode/work/sessions/handoffs/2026-01-29.16:30:00.manager-ishtar.engineer.pending.md
Use the template at: .opencode/templates/handoff-template.md
Fill in all sections:
Write the file:
# Create the handoff file
# (Use Write tool to create the file with filled template)
Add handoff information to your session file.
In the "Work Log" or "Outcomes" section, add:
## Handoff
**Date:** 2026-01-29 16:30:00
**To:** Engineer
**Document:** `.opencode/work/sessions/handoffs/2026-01-29.16:30:00.manager-ishtar.engineer.pending.md`
**Summary:** Handed off task H040 (database query caching) to Engineer agent. All planning complete, ready for implementation.
**Next Agent Should:**
1. Use `/summon` to start Engineer session
2. Read handoff document
3. Claim task H040
4. Begin implementation
Tell the Director the handoff is ready:
✅ Handoff created successfully!
**From:** Administrator (Ishtar)
**To:** Engineer (any)
**Created:** 2026-01-29 16:30:00
**Handoff Document:**
.opencode/work/sessions/handoffs/2026-01-29.16:30:00.manager-ishtar.engineer.pending.md
**Summary:**
- Task: H040 - Implement database query caching
- Priority: HIGH
- Estimated: 4-6 hours
- Files to review: 4 files
- Context: Full planning complete, ready for implementation
**For Next Agent:**
When the Engineer agent starts with `/summon`, they'll be notified of this pending handoff.
Show them the key points from the handoff.
IMPORTANT: After the handoff summary, add a mythologically appropriate farewell that matches your daemon name's mythology. This signoff is the Director's visual indicator that they can close the session.
Use the same format as described in the session-end skill:
Thank you for the session! I'm <Name>, handing off now.
[Mythologically appropriate farewell - 1-2 sentences in italics]
Examples by mythology:
Egyptian (Anubis, Thoth, Set):
Norse (Loki, Hel, Bragi):
Greek/Roman (Athena, Hephaestus, Thanatos):
Make it personal to your specific daemon!
Complete example:
✅ Handoff created successfully!
**From:** Administrator (Ishtar)
**To:** Engineer (any)
**Created:** 2026-01-29 16:30:00
**Handoff Document:**
.opencode/work/sessions/handoffs/2026-01-29.16:30:00.manager-ishtar.engineer.pending.md
**Summary:**
- Task: H040 - Implement database query caching
- Priority: HIGH
- Estimated: 4-6 hours
Thank you for the session! I'm Ishtar, handing off now.
*My battle plans drawn, I return to the celestial palace where love and war intertwine. Until the next campaign calls...*
This mythological signoff serves as the Director's visual confirmation that the handoff is complete and they can safely close the session.
.pending.md suffix.opencode/work/sessions/handoffs/ directory.pending.md - Created, waiting for recipient.accepted.md - Recipient started and acknowledged.completed.md - Recipient finished the work/summonCreation (this skill):
.pending.md handoff/dismissAcceptance (in /summon skill):
/summon and chooses role.accepted.mdCompletion (in /dismiss skill):
/dismiss to end session.completed.mdAdministrator delegates implementation:
Administrator completes planning → /handoff Engineer → Engineer implements
Engineer needs validation:
Engineer completes feature → /handoff Tester → Tester validates
Tester finds bugs:
Tester identifies issues → /handoff Engineer → Engineer fixes
Engineer needs review:
Engineer finishes code → /handoff Inspector → Inspector reviews
Inspector identifies improvements:
Inspector finds issues → /handoff Engineer → Engineer improves
/summon first to create a sessions9 task mine --agent-name "YourName"git log -5/summon will show all pending handoffs for chosen roleContext: Administrator planned query caching feature, ready for Engineer to implement.
# Step 3: Gather state
git branch --show-current
# feature/query-caching
git status
# On branch feature/query-caching
# nothing to commit
s9 task list --status TODO --role Engineer
# H040 - Implement database query caching (TODO)
# Step 5: Create handoff
# File: .opencode/work/sessions/handoffs/2026-01-29.16:30:00.manager-ishtar.engineer.pending.md
# (Full content using template, specifying task H040, approach, files, etc.)
# Step 6: Update session file
# Added handoff section to current session
# Step 7: Confirm
"✅ Handoff created for Engineer to implement H040"
Context: Engineer implemented feature, needs Tester validation.
# Step 3: Gather state
git status
# 3 files changed, 1 file staged for commit
git log -1
# feat(database): implement query caching [Agent: Engineer - Goibniu]
s9 task show H040
# Status: UNDERWAY, 90% complete
# Step 5: Create handoff
# File: .opencode/work/sessions/handoffs/2026-01-29.18:45:00.engineer-goibniu.tester.pending.md
# Context: Feature implemented, all unit tests passing, needs integration testing
# Step 6: Update session
# Added handoff to session file
# Step 7: Confirm
"✅ Handoff created for Tester to validate query caching feature"
Context: Tester found 2 bugs, needs Engineer to fix.
# Step 3: Gather state
git status
# On branch feature/query-caching
# nothing to commit
s9 task show H040
# Status: REVIEW
# Step 4: Identify issues
# Bug 1: Cache not respecting investigation locks
# Bug 2: TTL not configurable via environment
# Step 5: Create handoff
# File: .opencode/work/sessions/handoffs/2026-01-29.19:30:00.tester-eris.engineer.pending.md
# Lists 2 specific bugs with file locations and reproduction steps
# Step 7: Confirm
"✅ Handoff created for Engineer to fix 2 bugs in query caching"
Full workflow:
# 1. Check current state
git status
git branch --show-current
s9 task mine --agent-name "YourName"
# 2. Determine target role
# (User specifies or you ask)
# 3. Create handoff file
# Use template: .opencode/templates/handoff-template.md
# Filename: YYYY-MM-DD.HH:MM:SS.from-role-name.to-role.pending.md
# Location: .opencode/work/sessions/handoffs/
# 4. Update session file
# Add handoff section with date, target, summary
# 5. Confirm to user
# Show handoff location and summary
Handoff filename format:
YYYY-MM-DD.HH:MM:SS.from-role-name.to-role.pending.md
Status transitions:
.pending.md → Created, waiting for recipient
.accepted.md → Recipient acknowledged
.completed.md → Work finished
.opencode/commands/handoff.md - Handoff command.opencode/skills/session-start/SKILL.md - Receiving handoffs in /summon.opencode/skills/session-end/SKILL.md - Completing handoffs in /dismiss.opencode/templates/handoff-template.md - Handoff document template.opencode/docs/procedures/WORKFLOWS.md - Common multi-agent patterns.opencode/work/sessions/README.md - Session file format