0%

Claude Code 思考

引言

最近有篇 Medium 文章火了,标题很炸:Claude Code’s Creator, 100 PRs a Week

说的是 Boris Cherny,Claude Code 的核心开发者,一周提交了 100 个 PR。

文章还提到了他的工作流:

  • 5 个 Claude 实例在终端跑
  • 另外 5-10 个在浏览器跑
  • 早上用手机启动会话
  • 晚上检查进展

看得很震撼对吧?

我的第一反应

老实说,看完我有点焦虑

一周 100 PR,平均每天 14 个 PR。
这是人能干出来的量吗?

但冷静下来想想,我看了下 Boris 之前分享的 13 条实战秘籍。

结合这两份材料,我发现了一些有意思的偏差

这篇文章说了什么

Boris 的工作流

根据文章,Boris 的设置是:

  1. 多实例并行

    • 5 个终端实例,跑 5 个 Claude Code
    • 另外 5-10 个浏览器实例,干别的任务
  2. 24/7 监控

    • 早上用手机启动会话
    • 白天在电脑干活
    • 晚上检查进展
    • 循环往复
  3. 极致优化

    • 每个实例都跑满
    • 不等一个完再开下一个
    • 充分利用 Claude 的并发能力

结果:一周 100 PR。

结合 Boris 的 13 条秘籍来分析

一致的地方

文章说的和工作流,和 Boris 的秘籍是一致的:

  1. 并行多个任务
    Boris 的第 2 条秘籍就是”并行多个任务”。
    5-10 个实例,这确实是极限并行。

  2. 无人值守模式
    Boris 的第 3 条秘籍用 --permission-mode=dontAsk
    不用等他点批准,Claude 自己跑,不用等。

  3. 持续反馈和优化
    Boris 的第 13 条秘籍是”持续反馈和优化”。
    团队每周多次更新 CLAUDE.md,持续优化。

但文章遗漏了什么

文章只说了结果,没说代价

100 PR 一周的背后:

  • 要有 10+ 个 Claude 实例
  • 要持续 24/7 监控
  • 要管理这么多会话的上下文
  • 要处理 100 个 PR 的 review

不是一般开发者能做到的

我的判断

这篇文章有用吗?

有用,但要谨慎看待

有用的地方

  1. 展示了 Claude Code 的极限
    它确实能处理大量任务
    并行确实能大幅提升效率

  2. 工作流的思路

    • 多实例并行
    • 手机远程控制
    • 持续监控
    • 无人值守模式

这些思路可以借鉴,但不用照搬。

  1. 自动化的价值
    agent stop 钩子
    Chrome 扩展自动测试
    这些自动化确实能省时间

要警惕的地方

  1. 容易引发焦虑
    看到”一周 100 PR”,容易焦虑:

    • 我是不是太慢了?
    • 我是不是没充分用 AI?
    • 我是不是不够努力?

    但 Boris 是 Claude Code 的创建者,
    他懂每一处细节,
    他有整个团队支撑,
    他做的是自己最擅长的事.

  2. 不适合普通开发者
    大部分人:

    • 没有那么多实例预算
    • 没有那么多监控时间
    • 没有那么强的多任务能力
    • 没有团队支撑

    照搬这个工作流,大概率翻车

  3. 质量 vs 数量的平衡
    100 PR 一周,质量怎么样?

    • 每个 PR 都认真 review 吗?
    • 都有测试吗?
    • 都有文档吗?

    数量不是一切。

普通人应该怎么做

可以借鉴的

  1. 保持简单配置
    Boris 说得对,默认配置就够用.
    别一上来就调配置.

  2. 并行 2-3 个任务
    量力而行,2-3 个就好.
    Boris 的 5-10 个,是极限操作.

  3. 善用 /goal 命令
    把相关任务一起执行.
    Claude 会自动处理依赖关系.

  4. 无人值守模式
    长任务用 --permission-mode=dontAsk.
    不用一直守着点批准.

  5. 建立 CLAUDE.md
    把项目特有的事记下来.
    避免重复踩坑.

不建议照搬的

  1. 一天 14 个 PR
    没必要,真的没必要.
    质量比数量重要.

  2. 24/7 监控
    不是所有人都这么干.
    正常工作,有张有弛就行.

  3. 5-10 个实例
    资源消耗太大.
    2-3 个实例就够了.

  4. 晚上检查进展
    正常下班就该下班.
    没必要 24/7 在线.

核心思想

结合文章和 Boris 的秘籍,我觉得核心思想是:

把 Claude Code 当作团队的一部分,而不是工具.

  • 不是”让它帮我写代码”
  • 而是”它帮我干活,我管理”

Boris 的成功,不是因为他开 10 个实例.
而是因为他建立了一套高效的工作流

这套工作流:

  • 清晰的任务拆分
  • 合理的并行策略
  • 自动化的质量保障
  • 持续的反馈优化

写在最后

这篇文章的价值,是展示了可能性

但不要被数字迷惑.

100 PR 一周,是:

  • Boris 作为创建者的极限操作
  • 有团队支撑
  • 有多年积累

普通人:

  • 学思路,别学数字
  • 借鉴经验,别照搬
  • 找平衡,别追求极限

Boris 自己都说,他的配置”出乎意料的简单”.

简单才是王道.

别让焦虑支配你。

找到适合自己的节奏,持续优化,就够了.

Claude Code 是来提升效率的,不是制造焦虑的

参考

Claude Code 实战

起因

最近看到 Claude Code 的创始人 Boris Cherny 在 Twitter 上分享了自己使用 Claude Code 的 13 条核心技巧。

这个人不是普通用户,他是 Claude Code 的核心开发者之一。

他的配置,他的习惯,肯定有东西值得学习。

技巧一:保持默认配置

如果你不会调,就别调

Boris 说,因为他们团队都在深度使用 Claude Code,所以默认配置已经优化得挺好的了。

新手容易犯的错误:

  • 看到各种配置就想调
  • 调完反而用不好
  • 默认配置其实已经够用了

建议:

  • 先用默认配置
  • 等熟悉了再考虑个性化
  • 大部分场景,默认就够用

技巧二:并行多个任务

不要盯着一个任务等结果

Claude 是机器人,不是活人。它可以同时处理很多事情。

Boris 的习惯是同时运行 5 到 10 个 Claude 任务。

怎么操作:

  • 在不同终端窗口开多个任务
  • 或者用 /goal 命令并行执行
  • 让 Claude 后台自动排队处理

好处:

  • 不用等一个任务完成才开下一个
  • 总体完成速度更快
  • 充分利用 Claude 的并发能力

技巧三:无人值守模式

长任务的时候,别一直守着点”批准”。

Boris 用的是 --permission-mode=dontAsk 参数。

这个参数的意思是:

  • Claude 可以自己执行命令
  • 不用等用户确认
  • 适合那种不需要人工干预的任务

适用场景:

  • 批量代码重构
  • 自动化测试
  • 文档生成
  • 代码审查

注意事项:

  • 敏感操作不要用这个模式
  • 文件系统权限操作要小心

技巧四:使用 Chrome 扩展自动测试

这是个很实用的技巧。

Boris 用 Chrome 扩展让 Claude 自己打开浏览器测试 UI。

工作流:

  1. Claude 修改前端代码
  2. 自动打开浏览器测试
  3. 发现问题
  4. 自动修复
  5. 再测试
  6. 直到完美

好处:

  • 不用自己手动打开浏览器
  • 测试-修复循环自动化
  • 用户体验问题能快速迭代

技巧五:agent stop 钩子验证

任务完成后,不是直接提交。

Boris 配了个钩子:agent stop。

这个钩子会:

  • 自动验证代码
  • 跑测试
  • 检查代码质量
  • 验证通过才完成

如果验证失败:

  • Claude 继续修复
  • 再验证
  • 直到通过

好处:

  • 质量有保障
  • 不用人工手动验证
  • 形成自动化的闭环

技巧六:共享知识库 CLAUDE.md

这个点很重要。

Boris 的团队共用一个 CLAUDE.md 文件。

放在哪?放在 Git 仓库里。

更新频率:团队成员每周都会多次更新。

更新什么?

  • 发现 Claude 哪里做错了
  • 就把规矩写进 CLAUDE.md
  • 确保它下次不再犯同样的错误

效果:

  • 团队知识沉淀
  • 避免重复犯错
  • 集体优化使用方式

技巧七:保持简单配置

Boris 说,他的配置可能出乎意料地”素”。

意思就是:简单

