核心思想

作者的主张:在智能体工程时代,你的价值不再是「动手干活的那只手」,而是「品味、方向与判断的人类信号」——智能体提供量,你提供取舍。22 条技巧围绕同一个循环展开:一有想法先 /ce-plan 生成 plan.md(计划是给智能体的牵绳,你甚至不必读)、语音驱动、cmux 多标签并行、把构建委派给 Codex、任何做过两次的事都沉淀成 Skill。取舍也很诚实:用 YOLO 跳过权限确认换效率,以及对「AI 成瘾」保持警惕。

三个月前,我发了一篇《我所知道的每一个 Claude Code 技巧》,拿下了 91.3 万次浏览。当时 @kevinrose 问我该用哪个 IDE,我的回答是:“不用 IDE。只要 plan.md 文件加语音就够了。”

这种做法过去叫 vibe coding(氛围编程)。差不多在去年感恩节前后,模型变得足够强,玩具变成了真家伙,也就是人们现在所说的智能体工程(Agentic Engineering)。它是我能持续交付的唯一原因。今年我做出了 last30days(27K stars)、Printing Press(4K+ stars),以及刚刚发布的 Agent Cookie,还成为了几个开源界最大项目的顶级贡献者:PythonGoGStackPaperclip。在此之前,我从高中起就再没做出过任何有人在乎的软件。下面这些就是我的技巧。

HACKS

  • YOLO TL;DR 技巧:把这整篇文章粘给你的智能体,让它制定一个计划把文中的所有东西都搭起来,然后一个技巧接一个技巧地执行这个计划。这就是我的整套技术栈,不用读,直接上。

1. 一有想法,立刻做一个 CE plan.md

这依然是第一条规则,依然是我学到的最重要的东西。

我一有想法,就 /ce-plan 生成一个 plan.md。不是”让我先想想”,不是”让我先开始写代码”。每一次,都是 /ce-plan。它也能处理图片,所以任何你能截下来的东西都可以作为起点:

  • 疯狂的产品点子:/ce-plan。
  • GitHub 上的 bug:复制 issue 的 URL,粘上去,/ce-plan。
  • 终端报错:Cmd+Shift+4 截图,Ctrl+V 粘贴,/ce-plan fix this。
  • 截图、报错信息、设计草图、Slack 讨论串:随便扔哪个进去都行。

当想法还很模糊、我自己都不知道想要什么的时候,我会先用 /ce-brainstorm 跟智能体一起把它捋清楚,等想法变锐利了再 /ce-plan。

在底层,/ce-plan 会并行展开多个研究智能体。一个读你的代码库,找出模式、核对你的约定。一个搜索你过去的解决方案,从中学习。如果话题值得,更多的智能体会去研究外部文档和最佳实践。全都同时进行。然后它把这些汇总起来,写出一份结构化的 plan.md:问题出在哪、采用什么方法、要改动哪些文件、带勾选框的验收标准、从你自己代码里提炼出该遵循的模式。一切都扎根于你的仓库、你的约定、你的历史,而不是泛泛的建议。

/ce-work 接过那份计划,把它落地实现。上下文爆了?开一个新会话,把它指向那份计划,从你停下的地方接着干。计划是那个能扛过一切的检查点。

传统开发是 80% 写代码、20% 做规划。这套做法把它翻了过来。思考都放进计划里,执行则是机械的。

Compound Engineering 是让这一切成真的插件,出自 @kieranklaassen@trevin 之手。

我先是成了它的铁粉,然后成了贡献者,如今我是仅次于核心团队的第三大贡献者。我现在的规则是:除非它真的只是一行代码的改动,否则永远先有一份 plan.md。

HACKS

  • 安装 Compound Engineering:/plugin marketplace add EveryInc/compound-engineering-plugin
  • 粘一张截图、一个 bug 的 URL 或一段报错,然后 /ce-plan,再 /ce-work。
  • 想法模糊?先 /ce-brainstorm。

2. 别读 plan.md

我总是生成 plan.md,却几乎从不读它。计划是给智能体看的,你这个傻乎乎的人类。

