ESC
↑↓ 选择↵ 打开esc 关闭⌘K 唤起
← Home NO.116
第 116 期 · AI 产品 · 收录于 2026 年 8 月 15 日

我在OpenAI的Codex工作法

JL
Jason Liu · Peter Yang
视频 34:34 原文约 4.0 万字 预计阅读 21 分钟 来源视频 ↗ 中英对照全文
双人对谈 · 本期速读电台 00:00 / 41:29
TL;DR · 三句话
  1. 一条「chief of staff(幕僚长)」置顶线程接管了他一整个工作日:每天 9 点 / 13 点 / 17 点自动读完他所有 Slack、Twitter 私信、未回邮件和 Linear 看板,顺手把该更新的工单状态改掉、把回复预先起草好,甚至发现订票信息就自动值机、把登机牌短信发到私人手机——他特意强调"这些都是我一点点攒出来的小功能,绝不是开箱即得的"。→ 详细
  2. 让 agent 连跑几小时不跑偏,靠三个文件加一条纪律goal.md可验证的成功标准("粘一个 YouTube 链接进去,它真的能把鼓组各部分分离出来"——做不到就一直干),plan.md 写实现细节,worklog 记它卡在哪;而且最反直觉的一条是别自己写 goal,把成功标准描述给 Codex、让它自己定目标,"这样出来的效果通常好得多"。→ 详细
  3. 剩下唯一属于人的活儿,是"搞清楚你到底不喜欢一个东西的哪一点,把它说成话"——"想有品味,你得先去吃";连说 20 遍"做得更好点"没用,说"别用圆点了,直接标成右手、左手"才有用。→ 详细
01

ChatGPT Work 和 Codex 是同一个东西的两张脸

  • Work 就是 Codex 换了个视图:Codex 把 git 历史、pull request、代码改动摊开给你看,Work 把这些藏到幕后——"我在做 slides,其实并不需要看到它为此写了 20 行 Python"。差别主要在 UX 加一点默认 prompt 的调整。→ 详细
  • 藏着一句反直觉的产品判断:要做好用的办公生产力工具,从一个特别好的 coding agent(编程智能体)起步是个不错的切入点。 他现在大量日常活儿直接在 Work 里干——"我写出来的大部分代码,我其实都不怎么 review"。→ 详细
02

模型与 effort 档位:默认 medium,只有造东西才开 ultra

  • 日常活儿(读 Slack、排日历、安排会议)一律 Sol medium——"这些都不需要顶级智力"。effort 就是模型思考的用力程度,档位越高越慢越贵。→ 详细
  • 只有真要做原型应用才开 extra high 或 ultra:把一个复杂目标写清楚,让 Codex 自己跑几个小时。→ 详细
03

不开几百条线程:一条置顶线程 = 一个长期工作区

  • 他的 Codex 里挂着一批常驻自动化:读 Reddit / Twitter / LinkedIn 摸清反馈都从哪儿来、大家踩了哪些坑;几条 chief of staff 线程(日更一条、周更一条,跑在不同的自动化循环上);还有筹备 dev day、mission 视频、agents API 怎么想、打鼓项目、几份 slides。但关键是——"几乎所有东西都只是一条 pinned(置顶)线程。我后台并没有几百条线程在跑"。→ 详细
  • 每条置顶线程就是一个工作区,靠 compaction(上下文压缩,把长对话自动折叠成摘要腾出空间)撑住时间跨度——"因为压缩做得够好,之前的上下文不会丢"。这是他不用开一堆新会话的底气。→ 详细
  • 溢出的东西一律落盘:觉得某件事重要,就直接让模型存进 notes 目录;有额外的活要干,不给主线程做,而是让它起一个 sub agent(子智能体)。"这件事在 ultra 模式下其实可以自动完成,但我在什么时候起子智能体上会更谨慎一点。"→ 详细
04

vault:一个 Obsidian markdown 库,当所有 agent 的地基

  • 他基本只有一个项目,就叫 vault,因为"我大量的上下文都写在一个 Obsidian vault 里"。里面全是 markdown 文件,按目录分:不同项目、人、各种笔记、每日笔记、我的偏好设置——"这些都是我一点点存下来的东西"。→ 详细
  • 最值得注意的一点是他几乎不打开 Obsidian:"其实我很少真的去打开它,它主要是给我的 agent 当上下文用。"偶尔打开是为了看图片渲染出来、顺着双向链接跳来跳去。→ 详细
  • 一切从 vault 出发。他也有别的代码库(一个 monorepo、几个 demo 项目),但只要 vault 在 GitHub 上,"我换到云端或者别的地方,直接把 repo 拉下来就能接着干"。→ 详细
  • 唯一的另一个项目叫 animate codex:把 Codex 塞进 Remotion(用 React 代码生成视频的框架)里做动画,属于业余在搞的小项目。→ 详细
05