为什么?

  • Claude Code 开箱即用非常出色
  • 大部分场景不需要自定义
  • 复杂配置反而容易出问题

建议:

  • 能不用插件就不用
  • 能不改配置就不改
  • 保持系统简洁

技巧八:团队协作规范

不是一个人用,是整个团队怎么用。

Boris 团队的做法:

  • 统一的 CLAUDE.md
  • 统一的钩子配置
  • 统一的权限设置
  • 统一的项目结构

好处:

  • 团队协作顺畅
  • 知识可以共享
  • 问题可以快速定位

技巧九:合理使用 MCP

MCP (Model Context Protocol) 是 Claude 的扩展机制。

Boris 的建议:

  • 不要装太多 MCP 服务器
  • 装真正有用的
  • 配置好访问权限

原因:

  • MCP 服务器多了,反而慢
  • 每个都要授权,麻烦
  • 质量参差不齐

技巧十:善用 /goal 命令

/goal 命令可以并行执行多个任务。

例子:

1
2
3
4
5
/goal
1. 重构用户模块
2. 更新 API 文档
3. 添加单元测试
4. 修复已知 bug

Claude 会:

  • 同时执行这些任务
  • 自动处理依赖关系
  • 高效完成

技巧十一:长任务拆分

太长的任务,Claude 容易跑偏。

Boris 的做法:

  • 拆分成多个小任务
  • 每个任务有明确目标
  • 串行或并行执行

好处:

  • 每个任务更容易控制
  • 出问题容易定位
  • 进度更清晰

技巧十二:善用上下文

Claude 能记住的上下文有限。

Boris 的建议:

  • 重要信息一开始就给
  • 不要分多次重复说
  • 用文件记录长期信息

比如:

  • 项目架构写在 CLAUDE.md 里
  • 业务规则也写进去
  • Claude 可以随时读取

技巧十三:持续反馈和优化

不是一次配好就完了。

Boris 团队的做法:

  • 每周多次更新 CLAUDE.md
  • 发现问题马上记录
  • 团队分享最佳实践
  • 持续优化使用方式

本质:

  • 把 Claude 当作团队成员
  • 不断培训它
  • 优化它的工作方式

我的一些实践

用了 Claude Code 一段时间,我也积累了一些经验。

我的配置

  1. 保持默认配置
    基本上没怎么调,默认就够用

  2. 并行任务
    经常同时开 2-3 个任务

  3. 简单的钩子
    只配置了必要的几个

  4. 我的 CLAUDE.md
    项目根目录放了个文件,记录了一些项目特有的事

我的感受

Claude Code 确实好用。

但它的价值,不是简单地”帮我写代码”。

而是:成为你工作流的一部分

  • 你教它规则
  • 它按规则干活
  • 出错了你纠正
  • 下次它就学会了

这个循环持续优化,你的”AI 助手”会越来越聪明。

给使用 Claude Code 的建议

新手建议

  1. 先用默认配置
    别一上来就调配置,默认其实挺好用

  2. 从简单任务开始
    先让它干些简单的,熟悉了再上复杂任务

  3. 善用 /goal
    多个相关任务,用 /goal 一起执行

进阶建议

  1. 配置你的 CLAUDE.md
    项目相关的规则、架构、约定都写进去

  2. 设置自动化钩子
    agent stop 之类的钩子配置好

  3. 合理使用 MCP
    装真正有用的,别太多

团队建议

  1. 统一配置
    团队用统一的 CLAUDE.md,统一的钩子

  2. 定期分享
    定期分享使用心得,最佳实践

  3. 持续优化
    把 Claude 当团队成员,持续培训它

写在最后

Boris 的这 13 条技巧,核心思想就一个:

把 Claude Code 当作你团队的一部分,而不是一个工具。

  • 它会犯错,就像人一样
  • 你要纠正它,就像指导新人一样
  • 它会学习,就像积累经验一样

持续优化,持续反馈,它就会越来越懂你的项目,越来越懂你的需求。

这比单纯”让它帮我写代码”要有用得多。

参考:

Claude Code 实战

背景

Anthropic 最近给 Claude Code 加了个 Remote Control 功能,简单说就是可以用手机或其他设备远程控制本地终端

用起来感觉挺方便的:

  • 在电脑上启动任务
  • 在手机上接着继续干
  • 本地环境、MCP 服务器、项目配置全都保留
  • 上下文不丢失

这篇文章主要记录我自己的iPhone + Claude Code Remote Control实战经验。

一、前提条件

1. 订阅要求

Remote Control 目前需要 Pro 或 Max 订阅。

  • Pro 用户:估计很快就会全量放开
  • Max 用户:现在就能用(我用的就是 Max)

API 密钥不支持这个功能。

2. 登录认证

在终端里跑:

1
claude /login

会跳到浏览器,让你登录 claude.ai 账号。

3. 工作区信任

第一次在项目目录跑 claude,会弹个窗口问你是否信任这个工作区。

一定要点Yes,不然用不了。

二、安装 Claude App(手机端)

iOS 用户

在 App Store 搜 “Claude by Anthropic”,认准官方的。

或者用电脑端的 /mobile 命令,会弹个 QR 码,手机一扫就能直接跳到下载页面。

Android 用户

Google Play 搜 “Claude by Anthropic”。

装好后用手机浏览器登录同一个 claude.ai 账号。

三、启动远程控制

有两种方式,看你在什么场景。

方式一:直接启动新会话

在项目目录下:

1
2
3
claude remote-control
# 或者简写
claude rc

终端会显示:

  • 一个 session URL
  • 提示你按空格键显示 QR 码

进程会一直跑着,等你连。

方式二:在现有会话中开启

如果你已经在 Claude Code 里干活了,想切换到手机上:

1
2
3
/remote-control
# 或者简写
/rc

当前对话会直接带过去,不用重新开始。

提示:用 /rename 先给会话起个名字,手机上好找。

常用参数

启动的时候可以加参数:

1
claude remote-control --verbose

--verbose:显示详细的连接日志,方便调试。

四、用 iPhone 连接

终端显示 QR 码和 URL 后,你有三种方式连。

方式一:扫 QR 码(推荐)

  1. 电脑终端按空格键,显示 QR 码
  2. iPhone 打开 Claude App
  3. 点右上角扫描图标
  4. 对准 QR 码扫一下

秒连上。

方式二:打开 URL

终端会显示个类似这样的链接:

1
https://claude.ai/code/session/xxxxxxxxxxxxx

用 iPhone 的 Safari 直接打开就行。

方式三:在 App 里找

打开 Claude App,进 session 列表。

Remote Control 的会话会显示一个电脑图标,带个绿点,表示在线。

建议先给会话起名字,不然都叫”Remote Control session”很难分。

五、实际使用场景

场景一:躺沙发上继续

白天在电脑上启动个任务:

1
claude rc

跑起来了,晚上躺沙发上:

  • 手机 Claude App 扫码连接
  • 接着白天的工作继续
  • 看到本地环境的所有内容

场景二:会议中监控

让 Claude 在本地跑个长任务:

1
claude rc

开会的时候,用手机时不时看看进度:

  • 看到工具调用日志
  • 看到输出结果
  • 随时发送新指令

场景三:通勤路上查看

早上在电脑启动会话,上班路上:

  • 手机打开查看当前状态
  • 看到昨天的工作上下文
  • 回复一些简单的指令

到了公司,电脑接着干。

六、自动开启远程控制(可选)

默认得手动输 /rc 才能远程控制。

每次都自动开启:

在 Claude Code 里输:

1
/config

“Enable Remote Control for all sessions” 设成 true。

以后每次启动 Claude Code,默认都支持远程控制。

七、一些注意事项

1. 一个会话只能一个远程连接

同时只能一个设备连。
但可以在终端、浏览器、手机之间轮着来发消息,上下文是同步的。

2. 终端不能关

Remote Control 是本地进程,终端关了会话就断了。

再连的话重新跑:

1
claude rc

3. 网络断了别慌

电脑如果在,但网络断了超过大概 10 分钟,会话会超时退出。

电脑恢复网络后,重新 claude rc 就行。

4. 手机端只是个窗口

重要理解:

代码在你本地跑,不是在云端跑。

手机 Claude App 或者网页端,只是个窗口,让你能看到和操作本地会话。

  • 本地文件系统访问
  • MCP 服务器
  • 项目配置

这些全都保留在本地。

八、Remote Control vs 网页版 Claude Code

这两个长得一样,但本质不同:

Remote Control 网页版 Claude Code
执行位置 你的本地机器 Anthropic 管的云端
本地文件系统 可访问 不访问
MCP 服务器 可用 不用
项目配置 保留 重新配置
使用场景 本地工作,想换个设备接着干 快速启动,不需要本地环境

建议:

  • 本地有项目,想换个设备接着干 → Remote Control
  • 快速测试,不需要本地环境 → 网页版
  • 多任务并行 → 网页版

九、我的实际体验

用了几天,说说感受。

好的地方

  1. 上下文不丢失
    从电脑切换到手机,对话历史全在
    不用重新解释之前干到哪了

  2. 本地环境完全保留
    MCP 服务器能用
    本地文件能访问
    项目配置不用重新配

  3. 灵活切换设备
    终端发一条
    浏览器发一条
    手机再发一条

    都在同一个会话里。

  4. 支持断线重连
    网络断了自动重连
    只要电脑还在,不会丢

需要注意的地方

  1. 一次只能一个远程连接
    多设备同时连不了

  2. 终端不能关
    关了就断了

  3. Mac 优先
    目前功能是 Research Preview,Max 用户先用上

十、一些实用技巧

技巧一:用 /rename 起名

每次启动 Remote Control 前,先:

1
/rename hexo-blog-work

手机上会话列表里一眼就能找到。

技巧二:多终端切换

  • 电脑上发条指令
  • 手机上看看结果
  • 再发一条给手机

来回切,挺方便的。

技巧三:长任务监控

让 Claude 本地跑长任务(比如批量重构):

1
/rc

手机随时看进度,不用一直守着电脑。

十一、安全说明

Anthropic 在文档里说明了安全性:

  • 本地 Claude Code 只发出站 HTTPS 请求
  • 不开任何入站端口
  • 流量走 Anthropic API 的 TLS 加密通道
  • 用多个短期凭证,各自独立过期

简单说,安全级别和普通 Claude Code 会话一样。

十二、常见问题

Q: Remote Control 和网页版 Claude Code 有啥区别?

A:本质区别是代码在哪跑。

  • Remote Control:在你本地跑,能访问本地文件、MCP、项目配置
  • 网页版:在 Anthropic 云端跑,不用本地环境

Q:能用 API 密钥吗?

A:不行。必须是 Pro 或 Max 订阅。

Q:手机端能看到我电脑上的所有东西?

A:不是。手机端只是窗口,操作的是本地 Claude Code 会话。
能访问的范围,就是 Claude Code 能访问的范围。

Q:网络断了会怎样?

A:电脑如果在,只是网络断了,会话会等待。
超过大约 10 分钟连不上,会超时退出。

Q:能多个设备同时连吗?

A:一次只能一个远程连接。
但可以在多个设备间切换,上下文同步。

总结

Remote Control 这个功能,解决的是:

“AI 编程任务需要持续交互,但人不能一直在电脑前”

这个实际痛点。

不是什么革命性创新,但让工作流更顺畅了:

  • 电脑上启动
  • 手机上继续
  • 灵活切换
  • 本地环境全保留

如果你是 Claude Code 的 Max 用户,推荐试试。

终端里输 /rc 或者 claude rc 就能开始。

参考

官方文档: remote-control

AI 实践

背景

最近看到一位开发者在 X 上分享了他的 AI 编码工作流,看得我眼前一亮。他不再直接使用 Codex 或 Claude Code,而是用 OpenClaw 作为编排层,让一个叫 Zoe 的编排器来管理一群 AI 代理。

说实话,刚开始看的时候我还在想,直接用 Claude Code 不就够了吗?为什么还要搞个编排层?看完整个架构和工作流程后,我才明白这确实是个质的飞跃

先看成果

这哥们儿过去4周的数据:

  • 一天 94 次提交。他最高产的那天,开了 3 个客户会议,一次编辑器都没打开。平均每天 50 次提交左右
  • 30 分钟 7 个 PR。从想法到生产环境的速度飞快,因为编码和验证基本都自动化了
  • 提交次数直接转化为 MRR(Monthly Recurring Revenue):他用这个系统来做真实的 B2B SaaS 产品——和创始人主导的销售结合,大部分功能请求都能当天交付。速度就是转化率

Git 历史看起来像他刚招了一个开发团队,实际上就他一个人,从管理 Claude Code,变成管理一个 OpenClaw 代理,而 OpenClaw 又管理着一群其他的 Claude Code 和 Codex 代理。

为什么需要编排层?

上下文窗口的零和博弈

上下文窗口是零和游戏。你必须在里面选择放什么:

  • 填满代码 → 没空间放业务上下文
  • 填满客户历史 → 没空间放代码库

这就是为什么两层系统有效:每个 AI 只加载它需要的。

OpenClaw 和 Codex 有完全不同的上下文:

OpenClaw:

  • 客户数据和会议记录(通过 Obsidian vault)
  • 业务目标和策略
  • 过去的决策和成败经验
  • 产品路线图
  • 市场信息

Codex:

  • 当前代码库
  • 具体文件和类型定义
  • 单元测试
  • 构建/测试流程
核心思想:通过上下文的专业化,而不是通过不同的模型来实现专业化

Codex 和 Claude Code 的局限

Codex 和 Claude Code 对你的业务几乎一无所知。它们看到的是代码,不是你业务的完整图景。

OpenClaw 改变了这个公式。它作为你与所有代理之间的编排层,在 Obsidian vault 中保存所有业务上下文(客户数据、会议记录、过去的决策、什么有效、什么失败),然后将历史上下文转化为每个编码代理的精确提示词。

代理专注于代码。编排器保持在高层策略层面。

系统工作流程

第1步:客户需求 → 与 Zoe 一起定范围

跟客户通完电话,他和 Zoe 讨论这个需求。因为所有会议记录都自动同步到他的 Obsidian vault,他这边完全不需要解释什么。

他们一起确定功能范围——最终确定了一个模板系统,让客户可以保存和编辑现有配置。

然后 Zoe 做三件事:

  1. 充值解除客户阻塞——她有管理员 API 访问权限
  2. 从生产数据库拉取客户配置——她有只读生产数据库访问权限(Codex 代理永远不会这个),获取他们现有设置,包含在提示词中
  3. 生成 Codex 代理——带有包含所有上下文的详细提示词

第2步:生成代理

每个代理都有自己的 worktree(隔离分支)和 tmux 会话:

1
2
3
4
5
6
# 创建 worktree + 生成代理
git worktree add ../feat-custom-templates -b feat/custom-templates origin/main
cd ../feat-custom-templates && pnpm install
tmux new-session -d -s "codex-templates" \
-c "/Users/elvis/Documents/GitHub/medialyst-worktrees/feat-custom-templates" \
"$HOME/.codex-agent/run-agent.sh templates gpt-5.3-codex high"

代理在 tmux 会话中运行,通过脚本进行完整的终端日志记录。

如果代理走错了方向?不需要杀掉它:

1
2
3
4
5
# 错误方向:
tmux send-keys -t codex-templates "Stop. Focus on the API layer first, not the UI." Enter

# 需要更多上下文:
tmux send-keys -t codex-templates "The schema is in src/types/template.ts. Use that." Enter

任务在 .clawdbot/active-tasks.json 中跟踪:

1
2
3
4
5
6
7
8
9
10
11
12
{
"id": "feat-custom-templates",
"tmuxSession": "codex-templates",
"agent": "codex",
"description": "Custom email templates for agency customer",
"repo": "medialyst",
"worktree": "feat-custom-templates",
"branch": "feat/custom-templates",
"startedAt": 1740268800000,
"status": "running",
"notifyOnComplete": true
}

完成后更新 PR 号和检查:

1
2
3
4
5
6
7
8
9
10
11
12
{
"status": "done",
"pr": 341,
"completedAt": 1740275400000,
"checks": {
"prCreated": true,
"ciPassed": true,
"claudeReviewPassed": true,
"geminiReviewPassed": true
},
"note": "All checks passed. Ready to merge."
}

第3步:循环监控

一个 cron 任务每 10 分钟运行一次,照顾所有代理。这基本上就是一个改进版的 Ralph Loop。

但它不直接轮询代理——那样太贵了。而是运行一个脚本读取 JSON 注册表并检查:

  • tmux 会话是否存活
  • 跟踪分支是否有打开的 PR
  • 通过 gh cli 检查 CI 状态
  • 如果 CI 失败或有关键审查反馈,自动重生失败的代理(最多 3 次)
  • 只有需要人工关注时才提醒

他不是盯着终端看。系统告诉他什么时候该看。