强制一份计划存在,能让智能体不偷懒。它会逼着它们去做研究、确定一种方法、写下验收标准,然后真的去达成。一个有计划的编码智能体,交付的是完成的工作;一个没计划的编码智能体,会偷工减料、提前收工。计划就是那条牵绳。

所以我让它写计划,我只瞄一眼标题,然后跑 /ce-work。要是有疑问,我就在会话里当场问它:“等等,为什么用这个方法?“或者让它给我个 TLDR。又或者,当我看不懂的时候,“eli5 this plan”(用五岁小孩能懂的话给我解释这个计划)。我拿到一段话的版本,点点头,继续走。我才不会坐在那儿读 300 行 markdown。那是智能体的家庭作业,不是我的。

做计划。信计划。别读计划。

HACKS

  • 别让自己去读计划。在会话里直接问:TLDR?、eli5 this plan,或者”等等,为什么用这个方法?“

3. 把 /ce-plan 用在你最烧脑的非工程工作上,为计划做一个计划

人们以为 /ce-plan 和 /ce-work 是给代码用的。自三月以来我学到的最大一件事,就是它们不止于此。如今我做的最烧脑的知识工作,都跑在同一个循环里,而诀窍是把第一份计划做成一个”为计划做的计划”。这也不是我硬逼一个代码工具去做它本不该做的事:/ce-plan 内置了一个通用规划模式,正是为这种非代码工作准备的。

而且不只是商业问题。战略文档、产品规格、竞品分析、董事会汇报,全都是同一个循环。

来个真实的例子。我见了 Michael Margolis——前 GV 研究合伙人,以”靶心客户”方法闻名——聊了一个我正在酝酿的商业难题。他让我去读他的书,他网站上有免费 PDF。换作过去的做法,我会随便翻翻就过去了。这次我打开 Claude Code,大意是说:

“/ce-plan make a plan for the plan(为计划做一个计划)。我马上要给你两样东西:Margolis 的书的 PDF,以及我刚跟他开的那场两小时会议的 Granola 转录稿,里面有我们讨论的全部上下文。我想要一个深思熟虑的计划,讲清楚我的商业问题、那场对话、和书里的经验教训,怎么汇聚成一份我真正能用得上的东西。现在先别写那份文档。写它才是真正的工作。此刻我只想要那个计划——你将如何读这本书、从转录稿里挖料、最终产出一份出色的文档。”

它花了接下来的 45 分钟,做出了一份史诗级的计划。

这也是我知道的、让 LLM 不偷懒的最佳一招。直接向它要交付物,它就会偷工减料;让它先规划自己将如何产出这个交付物、再执行那个计划,它每次都会做出深度版本。

HACKS

  • 烧脑的非代码工作:/ce-plan make a plan for the plan,把你所有的上下文和转录稿都交给它,然后 /ce-work。

4. 让自己语音上瘾

语音转 LLM 和语音转任何别的东西都不一样。转录不必完美,因为听的那一方懂上下文。它会猜出麦克风听错的地方。你可以含糊不清、说到一半没声、把一句话推倒重说。语音之所以终于好用了,是因为对面那个东西聪明到足以把空缺填上。

我的配置:

  • Mac:Monologue(来自 Every)或 Wispr Flow。挑一个,把语音灌进当前聚焦的任何 app,对着 Claude Code 说话。我还给办公室买了个鹅颈麦克风。
  • 手机:别用 Monologue 和 Wispr Flow,在 iOS 上切到它们太烦了。苹果自带的听写就够好,因为你是在跟 LLM 说话,不是跟人。它就算把一半词都搞乱,智能体照样能领会。潦草的笔记完全没问题。

老实坦白一件事:我一个人的时候用语音超顺,在办公室就抓瞎。人们说你可以对着麦克风小声说,可我发现自己其实做不到,因为我不想失礼或打扰周围的人。所以,共享办公室里的一张桌子,至今仍是我整套工作流的软肋。如果你已经搞定了在开放式办公室里用语音、又不会变成那个惹人嫌的人——告诉我你是怎么做到的。我是真心想要这个建议。

