ワンクリックで
session-end
Properly close a mission with cleanup and documentation
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Properly close a mission with cleanup 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 | session-end |
| description | Properly close a mission with cleanup and documentation |
| license | MIT |
| compatibility | opencode |
| metadata | {"audience":"all-agents","workflow":"mission-closure"} |
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.
STOP! Read this carefully before executing this skill:
You should ONLY execute this skill if:
/dismiss command, ORDO NOT execute this skill if:
If you're unsure, ASK:
Director, are you dismissing me? Should I end my mission and close this session?
Why this matters:
s9 doctor will report issuesIf you proceed incorrectly, the Director will be frustrated with you.
Assuming you have been properly dismissed, proceed with the following steps:
I help you properly end a mission on the s9 project by:
s9 mission end to close the mission in the databaseIMPORTANT: Check if a dismissal message was provided with the /dismiss command.
If the Director provided a message (e.g., /dismiss great work today! thank you), capture it and include it in:
Format for mission file:
### HH:MM - Mission End
**Dismissal message:** "[message from Director]"
- Updated mission file
- Committed changes
- Closed task(s): TASK_ID
Format for goodbye: Display the Director's message prominently before the standard farewell:
💬 **From the Director:**
> [message]
Thank you for working with me! I'm <Persona>, signing off.
If no dismissal message was provided, skip this and proceed normally.
Find your mission file in .opencode/work/missions/:
ls -lt .opencode/work/missions/*.md | head -5
Your mission file should be the most recent one with your role and persona in the filename.
Format: .opencode/work/missions/YYYY-mm-dd.HH:MM:SS.role.persona.codename.md
If you're not sure which file is yours, check the YAML frontmatter for your persona:
grep -l "persona: your-persona" .opencode/work/missions/*.md | tail -1
Gather information about what was accomplished:
Check git status:
git status
Review commits:
git log --oneline -10
Check claimed tasks:
s9 task mine --mission-id "<your-mission-id>"
Optional: Use s9 mission summary <mission-id> to auto-generate a summary of files, commits, and tasks.
Read your mission file and update these sections:
1. Duration:
**Duration:** <start> - <end> (~X hours)
2. Files Changed:
## Files Changed
- `src/file.py` - Brief description
- `tests/test_file.py` - Brief description
3. Outcomes:
## Outcomes
- ✅ Completed successfully
- ⚠️ Partial completion
- ❌ Not completed (deferred)
4. Work Log (add final entry):
### HH:MM - Mission End
- Updated mission file
- Committed changes
- Closed task(s): TASK_ID
5. Next Steps:
## Next Steps
[What remains, or "None - work is complete"]
Note: The s9 mission end command will update frontmatter automatically in Step 8.
Close any tasks you claimed:
# Check for open tasks
s9 task mine --mission-id "<your-mission-id>" | grep UNDERWAY
# Close completed task
s9 task close TASK_ID --status COMPLETE --notes "Brief summary"
Status options: COMPLETE, PAUSED, BLOCKED
If you received a handoff at the start of this mission, mark it complete:
s9 handoff complete <handoff-id>
Find the handoff ID from your mission file or by checking accepted handoffs for your role.
Verify task artifacts are updated:
cat .opencode/data/tasks/TASK_ID.md
Update if needed with implementation details, files changed, testing performed.
Ensure everything is committed:
git status
Commit mission file if needed:
git add .opencode/work/missions/<your-mission-file>.md
git commit -m "docs(mission): complete <persona> <role> mission <codename> [Persona: <Persona> - <Role>]"
THIS IS THE MOST CRITICAL STEP - If you skip this, your mission will remain in the database as an IDLE "zombie" mission forever.
Close your mission officially in the database:
s9 mission end <your-mission-id>
What this command does:
end_time in the missions tableIF YOU DO NOT RUN THIS COMMAND:
s9 dashboards9 doctor will report it as abandoned workVerify it worked:
s9 mission show <your-mission-id>
You should see an end_time in the output. If you see end_time: None, THE COMMAND FAILED - run it again.
Update the OpenCode session title to show the mission has ended (2-step process):
s9 mission generate-session-uuid
Capture the UUID from the output.
s9 mission rename-tui <persona> <Role> --uuid-marker <uuid-from-step-9a> --suffix "[DISMISSED]"
After successful rename:
✅ Session renamed to indicate dismissal - you can easily identify completed missions in your session list!
Example result: "Operation epic-specter: Yggdrasil - Operator [DISMISSED]"
This provides clear visual feedback that the mission has ended and the session-end protocol was followed.
Run sanity check if appropriate:
make qa
If QA fails, fix issues or document in "Next Steps".
Provide a comprehensive final summary with these specific details:
✅ **Mission Complete!**
**Summary:**
- **Duration:** ~X hours (start_time - end_time)
- **Files changed:** N files (briefly note what: renamed, updated, new, deleted)
- **Task completed:** TASK-ID - Brief title
- **Commits:** N commit(s) with short hash(es)
**What was accomplished:**
- [Detailed bullet points explaining what was done]
- [Include specifics: what changed, what was added, what was removed]
- [Note any testing or verification performed]
**Next steps:**
- [Specific remaining work OR "None - work complete!"]
Mission file: .opencode/work/missions/<filename>.md [OR "Not created (ephemeral work)"]
If a dismissal message was provided, display it prominently:
💬 **From the Director:**
> [dismissal message]
Thank you for working with me! I'm **<Persona>**, [brief persona description], signing off.
*[Add mythologically appropriate farewell - 1-2 sentences that evoke your character]*
[emoji] [DISMISSED]
If no dismissal message, use this format:
Thank you for working with me! I'm **<Persona>**, [brief persona description], signing off.
*[Add mythologically appropriate farewell - 1-2 sentences that evoke your character]*
[emoji] [DISMISSED]
Tips for a great farewell:
Example farewells by tradition:
Research your persona's mythology for inspiration! Make it memorable.