chief of staff:一条线程接管 Slack、邮件、日历、Linear

  • 一个自动化任务每天早上 9 点、下午 1 点、下午 5 点各跑一次:读完他所有 Slack;用 computer use(让模型直接操作电脑)读所有 Twitter 私信;读所有他还没回的邮件;再扫一遍 Linear 看板(团队用的任务管理工具),最后给他一个"当下都在发生什么"的全景。→ 详细
  • 它不只汇报,还动手:Linear 上有该清理的、状态该更新的,"Codex 就直接帮我改掉",所以"我永远能拿到一个干净的视图,知道接下来该干什么"。演示当天它提醒他"马上要去巴西这事还得去落实",顺便提醒去取个快递。→ 详细
  • 最亮的一条是自动值机:因为他出差多,只要 Codex 发现有订票信息和订单编号,就帮他把机值了,再把登机牌用短信发到私人手机上(演示这台是工作电脑)。"现在我人在纽约,一条短信进来我才反应过来:哦,Codex 已经把登机牌发过来了。"他紧接着补了一句很重要的话——"这些都是我一点点攒出来的小功能,绝不是开箱即得的。"→ 详细
  • 冷启动只要一句话。Peter 问"普通人该怎么起步",他给的原话是:「把这条线程变成一个 heartbeat(定时心跳任务),我要你去查我的邮件、我的 Slack、我的 Linear,按合适的节奏来,早上 9 点、下午 1 点、下午 5 点,然后告诉我该优先处理什么。」——"光凭这一句,你就能拿到一份相当不错的待办全景。"→ 详细
  • 之后是一条一条加偏好,而不是一次设计对:第一次跑完没带链接 →「现在我要你保证每一条都带链接」;事情复杂了 →「这样吧,你开始用 Linear」。用到现在,它已经能预先起草 Slack 回复和邮件——不是通知他"来了封邮件",而是给一个链接,点开就是写好的草稿,"我只要稍微改改就能回出去"。→ 详细
  • 什么时候敢让它直接发出去?看场景。写代码那条线他很放心:「提一个 pull request,然后盯着这个 PR,等所有测试都变绿了,就在 Slack 上私信 Andrew,把 PR 链接和预览 URL 发给他。」但 chief of staff 那条不一样——"它一次要读 40 封邮件、上百条 Slack 消息,这种场景我希望处理得更精准、更克制一点"。→ 详细
  • 信任是长出来的,不是一开始给的:"要是第一天我就让它自己收尾,我肯定心里发虚;但现在,因为我知道这是我主动要求的,而且它做得没问题,我就更有底气去更新这些 skill,让它直接代我在 Slack 上回复。"→ 详细
06

「像我一样写」skill 家族:write me / slack me / email me / tweet me

  • 他最喜欢的 skill 之一叫 write me(照我的口吻写)。做法简单到有点扫兴:打开 Codex 说一句「用 Slack connector 把我过去一周发的 Slack 消息读一遍,然后做一个 skill,总结出我说话的方式」——"它做得相当不错"。→ 详细
  • 然后加分层:"我还要你分清楚,对外部用户说话和对团队内部说话得用不同语气;对高管说话和对同事说话也要不一样。"→ 详细
  • 家族已经铺开,全收在他个人的 skill repo 里:像我一样写邮件像我一样发推把语音转写变成博客文章把我出镜的视频变成 video essay(视频随笔)——"反正一堆五花八门的东西,对我帮助特别大"。→ 详细
  • 一个容易被漏掉的细节:一个人其实有好几种腔调——在 Codex 里教别人东西是一种、分享 demo 是一种、回复给你反馈的人又是一种。skill 干的活就是把这些场景都找出来、搞清楚每种场景下用什么语言,再各配几个小例子。→ 详细
  • 谁写的这些 skill?"大部分都是 Codex 写的。我真正要做的,其实只是把这些参照样本指给它看。"→ 详细
  • Peter 的同感值得记一笔:正因为 Codex 什么都能干,"它现在几乎成了我一切事情的中枢"——读邮件、发邮件、写社媒帖子再发出去,全从这儿出发。→ 详细
07

skill 会长胖,所以要定期瘦身

  • Peter 担心 skill 越堆越多会臃肿。Jason 说他清理得很勤,办法是让 Codex 自己查自己:「你去看看我过去 400 次 session(会话记录),哪些 skill 从来没被用过?帮我清理一下,可以来采访我、一步步走一遍这个流程。」→ 详细
  • 它给出的建议很像一个称职助理:数据分析类 skill 你不怎么用,先删掉、需要时再装回来;你有一堆 Slack 相关 skill,要不要合并;甚至会说"你有一个『像我一样写作』、一个『像我一样发 Slack』、还有一个『像我一样写邮件』,要不要合成一个"。→ 详细
  • 他的心智模型是全片最好用的一句:"这跟招人进来第一天没什么区别——你得给他讲一大堆背景,不断给他反馈,他会随着时间慢慢变化。我不指望哪个 skill 一次写好就能永远完美地跑下去。"→ 详细
  • 清理这件事他以前挂定时任务跑,"现在越来越少了",改成想起来就顺手清一次,有时候顺带清理 worktree(git 的多工作区目录)。→ 详细
08