HACKS

5. 在 cmux 里开一大堆一大堆标签页

这就是我一天实际是怎么过的。四到六个 cmux 标签页,有时更多,每一个都是独立的会话:

  • 一个在写计划。
  • 一个在根据另一份计划做构建。
  • 一个在跑 last30days。
  • 一个在修我测上一件东西时发现的 bug。

当 /ce-plan 在一个窗口里展开研究时,我切到另一个窗口,去 /ce-work 一份已经写好的计划。趁那个在构建,第三个窗口又粘进来一个新 bug。等我转回第一个,它已经做完了,正等着我。

我听说 Orca 在移动端做的工作很棒。我以前也是 Ghostty 的纯粹主义者,但我在 ghostty 里丢失了太多通知。

HACKS

  • cmux
  • 开 4 到 6 个标签页,每个里面放一件不同的任务。

6. 让你的终端默认进入 Claude 或 Codex,而不是 shell

一个新标签页应该直接进入 Claude Code,而不是 shell。打开一个标签页,你已经在跟智能体对话了。不用 cd,不用敲 claude。当开一个新会话只要一次按键,你就会开得多得多。我也不用文件夹。你的智能体能找到你的项目。

HACKS

  • 粘给你的智能体:“Make every new terminal tab open directly into Claude Code. In ~/.config/ghostty/config, add the line command = ~/.local/bin/claude-launcher.sh without disturbing any other settings already in that file. Then create ~/.local/bin/claude-launcher.sh that runs claude —dangerously-skip-permissions, and when Claude exits prints a short note and drops me into an interactive login zsh. chmod +x the script. This works for both Ghostty and cmux, since cmux reads the same Ghostty config.”(让每个新终端标签页都直接进入 Claude Code。在 ~/.config/ghostty/config 里加上一行 command = ~/.local/bin/claude-launcher.sh,别动文件里已有的任何其他设置。然后创建 ~/.local/bin/claude-launcher.sh,让它运行 claude —dangerously-skip-permissions,当 Claude 退出时打印一句简短提示,再把我丢进一个交互式登录 zsh。给脚本 chmod +x。这对 Ghostty 和 cmux 都管用,因为 cmux 读的是同一份 Ghostty 配置。)

7. 远程控制每一个窗口,并给 Claude Code 或 Codex 一个邮箱地址

两个技巧,让每一个会话从任何地方都能触达。

每次打开新窗口就打开远程控制

设置成让远程控制对每个会话自动开启。

现在每个窗口都能从 Claude 手机 app 触达。在你桌前开一个会话,走开,在手机上接着干同一个正在跑的任务,毫不中断。在某处排队的时候,你正在遥控家里 Mac 上轰隆隆运转的活儿。

给你的 Claude 一个邮箱地址

Claude Code 可以借助 AgentMail 拥有一个邮箱地址。是创始人 Adi(@adisingh)教我这一招的。给那个收件箱发邮件,一个全新会话就会打开并开始处理主题和正文里的内容,任何附件都能按路径取用。吃饭时碰上个 bug?从手机发封邮件,等你回到屏幕前,会话已经在跑了。我把整套东西开源了:github.com/mvanhorn/agentmail-to-claude-code

三个部件:

  • 一个守护进程,通过 WebSocket 盯着一个 AgentMail 收件箱。每收到一封在白名单内的邮件,它就开一个全新的 Claude 会话,把邮件写进一个 prompt 文件,然后告诉 Claude 去读取并据此行动。
  • 两个终端后端,cmux 或独立的 Ghostty,所以你平时进入哪个,它就驱动哪个。
  • 一个发送器。我把它接到了我 Hermes 里的一个 cc 命令上,所以从手机上我跑 cc <task>,它就会作为一个工作中的会话落到我的 Mac 上,不用 VPN,不用 SSH。

白名单是那道闸门。只有你掌控的地址才能通过,任何未通过 DKIM 或 SPF 校验的邮件,在会话打开之前就会被丢弃。