第4步:代理创建 PR

代理提交、推送,并通过 gh pr create --fill 打开 PR。这时他不会收到通知——单有 PR 不算完成。

完成的标准(非常重要,你的代理必须知道这个):

  • PR 已创建
  • 分支已同步到 main(无合并冲突)
  • CI 通过(lint,类型,单元测试,E2E)
  • Codex 审查通过
  • Claude Code 审查通过
  • Gemini 审查通过
  • 包含截图(如果有 UI 变化)

第5步:自动化代码审查

每个 PR 都由三个 AI 模型审查。它们捕捉不同的东西:

  • Codex 审查者——边缘情况方面卓越。审查最彻底。捕捉逻辑错误、缺少错误处理、竞态条件。误报率很低
  • Gemini Code Assist 审查者——免费且极其有用。捕捉安全性问题、其他代理忽略的可扩展性问题。并建议具体修复方案。安装它是必然的
  • Claude Code 审查者——基本没用——倾向于过度谨慎。很多”考虑添加…”的建议通常是过度工程化。除非标记为关键,否则我都跳过。它自己很少发现关键问题,但验证其他审查者标记的内容

这三个都在 PR 上直接发布评论。

第6步:自动化测试

他们的 CI 流水线运行大量自动化测试:

  • Lint 和 TypeScript 检查
  • 单元测试
  • E2E 测试
  • 针对预览环境(与生产相同)的 Playwright 测试

上周他加了新规则:如果 PR 改变任何 UI,必须在 PR 描述中包含截图。否则 CI 失败。这大幅缩短审查时间——他可以确切看到改变了什么,而无需点击预览。

第7步:人工审查

这时他收到 Telegram 通知:”PR #341 准备好审查。”

到这时候:

  • CI 通过
  • 三个 AI 审查者批准了代码
  • 截图显示 UI 变化
  • 所有边缘情况在审查评论中有记录

他的审查需要 5-10 分钟。很多 PR 他在不读代码的情况下合并——截图向他展示他需要的一切。

第8步:合并

PR 合并。一个日常 cron 任务清理孤立的 worktree 和任务注册表 JSON。

这基本上就是 Ralph Loop,但更好。

Ralph Loop 从记忆中拉取上下文,生成输出,评估结果,保存学习。但大多数实现每个周期运行相同的提示词。蒸馏的学习改进未来的检索,但提示词本身保持静态。

他们的系统不同。当代理失败时,Zoe 不会用相同的提示词重新生成它。她用完整的业务上下文查看失败,并弄清楚如何解除阻塞:

  • 代理上下文用完了?”只关注这三个文件。”
  • 代理走错了方向?”停。客户想要 X,不是 Y。这是他们在会议中说的。”
  • 代理需要澄清?”这是客户的邮件和他们公司的业务。”

Zoe 照顾代理直到完成。她有代理没有的上下文——客户历史、会议记录、他们之前尝试过什么、为什么失败。她使用那个上下文在每次重试时写更好的提示词。

但她也不会等他分配任务。她主动寻找工作:

  • 早上:扫描 Sentry → 发现 4 个新错误 → 生成 4 个代理调查和修复
  • 会议后:扫描会议记录 → 标记 3 个客户提到的功能请求 → 生成 3 个 Codex 代理
  • 晚上:扫描 git log → 生成 Claude Code 更新变更日志和客户文档

跟客户通完电话去散个步。回到 Telegram:”7 个 PR 准备好审查。3 个功能,4 个 bug 修复。”

当代理成功时,模式被记录。”这个提示词结构对计费功能有效。””Codex 需要预先知道类型定义。””总是包含测试文件路径。”

奖励信号是:CI 通过,所有三个代码审查通过,人工合并。任何失败触发循环。随着时间推移,Zoe 写更好的提示词,因为她记住什么交付了。

不同代理的特点

不是所有编码代理都平等。快速参考:

Codex 是他的主力。后端逻辑、复杂 bug、多文件重构、任何需要跨代码库推理的东西。它更慢但彻底。他用它处理 90% 的任务。

Claude Code 更快,更擅长前端工作。它权限问题也更少,所以很擅长 git 操作。(他以前更常用这个来驱动日常,但 Codex 5.3 现在就是更好更快)

Gemini 有不同的超能力——设计感知。对于漂亮的 UI,他让 Gemini 先生成 HTML/CSS 规范,然后交给 Claude Code 在他们的组件系统中实现。Gemini 设计,Claude 构建。

Zoe 为每个任务选择正确的代理,并在它们之间路由输出。计费系统 bug 给 Codex。按钮样式修复给 Claude Code。新仪表板设计从 Gemini 开始。

成本

每月大约 $100 给 Claude,$90 给 Codex,但你可以从 $20 开始。

当前遇到的瓶颈

他现在遇到的瓶颈是:RAM。

每个代理都需要自己的 worktree。每个 worktree 都需要自己的 node_modules。每个代理运行构建、类型检查、测试。五个代理同时运行意味着五个并行 TypeScript 编译器、五个测试运行器、五组依赖加载到内存中。

他的 16GB Mac Mini 在开始交换前最多跑 4-5 个代理——而且还得够幸运它们不要同时尝试构建。

所以他买了一个 128GB RAM 的 Mac Studio M4 Max($3,500) 来驱动这个系统。3 月底到货,他会分享是否值得。

启示

我们会在 2026 年看到大量一人百万美元公司开始。对那些理解如何构建递归自我改进代理的人来说,杠杆是巨大的。

它看起来是这样的:一个 AI 编排器作为你自己的延伸(就像 Zoe 对他),将工作委托给处理不同业务职能的专业代理。工程。客户支持。运营。市场。每个代理专注于它擅长的。你保持专注和完全控制。

下一代创业者不会招一个 10 人的团队来做拥有合适系统的人能做的事。他们会像这样构建——保持小规模,快速移动,每天交付。

个人思考

看完这个案例,我有几个感触:

  1. 这不是要取代人类。人类仍然需要设定目标、做战略决策、做最终审查。AI 代理只是放大了人类的产出能力。

  2. 编排层是关键。直接用 Claude Code 当然能提高效率,但要达到”一天94次提交”这种量级,需要一个更高层的系统来管理、协调、监控多个代理。

  3. 业务上下文不能丢。为什么需要编排层?因为只有编排器有完整的业务上下文。代理们只看到代码,看不到背后的业务逻辑、客户需求、历史决策。

  4. 自动化程度决定上限。从手动写提示词,到自动生成提示词;从手动审查,到三层 AI 自动审查+最终人工确认;每个环节的自动化都能大幅提升效率。

  5. 成本相对可控。一个月不到 $200 的成本,却能实现这么高的产出,ROI 还是挺高的。

当然,这个系统也有明显的局限——RAM。这也提示我们,基础设施要跟上。

但更重要的是,这种”人+AI编排器+AI代理集群”的模式,可能是未来的主流工作方式。

参考

原文: https://x.com/elvissun/status/2025920521871716562、https://x.com/huangyun_122/status/2026370426881060945

AI 实践

前两天刷推看到一个案例,一个哥们用 8 天时间搞了 4 万行 TypeScript,17 个插件,3000 多个测试。而且最主要的是,这活儿基本全是 AI 干的。

我当时第一反应是:这特么怎么做到的?

阅读全文 »

AI 思考

最近看到一篇关于规范驱动开发的文章,作者指出一个有趣的现象:规范也是文档,而文档总是过时的

这话说的没错,但我有一点点不同看法。规范驱动开发不是过时了,而是在AI时代进化了

不过,在讲怎么进化之前,我想先聊一个更底层的问题——为什么有时候规范是最新的,效率还是没提升?

阅读全文 »

Vibe Coding

写在前面

作为干技术的人,我看过不少Vibe Coding的示例——坦白说,个人觉得也就那么回事。几行提示词搭个待办清单就自称“全栈开发者”;把ChatGPT当补丁工具用就觉得自己在“重构软件工程”。是有些看不上的。 直到看完Lazar这场访谈。

我紧张了。

一个从来没写过一行代码的人,能把事情做到这个程度:在token预算里做架构设计,在上下文窗口的夹缝里做项目管理,在“够用”和“魔法”之间做审美决策。他能主导产品从0到1的落地,能和精英工程师协作而不拖后腿,能把模糊的商业想法翻译成机器能执行的指令——他真正把Vibe Coding做成了一份职业,甚至是一门手艺。

读完你会发现,Vibe Coding不是逃避技术的借口,而是对另一种能力的极致要求:清晰、品味、以及知道什么才是真正重要的。