self-improve:让 skill 从自己的历史记录里学

  • 前提是所有 session 都被存成 JSON 落在某个数据库里——"我到现在都不知道具体存在哪儿",但不妨碍拿来用。→ 详细
  • 四个月前他做了个 skill 就叫 self-improve,干的事只有三步:看哪些 skill 被调用得最多 → 把这些 skill 相关的 session 读一遍 → 告诉我有没有反复出现的反馈。→ 详细
  • 写东西时他还会手动喂新鲜语料:"这个 skill 已经好几周没更新了,你去把我最近 200 条 Slack 消息读一遍,看看有什么变化;把我最近 200 条推读一遍;再把我最近写的那几篇博客读一遍。"→ 详细
  • 一个具体战果,很能说明"反复出现的反馈"长什么样:Slack skill 发现了一条总要人工收尾的动作——每次他从 Slack 拿一件事出来处理完,还得再让 Codex 回到 Slack 说一声"办好了"。时间长了 Codex 自己学会判断:"你让我代你处理一个内部请求,那我办完之后直接回过去就是了。""就是这种小细节,一点点把摩擦降下来,到最后你就真的省出时间了。"→ 详细
  • Peter 承认自己只在单个线程里手动让它改进,没做过"写个 skill 去回看所有历史线程"这种事;改完之后 Jason 还是人工过一遍,第一条第三条改、第二条跳过。→ 详细
  • 他还有一句关于"怎么改进 AI"的大实话,有点扫兴但极实用:"很多时候答案就是——你直接告诉 Codex 就行了。你干嘛把这个反馈给我?跟 Codex 说去啊。"→ 详细
09

skill 和 plugin 的关系

  • "skill 是 plugin 的一块拼图":一个 plugin 可能含几个 MCP server(让模型连外部工具的标准接口)、几个 skill、一些资源文件和脚本。要分享给团队,就把 write / slack / email 三个 skill 打包成一个叫 better writing 的 plugin。→ 详细
  • 从录制前的上周起,任何人都能往 Codex 的 plugin 目录提交:纯 skill 审核很快过,带 MCP 的多走一道安全审计。→ 详细
10

内置浏览器:登录态 + 多标签页才是真正的解锁点

  • 第一个解锁点:Codex 里的浏览器能做 OAuth 登录、能带上你的 cookie——也就是能在已登录状态下工作,"这意味着它能拿到的信息多得多"。这条是很多人没意识到的分水岭:没有登录态,它只能看公开页面。→ 详细
  • 第二个解锁点:它能同时控制多个标签页。所以别只让它交一份 markdown 结论,可以让它把浏览器提前布置好等你来审。他买东西时说的是:「你去做这个调研,做完给我推荐,但我要你把每个商品都单独开一个标签页。」去接杯咖啡回来,四个标签页都开好了,读完评测,在最认同的那个上点结算。→ 详细
  • 他还没放心让它替自己下单:"也许将来我会放心让它替我下单结账。但光是把信息整理成四个标签页呈现出来,就已经很有用了。"Peter 提到有人拿 browser use 去炒股,两人都表示信不过;Jason 说他认识的人已经用 computer use 买东西买了挺久,"可能我还没到那一步"。→ 详细
  • 一个清爽的心智划分:"我的 AI 有它自己的一个浏览器,而 Chrome 是我自己用的。" 只要是网页上的事,尽量让它在内置浏览器里搞定。→ 详细
11

computer use:管的是应用和系统那一层

  • 定位:computer use 在应用/系统这一层——要改系统设置才动用它。→ 详细
  • 他最在意的就两件事:"以后再也不用手填表单,再也不用为了搞个自动化去研究某个 API。"实例:开源项目申请表单的数据进 Airtable,取数据得手动下 CSV——现在自动化里有一段就是打开页面、点下载、挪到另一个盘、接着往下跑。→ 详细
  • 剩下大部分场景是测试自己做的应用。Peter 则老实承认他只拿来清理过下载文件夹。→ 详细
12

骑车途中远程改片:一个"人不在场"的完整闭环

  • 他在骑车,掏手机一看,公司同事求助:这个视频字幕有问题要重新导出,我又没有 GitHub 权限看代码。他用手机远程连到自己的 MacBook,发了条消息:「用 computer use 找到这个视频在哪儿、当初是用什么工具导出的,把视频改一下,然后发回 Slack。」二十分钟后,Slack 线程里出现了改好的新版本。→ 详细
  • 更狠的是下一句:「接下来每 30 分钟去看一次这个 Slack 线程,有新反馈就照着导出 V2、V3、V4。」 等他骑到家,视频已经过审放行——那是"迁移到 Codex"的发布视频。→ 详细
  • 对方察觉不出是 AI 在回:"就是每次他们给一条反馈,40 分钟以后就会出来一版新视频,措辞改了,或者节奏调快了一点、慢了一点。"→ 详细
13

长时任务三件套:goal.md / plan.md / worklog

  • 起点不是写文档,是先跟它长聊一场。他用语音口述"我想学打鼓",把看过的一堆 YouTube 视频里讲的东西(要练 rudiments、要练手脚协调)倒给它,追问"我想把这套协调性练出来,那核心要练哪些能力"。屏幕上显示这一轮起了差不多 300 个 sub agent。聊完才产出 plan.mdgoal.md 和一份 worklog——这一整套本身就是他 skill 库里的一个 skill,叫 ultra goal→ 详细
  • goal = 成功标准,而且必须可验证。 不是"给我做个超酷的打鼓 app",而是"我最终要能粘贴一个 YouTube 链接进去,然后它真的能把鼓组的各个部分分离出来"——"在你做到这件事之前,就得一直干下去。" Peter 复述确认:"所以 goal 不是『给我做个超酷的 app,能干这干那』,而是你得让它去验证。"Jason:"完全正确。"→ 详细
  • 打开的真实 goal.md 里写着:验证"能从一个 YouTube 视频里把音轨转录出来"这个能力,附上测试用的歌和视频 ID,还写明"我要你用 computer use 打开这个 app,上传这个 YouTube 视频,再把数据取出来"——验收动作是可执行的,不是一句形容词。→ 详细
  • plan = 实现层面的细节:"我要你用 React 写,我要有两个标签页,我要你用这几种技术;如果你不会用这些技术,就去读文档。"→ 详细
  • worklog = 写给人看的那份。因为有 compaction,他不可能把每条消息都读一遍;有了日志他能一眼看出"哦,它卡在这个权限问题上了"。这份日志真正的用途是让他作为 DevEx 团队的人搞明白——这些工具的局限到底在哪儿→ 详细
  • 最反直觉的一条:"如果你想定出好的 goal,那就别自己写 goal。" 正确做法是先把你想要什么、成功标准是什么描述清楚,然后说"很好,现在你自己定一个 goal 来完成这个任务"——"这样出来的效果通常好得多"。→ 详细
  • 为什么要落成文件而不是塞进 prompt:任务还在跑的时候可以随手改——"我可以时不时去改那个文件,而任务还在继续跑。所以如果我的范围扩大了,我直接改 goal 就行"。→ 详细
  • 他还主动泼了一盆冷水,值得贴在墙上:"那种『我让它朝一个目标跑了六小时』的演示当然很酷,但更关键的其实是,这些东西你可以随着时间一点点养大。"→ 详细