HACKS

  • 始终开启远程控制:在 ~/.claude/settings.json 里加上 “remoteControlAtStartup”: true。
  • 给 Claude 一个邮箱。粘给你的智能体:“Give Claude Code an email address using github.com/mvanhorn/agentmail-to-claude-code. Clone it, set up an AgentMail inbox, fill cc.env with my API key, the inbox, an allowlist of only my own addresses, and my terminal (cmux or Ghostty), then run the daemon and install it as a launchd job. When I email that inbox, a fresh Claude Code session should open on this Mac and start on the subject and body.”(用 github.com/mvanhorn/agentmail-to-claude-code 给 Claude Code 配一个邮箱地址。克隆它,建一个 AgentMail 收件箱,在 cc.env 里填上我的 API key、收件箱、一份只含我自己地址的白名单,以及我的终端(cmux 或 Ghostty),然后运行守护进程并把它装成一个 launchd 任务。当我给那个收件箱发邮件时,这台 Mac 上应该打开一个全新的 Claude Code 会话,开始处理主题和正文。)

8. 危险地跳过权限确认,没错,我是认真的

Claude Code 会为每一次编辑和命令请求权限。开着六个会话,你根本盯不过来。两个设置能让它变得可用。人们说 auto 是”更安全”的做法,但它把我拖得太慢了。

skipDangerousModePermissionPrompt: true 是关键。没有它,Claude 会让你给每个会话都确认一遍。你也可以用 Shift+Tab 来切换。有人跟我说,更新的 “auto” 模式能在更安全的前提下帮你走完大部分路。也许吧。我说 YOLO(爱咋咋地)。这是我的电脑。就算我把一切搞砸或毁掉,GitHub 还在那儿兜底呢。我给一个朋友配 Claude Code 时,那个 AI 还主动想劝他别开这个。你得对它直截了当。

另一个设置是声音 hook,开着六个会话时,它是不可妥协的。

走开,听到声响再回来。六个会话同时跑,那个声音就是你判断哪一个刚刚完成的方式。

HACKS

粘进 ~/.claude/settings.json:

{ “permissions”: { “allow”: [ “WebSearch”, “WebFetch”, “Bash”, “Read”, “Write”, “Edit”, “Glob”, “Grep”, “Task”, “TodoWrite” ], “deny”: [], “defaultMode”: “bypassPermissions” }, “skipDangerousModePermissionPrompt”: true }

{ “hooks”: { “Stop”: [ { “hooks”: [ { “type”: “command”, “command”: “afplay /System/Library/Sounds/Blow.aiff” } ] } ] } }

Codex 有同样的 YOLO 模式。在 ~/.codex/config.toml 里:

approval_policy = “never” sandbox_mode = “danger-full-access”

或者用 codex —yolo 启动一次性任务。

9. 我如何把大部分代码交给 Codex 跑,却从不打开 Codex CLI

我一整天都在把活儿发给 Codex,却几乎从不打开 Codex CLI 来做这件事。Claude 规划,Codex 构建,而我从不离开我的 Claude 会话。

我有三种方式把活儿交给 Codex,全程不离开 Claude:

  • Codex IDE 扩展:发一个任务,应用结果,从不掉进 Codex 终端。
  • /ce-work —codex:在 Compound Engineering 循环内部,把构建直接委派给 Codex。
  • Printing Press 的 Codex 模式:在 print 一个新 CLI 时,在 prompt 末尾加上 codex,它就把构建交给 Codex。

我的设置,两个引擎都拉满到超高推理强度:

  • Codex:reasoning xhigh,fast mode 始终开。
  • Claude Code:reasoning xhigh,fast mode 关。它的 fast mode 会在你的 $200 Max 套餐之上按 token 额外计费,所以我跳过它。

两个 $200 套餐并排摆着,就是一整个第二引擎。我把大型并行构建推给 Codex,让 Claude 专注于规划和品味。有些朋友反着用:Codex 构建,Claude 审查。

