第 5 章 · 问题 1:人不在电脑前,它还能完成吗?
上一章的技能是在聊天里运行的:缺信息可以问你,遇到权限可以等你点。真要自动执行时,现场没有人回答怎么办?
不能直接定时。先做一次更安全的“无人回答测试”:用 claude -p 只运行一次成熟任务,让它在没有来回聊天的情况下完成检查,并把最后汇报保存成 自动运行回执.txt。
- 01
claude -p和普通聊天到底哪里不一样? - 02没有人在中途确认时,任务和权限要怎样写才不会卡住?
- 03怎样证明它真的更新了报告,而不是只在终端说“完成”?
自动运行回执.txt 非空,技能检查报告.md 确实更新退出状态为 0,报告保留证据和未验证项,4 份源素材仍通过独立验收。
项目技能、活动执行单、验收工具和前三章证据全部保留。
如果你在准备章节只安装了桌面端,请先完成命令行安装课。在终端运行 claude --version,看到版本号后再回到这里。
01先分清两种运行方式:普通会话可以中途问你,claude -p 不能
适合第一次做、需要讨论、可能改变范围的任务。
claude -p。这不是给 Claude 更多权限。正因为中途没有人点击允许,所以哪些文件可以修改、遇到什么情况必须停止,都要在运行前写清楚。
深挖:-p 和会话模式的本质区别
会话模式里任务说一半也走得下去——它缺什么会停下来问你。claude -p 把“问你”这条路彻底关掉:回车之后,中途缺信息它只能停在原地或按自己的理解硬走,两样都不是你想要的。所以本质区别不是有没有聊天框,而是没有追问机会——项目位置、具体任务、权限、结果放哪,必须一次给齐,一样都不能等跑起来再补。
02一条可以放心自动运行的命令,必须写清项目位置、具体任务、允许的权限和结果保存位置
claude -p "/delivery-check 活动执行单.html" --permission-mode acceptEdits > 自动运行回执.txt
依次点击左边四项,查看命令中的每一部分负责什么。
03在真实项目终端运行一次
- Finder 选中项目文件夹
右键选择“新建位于文件夹位置的终端窗口”。
- 粘贴下面命令
按回车后等待终端重新出现输入提示。
- 检查退出状态
输入
echo $?,正常应为0。
- 资源管理器打开项目
地址栏输入
powershell后按回车。 - 粘贴同一条命令
PowerShell 同样支持双引号和
>重定向。 - 检查退出状态
输入
$LASTEXITCODE,正常应为0。
claude -p "/delivery-check 活动执行单.html" --permission-mode acceptEdits > 自动运行回执.txt
04命令结束后,打开回执和检查报告,确认内容真的更新
逐项打开真实文件验证。文件出现不等于内容正确。
失败时最常见的三种结果
找不到技能:确认终端位于项目根目录,并检查 .claude/skills/delivery-check/SKILL.md。
权限被拒绝:检查命令是否包含 --permission-mode acceptEdits,以及技能是否尝试了编辑以外的动作。
回执为空但退出码非 0:终端里的错误可能写到 stderr,没有进入回执;先看终端报错,不要继续设置定时。
-p 默认仍会读取当前项目的 CLAUDE.md 和项目技能。因为运行中不能弹出问题等你回答,所以没有提前允许、又需要确认的动作会被阻止。这一课先停在这里,不要设置定时。复制终端完整错误给 Claude,让它只解释原因和修复步骤;修好后重新从手动单次运行开始。
claude -p 命令,跑一次并留下回执文件。提示:对照本课四个零件——项目目录、具体任务、权限模式、回执保存,缺一个都先别按回车;跑完记得查退出状态。
提示:跑之前先猜退出状态会是多少、回执里会留下什么,再验证。失败留下的痕迹,就是以后自动运行出问题时的排错线索。
下一课才把它交给时钟。但第一次设置计划任务时不等到明天,先点击“立即运行”,当场暴露项目路径、权限和任务说明的问题。
进入下一课:创建本地计划任务并立即测试 →最后验收
不要只确认“AI 说做完了”,请打开真实结果检查。
一次真实 claude -p 运行、更新后的技能检查报告.md 和自动运行回执.txt回到当前 AI 任务,请它打开本课成品;也可以在访达 / 资源管理器里进入项目文件夹双击。查看参考样例 ↗