被 Claude Code 编造时间戳逼到极限,他用 PreToolUse 钩子让错误不可能发生

Grimmoner · reddit · 2026-10-18

一位长期用 Claude Code 做长时任务的作者发现,模型在日志里频繁写出未核实的猜测时间戳——有时是取整估值,有时写成 16:4x 这种占位符,甚至出现过比当前时间快 16 分钟的「未来时间」。写进 memory 文件叮嘱也没用。

他的解法是停止口头要求,改用机制:写了一个 PreToolUse hook,在任何 Bash 命令、文件写入、编辑或消息发出前,用小段 Python 检测是否含猜测时间格式(如「16:4x」或「xx:xx」);命中即拦截,并在拦截理由中告诉模型正确做法——用 T=$(date '+%H:%M') 在同一步读取真实时钟再写入。

文中还有两个工程细节:

开启后不到两小时就拦截了一次模型写入猜测时间的行为,模型随即读时钟重做。作者也指出局限:如 06:00 这种整点猜测无法识别,也管不到纯聊天回复。核心心得:「同一个要求对 agent 说过三遍,就该停止说,让错误变得不可能。」

原文链接 →

「编程与Agent」频道最新

更多「编程与Agent」频道 AI 资讯 →