14

打鼓 app:给自己造一个学习工具

  • 起因很朴素:几周前订了套架子鼓还在路上,他查下来最好的学法是"一问一答"式练习——别人打一段鼓点,你照着复现。于是:"好,Codex,给我做个 app,里面要有各种 rudiments(打击乐基础击打组合)的曲库,而且我要能调速度。"然后每学一个新概念,就往 app 里加一条→ 详细
  • 现在的形态:一个四肢网格(左手、左脚、右脚、右手),会数拍进场,照着练小节奏型;还能上传任意 YouTube 音乐视频,把鼓声抽掉自己跟着打,或者加回来一起打。他接着又跟它学复合节奏(polyrhythm)——"一只手打五拍、另一只手打两拍,这个该怎么练"。→ 详细
  • 下一步想要的是:扔一个 YouTube 视频进去说"我想学这段鼓 solo",让 Codex 把它拆成一小段一小段做成组件、还能改速度慢慢练。"这不光是个热身的好方式,也是在摸索怎么用 AI 自己把这类工具造出来。"→ 详细
  • 设计这一步现在省掉了:贴参考图让它生成一版设计"那套做法在 5.5 那会儿更有必要",到了 5.6"前端出来的效果已经足够好,我基本不用操心这些了"——他只指定用 Tailwind 和 shadcn/ui。→ 详细
  • Peter 的总结点破了这类项目的意义:一般人学这些是看几个 YouTube 视频、报个课,而他"基本上是自己做了个互动 app 来教自己"。Jason 的回答是"因为现在我想加什么功能就能加什么"。→ 详细
15

「想有品味,你得先去吃」——剩下唯一属于人的活儿

  • 很多在读大学生问他:"现在写代码这件事被解决了,人到底该练什么?"他的答案是一句能记一辈子的话:"想有品味,你得先去吃。" 意思是审美不是凭空长出来的,得先大量去尝、去消费好东西。"我们现在的活儿,就是把『你到底想要什么』讲成话,并且越来越懂自己想要什么。"→ 详细
  • 另一半更可操作:"对现成的东西感到不满意、然后去学那套词汇和说法、搞明白怎么才能做得更好,这件事本身就极有价值。" 所以他宁可先让 Codex 做个东西出来,再认真想想自己到底哪里不喜欢,边做边学——"学编程一直以来的好处就是:你先去造点什么,撞上问题就在解决问题的过程中学会"。→ 详细
  • 问题的形态变了:四年前的问题是"这代码该怎么写",现在是"哎不对,体验不好,为什么会这样"——"我没有快捷键可以调这首歌的速度,好,那就加一套键盘快捷键""这两个面板切不过去我不喜欢,为什么闪得这么厉害",Codex 答"闪是因为我们没有提前预加载这个页面",那就修掉。→ 详细
  • 全片最实用的反面教材:"如果你只是连着说 20 遍『做得更好点』,那很难判断这么干到底能不能出好结果。"该说的是具体的东西——"我想好好琢磨快捷键怎么设计才顺手""能不能用颜色区分一下、更好理解""别用圆点了,能不能直接标成右手、左手"。→ 详细
  • 一条可以直接抄进指令里的做法:让它顺便解释"你是怎么修的、做了哪些取舍"——"这样你才能真的搞清楚背后发生了什么"。他把这个和"我从不指望 AI 第一步就把我的问题解决掉,因为我也不指望别人能猜到我想要什么——除非我自己是真的想清楚了"放在一起说。→ 详细
  • 全片题眼(开场也用了这句):"剩下唯一的工作,就是搞清楚你对某个东西哪里不满意,把它变成语言,然后帮 AI 一把。"→ 详细
16

「我不把自己当管理者」

  • Peter 抛了个偏哲学的问题:现在我们都成了给 AI 提反馈的管理者,但他偶尔怀念亲手干活的手感——自己改几行代码、一个字一个字打磨一条推文。→ 详细
  • Jason 说他不太有这感觉:"我不把自己当成管理者,也不觉得『活儿干得辛苦』这件事本身能换来多大回报——OpenAI 里人人都很拼。那什么让你脱颖而出?是你真在意东西做得好不好,在意它最后能带来什么结果。"→ 详细
  • 他给打鼓 app 定的"成功"标准全是外部结果,没有一条是关于代码的:我打鼓有没有真的进步;我有没有把它做成可分享的、别人能用上并从里面学到东西;能不能围绕它攒起一个小社区。"至于代码在我眼里好不好看,相比我想要的结果……都是次要的。"→ 详细

