使用指南 / 0.7.26

模板与自动化

经常做的工作,可以把 prompt 存成模板,再设置自动化:到时间,或给 Slack 消息加上指定表情后,deck 就会新建 session,启动命令并把模板加入发送队列;实际投递还需满足时间、目标和授权条件。

选择适合的方式

你想做什么使用什么
稍后继续当前 session卡片里的列表
在当前 session 周期性发送同一组 prompt列表的「重复」
保存一组 prompt 以便再次使用项目模板
每次触发时创建一张新卡片、启动命令并发送模板项目自动化
收集指定 Slack 频道消息,又不自动发送每条消息频道监控规则与卡片暂存区

从「新建 session ▾」打开「模板…」或「已有自动化…」。项目已有规则时,旁边的「↻ N 条自动化」也能直达管理界面。

准备模板

在「模板…」创建模板,或从卡片 ⏱ 面板的列表 📋 菜单保存已有列表。模板属于项目;应用到卡片时会生成副本,之后修改模板不改变这些已有行。

自动化会在每次启动时使用模板。第一次尝试时,可以选择结束后保留卡片,方便查看结果;熟悉后再决定是否自动关闭。

按时钟开始工作

  1. 从「新建 session ▾」选择按时钟定时新建,或在自动化管理中创建时钟规则。
  2. 设置名称、目标栏目、工作目录、启动命令和模板。
  3. 选择每天、每周几或每月几号,以及本地时间。
  4. 设置错过时间后是否还要启动,以及允许延迟多久;再选择结束后保留还是关闭卡片。
  5. 保存后检查规则显示的下一次时间和最近运行记录。

例如:工作日 09:00 新建 session,启动你已有的 CLI,发送“检查最近变更并列出需要人工确认的问题”。每次都会创建新 session。不过,如果启动命令带有恢复功能,agent 仍可能接着上次的上下文工作,新卡片并不一定是一次全新的对话。

应用必须运行才能启动任务。 如果到了设定时间,deck 没有运行或 Mac 正在睡眠,恢复时仍可在允许的延迟范围内启动,默认是 15 分钟,也可以设为当天内。超过这个范围会记为错过,不再新建卡片。昨天错过的任务不会补跑;修改计划或恢复暂停的规则后,只考虑此后到来的时间。

上一次的卡片还在看板上时,同一条时钟规则不会再新建卡片。下一次时间到了会跳过,并在记录中注明。没有出现新卡片时,可以先查看最近运行记录中的原因。

从 Slack 标记开始

在「设置 → 集成 → Slack」中打开 Slack 连接设置:

  1. 点击「创建 Slack app…」,在打开的 Slack 页面选择工作区并创建应用。
  2. 将应用安装到工作区,按说明把 User OAuth Token 填回 deck;有些工作区需要管理员批准。
  3. 如需及时接收事件,创建带 connections:write 的 App-Level Token,填入 App token。
  4. 启用 Slack,再创建使用相应表情名称、目标目录、启动命令和模板的自动化。

令牌经验证后保存在 macOS 钥匙串。App token 可选;没有它时使用约 30 秒一次的搜索,Slack 索引还可能滞后约一分钟;配置后通过实时事件接收,并保留搜索补漏。

模板可使用 {{msg.text}}、{{msg.from}}、{{msg.where}} 和 {{msg.link}}。它们会填入消息正文、发送者、位置和链接。deck 不会自动回复 Slack。

只有你自己添加的表情反应会触发任务;规则创建前已有的标记不会补触发。同一条消息上的同一种标记只会创建一次卡片;同一个表情名称在所有项目中只能对应一条规则。Slack 规则不提供暂停,要停止后续触发请删除规则,已有卡片会保留。

如果需要按允许的用户或 Bot 收集指定频道消息,可以在同一个 Deck Slack App 中启用频道监控。更新并重装现有 App,粘贴新增 Bot token,再把 Bot 加入每个要监控的公开或私有频道。首次匹配可创建卡片并把已保存模板加入队列;后续匹配只增加暂存区笔记,不自动发送给 agent。即使发送者在允许名单里,频道文字仍是不可信的输入。比较可选集成 →

首条输入与后续步骤的批准

新启动的 Claude Code 或 Codex,首条模板默认会等待一次真实的 agent 交互,由相应 Agent 状态集成观察;也可以先检查终端,再选择手动立即发送。启动时的目录信任、更新、登录或 hook 审查对话框可能仍在接收回车。保存规则、终端安静或本轮结束报告都不能证明已准备好输入。

时钟与 Slack 表情规则有一个独立且默认关闭的选项:新启动的 Agent 也直接发送第一步。确认后,你为该规则后续运行的第一步接受了启动输入风险。它支持 Claude,以及命令明确含有 --no-daemon 的 Codex;短暂兼容等待不代表 agent 已就绪。输入或权限请求、人工检查和目标检查仍然生效。关闭选项会收回尚未发送首条内容的这项例外,不会停止已经有真实交互依据、可以正常继续的工作。

Slack 表情表达了这次运行和第一步的意图,不等于批准所有后续消息。后续步骤默认等待手动立即发送。自动继续已批准的后续步骤批准的是特定版本的规则和模板;含 {{msg.*}} 的步骤还需单独确认外部内容风险。修改批准涵盖的内容或目标,或撤销批准,会停止依赖该批准的未发送步骤,已入队文字不会被改写。批准不会回答 Agent 的权限问题,也不会完成检查点。时钟后续步骤是你自己的文字,不需要 Slack 内容批准。

Slack 表情规则的命令必须以 claude 或 codex 开头,可带简单、不加引号的参数;不接受 shell 语法、可执行文件路径或环境变量前缀。模板每行必须以你自己的文字开头,不能以消息占位符开头。频道监控使用自己的首步选项,后续步骤始终需要手动发送。比较集成边界 →

运行结束与检查

选择「保留卡片」,可以稍后查看结果。选择「关闭卡片」,则要求队列已清空,并连续三次检查到没有 agent 状态,且单窗格 session 的前台已经回到 shell。session 还须存活,也不能有 Deck 窗格正在显示这张卡片。本轮结束报告不会关闭运行卡片:交互式 agent 仍可能有后台工作。这些观察也不能证明任务成功。

有需要保留的暂存区或有效提醒事项时,同样不会自动关闭。结束提醒不会放行此前被它阻止的自动关闭。开启每行人工检查后,还要等最后一行也检查完。修改规则中的检查开关,只影响之后新建的运行,已有运行保持原设置;检查完成后,仍要满足发送时间和目标条件。

删除规则不会删除已创建的卡片。关闭一张运行卡片也不等于删除以后还会触发的规则。

适用于 deck 0.7.26 稳定版。技术说明:README ↗ · 反馈问题