mcpField
M
money-restore

money-restore

github.com/iamzifeiAgent 工作流1.1k46 次安装8 周前更新
代码仓库

关于 money-restore

money-restore 是用于加载并呈现已保存业务状态快照的 Agent 技能,帮助用户接续之前的工作。它只恢复上下文,不执行诊断,也不会自动调用建议的下一项技能。

主要功能

  1. 01加载项目的最新快照
  2. 02按索引或项目 slug 选择快照
  3. 03列出可用快照
  4. 04解析并概述已保存状态
  5. 05标记过期或已放弃的快照

适用场景

  1. 01依据上次会话的结论继续工作
  2. 02查看项目历史中的旧快照
  3. 03切换并恢复其他项目的状态

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/iamzifei/show-me-the-money --skill money-restore

安装后在 Claude Code 中输入/money-restore确认已加载。

详细介绍

/money-restore — 从上次中断处继续

你的任务是从 ~/.smtm/sessions/{project}/ 加载最新的业务状态快照,解析内容,并向用户展示状态,方便他们从上次中断处继续。

你不运行诊断,不跳转到其他技能。你只恢复记忆。

恢复后,推荐下一项技能,但由用户决定是否调用。


触发方式

命令行为
/money-restore加载当前项目的最新快照
/money-restore <N>加载第 N 个快照(使用 /money-save list 中的索引)
/money-restore list等同于 /money-save list — 列出所有快照
/money-restore --slug <project>切换到其他项目的历史记录

自然语言表达(以下任一表达 → 运行 /money-restore):

  • 英语:"continue from last time"、"where did we leave off"、"pick up from before"、"resume the diagnosis"、"what did we conclude last time"
  • 中文:"接着上次"、"续上"、"之前的结论"、"上次诊断到哪了"、"上次说到哪"

项目解析

规则与 /money-save 相同:

  • 默认值 = basename($(pwd)),并进行清理
  • 覆盖值 = --slug <name>
  • 回退值 = default

在对话中称其为业务或项目。


工作流

第 1 步 — 定位快照文件

按以下顺序处理:

  1. 如果用户传入了 <N> → 列出当前项目的快照,按文件名时间戳从旧到新排序,返回第 N 个。
  2. 如果用户传入了 --slug X → 将 X 用作项目名称。
  3. 否则 → 使用默认项目,查找 ~/.smtm/sessions/{project}/ 中按文件名时间戳排序的最新文件。

始终按 YYYYMMDD-HHMMSS 文件名前缀排序,绝不要按文件 mtime 排序。 通过 iCloud、Dropbox 或 git 同步会话时,mtime 不可靠。

第 2 步 — 妥善处理缺失数据

情况 A:项目目录为空或不存在

检查 ~/.smtm/sessions/ 是否存在,以及其中有哪些其他项目。

如果存在包含快照的其他项目,列出最近最活跃的 3 个:

No saved state for project `{project}`. You've been active in these other projects recently:

1. musicapi             (latest 2026-04-22)
2. kolfind              (latest 2026-04-15)
3. adwhiz               (latest 2026-03-30)

Run `/money-restore --slug <name>` to load a specific project's state.

如果 ~/.smtm/sessions/ 完全不存在:

No saved state yet. Run /money-discover, /money-strategy, or any diagnostic skill, then `/money-save` to lock in the conclusion. Next time you can `/money-restore` to continue.

情况 B:列表模式

交由 /money-save list 逻辑处理。输出格式相同。

第 3 步 — 读取和解析

打开快照文件,解析 YAML frontmatter,并解析 6 个 Markdown 部分(业务状态、已确认结论、已排除项、待验证假设、下一步、备注)。

如果文件格式错误(frontmatter 不完整、部分缺失——可能是用户手动编辑过),请展示所有有效字段。不要仅仅因为格式不完美就拒绝加载。

第 4 步 — 展示状态

用用户选择的语言提供简洁摘要。不要完整输出文件,只提取重要内容,让用户按需询问更多信息。

格式:

## Picking up where you left off

**Project**: {project}
**When**: {timestamp formatted as `2026-05-03 14:23`}
**Title**: {title from frontmatter}
**Status**: {status — translate to user-friendly form: in-progress / resolved / abandoned → 进行中 / 已结论 / 已放弃 if Chinese}
**Last from**: {source_skill}

---

### Where you were

{Business state paragraph, verbatim from the snapshot}

### What you'd already decided
- {Each confirmed conclusion}

### What you'd ruled out
- {Each ruled-out direction}
- ({if empty, write "(nothing ruled out yet)")}

### Open hypotheses to test
- {Each open hypothesis}
- ({if empty, write "(none yet)")}

### Next move you'd planned
{Next move paragraph}

---

**Recommendation**: Continue with `{next_skill}` — that was the planned next step.

If you want to revise direction first, type a new `/money-*` command.
第 5 步 — 等待用户指示

展示状态后,停止。不要自动调用 next_skill。

用户在这次新对话中的意图可能已经改变。让他们确认或重新指示:

  • "Yes continue with <next_skill>" → 调用该技能
  • "Actually, I want to switch to <other-skill>" → 改为调用该技能
  • "Just refresh my memory, I'll decide later" → 可以,不再执行其他操作

边缘情况

  • 当前项目有多个快照 — 默认使用最新的快照。如果用户想查看更早的快照,建议使用 /money-save list 获取索引,然后运行 /money-restore <N>。
  • 快照状态为 abandoned — 突出显示这一点。用户可能已经决定不再推进此事;请提醒他们。
  • 快照超过 90 天 — 提示:"⚠️ 此快照已有 {N days ago}。采取行动前,请确认其中的结论仍然成立。"
  • 不同快照中的历史决策相互冲突 — 只展示最新快照。如果用户想合并查看完整历史,使用 /money-report。

原则

  • 恢复,而非替换 — 呈现先前状态,让用户决定哪些内容仍然有效。
  • 考虑时间因素 — 旧快照可能已过时。醒目地显示日期。
  • 不悄然跳转 — 绝不自动调用 next_skill。用户刚刚开启了新对话,他们可能有新的安排。
  • 匹配用户的语言 — 如果快照是用中文保存的,而用户现在使用英语,则用英语呈现,但为保留细微含义,应逐字引用原语言内容。

价值量化(成功恢复后必须执行)

呈现先前状态和下一步建议后,追加:

---

### 📊 What this restore is worth

- 📦 **Restored** — {N conclusions, M ruled-out directions, K open hypotheses from {date}}
- ⏱ **Saved this session** — ~15-30 minutes of re-explaining context to the AI
- ⚠️ **Risk avoided** — Re-suggesting a direction you already ruled out (the AI has no memory across sessions without `/money-save` and `/money-restore`)
- ⏭ **Suggested next** — {next_skill from frontmatter, or "decide based on the state above"}

如果快照早于 90 天,则在前面添加一条警告:

⚠️ 已过时:此快照已有 {N days}。采取行动前,请确认其中的结论仍然成立。

如果快照的状态为 abandoned,则在前面添加:

⚠️ 已放弃:此快照已标记为已放弃。恢复以供审阅没有问题,但其中的结论已被否定,而非验证通过。

评论

支持 Markdown