负责人看板
聊天中的问题容易被淹没,而且负责人必须回答在Agent提问时,而不是在他们方便的时候。看板将这些问题从聊天中转移到看板中:一个"需要你"标签页,包含所有未处理事项;一个黄色的"紧急"标签页,仅在事情不能等待时出现;一个"已决定"标签页,用于已回复的事项;一个"稍后"标签页,用于可以等待的事项;以及一个"已完成"标签页,用于已完成的事项。在手机或iPad上,负责人可以横向滑动在标签页间切换。负责人在看板中作答;您阅读答案,执行操作,然后归档。
需要什么
-
具有
db和comments功能的Claude Artifacts,在claude.ai或Claude桌面应用中。仅当事项会携带附件时才添加assets。 -
工具:
Artifact,用于发布看板和上传文件;ArtifactData,用于写入和读取事项;ArtifactComments,用于监视看板和回复唤醒您的评论。
当它们被延后时,使用ToolSearch加载它们。
-
一个主循环会话。 只有主循环会话才能保持监视;子Agent无法做到。
如果没有这些条件,请说明情况,并将问题作为编号列表保留在聊天中。不要假装有看板。
谁写入看板
仅限一个会话:
- 如果有,由参谋长(参见参谋长技能);
- 否则,由与负责人一起工作的会话。
两个写入者会重复编号事项并相互归档对方的成果。
创建看板
-
填充模板
assets/desk.html。它有三个占位符:{{TITLE}}:看板的名称,两到四个词,例如"Recipe App Desk";{{EYEBROW}}:标题上方的一小行文字,例如"Recipe app · from the chief of staff";{{AGENT}}:谁阅读答案,按照出现在句子中间的方式阅读:"the chief of staff"或"Claude"。仅使用纯文字,不要加引号。
例如:
sed -e 's/{{TITLE}}/Recipe App Desk/g' -e 's/{{EYEBROW}}/Recipe app · from the chief of staff/g' -e 's/{{AGENT}}/the chief of staff/g' <skill>/assets/desk.html > desk.html -
使用
Artifact工具发布它:capabilities: {"db": {}, "user": {}, "comments": {}},如果事项会携带文件则加上"assets": {};icon: "inbox";- 一行
description。
发布还会启动此会话监视看板。
-
检查一次:使用
ArtifactDatalist在集合items上。它是空的,页面显示"Nothing needs you." -
向负责人提供链接,并说明看板对其私有。
-
将链接写入项目中的一个文件(状态页面或项目笔记),以便新会话可以找到它。
在Claude外部打开,即普通浏览器中,页面会显示虚构的示例事项并附有说明。这仅用于预览和截图;它永远不会写入任何东西。
被答案唤醒
数据库写入不会唤醒您;发送给Claude的评论才会。当负责人回答、标记任务为完成或提问时,页面会向事项自身的评论线程发送一条简短评论,例如"№ 12 · Open the beta this Friday? Answer: Yes"。这条评论会唤醒监视看板的会话。
- 发布会启动监视, 但只有当
ArtifactCommentswatch(不带url)将看板列为已连接且自动回复已就绪时,监视才真正生效。 - 新会话必须再次监视, 使用
ArtifactCommentswatch和看板的url。只有当负责人在其自己的消息中提供了该链接时,自动回复才会就绪,因此该链接应放入负责人粘贴的重新启动提示中。 - 页面会告知负责人他们所处的案例:"...会在您回答的瞬间收到通知" 或 "已保存于此;...在其下次检查时读取它"。
- 如果评论无法到达您(它们已关闭,或没有会话在监视),请退而使用以下方法:
- 在每轮开始时读取看板;
- 要求负责人在回答后,在聊天中说"desk";
- 提供定时检查,仅当负责人想要时才提供。
一个事项
每个事项是集合items中的一个文档。其文档ID是其句柄:使用q<number>表示决策,使用t-<word>表示任务。通篇使用纯文字,因为负责人可能在手机上阅读。
| 字段 | 由谁写入 | 内容 |
|---|---|---|
kind | 您 | "decision" 或 "task" |
status | 双方 | "open";页面设置 "answered";您设置 "archived" |
later | 您 | true 将其放入"稍后"标签页 |
urgent | 您 | true 将其放入黄色"紧急"标签页并置于概览顶部。仅用于不能等待的事项:今日截止日期,或对用户有影响的问题 |
num | 您 | 一个连续编号,与您在聊天中使用的编号相同;绝不重用 |
title | 您 | 问题本身,可通过选项回答,或作为行动的任务 |
body、bullets | 您 | 简短段落和要点:为什么重要,影响什么 |
recommendation | 您 | 您的答案在前,然后是理由,一两句话 |
choices | 您 | 两到四个答案;默认值为"是" / "否" |
steps、stepsDone | 您;页面 | 任务的步骤,以及已勾选的步骤(索引) |
copies | 您 | [{label, text}]:负责人将粘贴到某处的文本 |
links | 您 | [{label, url, note}]:指南、页面、附件 |
from | 您 | 哪个会话提出的 |
priority | 您 | 1 优先;对未处理事项排序 |
created | 您 | 您发布的时间(ISO格式) |
answer | 页面 | {choice, note, at} |
asks | 页面;您 | [{q, at, via, a, aAt}]:负责人关于事项的问题;您填充 a 和 aAt |
thread | 页面 | 页面用于该事项的评论线程;保持原样 |
outcome、archived | 您 | 发生了什么,一行描述;您归档的时间 |
assets/example-items.json 包含七个虚构的事项,作为 ArtifactData batch 写入时使用。在尝试看板时使用它们,绝不要在负责人的真实看板上使用。
发布事项
- 使用
ArtifactData添加新事项。对于新文档使用set,对于超过两个事项使用batch。永远不要重新发布页面来更改事项。 - 然后在聊天中说明您添加了什么,并为每个事项提供一个链接:
<看板url>#<文档id>会打开其标签页并滚动到它。 - 如果您也从聊天中的未处理问题列表(如同参谋长所做)工作,请保持两者一致:相同的编号,相同的文字。
- 编写每个事项,使其独立自明:正在决定什么,任何一方改变什么,以及您的推荐。
- 任务列出确切的步骤、
copies中的粘贴文本以及links中的指南。 - 要附加文件: 先读取整个文件,然后使用
Artifact(url为看板url,asset: true)上传它,并链接为/_blob/<资产id>。 - 绝不要将密码、密钥或私人记录放入事项中。 需要秘密的任务应说明在何处输入,而绝不说明秘密是什么。
阅读、执行、归档
当评论唤醒您时,或在回合开始时:
- 在
items上使用ArtifactDataquery,条件为where: [["status", "==", "answered"]]。阅读每个事项的answer和任何新的asks。 - 对答案执行操作。 对于参谋长,将负责人的选择和建议逐字传达给提出该会话的会话。
- 评论和事项通常一致。
- 如果事项未保存为已回答,但评论带有一个答案,则评论是负责人最新的说法。您应自行将其写入事项。
- 归档事项: 使用
update将其status设置为"archived",添加一行outcome("The builder moved the beta to Friday")以及archived(时间戳)。每次写入都使用if_version锁定,以免覆盖负责人同时更改的答案。 - 回答
asks中每个未处理的条目(在同一事项上)。将整个asks数组发回,填充a和aAt,并使用if_version锁定。 - 在评论线程中回复一行("Got it: moving the beta to Friday"),然后解决线程(
ArtifactCommentsreply,然后resolve)。
通过设置 later: true 搁置事项,通过设置 later: false 将其带回。已决定的事项可以保留在"稍后"标签页,直到执行时机到来。归档而非删除:"已完成"标签页是决策记录。仅根据负责人的指示进行删除。
状态与路线图(可选)
另外两个标签页向负责人展示项目状态,位于概览和事项之间。一旦您将文档写入集合 board,每个标签页就会出现,并实时更新。使用 ArtifactData 写入(首次使用 set,后续使用 update 并搭配 if_version 锁定)。assets/example-board.json 包含一对虚构示例。
board/status:每个会话的状态。在您检查团队时更新;参谋长在更新其状态页面时也写入它。
| 字段 | 内容 |
|---|---|
updated | 您上次检查的时间(ISO格式);页面显示距离现在多久 |
oneLine | 项目状态,一句话概述 |
sessions | [{name, state, doing, last, restart}],每行一个会话。state 是一个或两个词("Working", "Waiting", "Stopped at a limit"),页面会为其着色。restart 以 "Yes" 开头,表明是重启该会话的好时机 |
done | 自上次更新以来完成的事项,每行一个 |
next | [{who, what}]:下一步,包括负责人的(who: "you") |
状态标签页会自动统计负责人的紧急和未处理事项;不要在 oneLine 中重复它们。
board/roadmap:分阶段的计划。在阶段或其某个事项移动时更新。
| 字段 | 内容 |
|---|---|
updated | 您上次更改的时间 |
headline | 项目在计划中的位置,一句话概述 |
stages | [{id, name, state, when, summary, items}],按顺序排列。state 是 done、now、next 或 later;items 是 [{text, state}],其中 state 为 done、now 或 next。标记为 now 的阶段打开在顶部 |
更改页面
- 仅当更改页面本身时才重新发布页面。传递相同的
capabilities,或省略capabilities以保留它们。 - 如果另一个会话发布了看板,请先读取它(
Artifactread),并在返回内容的基础上构建。 - 事项存在于数据库中,因此它们在重新发布后依然保留。