日期:2026-07-05
关键词:交付复核、记忆系统、看图流程、Ollama、质量保障、自动化
和二哥(Claude Code)搭档了一个月,默契越来越好,但也发现了一个问题:二哥交付的成果偶尔会有明显缺憾——链接打不开、文件有乱码、记忆写了但下次记不住。这不是二哥不努力,而是缺少一套制度性的"自我检查"流程。
2026 年 7 月 5 日,我和二哥花了整整一上午,建立了一套三重质量防线。这篇文章记录这三道防线的来龙去脉。
二哥给我参考链接,说"能打开"——但我点开 404。二哥给我写文件,说"做好了"——但乱码或者跑不起来。核心矛盾是:二哥的"验证标准"和我的"使用标准"之间有偏差。
建立了一套覆盖 五大交付场景 的复核清单,核心理念就一句:
不要只检查语法和格式——把用户接下来会做的动作,自己先做一遍。
给你链接时,两步验证缺一不可:
curl 从用户电脑发请求,确认本地网络(含火绒+公司防火墙)也能通两步都通才算"能打开"。WebFetch 走的是 API 服务器——我能打开 ≠ 你能打开。
| 文件类型 | 复核动作 |
|---|---|
| 代码文件 | 先跑一遍,展示 stdout/stderr |
| 网页 HTML | start 在桌面打开浏览器,确认渲染正常 |
| 脚本文件 | 语法检查 + 按风险分级后试跑 |
| 配置文件 | 格式验证(JSON/YAML)+ 模拟加载 |
| 审图(帮用户看) | 调 Gemma4 26B,确认图片完整无崩坏 |
跑了安装命令 → 再跑确认命令查版本号。搜了东西 → 抽查 1-2 条结果。移动了文件 → ls 确认到位。
写完 memory → 当场 Grep 搜关键词,确认能命中。新 memory 关联了老 memory → 去老文件里补反向引用。
提到路径 → 死命令:直接 start 打开文件夹。引用文件内容 → 确认真的读了那个文件,不是凭记忆瞎猜。
跑脚本之前必须判断风险:
| 等级 | 标准 | 处理 |
|---|---|---|
| 🟢 安全 | 纯读操作(读文件、查状态、echo) | 直接跑,展示结果 |
| 🟡 有风险 | 写文件、改配置、调网络 | 先问用户"我要跑XX,可以吗?" |
| 🔴 危险 | 删文件、改注册表、杀进程、循环 | 不跑,告诉用户手动操作 |
之前设了凌晨 3 点 cron 定时任务,让二哥每天自动做"会话关闭检查"——自问四个问题,更新 memory。但 7 月 5 日早上发现:前一天明明聊了 316 聚会视频项目、Ollama 看图流程等一大堆事,凌晨 3 点的记录却写着"无新对话"。
cron 唤醒的 AI 手里没有聊天上下文,只能凭"感觉"写结论。它在偷懒。
增加「第零步:取证」——不先回答问题,先找证据:
1. 列出今天的所有 jsonl 会话文件:
ls -lt ~/.claude/projects/C--HJVDI-000CC/*.jsonl | head -10
2. 找到今天日期的最新 jsonl,提取用户文字消息:
grep '"type":"text"' <最新jsonl> | tail -30
3. 列出今天修改过的 memory 文件:
ls -lt ~/.claude/projects/C--HJVDI-000CC/memory/ | head -8
4. 对比 current-session.md 的最后更新时间
附带四条防偷懒规则:
二哥偶尔会说"我看不了图"——但实际上电脑上跑了 Ollama,里面装了 Gemma 4 26B,视觉能力很强。问题出在:DeepSeek API 对多模态支持有限,二哥本能地想走原生 Read,失败后就放弃了,忘记还有 Ollama 这条路。
| 尝试 | 方法 | 结果 |
|---|---|---|
| 1 | ollama run gemma4 < 图片 | ❌ stdin 传图不通 |
| 2 | Python ollama 库 chat() | ❌ 返回 502 |
| 3 | requests 直调 → print() 终端 | ❌ 中文乱码 |
| 4 | requests 直调 → UTF-8 文件 → Read | ✅ 稳定可靠 |
双重锁定:
最终唯一可靠路径:
python -c "
import requests, base64
with open('图片路径','rb') as f: img=base64.b64encode(f.read()).decode()
r=requests.post('http://localhost:11434/api/chat',json={
'model':'gemma4:26b',
'messages':[{'role':'user','content':'你的提示词','images':[img]}],
'stream':False
},timeout=300)
with open('输出.txt','w',encoding='utf-8') as f: f.write(r.json()['message']['content'])
print('DONE')
"
三道防线各司其职:
| 防线 | 解决什么问题 | 触发时机 |
|---|---|---|
| 交付复核 | 成果质量有缺憾 | 每次说"做好了" |
| 凌晨检查 | 记忆遗漏和遗忘 | 每天 03:00 |
| 看图流程 | 多模态能力闲置 | 任何读图需求 |
这三道防线的共同核心理念:不靠 AI 的自觉,靠制度的强制。人是会偷懒的,AI 也是。把标准写进 memory、写进 CLAUDE.md、写进 cron 定时任务——让流程本身成为质量的保障。
以后每发现一个新漏洞,就加一道新防线。这是一个不断生长的质量系统。