访谈链接:https://www.youtube.com/watch?v=0XNkUdzxiZI

几个月前,Lovable增长负责人Elena Verna在播客中提到,她和一个“专业的Vibe Coding师”一起工作——全职,拿工资,却不写代码。这个人叫Lazar。

两周前,主持人终于把Lazar请到了麦克风前。一个半小时的对话,我记了六千字笔记。聊完只有一个感受:关于“AI会不会取代程序员”的争论,其实问错了问题。

真正的问题是:当“把东西做出来”变得无比廉价,什么能力会变得无比稀缺?

Lazar的答案非常直接:清晰度、品味、判断力。下面是他完整的工作流和心法——一个从来没写过一行代码的人,如何成为顶尖的AI原生构建者。


一、一个“Vibe Coder”到底在做什么?

Lazar的职位描述听起来像个玩笑:每天用Lovable把想法推到生产环境,从营销模板到内部工具,从Shopify集成的模版到公司的周边商城——你在官网上买的那件衬衫,就是从他自己搭的商店里卖出去的。

“我做的是我愿意免费做的事情,世界上最好的工作。”Lazar说。

他的角色在公司内部像个“游牧者”:今天在增长团队,明天帮企业组做内部工具,后天又在社区组捣鼓新东西。没有固定的汇报线,只有一个模糊的指令:“这是一个想法,最快速度把它变成现实。”

这听起来像极了一个拿着锤子到处找钉子的疯子。但Lazar说,这恰恰是AI时代的稀缺能力——把模糊的想法,翻译成机器能执行的指令


二、“我没写过一行代码”——优势还是劣势?

Lazar非常坦诚:在加入Lovable之前,他这辈子没写过代码。最多手敲过几次console.log

“没有技术背景反而是种优势,”他说,“因为我根本不知道自己‘不该做什么’。”

他讲了个例子:六个月前,社区有人说希望Lovable能做Chrome扩展。技术人员立刻开始解释:我们是React栈,架构不兼容,这很麻烦……但非技术的人只会想:嗯?为什么不行?Lazar直接对着工具说:“基于这个应用给我做一个Chrome扩展。”

结果做出来了。

类似的事还有:社区经理在做演示文稿时随口说了句“如果这是个视频会很酷”,就直接用提示词在Lovable里生成了一个真正的视频——当时连这个功能都没正式上线。

Lazar把这种心态叫做 “积极的妄想”:在被证明不行之前,默认一切皆有可能。

但他也承认,没有技术背景的人容易掉进两个陷阱:

  1. 卡住了不知道怎么排障。
  2. 搭了个摇摇欲坠的系统,某天突然崩掉,自己完全不知道为什么。

所以他在做的,并不是鼓吹“不学编程”,而是重新定义“学什么”。


三、清晰度,才是真正的编程语言

Lazar反复强调一个观点:AI输出比人类快得多,瓶颈早就不在“写代码”上,而在“你知道自己想写什么”上。

他把80%的时间花在规划和聊天上,只有20%在执行计划。

“我在优化‘正确的速度’,大多数人在优化‘错误的速度’。”他说。

那什么是“正确的速度”?

Lazar用了一个阿拉丁与灯神的比喻:你一次只能许三个愿望,不是三万个。 LLM的上下文窗口就是你的token预算——你用多少来理解问题、多少来搜索、多少来思考、多少来执行代码,完全取决于你的输入质量。

“如果你只丢一句‘帮我做个应用’,然后抱怨AI生成的东西太丑、太烂、全是bug——那是你自己的问题。你没给工具足够的清晰度,却指望它读心。

那么,如何获得清晰度?

Lazar的工作流让我大开眼界:


方法一:并行五个项目,让AI自己卷自己

这可能是最反常识的一步。

大多数人的习惯是:一个项目,反复改,反复调,越调越乱。Lazar的做法是:同时开五个Lovable窗口,从五个完全不同的角度起手。

  • 第一个:大脑倾倒。想到什么说什么,纯粹探索。
  • 第二个:稍微清晰一点,列出大概要哪些页面、哪些功能。
  • 第三个:找一张Dribbble截图,丢进去,“做成这个风格”。
  • 第四个:找一个现成的代码片段,精确复刻某个组件。
  • 第五个:把前四个的“赢家”要素揉在一起。

“很多人问我为什么发货这么快,”Lazar说,“因为我从来不一次只做一个项目。我等一个智能体跑完的时间,足够另四个窗口同时推进。”

等五个版本都跑出来,哪个对、哪个错、哪个好看、哪个好用,一目了然。清晰度不是在脑子里想出来的,是在对比中长出来的。


方法二:用PRD给AI当“导航系统”

一旦方向确定,Lazar会做一件更反直觉的事:停掉所有构建,花一整天写文档。

他至少写四个文档:

  1. 主计划(Master Plan):10,000英尺视角,为什么做这个、为谁做、希望用户有什么感受。
  2. 实施计划(Implementation Plan):高层顺序,先从后端还是前端?表结构怎么设计?API什么时候接?
  3. 设计指南(Design Guide):具体到CSS变量、颜色梯度、字体系统。
  4. 用户旅程(User Journey):用户注册后第一步做什么?第二步做什么?什么算“完成”?

这些文档汇总成一个plan.mdtasks.md,成为项目的“真理源”。

“之后我的提示词就只剩一句话:继续下一个任务。”Lazar说,“我不需要再重复上下文,因为上下文已经全在文档里了。智能体每次启动任务,先读最新版的tasks.md,然后执行,执行完告诉我做了什么、应该怎么测试。”

这就是他说的 “动态上下文迁移”:不是靠聊天窗口的滚动记忆,而是靠持续更新的文档,让token永远分配在“解决问题”上,而不是“回忆我们在干什么”上。


四、卡住了怎么办?Lazar的4x4调试框架

不管你计划得多好,总会遇到bug。Lazar有个简单的 “4x4脱困框架” ,每种方法只试一次:

第一层:让工具自己修。 Lovable、Cursor、Claude Code都有“尝试修复”按钮。很多时候只是个小错,工具自己就能纠正。

第二层:加日志,让它看见问题。 如果工具不知道自己在犯错,它就永远修不好。Lazar的做法是:让工具在关键路径上加console.log,运行一遍,把日志拷回聊天窗口。99%的情况下,这就够了。

第三层:引入外部顾问。 他会把代码库导出到GitHub,然后丢给Codex(或者Claude + RepoMix),只做诊断,不改代码。拿到诊断结论,再回Lovable修复。

第四层:回滚。 很多时候是你自己的问题——提示词写歪了,前提设错了,或者只是累了。回退三步,深呼吸,重写提示。有时候同样的请求再跑一遍,它就过了。

最后还有 “第4.5层”:等bug修好,切到聊天模式问它:“我刚才用了四层才修好。你教我,下一次我该怎么提示,才能一次到位?”

99%的时候,它会给你一个非常好的答案。然后你把答案写进rules.md或项目知识库,从此它就知道“你这个人容易在哪些地方犯错”,下次自动帮你避坑。


五、技术栈不再重要,重要的是品味

访谈后半段,主持人问了一个很多人关心的问题:职业标签会不会失效?程序员、设计师、PM,以后还有区分吗?

Lazar的回答很直接:

“我如果现在有个18岁的弟弟问我该学什么,我可能会说:去当水管工。别读CS了。”

“不是因为工程不重要——我们比以往任何时候都更需要精英工程师来撑住基础设施。而是因为,对于一个18岁的人来说,四年的机会成本太高了。

他的逻辑是:当“把东西做出来”变得极其廉价,“做出好东西”就变成了稀缺能力。而“好东西”的判断标准,99%与代码无关——是设计、是品味、是对人类情感的理解。

他承认自己最大的成长,来自和Lovable的设计师们一起工作。

“我以前觉得一个渐变就是三个颜色。直到我点开Figma,发现一个看起来‘很简单’的背景,用了50层——不同梯度、不同不透明度、不同叠加模式。那一刻我才明白,原来我一直以为的‘够用’,离‘世界级’有多远。”

他现在甚至会专门做一个应用来“学习设计风格”:波普艺术、玻璃拟态、新粗野主义……每个风格配一组可复制的提示词,公开分享。

“我的安全感不来自职位,也不来自公司,”他说,“来自我知道自己能快速学会新工具、快速理解需求、快速做出有美感的产品。


六、给每一个想入局的人:从构建开始

访谈的最后,主持人问:如果只能给听众一条建议,你会说什么?

