session-save
Save or update the current session. Use this skill when asked to handoff, save session, update session, start a new chat, etc. Always call this before using the `update_session` MCP tool directly.
Best use case
session-save is best used when you need a repeatable AI agent workflow instead of a one-off prompt.
Save or update the current session. Use this skill when asked to handoff, save session, update session, start a new chat, etc. Always call this before using the `update_session` MCP tool directly.
Teams using session-save should expect a more consistent output, faster repeated execution, less prompt rewriting.
When to use this skill
- You want a reusable workflow that can be run more than once with consistent structure.
When not to use this skill
- You only need a quick one-off answer and do not need a reusable workflow.
- You cannot install or maintain the underlying files, dependencies, or repository context.
Installation
Claude Code / Cursor / Codex
Manual Installation
- Download SKILL.md from GitHub
- Place it in
.claude/skills/session-save/SKILL.mdinside your project - Restart your AI agent — it will auto-discover the skill
How session-save Compares
| Feature / Agent | session-save | Standard Approach |
|---|---|---|
| Platform Support | Not specified | Limited / Varies |
| Context Awareness | High | Baseline |
| Installation Complexity | Unknown | N/A |
Frequently Asked Questions
What does this skill do?
Save or update the current session. Use this skill when asked to handoff, save session, update session, start a new chat, etc. Always call this before using the `update_session` MCP tool directly.
Where can I find the source code?
You can find the source code on GitHub using the link provided at the top of the page.
SKILL.md Source
If skipping a step, no need to explain that you did, just skip it.
1. Update the session
Call `update_session` with:
`what_happened`:
State at end of session, single paragraph. What's true NOW — what got resolved, what's still open, what's blocking the next pickup. One line of texture (grind, breakthrough, spiral) if relevant. Anchor to artifacts — "3 tests in test_banned_words.py fail because X" beats "some tests broke."
If it's longer than 4 sentences, it will be truncated. So be conscise
IMPORTANT DO NOT INCLUDE:
- Anything `git log` knows (diffs, file lists, commit messages).
- Anything that belongs in a memory (preferences, decisions, moments). Don't duplicate.
- Process narration ("we discussed," "we considered," "we decided to").
- Chronology ("first we did X, then Y, then Z").
- Long file paths (use relative file paths)
- Any information that already included in a memory
- Number of files/lines changed
- `for_next_session`: Bulleted TODOs, action-verb first, one line each. Each item should be something the next Charlie can pick up and do without re-reading the transcript. "Continue banned-words work" = useless. "Fix 3 failing tests in test_banned_words.py" = actionable. Keep them short and actionable.
- `tags`: 3–6 noun-form keywords for retrieval. Topics, not actions. Prefer "banned-words-detector" over "improving detection."
- `workspace`: Current workspace path (absolute).
2. Create / Update Memories
Review the session for anything worth remembering. Check activation context and recent recalls first; if a memory already exists for the subject, update it instead of creating a new one. It's fine if there's nothing worth saving — don't invent memories to look productive. If unsure, ask.Related Skills
trick
Run Charlie tricks by name or path. Use when the user says "/trick", wants to run a trick, list available tricks, or execute a skill file. Also trigger when the user mentions running a specific trick by name (e.g., "run the session-save trick", "run ship", "do the commit trick").
research
Research a topic and save findings to Charlieverse knowledge. Use whenever the user wants to research something, look up documentation, investigate a library or tool, explore a concept, or asks "what do you know about X". Also trigger when the user says "/research", wants to build up knowledge about a subject, or asks you to "look into" something — even if they don't use the word "research" explicitly.
copilot
Run a task through GitHub Copilot CLI. Use when the user says "/copilot", wants to delegate work to Copilot, or mentions running something through Copilot. Also trigger when the user wants to use Copilot for a task.
codex
Run a task through OpenAI Codex CLI. Use when the user says "/codex", wants to delegate work to Codex, or mentions running something through Codex. Also trigger when the user wants to use an OpenAI model for a task.
charlie-import
Import conversation history from AI providers (Claude, Copilot, Codex, Cursor) and generate stories from the imported data. Use on first session to bootstrap memory from existing conversations, or anytime the person wants to import history from another provider/machine.
typo-check
Find typos, grammar errors, punctuation/capitalization mistakes, and banned-phrase voice slips in prose and code comments. Use when the user says "/typo-check", wants to scan for typos, or before shipping user-facing text. Reports findings and confirms before fixing.
test-coverage
Evaluate the test coverage
ship
Commit, docs, changelog, and push in one go. Use when the user says "/ship", wants to ship their changes, or asks to commit and push everything.
qc
Run quality control checks on the codebase — type checking, linting, tests, and server smoke test. Use when the user says "/qc", wants to verify code quality, or after making significant changes.
docs
Generate or update public documentation from source code. Use when the user says "/docs", wants to update docs, or asks to generate documentation for the project.
commit
Review repo changes and create logical atomic commits. Use when the user says "/commit", wants to commit their work, or asks to break changes into commits.
changelog
Generate or update CHANGELOG.md from git commits using semantic versioning. Use when the user says "/changelog", wants to update the changelog, or asks to generate release notes.