一键导入
stash
回顾当前对话,把值得跨会话持久化的信息(用户偏好/反馈、项目决策与约束、踩过的坑、外部资源指针)存进本项目 memory 目录、更新 MEMORY.md 索引,并按需更新 CLAUDE.md。用户说「stash / 保存记忆 / 记一下 / 沉淀一下 / 记住这个」时触发。显式触发,不在会话结束时自动运行。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
回顾当前对话,把值得跨会话持久化的信息(用户偏好/反馈、项目决策与约束、踩过的坑、外部资源指针)存进本项目 memory 目录、更新 MEMORY.md 索引,并按需更新 CLAUDE.md。用户说「stash / 保存记忆 / 记一下 / 沉淀一下 / 记住这个」时触发。显式触发,不在会话结束时自动运行。
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
worklog 自主 ingest agent。用户睡前说「记录今天 / 记录昨天 / 记录 5 月 X 日 / 补充今天 / 更新日记」+ 附带当天信息时触发,把一天工作素材(本机 git log + yuenan-mbp 工作机桌面所有项目远程扫 + IM CLI 拉组长协调工作 + memory + wiki 改动 + 触发消息附带信息)编译成结构化日记 + 更新 wiki + TODO 盘点 + commit + push。全程无人值守、永不阻塞提问: 触发消息即全部输入、没提到的走默认值、用户发完即可去睡。
跨项目复用的通用工程踩坑库速查。在写 bash/shell 脚本、改 git 历史、做 macOS 文件/locale 相关操作、写正则/grep、配 DNS/Docker/反向代理部署、用 Read/Edit 改大文件之前,先查 LIBRARY.md,避免在新项目里重踩别的项目早就踩过的坑;也用于把新踩到的「通用工程坑」按统一格式加进库。触发:/pitfalls、「查坑 / 避坑 / 这类坑查一下」,以及上述高危操作前主动自查。
在某个项目仓库里生成或维护它的 AIREADME/(AI 原生跨项目文档体系)。当用户说"给这个项目写/更新 AIREADME""按 AIREADME 标准建文档""scaffold AIREADME""检查 AIREADME"时使用;新项目立项铺骨架也用它。会读同目录 STANDARD.md 的逐文件规范,扫描本项目(含其 Claude Code 项目记忆,若有)后产出/更新 AIREADME/,并"提议"把 CLAUDE.md 瘦成 router(不自动改)。不用于日常 commit / 日记记录类工作流。
创作番茄小说平台的短篇小说(7000-10000字)。触发词:写小说、写短故事、写故事、创作小说、创作故事、番茄小说、短篇小说。用户说这些词时自动触发,全自动创作并交付高质量故事。支持:重生复仇、真假千金、追妻火葬场、家庭伦理、豪门总裁等热门题材。
| name | stash |
| description | 回顾当前对话,把值得跨会话持久化的信息(用户偏好/反馈、项目决策与约束、踩过的坑、外部资源指针)存进本项目 memory 目录、更新 MEMORY.md 索引,并按需更新 CLAUDE.md。用户说「stash / 保存记忆 / 记一下 / 沉淀一下 / 记住这个」时触发。显式触发,不在会话结束时自动运行。 |
回顾本次对话,把跨会话有用的信息落进 memory,让未来的会话能召回。
记忆写法规范以同目录
MEMORY_SPEC.md为唯一真相源 ,本文件只定流程,不复述 schema 细节(复述会随规范演化而漂移,这正是 stash 从 command 升级为 skill 的初衷)。执行前先读MEMORY_SPEC.md。
显式触发:/stash、「stash / 保存记忆 / 记一下 / 沉淀一下 / 记住这个」。不自动触发 ,持久化是写文件的副作用动作,只在用户明确要求时跑。
# 锚到项目根(git toplevel),不用裸 pwd:从子目录触发时 pwd 会偏移、写进错 keyspace 致召回静默丢失
ROOT=$(git rev-parse --show-toplevel 2>/dev/null || pwd)
MEM="$HOME/.claude/projects/-$(printf '%s' "$ROOT" | sed 's:^/::; s:/:-:g')/memory"
[ -d "$MEM" ] || mkdir -p "$MEM" # 新项目首次 stash 自动建
# MEMORY.md 不存在则建四段骨架(recall 总目录;按 type 分段)
[ -f "$MEM/MEMORY.md" ] || printf '# Memory\n\n## User\n\n## Feedback\n\n## Project\n\n## Reference\n' > "$MEM/MEMORY.md"
echo "$MEM"
路径由项目根(git toplevel,回退 pwd)动态推导,绝不硬编码(通用工具跨项目零修改;硬编码曾把记忆写错机器,裸 pwd 则在子目录触发时写偏)。若 harness 直接给了 memory 目录绝对路径,优先用它。MEM 是 shell 变量、不跨 Bash 调用持久,下面每个用到它的 bash 块都重新派生一次(别依赖上一块的 MEM 还在)。
读 MEMORY_SPEC.md 拿规范,再扫本次对话,列出值得持久化的候选:新知识、做出的决策、发现的坑、配置/基础设施变更、用户反馈与偏好。按 MEMORY_SPEC 判断标准先粗筛(只留跨会话有用的)。
ROOT=$(git rev-parse --show-toplevel 2>/dev/null || pwd); MEM="$HOME/.claude/projects/-$(printf '%s' "$ROOT" | sed 's:^/::; s:/:-:g')/memory" # 每块各自重派生(变量不跨调用)
grep -rh -E '^(name|description):' "$MEM"/*.md 2>/dev/null
对每个候选,比对现有 memory 的 name + description,判断:已有覆盖 → 更新那条;无 → 新建。绝不新建与现有重复的文件。
套 MEMORY_SPEC 的「记什么 / 不记什么」:不记能从 git log / 代码 / CLAUDE.md 直接获取的,不记只对本次会话有用的临时上下文。留下的若含「坑」,按 MEMORY_SPEC 的「记坑:诚实捕获」记(根因没复现就标「疑似 / 未验证」、不冒充确定、带条件戳)。
留下的候选为空就直接到 Step 7 报告「本次无需持久化(理由)」收尾,不为凑产物硬造低价值记忆。
按 MEMORY_SPEC.md 的 frontmatter schema + 正文规范写 / 改(文件名、name 前缀、description、type 枚举、Why/How、坑的诚实捕获等细节都在那,本步不复述、防漂移)。本步只强调流程动作:
MEMORY.md 加 / 改一行索引(按 type 分段),索引与文件一一对应。ROOT=$(git rev-parse --show-toplevel 2>/dev/null || pwd); MEM="$HOME/.claude/projects/-$(printf '%s' "$ROOT" | sed 's:^/::; s:/:-:g')/memory" # 每块各自重派生
bash ~/.claude/skills/stash/check.sh "$MEM"
🔴 must-fix 必须修到过;🟡 advisory 逐条 review(多数应修,少数如跨库 [[wiki]] 引用可接受)。
CLAUDE.md(无变更跳过)。MEMORY_SPEC.md 为唯一真相源 ,不在本文件或对话里复述 schema 细节(防漂移)。check.sh,🔴 必修。但 check.sh 只验 schema 合规、不验内容正确:过线 ≠ 记对了,正确性靠诚实捕获 + 下游验证。MEMORY_SPEC),不记 git / code / CLAUDE.md 可直接获取的。