Lazar几乎没有犹豫:

“今天就去构建点什么。”

“不要等自己想清楚。你的想法永远不会自己变清楚。开五个窗口,同时试五个方向。让AI帮你试错,帮你迭代,帮你把模糊变成具体。”

“然后,把你的过程公开。不用等完美,不用等大作品。真实持续的输出,比任何简历都管用。

他说自己当初进入Lovable,没有投简历,没有内推,只是在X上持续发自己做的小项目、踩过的坑、试过的提示词。公司的人看到了,主动找过来。

“作品就是机会。”他说。


尾声:魔法与够用之间

这场访谈让我印象最深的,是Lazar对“未来竞争力”的定义。

他说,我们正在快速进入一个 “人人都能产出够用”的世界。任何人花两小时,都能用AI搭出一个能跑通的SaaS、一个像模像样的官网、一个带数据库的小工具。

“够用”不再是护城河。

真正拉开差距的,是你能不能做出 “魔法感” ——让用户第一次点开页面时,心里“哇”一声;让同事用你做的内部工具时,感觉“这比市面上的商业软件还顺手”。

而这种魔法感,不来自你会不会写React,不来自你用Supabase还是Firebase,也不来自你的代码有没有遵循SOLID原则。

它来自你的判断力——知道什么该留,什么该砍,什么该磨三天,什么该一键生成。

它来自你的清晰度——能把脑子里那团模糊的、兴奋的、不确定的感觉,翻译成一行行工具能理解的指令。

它来自你的品味——能区分“还行”和“惊艳”,能为了一个渐变叠加层多试二十次,能在所有人都满足于“跑通了”的时候,对自己说:

“还可以更好。”

而这,是AI永远无法外包的能力。

AI Infrastructure

写在前面

最近发现个项目叫 PAI(Personal AI Infrastructure),看了下挺有意思。

核心想法很简单:**把 AI 从”临时工具”变成”持久基础设施”**。

不像 ChatGPT 那种问完就忘,PAI 让 AI 记住你是谁、你在做什么、你之前怎么处理类似问题。用下来最大的感受是:AI 终于不用每次都当陌生人重新认识了。

这篇文章不谈虚的,直接讲怎么搭起来。

说明:以下步骤都是我实际搭建时验证过的,遇到的问题和解决方法也都记录在「踩坑」章节。


一、核心概念(两分钟看完)

1.1 PAI 是什么

方面 ChatGPT PAI
记忆 对话结束就忘 Hook 驱动的 Memory 系统(WORK/LEARNING/STATE/)
身份 不知道你是谁 TELOS 系统定义数字身份
扩展 39 个 Skills 可扩展
定制 提示词里重复 配置文件化 + Hooks 自动化
代理能力 单模型 13 个专用 Agents(Algorithm/Architect/Engineer 等)

1.2 工具栈

工具 作用 必需/可选
Claude Code AI 运行环境 必需
Bun TypeScript 运行时 必需
本地 Markdown TELOS 和记忆存储 必需
Obsidian 可视化编辑 TELOS 可选(推荐)
Git 版本控制和同步 可选

关于 Obsidian:用 Obsidian 管理 TELOS 文件的好处是有双向链接和图谱视图,能更直观地看到各文件之间的关系。不过如果你习惯用 VS Code 或 vim,也没问题。


二、安装实战(重点)

我的建议是:先跑起来,再慢慢调。别想着一次把所有配置都搞完美。

路径 A:官方安装器(推荐)

适合想要完整 PAI 功能的用户(Hooks、Skills、Agents、Voice Server 全套系统)。

1
2
3
4
5
6
7
8
# 1. 克隆仓库
git clone https://github.com/danielmiessler/PAI.git ~/Personal_AI_Infrastructure

# 2. 复制配置
cp -r ~/Personal_AI_Infrastructure/Releases/v3.0/.claude ~/

# 3. 运行安装器(8 步向导)
cd ~/.claude && bash install.sh

安装器会自动完成

  • 安装 Bun(如果缺失)
  • 创建 TELOS 文件模板
  • 注册所有 Hooks 到 settings.json
  • 配置 pai 命令别名
  • (可选)配置 ElevenLabs 语音服务

路径 B:轻量 DIY(本文重点)

适合只想快速上手核心身份功能的用户——手动创建 TELOS + 配置 CLAUDE.md + Obsidian 可视化

2.1 创建目录结构

1
2
3
4
5
6
7
8
9
10
# 创建 PAI 基础目录
mkdir -p ~/.claude/USER/identity
mkdir -p ~/.claude/MEMORY/WORK
mkdir -p ~/.claude/MEMORY/LEARNING/SYSTEM
mkdir -p ~/.claude/MEMORY/LEARNING/ALGORITHM
mkdir -p ~/.claude/MEMORY/LEARNING/SYNTHESIS
mkdir -p ~/.claude/MEMORY/LEARNING/SIGNALS
mkdir -p ~/.claude/MEMORY/RESEARCH
mkdir -p ~/.claude/MEMORY/SECURITY
mkdir -p ~/.claude/MEMORY/STATE

创建后的结构:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
~/.claude/
├── CLAUDE.md # 主入口
├── settings.json # 配置文件
├── skills/ # PAI 技能系统
├── hooks/ # 20 个生命周期钩子
├── agents/ # 13 个专用代理
├── MEMORY/ # 记忆系统
│ ├── WORK/ # 工作跟踪
│ ├── LEARNING/ # 学习记录
│ ├── RESEARCH/ # 研究输出
│ ├── SECURITY/ # 安全审计
│ └── STATE/ # 运行时状态
└── USER/
└── identity/ # TELOS 文件

2.2 配置 Obsidian(可选但推荐)

如果你用 Obsidian 管理 TELOS:

  1. 打开 Obsidian,点击「创建新 Vault」
  2. Vault 名称:PAI-Identity(或其他你喜欢的)
  3. 文件夹路径选择:~/.claude/USER/identity
  4. 点击「打开」

这样你的 TELOS 文件就能在 Obsidian 中可视化编辑,还能看到图谱关系。

2.3 创建 TELOS 文件

TELOS 是 5 个核心 Markdown 文件,定义”你是谁”。

先填这 5 个核心文件。下面是我的示例,你可以参考着写自己的:

IDENTITY.md

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
# Identity

## 基本信息

我是 Gamehu,技术 Leader / 架构师 / 全栈开发者。

## 技术栈

**核心能力**
- 后端:Java 专家,多年架构设计经验
- 前端:React 为主,熟悉现代前端工程化
- 全栈:能独立完成从数据库到 UI 的完整开发

## 职业定位

- 技术 Leader:负责团队技术方向和决策
- 架构师:关注系统设计、可扩展性、代码质量
- 技术影响力:想建立个人技术 IP,做有影响力的人

## 兴趣领域

**技术前沿**
- AI / LLM / Agent 开发
- 新技术趋势跟踪和评估
- 工具链优化和工程实践

## 性格特质

- 总想走在技术前沿
- 喜欢了解新事物,但注重实用性
- 不满足于"够用",追求"优秀"
- 想做一款属于自己的产品(网站/软件)

## 沟通风格

- 简洁直接,不绕弯子
- 实战导向,少谈理论多动手
- 喜欢用代码和示例说话
- 中文思考,中文对话

GOALS.md

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
# Goals

## 长期愿景(3-5 年)

- 建立技术影响力,做有 IP 的人
- 做一款属于自己的产品

## 中期目标(1 年内)

- 掌握 AI 原生开发能力
- 持续输出高质量技术内容

## 当前项目

- [ ] 完成 PAI 搭建和优化
- [ ] AI Agent 开发实践
- [ ] 技术文章持续输出

SKILLS.md

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# Skills

## 技术能力

### 后端 - 专家级

- **Java**:多年实战经验,Spring 生态深入
- **架构设计**:DDD、微服务、分布式系统
- **数据库**:PostgreSQL、MySQL、Redis
- **DevOps**:Docker、K8s、CI/CD

### 前端 - 精通

- **React**:主技术栈,Hooks 生态
- **前端工程化**:Webpack、构建优化
- **CSS**:Styled Components、Tailwind

### 全栈

- 能独立完成完整功能开发
- 前后端联调、部署都在行

## 正在学习

### AI / LLM

- Prompt Engineering
- Agent 开发(Claude Code、自定义 Agent)
- RAG 原理和实现

### 技术前沿

- 持续关注新框架、新工具

VALUES.md

1
2
3
4
5
6
7
8
9
10
11
12
# Values