HACKS

  • Codex:reasoning xhigh,fast mode 开。Claude Code:xhigh,fast mode 关。
  • 把活儿交给 Codex:用 Codex IDE 扩展、/ce-work —codex,或者在 Printing Press 的 prompt 末尾加 codex。

10. 先研究再规划:last30days

在我 /ce-plan 之前,我通常会先对它跑一遍 /last30days。

我当时在 Vercel 的 agent-browser 和 Playwright 之间做选择。我没去读文档,而是跑了 /last30days Vercel agent browser vs Playwright。几分钟内:几十个 Reddit 帖子、X 帖子、YouTube 视频、HN 故事。agent-browser 每次调用消耗的上下文要少得多,Playwright 光是工具定义就要倒出几千个 token。我把整份输出喂进 /ce-plan integrate agent-browser。出来的计划扎根于社区此刻真正了解的东西,而不是半年前的训练数据。

last30days 是开源的,现在已经超过 26K stars。它并行搜索 Reddit、X、YouTube、TikTok、Instagram、HN、Polymarket、GitHub 和整个网络。我会在挑一个库之前、做一个功能之前、跟商业伙伴见面之前、写一篇文章之前跑它。这篇文章里的好几样东西我都跑过它。研究、规划、构建。这才是真正的循环。

HACKS

  • 安装 last30days。在 /ce-plan 之前,跑 /last30days <主题>。
  • 记得装一个 ScrapeCreators 的 key。

11. 把一切都 Granola 一遍,并把原始(RAW)转录稿丢进你的 LLM

我跟一位候选人吃了顿午饭。我们聊产品、聊吃的、聊孩子,九十分钟稀松平常的对话里,编织着一个产品点子。Granola 全程开着。结束后,我把完整的原始转录稿粘进 Claude Code:/ce-plan turn this into a product proposal(把这个变成一份产品提案)。

诀窍在于原始。我不先做总结。我把整份乱糟糟的转录稿丢进去,连关于寿司的闲扯都不删,让 Claude 对着我真实的代码库、以及我写过的每一份过往战略计划去做提取。Granola 的上下文,加上代码库,加上过往计划,等于金子。它一次就搞出了一份提案,自动忽略了餐厅闲聊,我当晚就把它发了出去。那个人现在全职跟我们一起干了。

而自三月以来的升级是:Printing Press 的 Granola CLI。它简直是魔法。我把任意一场会议作为干净的结构化数据直接拉进会话,跨越我开过的每一场会议去搜索,找出三周前某人说过的某一句话,再把它接进一份计划。再也不用复制粘贴。每一场会议的上下文,都只在一条命令之外。

HACKS

  • 把原始的 Granola 转录稿丢进 /ce-plan,别先做总结。安装 Printing Press 的 Granola CLI

12. 人类信号

这是我花了最久才完成的心态转变。当你跑着六个智能体时,你的工作不是去干活。你的工作是去做那个信号。

智能体提供量。你提供品味、方向,以及”反应—再引导”的循环。你看一眼返回的东西,说一句”选项二更接近,但用选项一里的措辞”、“先解决最大的风险”、“这段太长了”,它们就动起来。这个循环里稀缺而宝贵的,是你的判断,不是你的打字。我越是倾向于去做那个人类信号、不再试图同时也当那只动手干活的手,我交付得就越多。

去当那个品味。让它们去当那双手。

HACKS

  • 用你的脑子去引导你的智能体,为这个世界增添价值。它依然有价值。

13. 用 HyperFrames 做视频,做一切

视频以前是我会外包或干脆跳过的东西。现在我做视频,跟我做别的所有东西一模一样:我说,智能体构建,我反应。

HyperFrames 让我可以把视频当作 HTML 来构建,于是智能体就能写它。这个循环和写代码一模一样,只是产出从一个 PR 变成了一个 MP4。每一个视频都是一个文件夹,里面有一份 script.md,逐个镜头展开,动态排版(kinetic typography),字幕承载每一个节拍。智能体把那份脚本变成合成画面并渲染出来。没有剪辑器,没有时间轴。

