用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/bobmatnyc/claude-mpm --skill mpm-session-pause命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | mpm-session-pause |
| description | Pause session and save current work state for later resume |
| user-invocable | true |
| version | 1.5.1 |
| category | mpm-command |
| tags | ["mpm-command","session","pm-recommended"] |
| effort | medium |
Pause the current session and save all work state for later resume.
When invoked, this skill:
.claude-mpm/sessions/session-{timestamp}.* (project-local).claude-mpm/sessions/LATEST-SESSION.txt pointer<repo>/.claude/worktrees/ (see below)/mpm-session-pause [optional message describing current work]
Examples:
/mpm-session-pause
/mpm-session-pause Working on authentication refactor, about to test login flow
/mpm-session-pause Need to context switch to urgent bug fix
At pause time, MPM automatically prunes stale agent worktrees and orphaned
directories under <repo>/.claude/worktrees/.
Safety classification — a registered worktree is PRESERVED if ANY of the following is true:
Only worktrees that are provably clean and fully merged are removed via
git worktree remove (never --force).
git worktree list only reports registered worktrees. Directories under
.claude/worktrees/ that are no longer registered (e.g. left behind after
git worktree remove --force) are invisible to git and accumulate indefinitely.
MPM performs a separate filesystem scan to find and remove them.
Safety classification — an orphaned directory is PRESERVED if ANY of the following is true:
git status --porcelain non-empty)..git entry but git status fails (ambiguous state → PRESERVE).git worktree list command fails entirely (sweep is skipped and the
summary records orphan_sweep_skipped to explain why).A strict path-containment guard ensures deletion can never escape
.claude/worktrees/ — symlinks that resolve outside the directory are
rejected and preserved.
Output — after the session files are written, the pause command prints a concise cleanup summary, e.g.:
Worktree Cleanup:
Pruned 2 stale worktree(s)
Preserved 1 worktree(s) with unsaved work
/repo/.claude/worktrees/agent-abc: branch has commits not merged into main branch
Swept 1 orphaned directory
Preserved 1 orphaned directory with unsaved work
/repo/.claude/worktrees/leftover-xyz: has uncommitted or untracked changes
Opt-out — pass --no-prune-worktrees to skip all cleanup (both registered
pruning and orphan sweep):
claude-mpm session pause --no-prune-worktrees
Run the console script directly — no interpreter resolution needed:
# Basic pause (includes worktree pruning)
claude-mpm session pause
# With a descriptive message
claude-mpm session pause -m "End of day — auth refactor in progress"
# Skip worktree pruning
claude-mpm session pause --no-prune-worktrees
# Export a copy to a specific location
claude-mpm session pause --export /tmp/session-backup.json
If the user provided a message after /mpm-session-pause, pass it via -m:
claude-mpm session pause -m "<user message here>"
claude-mpm session pause failsIf the command exits non-zero, capture the full error and show it verbatim — do not summarise with a generic "not importable" message:
claude-mpm session pause 2>&1
rc=$?
if [ "$rc" -ne 0 ]; then
echo ""
echo "ERROR: claude-mpm session pause failed (exit $rc)."
echo "Full error shown above."
echo ""
echo "Diagnostic steps:"
echo " 1. Verify claude-mpm is on PATH: command -v claude-mpm"
echo " 2. Check the actual import error: python3 -c 'import claude_mpm' 2>&1"
echo " 3. If a transitive dep fails (e.g. shadowed stdlib module), check"
echo " sys.path[0] is not /tmp: python3 -c 'import sys; print(sys.path[0])'"
fi
Note on misleading ImportError messages (issue #781): A bare
except ImportErrorcan fire for transitive failures (e.g. a stray/tmp/bisect.pyshadowing stdlibbisect) unrelated toclaude_mpmitself. Always inspect the actual exception —e.nametells you which module failed. Ife.namedoes not start withclaude_mpm, the problem is a shadowed or missing transitive dependency, not a missingclaude_mpminstallation.
Session State:
Resume Instructions:
File Formats:
.md - Human-readable markdown (for reading).json - Machine-readable (for tooling)All session files are stored in the project-local directory:
<project-root>/.claude-mpm/sessions/
├── LATEST-SESSION.txt # Pointer to most recent session
├── session-YYYYMMDD-HHMMSS.md
└── session-YYYYMMDD-HHMMSS.json
This ensures sessions are scoped to the project that created them — pausing in project A and opening project B will never load project A's session state.
Token usage: ~5-10k tokens to execute (2-5% of context budget)
Benefit: Saves all remaining context for future resume, allowing you to:
To resume this session:
/mpm-session-resume
Or from the CLI:
claude-mpm session resume
Or manually:
cat .claude-mpm/sessions/LATEST-SESSION.txt
cat .claude-mpm/sessions/session-YYYYMMDD-HHMMSS.md
Session files are stored in the project-local .claude-mpm/sessions/ directory.
Add this directory to your .gitignore — session state is machine-specific and
should not be committed. No git commit is created by the pause operation.
Context switching:
/mpm-session-pause Switching to urgent production bug
End of work session:
/mpm-session-pause Completed API refactor, ready for testing tomorrow
Before major changes:
/mpm-session-pause Saving state before attempting risky refactor
When approaching context limit:
/mpm-session-pause Hit 150k tokens, starting fresh session
/mpm-session-resume — Resume from most recent paused sessionclaude-mpm session resume — CLI entry point for resumeclaude-mpm session pause --help — Full CLI usage.claude-mpm/sessions/ (not synced across machines).claude-mpm/sessions/ to .gitignore