本期没有标准的闪电问答,收尾聊了三件事:

Q:Codex 团队为什么这么在意社区和用户?是有什么原则,还是招的人本来就这样? "很多是自上而下从 Tibo 那儿来的。大家都很拼,Tibo 拼,我也拼,但 Tibo 是真的在意。而且他跟社区互动的方式特别好。这种东西会一路渗透到整个团队,团队也就跟着变得特别在意。"Peter 补了一句职业生涯观察:"太容易变得一身『公司腔』了——只会发新闻稿那一套。我整个职业生涯见过太多这种,从来没成过。大家就是想跟一张真实的人脸对话。" Jason 认同并补充:Tibo 一方面代表公司面对用户,另一方面也在公司内部代表用户,"这两头他都做得非常好"。→ 详细

Q:Codex 接下来会有什么? "对我来说眼下最大的一件事是:Codex 一直是跑在桌面端的,我们正在把其中很多能力搬进云端的 ChatGPT Work 体验里。所以现在有些自动化可以跑在 ChatGPT Work 里,而不是 Codex 里。" 他给出的那句愿景在开场就被剪进了片头——"合上笔记本,活儿不该就此停下。真做到那一步之后,我对还能做成什么就更兴奋了。"→ 详细

Q:还想要什么功能? Peter 想要实时通话——"你们得让我能给我的 Codex 打个电话、口头给它下几条指令"。Jason:"语音是未来。我自己经常用语音输入,我觉得这块我们会有很大进展。"(呼应第十三条:那份 300 个 sub agent 的打鼓需求,最初就是他口述录进去的。)→ 详细

  • Jason Liu(OpenAI Codex 团队 DevEx 工程师):Twitter / X @jxnlco
  • 想看 Codex 产品层面更大的更新:关注 OpenAI Devs
  • 他提到自己有一个个人 skill repo,把日常在用的 skill(write me / email me / tweet me / self-improve / ultra goal 等)都放在里面;片中说 self-improve 那一版"我个人 repo 里那一版还没更新,现在估计已经变了很多了"。

→ 详细

🎯 于你何益 为你定制 · 非通用结论

这期是近期相关度最高的一期之一,而且几乎是逐条命中。原因很简单:Jason 用 Codex 搭出来的东西,和你手上已经在跑的四五个项目是同一形态的不同版本——他有 chief of staff,你有 Chief of Staff apps;他有 vault,你有这本第二大脑;他有 skill 库和 ultra goal,你有三驾马车碰撞协议的 PRD 工厂和 7-Agent 造 App 链路。区别在于:他的那套已经在一个真实工作日里跑通了,你的几套有的刚跑起来、有的还停在设计层。

(顺带一句查重:库里第 87 期是同一个频道、同一个产品,但那期是 Codex 产品经理 Rohan Varma 的视角——讲"为什么这么设计";这期是团队内部工程师的视角——讲"一整天到底怎么用"。两期互补,一个给你产品判断,一个给你操作细节。)


对你的 Chief of Staff apps(宪法驱动的个人决策外脑)

① 一条置顶线程 + heartbeat,就是一个能跑起来的幕僚长

  • 怎么做的:Jason 的 chief of staff 不是一个 app,是一条置顶的长期线程 + 一个每天 9/13/17 点触发的定时任务。它读完全部 Slack、Twitter 私信、未回邮件、Linear 看板,然后给一个"当下都在发生什么"的全景。冷启动只用一句话:"把这条线程变成一个 heartbeat,我要你去查我的邮件、我的 Slack、我的 Linear……告诉我该优先处理什么。"之后所有能力都是一次抱怨换一条长出来的:没带链接 → 加链接;事情多了 → 接 Linear;再往后 → 预起草回复;再往后 → 自动值机发登机牌。
  • 你可以怎么做:你的 CoS 目前的痛点是"软教练质量、跨域守门、季度回望"——本质是它不主动、要你去找它。抄这个形态:给 CoS 加一条每天固定时间的心跳,输入源换成你自己的(当天日历、Personal Thinking 里 20_想法库/ 的新条目、几个项目的 git 变更、上周未收口的决策),输出固定成一屏"今天该优先处理什么 + 哪条决定该拿宪法照一照"。第一版只要能生成那一屏就算成功,别设计完整体系。

② 幕僚长要不要动手,是逐条谈判出来的,不是一次性授权

  • 怎么做的:Jason 对"能不能替我发出去"分得极细:写代码那条线可以全自动(PR 测试全绿 → 自动私信 Andrew);但 chief of staff 那条"一次要读 40 封邮件、上百条 Slack 消息,这种场景我希望处理得更精准、更克制一点"。他的原话点破了关键——"要是第一天我就让它自己收尾,我肯定心里发虚;但现在,因为我知道这是我主动要求的,而且它做得没问题,我就更有底气"。
  • 你可以怎么做:你的 CoS 宪法里可以直接加一条"授权阶梯":默认只读只建议 → 某类动作连续 N 次你都原样采纳 → 才升级为自动执行。这比一开始就纠结"要不要让 AI 替我做决定"务实得多,也天然解决"跨域守门"——守门的不是规则,是这条动作还没爬到该有的授权层级。