我用这种方式做的几个发布宣传片:

  • Granola CLI 演示
  • Agent Cookie 发布

视频的成本降到了一场对话,于是任何值得拥有一个视频的东西,现在都有了:发布宣传片、产品演示、动画讲解、带字幕的短片。它们也不只发在 X 上:我会把一个渲染好的演示直接丢进一个 PR,就像 atlas-lean(Facebook 的 AI 研究项目)上的这一个

HACKS

  • HyperFrames 里构建视频:写一份 script.md,让你的智能体把它渲染成 MP4。
  • 把 GIF 上传到 catbox,它们在 GitHub 上(PR、README、issue 里)会渲染得很漂亮。

14. 你的笔记就是你的智能体的知识库

三月那个”战略文件夹”的技巧推广开了。一份计划之所以一次比一次好,是因为 Claude 能访问我写过的每一份过往计划。复利式累积的上下文。于是我把它指向了我的整个大脑。

我指向它的那些工具:

  • Bear,配上 Bear CLI。十年的笔记、会议、半成品的点子和决策,智能体都能读能写。不叫它 RAG 的个人 RAG。我往里放得越多,每个会话就越聪明。
  • Obsidian。我自己不用,但人们超爱拿它干这个,而且它的插件生态非常深。
  • gbrain。我跨机器、跨智能体同步的大脑。
  • supermemory。一个面向智能体的记忆层,很多人对它推崇备至。我正在深入研究,结论待定。

这个技巧的形态本身才是重点:挑一个带 CLI 或 API 的笔记工具,把你的智能体指向它,让你自己的知识产生复利。

HACKS

  • 让你的智能体同时指向两类东西:你亲手写的笔记工具(BearObsidian),以及替你记忆的智能体大脑(gbrainsupermemory)。挑带 CLI 或 API 的,这样它才能读。

15. 在任何地方工作——我的 Mac mini

HACKS

  • Mosh,当你不得不 SSH 进去的时候。它让会话在糟糕的 wifi 和漫游下依然感觉是本地的、响应灵敏。用纯 SSH 时,Claude Code 慢得要爬,每一次按键都在等往返。在一台远程机器上,这就是”可用”和”痛苦”之间的差别。
  • Tmux,给坐飞机用。在一个 tmux 会话里 SSH 进你的远程机器,活儿就跑在那台机器上,而不是你的笔记本上。在大西洋上空 wifi 掉线二十分钟,你重新连上、attach 回去,它正好还在你离开的地方。我从欧洲飞回家的整趟航程里交付过功能。
  • HermesOpenClaw,两个都开着,用于自主的远程工作。Hermes 用它那套会自我学习、在重复任务上越来越强的生态;OpenClaw 用它那种由智能体构建的技能的广度。我在两者之间来回切换。如果你早早就放弃了 OpenClaw,把它清掉,从头来过。
  • Agent Cookie,让 cookie 和 .env 在你的 Mac mini 和主力 Mac 之间保持同步。

16. Proof:用来把一份计划发给同事

一份 plan.md 对我来说完美无缺,但要递给一个不住在终端里的人,就毫无用处。那是最后一道真正的缺口,而 Proof(同样来自 Every)把它补上了。

在 Proof 里像读文档一样打开一份计划,这很不错。但它真正变得不可或缺,是在把一份计划发给同事的时候。我把一份 plan.md 或一份规格丢进 Proof,发个链接过去,一个不碰终端的人就能干净地读它、在行内评论,而那些评论会重新流回与智能体的循环里。再也不用把 markdown 粘进 Slack、眼睁睁看着它渲染成一团乱码。这是给整个 plan 文件工作流配上的”人在环路(human-in-the-loop)“审查,也是第一次,跟一个普通同事分享智能体化的工作不再让人感到尴尬。

我写这篇文章的时候,就把它本身加载进了 Proof。它就是这么被审阅的。

我整篇文章都是在 cmux 里写的,旁边就开着 Proof 审阅:

cmux 和 Proof 协同工作

HACKS

  • 分享一份计划:把 .md 丢进 Proof,发个链接,把评论拉回循环里。