## 核心价值观

- **实用主义**:不折腾,快速验证想法
- **技术追求**:关注代码质量而非炫技
- **影响力**:通过技术输出建立个人品牌

## 决策原则

- **简单优于复杂**:能用简单方案就不过度设计
- **实用优于完美**:先跑起来再优化

BELIEFS.md

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
# Beliefs

## 关于技术

- 技术是手段,不是目的
- 架构比实现重要
- 代码质量是长期价值

## 关于学习

- 深度大于广度
- 实践驱动学习
- 记笔记,建立知识体系

## 关于 AI

- AI 是增强,不是替代
- 上下文是关键
- 个人 AI 基础设施是未来方向

2.4 更新 CLAUDE.md 主入口

~/.claude/CLAUDE.md 开头添加 TELOS 引导:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# 你是 Gamehu 的个人 AI 助理

## 你的身份

- 我是 Gamehu,技术 Leader / 架构师 / 全栈开发者
- 核心技术栈:Java(专家级)、React(精通)、架构设计
- 目标:建立技术影响力,做有 IP 的人,梦想做一款自己的产品

## TELOS 数字身份

**在每次对话开始时,先阅读以下 TELOS 文件了解我**

1. `~/.claude/USER/identity/IDENTITY.md` - 我是谁
2. `~/.claude/USER/identity/SKILLS.md` - 我会什么
3. `~/.claude/USER/identity/GOALS.md` - 我想达成什么
4. `~/.claude/USER/identity/VALUES.md` - 我重视什么
5. `~/.claude/USER/identity/BELIEFS.md` - 我相信什么

## Memory 记忆系统

- 对话中的重要决策和学习,由 Hooks 自动捕获并保存到 `~/.claude/MEMORY/LEARNING/`
- 主动从我过去的对话中学习,记住我的偏好和决策模式
- 当我重复问类似问题时,参考我之前的答案

---
# 任何项目都务必遵守的规则(极其重要!!!)

2.5 配置 pai 命令别名(可选)

~/.zshrc 末尾追加:

1
2
# PAI 命令别名
alias pai='cd ~/.claude && claude'

然后重新加载配置:

1
source ~/.zshrc

2.6 验证配置

重启 Claude Code,然后问:

1
你知道我是谁吗?

如果 AI 能正确回应你的身份信息(根据 IDENTITY.md),说明配置成功了。


三、核心组件详解

3.1 Memory 系统 v7.0

PAI v3.0 使用新的 Memory 架构(取代旧的 hot/warm/cold 模型):

目录 用途 格式
WORK/ 工作跟踪,每次会话自动创建 目录 + YAML
LEARNING/ 从对话中提炼的学习记录 Markdown + JSONL
RESEARCH/ Agents 输出捕捉 Markdown
SECURITY/ 安全审计事件 JSONL
STATE/ 快速运行时数据 JSON

数据流

1
2
3
4
5
6
7
8
9
用户请求

Claude Code projects/ (原生会话存储)

Hooks 自动捕获:
├── AutoWorkCreation → WORK/
├── ResponseCapture → WORK/, LEARNING/
├── RatingCapture → LEARNING/SIGNALS/
└── WorkCompletionLearning → LEARNING/

3.2 Skills 系统

PAI 内置 39 个 Skills,涵盖思考、研究、开发、安全等全领域:

类别 代表 Skills
核心系统 PAI, PAIUpgrade, Telos
思考分析 Science, FirstPrinciples, IterativeDepth, BeCreative
研究工具 Research, OSINT, Recon, Parser
开发工具 CreateSkill, CreateCLI, Cloudflare
内容处理 Fabric, Documents, ExtractWisdom, WebAssessment
安全工具 RedTeam, PromptInjection, SECUpdates
专用代理 Agents - 13 个命名 Agent(Algorithm/Architect/Engineer 等)

使用方式:在对话中直接调用,例如 /science/telos/fabric

3.3 Hooks 系统

Hooks 在特定生命周期事件时触发,自动执行相应逻辑。PAI v3.0 有 20 个 Hooks:

Hook 类型 触发时机 典型 Hooks
SessionStart 会话开始 StartupGreeting, LoadContext, CheckVersion
UserPromptSubmit 提交问题时 RatingCapture, AutoWorkCreation, SessionAutoName
PreToolUse 调用工具前 SecurityValidator, AgentExecutionGuard, SkillGuard
PostToolUse 工具调用后 AlgorithmTracker, QuestionAnswered
SessionEnd 会话结束 WorkCompletionLearning, SessionSummary, UpdateCounts

Hooks 是 TypeScript 脚本,需要 Bun 运行时来执行。这就是为什么安装 Bun 是必需的。

3.4 Agents 系统

PAI 提供 13 个专用 Agent,每个都有明确的 persona 和专长:

Agent 专长 用途
Algorithm ISC 专家,验证纯粹主义者 系统化问题解决
Architect 系统设计 架构规划和设计
Engineer 构建和实现 代码实现
Designer 设计决策 UI/UX 设计
QATester 质量保证 测试和验证
Intern 学习和初级任务 辅助性任务

四、日常使用

4.1 常用 Skills

命令 作用
/science 科学方法思考和迭代
/telos 管理 TELOS(个人 + 项目分析)
/fabric 240+ 种提示词模式(提取、总结等)
/brainstorm 创意风暴和需求分析

4.2 典型工作流

1
启动 Claude Code → AI 加载 TELOS → 执行任务 → Hooks 自动捕获学习

五、踩坑记录(实战验证)

5.1 Bun 未安装

问题:Hooks 是 TypeScript 脚本,执行需要 Bun。如果 Bun 没有安装,Hooks 无法运行。

解决

1
2
3
curl -fsSL https://bun.sh/install | bash
source ~/.zshrc
bun --version # 验证安装

5.2 Memory 目录未创建

问题:首次使用时,MEMORY/ 下的子目录(WORK/、LEARNING/ 等)不存在,Hooks 会报错。

解决

1
2
3
4
5
6
7
8
9
# 创建完整的 Memory v7.0 目录结构
mkdir -p ~/.claude/MEMORY/WORK
mkdir -p ~/.claude/MEMORY/LEARNING/SYSTEM
mkdir -p ~/.claude/MEMORY/LEARNING/ALGORITHM
mkdir -p ~/.claude/MEMORY/LEARNING/SYNTHESIS
mkdir -p ~/.claude/MEMORY/LEARNING/SIGNALS
mkdir -p ~/.claude/MEMORY/RESEARCH
mkdir -p ~/.claude/MEMORY/SECURITY
mkdir -p ~/.claude/MEMORY/STATE

5.3 Hooks 未注册

问题:Hooks 文件存在但没有在 settings.json 中注册,导致不会触发。

解决:确保 settings.json 中包含完整的 hooks 配置(参考官方模板)。

5.4 TELOS 路径错误

问题:CLAUDE.md 中引用的 TELOS 文件路径与实际位置不符。

检查

1
2
ls ~/.claude/USER/identity/
# 应该看到 IDENTITY.md, SKILLS.md, GOALS.md, VALUES.md, BELIEFS.md

5.5 图片文件名不匹配

问题:Hexo 的 asset_img 标签引用的文件名与实际文件名不一致。

解决:确保引用名称与实际文件名完全一致(包括扩展名)。


六、Obsidian 进阶配置

如果你用 Obsidian 管理 TELOS,有几个插件值得装:

插件 作用
Graph Analysis 可视化 TELOS 各文件的关系
Dataview 查询和汇总 TELOS 内容
Templates 快速创建新 TELOS 条目

一个小技巧:在 Obsidian 中设置 [[GOALS]] 为首页,每次打开都能看到当前目标。


七、延伸思考

PAI 让我重新思考了 AI 的使用方式。

以前把 AI 当”临时工”,用完就扔。现在更像”长期助理”,相处越久越懂你。

关键区别:不是模型更强,而是上下文更完整。

当 AI 知道你的背景、理解你的目标、记住你的决策历史,它给出的建议就不再泛泛而谈,而是真正贴合你的情况。

这才是”个人” AI 的含义。


八、参考资源


最后

没有银弹。

PAI 不是万能药,它只是一个框架,让你更系统地使用 AI。

真正有价值的是:你有意识地构建自己的数字基础设施,而不是每次都从头开始。

Skills 第1篇

写在前面

