和编程 agent 一起干上一周,没收尾的事就会越堆越多。你发现了一个 bug,agent 却正忙着别的事。它做完一项任务,顺口提到有两件事它没管。一段长对话聊到最后,冒出一个好点子;过了一夜,这段对话上面已经压了十段新的。Projects 是 exe 桌面上一个小小的 issue 跟踪器,这些事它都能兜住;而且 Claude Code 读它、写它,和你一样顺手。
一份清单,每件事都有地址
Projects 看上去和 exe 的其他部分一样:一个窗口,左边是项目列表,中间是当前项目的 issue,右边是选中的那一个。一个 issue 就是一件要做的事,可以是 bug、新功能,也可以是问题。它有标题和描述,有图就附上图,下面还有一串讨论。
每个 issue 都有一个地址:项目的简称加一个编号,比如 EXE-12 或 PROJ-15。地址永远不变,也不会再分给别的 issue。这听起来是件小事,但正是有了它,你和 agent 说起同一件活,才不用把内容复制来复制去。只要 Claude 知道 issue 都记在哪里,“修一下 EXE-12”就是一条完整的指令。
交给 agent
issue 准备好了,就在它上面点右键,选 Send to Claude Code。
Claude Code 窗口随即跳到最前面,里面开好了一段新对话,工作目录已经是项目的文件夹。第一条消息就是整个 issue:描述、到目前为止的所有评论,再加一小段话,让 Claude 先读项目说明,然后干活、检查、汇报。附件只列出文件名,文件内容并不随消息发过去。你一个字也不用打。
Send to Codex 做的是同一件事,只是交给 Codex。如果想从零开始,就右键点项目本身,选 Open in Claude Code:项目文件夹里会开好一段新对话,等你开口。
Claude Code 本身一切照旧。它要是从没在那个文件夹里干过活,会先问你信不信任这个文件夹;你还没给过的权限,它也照样会找你要。
看得到谁在做
Claude 在 exe 的 Claude Code 窗口里干活时,issue 上会显示出来。标题下面多出一行:一个闪动的绿点、agent 的名字,还有从你上一条消息算起,它已经干了多久。
不管 agent 是怎么拿到这个 issue 的,这一行都会出现。可以用 Send to Claude Code,也可以在 Claude Code 窗口里已经开着的某段对话中输入“看一下 PROJ-6”。Claude 干完了,或者停下来等你,这一行就会消失。几天后再回到一个 issue,你一眼就能看出是不是已经有人在做了。
Claude 也往里写
agent 不只会读 issue。Projects 自带一条命令,agent 在自己的终端里运行它,就能提 issue、读 issue、写评论、关 issue。给 agent 一把签名密钥和一个自己的名字,它写下的每样东西就都署这个名字,不署你的。
你想让它怎么用,在项目的说明文件里交代一次就行:Claude Code 读 CLAUDE.md,Codex 读 AGENTS.md。几行就够了。要写上这条命令在你机器上的完整路径,因为它就待在安装 Projects 的那个文件夹里:
Issues for this project are in
Projects. The command is
~/exe-projects/exe-projects,
and `help` lists what it does.
Read an issue with `show EXE-12`.
Found something outside your
task? File it with
`new . "Title" -m "What you saw"`
and carry on.
Before you start an issue,
comment your plan on it as a
checklist. When you finish,
tick the checklist, report what
you did, and close the issue
with the commit.
Send to Claude Code 会让 Claude 汇报,却没说汇报写在哪里。有了这样几行,计划和汇报都会写到 issue 上,也就是你会去找的地方。
下面是一个已经完成的 issue,需求是在侧栏里拖动项目来调整顺序。Claude 先贴出计划,每完成一步就打一个勾,然后汇报它做了什么、怎么测试的、哪些没做,还附了一张截图。最后,它把这个 issue 关闭了。
判断这件活干得好不好,要看的东西都在这一页上,对话滚走以后也还在。
循环
有了那几行,工作就会这样转起来:
- 你把想要的东西写成一个 issue。如果说的是看得见的东西,就附一张截图。
- 你把它发给 Claude Code,或者在对话里提到它的地址。
- Claude 读 issue 和项目说明,贴出计划,开始动手。issue 上会显示它正在干活。
- Claude 在 issue 上汇报,然后关闭它。途中注意到的别的事,各自另提一个 issue。
- 你读汇报。有哪里不对,就重新打开 issue,写明是哪里,再发一次。新对话一开始就带着全部内容,包括上一次的汇报。
在开发 exe 的那台机器上,这个循环还能再省几次点击。有个小脚本一直盯着 Projects,一旦有评论要 Claude 动手,比如上图里那句“Claude, build this.”,脚本就自己为那个 issue 启动 Claude Code。这个脚本不属于 exe。Send to Claude Code 做的是同一步,只是由你亲手来做。
试一试
Projects 是 exe 的附加组件之一:一个独立的程序,想用时再装上。Send to Claude Code 要求 exe 2026.10.15 或更高版本,Claude Code 和 tmux 也要和 exe 装在同一台机器上。
- 选择 Help → Welcome…,在 Apps 卡片上按 Extras…。
- 进入 Projects 页。如果这台机器上还没有 Projects,这一页会给出一行话,你把它粘贴进 Claude Code,Claude 就会把 Projects 装好。如果 Projects 已经装了,页面却找不到它,就输入它所在的文件夹,按 Find。
- 确认复选框已经勾上,一路按 Continue 到 Review 页,再按 Apply。Projects 就会出现在桌面上。
- 新建一个项目。在 Directory 一栏填上项目文件夹的完整路径,以运行 exe 的那台机器为准。Send to Claude Code 就在这个文件夹里开始对话。
- 写一个 issue,右键点它,选 Send to Claude Code。
有一点要当心:附在 issue 上的文件存放在 IPFS 里,谁知道了文件的地址,谁就能取到它。别把敏感内容放进去。
详细说明见手册(英文),源代码在 github.com/livid/exe-projects。