17. 写你自己的技能(Skill)

最大的升级不是用智能体,而是教会它们那些能留存下来的招数。任何我做超过两次的事,我都把它变成一个技能(Skill):一个我的智能体可以永远运行的可复用命令。先靠写你自己的技能来自动化你的工作流。

你不用从零开始写。让我打通这件事的诀窍,是把你的智能体指向一个已经能用的技能,让它照着那个形态来抄。原话就是:“看看那个 Compound Engineering 技能,帮我照着它做一个,用来自动化 [我想自动化的任何东西]。“它读一个好范例,学会结构,把我的那个搭起来。我就是用这种方式建了一堆技能。

这也是我现在开源生活的大部分。如果你去看我的 GitHub,那些工作都是技能、以及围绕它们的工具。last30days 起初就是一个我想给自己用的技能,如今开源已超过 26K stars。Printing Press 是一整座生成智能体原生(agent-native)CLI 的工厂,是我个人用得最多的工具,已合并进它的 PR 超过 320 个。我是 Compound Engineering 本身的顶级贡献者之一。这一切都不是什么宏大的计划。每一块都是一个我跑得足够频繁、值得让智能体在这件事上永久变强的工作流。

把技能写一次。之后的每个会话都更快。这就是 Compound Engineering 里那个”复利(compounding)“的部分。

HACKS

  • 任何你做超过两次的事,都做成一个技能:“看看那个 Compound Engineering 技能,帮我照着它做一个,用来做 [X]。“

18. 开源:为你热爱的项目做贡献

那个让我交付自己项目的循环,同样能交付别人的所有项目。我已经有数百个 PR 被合并进开源项目,包括 PythonGoOpenCVVercel 的 Agent BrowserOpenClaw。不是顺手修个错别字那种,是给我每天都在用的工具加真正的功能。

不知不觉间,我开始登上贡献者榜单的前列:

@pejmanjohn 开玩笑说,每次他打开一个仓库,在贡献者头像格子里找出我的脸,已经成了他个人的”威利在哪里”游戏。

Superpowers 的贡献者

但合并的 PR 并不是真正的奖赏,人才是。我跳进 Discord,结识维护者,交到真正的朋友。这对招聘也帮助巨大,我刚刚就用这种方式给我的新公司招了一位工程师。你为一个你热爱的东西做贡献,你认识了那些同样热爱它的人,然后它产生复利。

HACKS

  • 挑一个你每天都用的工具,找出它缺的一件真正的东西,用同样的 /ce-plan + /ce-work 循环把它做出来。
  • 出现在那个项目的 Discord 里。PR 让你进了门;而人,才是你留下来的原因。
  • 在 X 上增添价值。
  • 在 X 上每月花 1-3 订阅你尊敬的人。我每月付 1 给 @garrytan,当我提交一个 PR 时,我可以给他发一条 X 帖子,他会收到一个特别通知——我是付费用户。我也付费支持 @jason@teknium@Teknium

19. 我目前的笔记本配置

我那台两年的笔记本,在我加诸其上的一切(一整天六个 Claude 会话外加 Codex)之下,已经勉强能用。于是我升级到了 M5 Max,64GB 内存。它是头猛兽,我爱它。可它照样被这套工作负载干趴下:我这台全新机器有时只撑了一个小时的电。

于是我恐慌性地囤了电力。我现在到哪儿都带一块 Anker 充电宝,还在特斯拉里常备一个 Anker 充电器,好让车在路上随时给我续电。

HACKS

20. Printing Press:跑通真实生活的 CLI

这些技巧大多活在终端里。这一个是唯一一个走出终端的。Printing Press 是一支 CLI 舰队,它们把现实世界的服务包装起来,好让智能体直接就能把那件差事办了。它现在是自己的项目了,在 @ppressdev 名下,已超过 3.7K stars,我和 @trevin 一起在建它。