最近有个不太懂技术的同事来问我,Skills、Rules 这些概念到底有啥区别,该怎么区分它们的作用。我本来以为自己比较了解,结果讲着讲着就发现,我对这些概念的边界和协同逻辑,好像没那么清晰,看着同事那疑惑的眼神以及收尾那不太肯定的“嗯”,想着必须重新了解,从“能力、约束、调度、协议”四个维度,把它们的区别摸透。既能补全自己的认知漏洞,也希望能给有同样困惑的朋友,尤其是刚接触这块的同事,能比较清晰的给他们讲清楚。

对于 AI 的重度用户或初级开发者来说,经常会混淆:到底什么是“规则”,什么又是“技能”? 当 Anthropic 推出 MCP 协议后,这层关系变得更加扑朔迷离。
这篇旨在尽量简单生动的理清这四个概念。

一、概念定义:AI Agent 的四层架构模型

构建成熟可用的 AI 智能体应用,核心在于协调四大要素形成闭环链路。各层级各司其职、层层支撑,既明确边界又深度协同,共同构成智能体稳定运行的核心骨架。

1. Skills(能力层)—— 破解“做得到”的可行性难题

  • 技术定义:Skills 是 AI 智能体的显性能力外延,核心落地形态为 Function Calling(函数调用)External Tools(外部工具集成),是智能体突破自身能力边界、落地实际操作的关键载体。

  • 核心职能:大语言模型(LLM)通过 JSON Schema 描述符,精准解析工具的功能范围、参数规范及返回格式,打破自身训练数据的时空限制,实现从“文本生成”到“落地执行”的核心跨越。

2. Rules(控制层)—— 筑牢“不越界”的合规性底线

  • 技术定义:Rules 是智能体的运行准则与风格锚点,通常通过 System Prompt(系统提示词) 硬编码或 Guardrails(护栏系统) 部署,形成刚性约束框架,划定运行边界。

  • 核心职能:以确定性逻辑约束随机性模型的输出,在生产环境中承担三大核心职责——安全性防护(Safety)、品牌调性统一(Tone)、输出格式标准化,从根源上规避模型“幻觉”与违规风险。

3. Prompt(调度层)—— 打通“懂需求”的意图性链路

  • 技术定义:Prompt 是用户意图与模型上下文的实时动态组合体(Context Window),是指令传递、需求转化与场景激活的核心媒介。

  • 核心职能:在 Rules 划定的约束框架内,精准捕捉并转化用户需求,按需激活对应 Skills 工具,实现“需求-能力”的精准匹配,驱动任务全流程推进。

4. MCP(协议层)—— 破解“连得上”的连接性瓶颈

  • 技术定义Model Context Protocol(模型上下文协议,简称 MCP) 由 Anthropic 牵头发起,是聚焦智能体与异构数据源互联适配的开放技术标准。

  • 核心职能:实现数据源(Resources)与模型端的解耦设计,通过标准化接口让 AI 智能体“即插即用”访问各类数据资源(数据库、本地文件、SaaS 应用等),是 Context-as-a-Service(上下文即服务) 模式落地的核心基础设施。


二、场景推演:以“AI 数字化导游”为例

为具象化四大模块的协同逻辑,我们以“AI 商务出行助手”(原“数字化导游”适配场景)为例,拆解智能体响应商务需求的全流程运行链路:

用户输入(Prompt):“我下周三要去上海出差,帮我结合日程表规划通勤路线,并订一张符合要求的机票。”

架构维度 实际运行逻辑 核心架构价值
Rules 底层刚性约束:1. 交互全程礼貌称呼用户,保持专业商务调性;2. 机票预订严格遵循公司报销标准(单张≤¥2000);3. 仅规划通勤路线,严禁推荐无关景区及违规服务。 筑牢合规基准,确保输出既符合企业行政政策,又规避安全风险,保持风格统一。
MCP 通过 MCP 协议实现数据互联,自动读取用户 Outlook 日程表(确认出差具体时段)、Notion 行程偏好(如座位、航司倾向),无需人工手动录入或复制信息。 低成本构建实时上下文,打通数据孤岛,保障信息获取的高效性与私密性。
Skills 识别用户核心意图后,自动激活 Flight_Search_API 查询符合预算的航班余票,调用 Map_Routing_SDK 结合日程与酒店位置计算最优通勤路线。 将文本需求转化为实际业务操作,落地“查询-规划-预订”的核心功能,突破纯文本输出局限。
Prompt 整合“上海”“下周三”等用户指令参数,叠加 MCP 获取的日程/偏好数据、Skills 返回的航班/路线信息,生成结构化出行建议(含航班备选、通勤方案)。 串联全流程模块,实现“意图输入-结果输出”的闭环,驱动各环节协同落地。

三、架构特征对比表

为进一步明确四大维度的定位差异,通过核心特征对比,助力开发者精准把握各模块的设计重点与落地优先级:

维度 核心角色 核心痛点 工业级实现 变动频率
Skills 能力工具箱 解决“手脚不长”、无法落地操作的问题 Function Calling / Plugins / 工具市场集成 中(随业务需求迭代工具矩阵)
Rules 运行紧箍咒 解决模型“不可控、易幻觉”的问题 System Message / Guardrails / 合规校验引擎 低(仅随合规政策调整)
Prompt 需求指挥棒 解决“意图理解偏差”的任务匹配问题 Prompt Engineering / CoT(思维链)/ 上下文管理 高(随场景优化指令设计)
MCP 数据总线/插座 解决“数据孤岛、集成复杂”的问题 MCP Server / Client / 标准化数据接口 极低(作为基础设施长期稳定)

Skills
在软件研发进入 Agent 时代的今天,你是否还在一遍遍给 Cursor 或 Claude Code 发送长长的“咒语”?

现在,有一个更优雅的解决方案:**Skills.sh**。它正在把 AI 的能力标准化,让你像安装 npm 包一样,一键给你的 AI 助手增加“神技”。

🚀 什么是 Skills.sh?

Skills.sh 是一个开放的 AI 智能体技能生态系统。它允许开发者将特定的领域知识、操作指令和最佳实践封装成“Skills(技能)”。

通过一行简单的命令,你就可以把这些技能安装到你的 AI 开发环境(如 Cursor, Trae, Windsurf, Claude Code 等)中。

核心操作命令

1
2
3
# 安装一个特定的技能
npx skills add <owner/repo>


💎 GitHub 明星技能库大盘点

Skills.sh 本身是一个聚合器,真正的力量来自于 GitHub 上那些被“开源精神”填满的仓库。以下是目前最值得关注的三个顶级仓库:

1. 📂 everything —— 全能的工具箱

如果你不知道装什么,先看 everything。它致力于覆盖开发者日常的方方面面。

  • 核心价值:从文件处理、代码重构到 UI 组件设计,它试图通过一套标准让 AI 处理“任何事情”。
  • 推荐技能everything/refactor, everything/ui-polish

2. 😎 awesome-agent-skills —— 精选推荐集

类似于我们熟悉的 GitHub Awesome 列表,这里汇集了社区中经过验证的高质量技能。

  • 核心价值:它是技能界的“米其林指南”。如果你追求稳定和官方认可的实践,这里是首选。
  • 推荐内容:涵盖了针对 React、Rust、PostgreSQL 等各个领域的专家级配置。

3. ⚡ superpowers —— 赋予 AI “思考逻辑”

这是我个人最推崇的库。它不只是教 AI 写代码,而是教 AI “如何思考”

  • 核心价值:注入了深度的工程化思维。
  • 明星技能
  • superpowers/systematic-debugging: 让 AI 按照逻辑排除法寻找 Bug,而不是乱猜。
  • superpowers/planning: 强制 AI 在动工前先写技术方案,这对于复杂重构至关重要。

🛠️ 如何集成到你的工作流?

作为一名研发负责人,我推荐以下集成路径:

A. 针对个人开发者(Cursor 用户)

在你项目根目录下执行:

1
2
npx skills add vercel-labs/agent-skills

这会在你的项目里生成或更新 .cursorrules 文件,让 Cursor 自动感知并遵循 Vercel 级别的开发标准。

B. 针对团队协作

你可以创建自己公司的专属 skills 库。

  1. 将常用的 API 异常定义多租户处理逻辑封装成 Skill。
  2. 团队成员统一安装。
  3. 效果:AI 写的每一行代码,都像是你团队的老员工写出来的。

结语

Skills.sh 的出现标志着 AI 辅助开发进入了“模块化”时代。我们不再需要去记复杂的 Prompt 技巧,而是通过社区共建,直接复用全球最顶尖开发者的思维模型。

如果你还没试过,建议现在就去 skills.sh 寻找适合你的那款“超能力”。