对你的 Codex Holdwell ERP work 多-Agent PRD 工厂(三驾马车 + 碰撞协议)

① 「可验证的成功标准」就是你碰撞协议缺的那半句

  • 怎么做的:Jason 的 goal.md 不写"做个超酷的打鼓 app",写的是"我要你用 computer use 打开这个 app,上传这个 YouTube 视频,再把数据取出来",附测试歌和视频 ID。他的规矩是:"在你做到这件事之前,就得一直干下去。" goal 是验收动作,不是形容词。
  • 你可以怎么做:你的 PRD 工厂当前的悬念是碰撞协议的纪律是否真被执行、agent 产出可不可验证——症结正是每个环节的通过条件是人读一眼觉得可以,而不是一个 agent 能自己跑一遍判定真假。挑流程里最容易放水的那一道(多半是碰撞环节:补强/修正/第 3 案三件是真交齐了,还是交回三段客气话),把它的通过条件重写成一句可执行的验证:比如"每条碰撞意见必须指到对方初稿的具体章节和具体断言,指不出就算没交"。改完这一道就够了,比再加新角色更值钱。

② self-improve:让 skill 从自己的历史 session 里学,而不是靠你回忆

  • 怎么做的:他四个月前做了个 skill 叫 self-improve,三步——看哪些 skill 被调用得最多 → 把这些 skill 的 session 全读一遍 → 告诉我有没有反复出现的反馈。最漂亮的战果是 Slack skill 自己发现了"每次都要人工回一句办好了"这个反复动作,然后把它吃进去了。他还会让 Codex 看"过去 400 次 session 里哪些 skill 从来没被用过"来做减法。
  • 你可以怎么做:你三驾马车的 agent 定义(.Codex/agents/*.toml)现在靠你自己回忆哪条不好用。给工厂加一个"自省"环节:定期扫 _agent-runs/ 里最近的工单记录,回答两个问题——哪几条定义里的指令从来没被真正遵守过(该删)哪几处你每次都要人工补同一句话(该把那句话写进 agent 定义)。你的真人评审意见回炉天然产生大量"人工补话"记录,那就是最好的语料。

③ 打包成 plugin,才谈得上"整个 PM 团队都在用"

  • 怎么做的:skill 只是 plugin 的一块拼图;要分享给团队,就把 write / slack / email 三个 skill 打成一个叫 better writing 的 plugin,连 MCP server 和脚本一起。
  • 你可以怎么做:你的工厂要走出"只有你自己在用",一个隐藏门槛是别人装不上你的东西。把 PRD 工厂里最独立的一小块(比如"澄清一问一答"或"真人评审意见回炉")单独打成一个可直接安装的包,找一个同事装上跑一次真实需求——这才是可观测的落地证据,比再加新角色有用。

对你的 app_incubator(7-Agent 造 App 链路)

① goal / plan / worklog 三件套 + 「别自己写 goal」

  • 怎么做的goal.md 写可验证的成功标准,plan.md 写实现细节("用 React、两个标签页、这几种技术;不会用就去读文档"),worklog写给人看的——因为有上下文压缩,他不可能读每条消息,日志让他一眼看出"卡在这个权限问题上了"。而且他说了句反直觉的:"如果你想定出好的 goal,那就别自己写 goal"——把成功标准描述清楚,让 Codex 自己定目标,"效果通常好得多"。goal 单独存成文件的理由也很实在:任务还在跑的时候可以直接改文件,范围扩大了不用重启。
  • 你可以怎么做:你的 7-Agent 链路已经有"设计稿即工程强制契约",但缺的正是这三件套里的后两件。给每条造 App 任务固定产出三个文件,其中 worklog 只服务一件事——让你事后知道 agent 卡在哪、你的链路哪一环最脆。这正好回答你"把『该做什么』前移到 agent"那个痛点:前移的抓手不是更长的 prompt,是让 agent 自己写 goal、你只审 goal

② 长时任务不是"跑六小时",是"养大"

  • 怎么做的:他主动泼冷水——"那种『我让它朝一个目标跑了六小时』的演示当然很酷,但更关键的其实是,这些东西你可以随着时间一点点养大"。他的打鼓 app 是一周长出来的,每学一个新概念就加一条功能。
  • 你可以怎么做:你的造 App 链路一直在追求"一条链路端到端产出成品"。这条提醒你换个成功定义:不是一次跑通,而是第 N 次跑的时候比第 N-1 次少一次人工介入。把这个当成 app_incubator 的核心指标,比"有没有跑完"更能推动它进化。

对你的 Personal Thinking(这本第二大脑)

① 他的 vault,就是你这本库的"给 agent 用"版本

  • 怎么做的:Jason 只有一个项目叫 vault,全是 markdown,分目录放:项目 / 人 / 各种笔记 / 每日笔记 / 我的偏好。关键那句是——"其实我很少真的去打开 Obsidian,它主要是给我的 agent 当上下文用。" 而且它在 GitHub 上,换机器"直接把 repo 拉下来就能接着干"。溢出的内容一律落盘:觉得重要就让模型存进 notes 目录。
  • 你可以怎么做:你这本库已经有主题骨架、MOC、原子笔记,唯独缺他那两个目录——我的偏好。「人」目录(同事、合作方、你在意的博主,各自一页:他关心什么、你跟他的历史)会立刻让 CoS 和 PRD 工厂的输出变具体;「偏好」目录(你怎么写东西、你讨厌什么、你的决策口味)就是所有 skill 的公共前置上下文,现在这些散在各个 skill 里重复了 N 遍。

② 一条置顶长线程 = 一个工作区,而不是每次开新会话

  • 怎么做的:他后台没有几百条线程,"几乎所有东西都只是一条 pinned 线程",靠 compaction 撑住时间跨度;额外的活不给主线程做,而是起 sub agent。
  • 你可以怎么做:你的摄入 SOP 目前是"每来一份内容开一轮新对话",跨主题串联全靠你事后手动做。试着给几个长期主题(比如"AI 产品"、"个人杠杆")各留一条常驻线程,新内容进来先喂给对应线程,让它自己回答"这跟你库里已有的哪几条冲突/补充"。串联这件事本来就该由一条有记忆的线程来做,不是由你。

对你的 onehuman_company(一人公司 build-in-public)

① 「像我一样写」skill 家族 = 你的 solo-editor 该长的样子

  • 怎么做的:write me 的做法简单到扫兴——"用 Slack connector 把我过去一周发的 Slack 消息读一遍,然后做一个 skill,总结出我说话的方式"。然后加分层(对外 vs 对内、对高管 vs 对同事),铺开成 email me / tweet me / 语音转博客 / 视频转 video essay。而且"大部分都是 Codex 写的。我真正要做的,其实只是把这些参照样本指给它看"。skill 会长胖,所以他还会让 Codex 看过去 400 次 session 做减法、建议合并。
  • 你可以怎么做:你已经有 de-ai-flavor 这套去 AI 腔的规则库,但那是通用规则;缺的是你本人的语料样本。让 solo-editor 去读你已发布的小红书文案 + 你在这本库里写的判断段落,自己生成一份"momorain 语气 skill",并且按你两个号分层(一人公司偏冷静复盘 / 家居号偏生活口吻)。你只负责指样本,别自己写规则——这是他效率的真正来源。

② 这一整期本身就是一条现成的"验证体"选题

  • 怎么做的:他的每条能力都不是设计出来的,是"一次抱怨换一条"攒出来的;他还特意说"这些都是我一点点攒出来的小功能,绝不是开箱即得的"。
  • 你可以怎么做:这期能过你的弹药库闸门——因为删掉你的实测它就不成立。可做的选题:「OpenAI 工程师的 chief of staff 我照抄了一版,跑了两周」,写清你接了哪几个源、第一版输出有多难看、你加了哪三条偏好、现在替你省下什么。这是标准的"大佬说 X 我试了",而且天然有截图和产能账。另一条:「AI 员工管理成本账」支柱可以直接接他那句"日常一律 medium,只有造东西才开 ultra"——你手上有 9+1 个 agent,档位怎么配、一个月差多少钱,这是别人没写过的实账。

③ 「我不把自己当管理者」是一条可以直接引的观点

  • 怎么做的:"OpenAI 里人人都很拼。那什么让你脱颖而出?是你真在意东西做得好不好,在意它最后能带来什么结果。"他给自建 app 定的成功标准全是外部结果——我打鼓有没有进步、别人能不能用上、能不能攒起一个小社区。
  • 你可以怎么做:这是你 build-in-public 那条线最缺的一段话。你现在讲"一个人开公司"容易讲成流程展示,而他这句给了你更硬的框:衡量的不是我管了几个 agent,而是这些 agent 最后交付了什么结果。可以直接把它变成你的"观点短评"支柱的一篇。

对你的 xiaohongshu_momorain(家居号)

「想有品味,你得先去吃」对着你的选题矿池

  • 怎么做的:面对"写代码被解决了,人该练什么",他的答案是"想有品味,你得先去吃"——审美是消费出来的;另一半是"对现成的东西感到不满意、然后去学那套词汇和说法"。他反对的是笼统反馈:"如果你只是连着说 20 遍『做得更好点』,那很难判断这么干到底能不能出好结果。"
  • 你可以怎么做:你的档案只盘了 16/218 的选题矿池,卡点很可能不是产能而是没吃够。把"盘矿池"从"整理"改成"吃":每周固定看 20 篇同赛道爆款,只做一件事——写下你具体不喜欢它哪一点(不是"不够好",是"封面标题字太多"、"前三秒没给出结论")。这些"不喜欢的具体化"就是你封面标签和标题的原材料,也正是你"PM 思维这张牌"该打的地方。

对你的 StockHelp(价值投资看板)

关联偏弱,只写两条真沾边的,不硬掰。

  • 怎么做的:一是浏览器那条——Codex 内置浏览器能做 OAuth 登录、能带 cookie,还能同时开多个标签页;他买东西时不是要一份 markdown 结论,而是"把每个商品都单独开一个标签页",人回来读完直接决策。二是 heartbeat 那条:一个定时任务把散在各处的信息收成一屏全景。
  • 你可以怎么做:StockHelp 的 Phase 2/3 打算做信号和通知,形态上就是 heartbeat——收盘后跑一次,输出一屏"今天哪几只越过了你的估值线"。而"多标签页"那招更适合你的看板之后那一步:当某只越线,让它把年报、最近财报电话会、几篇多空观点各开一个标签页,你端着咖啡回来一次读完再决定。至于用 AI 直接交易——片中 Jason 和 Peter 都明确表示信不过,你的价值投资纪律更没理由破这个例。

对你本人的精力与聚焦

  • 怎么做的:他的整套系统只有一个 vault、一条主要的 chief of staff 线程、一个默认档位(medium),加上"想起来就顺手清一次"的减法习惯——包括让 AI 找出 400 次 session 里从没被用过的 skill 直接删掉。
  • 你可以怎么做:你的元约束是精力和聚焦,而你手上是七八个项目、十几个 skill、多个 agent 阵列。这期最该抄的不是他加了什么,是他减掉什么。给自己排一次同样的自查:过去一个月,你哪几个 skill / 哪个项目一次都没真正被调用过?先删掉或冻结,再谈新增。

更深三角度

该反着用

  • 他在 OpenAI,工具就是自家产品、有内部访问、一条战线专职深挖,所以他能承受"攒 400 次 session 再回头清理"的路径。你是一人扛正职加多个副业,反过来正确的做法是在 skill 还只有 3 个的时候就定好合并与淘汰规则,别等长成家族再治理——他清理的成本是一句话,你的成本是一个周末。
  • 他说"skill 大部分是 Codex 写的,我只指样本"。你的 PRD 工厂那几份 agent 定义是自己精雕的。这里成本结构完全相反:他的稀缺资源是判断,你的稀缺资源是时间。所以你更该反着来——凡是能靠"指几个样本 + 让 agent 自己写"的地方,就别再手写规则了。
  • 他默认 medium、只有造东西才开高档位。你更容易全程开满档位。反过来做:给自己定一条"默认低档,只有明确要造东西才升档"的规矩,省下的不只是钱,是等待时间。

和你现在做法冲突

  • 最直接的一条:你的 app_incubator 把"设计稿即工程强制契约"当地基,接了 Figma MCP;Jason 说贴参考图那套"在 5.5 那会儿更有必要",到 5.6"前端出来的效果已经足够好",他只说一句"用 Tailwind 和 shadcn/ui"。这两个判断正面撞车。张力在于:他做的是自用工具(没有品牌一致性要求),你做的是要复用设计系统的产品线——但如果他是对的,你那条契约就从"必须"降级成"品牌一致性时才必须",这个结论值得你亲自试一次再定,别替自己回答。
  • 第二条:你在第二大脑里精心做主题骨架、MOC、原子笔记、双链;Jason 说"我很少真的去打开 Obsidian,它主要是给我的 agent 当上下文用"。这逼你回答一个不太舒服的问题——你这本库里有多少结构是为人看的,多少是为 agent 用的? 如果实际读者主要是 agent,那"好看的组织"可能正在消耗你本就稀缺的精力。
  • 第三条:你的 Chief of Staff 定位是"把你写过的原则放回你眼前"——本质是只读;Jason 的幕僚长直接改 Linear 工单、值机、发短信——它会写。你一直没跨过这条线,可能是对的(决策不该外包),也可能只是没试过。至少可以先在"低风险的写"上试:让它替你归档、改状态、建草稿。

对你的镜子

  • 他那句"这些都是我一点点攒出来的小功能,绝不是开箱即得的",配上"跑六小时的演示很酷,但更关键的是这些东西可以随着时间一点点养大"——正好照见你多个项目的共同卡点:你在等一次把架构设计对,而他在等第一百次抱怨。你的 PRD 工厂、造 App 链路、CoS,缺的都不是更完整的设计,是一条已经在跑、每天被你骂一句然后改一点的最小版本
  • 第二面镜子更锋利:他说"我从不指望 AI 第一步就把我的问题解决掉,因为我也不指望别人能猜到我想要什么——除非我自己是真的想清楚了"。当你觉得某个 agent 输出不行的时候,先问一句:这次我是真想清楚了,还是只是又说了一遍"做得更好点"?

所以呢

可迁移思维模型

  • 【耐用】目标 = 可验证的完成条件,不是任务描述。 "在你做到这件事之前,就得一直干下去"——这句话能用在 agent、外包、下属和你自己身上,十年不过期。
  • 【耐用】用 agent 像招人第一天:讲背景、给反馈、允许它慢慢变。对应的推论是"永远别指望一次写好一个 skill"。
  • 【耐用】想有品味先得去吃 + 把不满意说成话。 AI 越强,这条越值钱——因为它是唯一不能外包的一步。
  • 【耐用】一条有记忆的长线程 = 一个工作区,优于每次开新会话。这是上下文管理的通用姿势,不绑定任何一家产品。
  • 【会过期】Sol medium 是好默认、5.6 前端已经不用贴参考图、plugin 目录刚开放提交、computer use 还不敢让它下单结账、Codex 正从桌面搬到云端——这些都是这个月的事实,半年后大概率不成立,引用时记得标时间。

判断更新

  • 把你对"我的 agent 队列缺什么"的诊断从"缺编排"改成"缺可验证的完成条件"。你已经有三驾马车、有碰撞协议的六步流程,唯独每一步的"做完了没有"还是靠人眼判断——这才是碰撞纪律难保真、评审意见回炉难闭环的同一个根因。

这周一个赌注

  • 挑 PRD 工厂或 app_incubator 里正在跑的一个真实任务,做两件事:① 把它的目标改写成一条能被 agent 自己执行一遍来判定真假goal.md(必须包含一个具体的验证动作和一份测试输入);② 不许你自己写这个 goal——把成功标准描述给 agent,让它自己产出 goal,你只审。跑完记录一条:这次人工介入了几次。下次的唯一目标是比这次少一次。
接着读