让它们真正跑起来的那一块是认证(auth),而它昨晚刚刚发布:Agent Cookie。它把你真实的浏览器会话交给一个 CLI,让它以你的身份行事,不用粘任何密码,不用重新认证。它就是把”一个知道某个服务的智能体”变成”一个已经登录了它的智能体”的那样东西。

一个真实的下午,从头到尾:

  • 特斯拉预热。孩子十分钟后要上车:“把车预热到 72 度。“特斯拉 CLI 启动,我们走出门时车已经暖了。
  • Instacart。“在 Instacart 上往 Costco 的购物车里加 Corona。”
  • ESPN 轮询。一个会话替我盯着一场比赛,只在快要见分晓时给我提示。我什么都不用刷新,只收到了那一条要紧的提醒。
  • 阿拉斯加航空(Alaska Airlines),为了孩子们的旅行。拉取票价和肩部日期(shoulder dates,旺淡季交界的低价日),核对我们的 Atmos 里程余额,把这些喂进 /ce-plan,得到一份订票策略,附带最便宜的日期和买票提醒。这一切都是在一片足球场边上完成的。

不是”AI 帮我写代码”。智能体工程替我跑腿、替我看比赛、替我暖车、替我订行程,而我正在做别的事。

HACKS

  • printingpress.dev 的库里装一个现成的 CLI,把一件差事直接交给你的智能体。
  • 无痛认证:Agent Cookie 把你真实的浏览器会话交给一个 CLI,让它以你的身份行事。
  • 真正的技巧:print 你自己的。挑一件你整天都在做的事、一个你离不开的 API 或服务,让 Printing Press 给它生成一个智能体原生的 CLI。你为自己的工作流构建的那一个,才是真正改变你工作方式的那一个。

21. 诚实的部分:AI 精神病(AI Psychosis)

智能体本该替我们干掉所有活儿。结果,我每一个朋友都在以他们这辈子最拼命的状态工作。

简单的回应是:歇一歇,去摸摸草(touch grass,意为离开屏幕、回归现实)。但这事说的不是那个。这事说的是成瘾。用智能体构建,是有史以来做得最棒的电子游戏,而那个循环就是那么上头。

我有些朋友,我是真心替他们担心。他们被”能造出任何东西”这件事点燃到,除此之外什么都不做了。然后他们发布了,却一个用户都没有。这没关系。我自己也发布过一大堆没有用户的东西。陷阱不在于那个空荡荡的发布,而在于消失进构建里,弄丢了你身边的人。

所以,小心点。跟你爱的人聊聊。问问自己,到底有没有人真的想要你正在做的这个东西。而如果诚实的答案是,它只是一个给你自己用的工具——那也没关系。我做过的一些最棒的东西,从头到尾就只是给我自己的。

如果你确实想要受众,那就是 Gary Vaynerchuk 一直为内容布道的那条路。你从某处起步,往虚空里发帖,盼着有一个人注意到。然后是三个,然后十个,然后一百个,你一路做到上千个。没有人是从上千开始的。你构建的任何东西,也一样。

HACKS

  • 歇一歇。去摸摸草。
  • 跟你爱的人聊聊。
  • 构建人们想要的东西,哪怕”人们”就只是你自己。

22. 这篇文章就是这么写出来的

这是一个 markdown 文件。Claude Code 跑在 cmux 里,我对着 Monologue 说话:“把那个’不用 IDE’的开头进化一下”、“把’别读计划’那一节写得更带劲点”、“加上特斯拉和 Instacart 的故事”。它重写,我反应,然后它在 Proof 里待审。last30days 提供了新鲜的素材。顺便说一句,这次没用 Zed。我不再用它了。不用 IDE。不用敲代码。说话、规划、构建。从一张桌子、一张沙发、一辆车、一片足球场边。

这就是我在六月所知道的一切。一个语音 app、一个 plan 文件插件、几处配置改动、一大堆标签页、一台 Mac Mini、两台远程机器,以及一支跑通真实生活的 CLI 舰队。

HACKS

  • 把这整篇文章复制下来,粘进你的智能体,让它把能搭的都搭起来。好事会降临到你的智能体工程工作流上。

相关笔记