普通视图

发现新文章,点击刷新页面。
昨天以前首页

都在用 OpenClaw 跑 Skill,但你写的“技能”为什么总让 AI 频繁罢工?

作者 bigwhite
2026年3月15日 07:57

本文永久链接 – https://tonybai.com/2026/03/15/why-your-openclaw-skills-make-ai-go-on-strike

大家好,我是Tony Bai。

时间过得真快,自从去年 12 月下旬 Anthropic 正式抛出 agentskills.io 这个重磅规范标准以来,整个 AI 开发者生态已经发生了翻天覆地的变化。

短短几个月,Skill(智能体技能)已经彻底成为了各种热门 Agent(比如大红大紫的 OpenClaw)的绝对标配

现在去看看大家日常的工作流:告别了过去那些又长又臭、各自为战的“私有方言” Prompt。大家都在疯狂地从开源社区拉取别人写好的优质 Skill,就像当年在 Docker Hub 上拉取镜像一样自然、丝滑。

我们似乎已经全面进入了严谨的“技能工程(Skill Engineering)”时代。

表面上看,这是一片繁荣的景象:到处都是“如何用 XX Skill 自动写完一个全栈项目”的爆款文章。只要把带有 YAML 头和 SKILL.md 的规范文件一挂,AI 就能自己干活了。多简单啊!

但今天,我必须给大家浇一盆冷水。

在过去两个多月的 实战 AI 原生开发、趟过了无数暗坑之后,我发现了一个极其普遍、却又被大多数人刻意忽略的残酷现象:绝大多数天天喊着“All in Agent”、天天白嫖别人开源 Skill 的开发者,其实根本没有看懂 agentskills.io 这个Skill 规范(Spec)的底层逻辑。

当你试着自己去魔改或者从零编写一个专属 Skill 时,灾难往往就开始了:你的 AI 要么在关键时刻“想不起来”调用你的技能,要么在执行到一半时陷入死循环,要么疯狂产生幻觉、乱改你的核心业务代码。

你以为你写的是严谨的“技能规则”,但在大模型的“心智”里,那可能只是一个让它频繁罢工的逻辑迷宫。

你真的会写高阶的 Skill 吗?

很多人以为,只要按照规范建几个文件夹,把原来的 Prompt 翻译成英文填进去,就算是掌握了 Skill Engineering。

大错特错!看懂 YAML 规范,就好比你认识了 Go 语言的 25 个关键字,但这并不意味着你能写出千万级并发的高可用架构。真正拉开开发者阶层差距的,是如何避开大模型的心智陷阱,用工程化的思维去“编程 AI”。

你可以问问自己以下这三个极其致命的实战问题:

1. 你的 Description 是在写“说明书”,还是在“埋地雷”?

很多开发者把 Skill 的描述(Description)写得极为详尽客观。但你知不知道,如果你的 Description 写得不够“带攻击性”、不够抢占模型的注意力权重,在复杂的长上下文中,AI 的触发率会大幅低于你的预期?你的技能写得再牛,AI 压根不用!

2. 你还在用大写的 MUST/NEVER 去“恐吓”大模型吗?

传统的编程思维告诉我们,指令要绝对强硬。但在面对具备强大“心智理论”的现代大模型时,死板的命令往往会引发模型的“叛逆”或逻辑短路。有一种远比强制命令更高级的沟通架构(即“讲道理(The Why)”范式),能让 AI 的服从性实现质的飞跃。你掌握了吗?

3. 你的大模型在做“确定性的计算”吗?

如果你在 Skill 里让 LLM 自己去处理复杂的逻辑流转换,你的工作流迟早会崩溃。顶级的高阶架构,必须是“LLM 负责控制流,外部脚本/程序负责数据流”。

这三个问题,只要踩中一个,你的 Agent 自动化产线就是一个随时会“罢工”的草台班子。

如何批量“制造” AI 技能?

如果你对上面这几个问题感到迷茫,如果你发现自己写的 Skill 总是跑不出开源大神那样的流畅度,不要慌,你只是缺少了一套系统性的高阶内功。

为了帮你彻底补齐这块最短的木板,让你真正吃透 Skill Engineering 的底层逻辑,我在我的极客时间专栏 《AI 原生开发工作流实战》 中,加更了一篇万字级别的加餐:

加餐 | 告别“方言”:全面解析 Agent Skills 行业标准与高阶编写心法

在这篇长文中,我做了以下几件事:

  • 扒开 Spec 的底裤:为你深度剖析规范中那些极其重要、却鲜为人知的核心机制(比如决定上下文利用效率的渐进式披露机制(Progressive Disclosure))。
  • 四大实战心法:把上面提到的那些导致 AI 罢工的致命“暗坑”为你一一填平,教你如何像顶级架构师一样,“精准狙击”大模型的注意力。

在这篇加餐的最后,我还介绍了“评测驱动(Eval-Driven)”的Skill 编写工作流,即用 AI,来规模化地创造和评测AI skill的方法。

如果你不想在这个“万物皆 Agent”的时代,永远只能做一个在后面捡别人开源代码吃灰的“调包侠”;如果你想把你们团队的隐性业务知识,彻底沉淀为高质量、可版本控制、永不罢工的数字资产:

这篇加餐,以及整个《AI原生开发工作流实战》专栏的内容,是你绝对不容错过的“时代利器”。

不要犹豫,立刻扫描下方二维码,订阅专栏吧!

我也非常期待大家能在极客时间的评论区留言,分享你在编写 Skill 时遇到的奇葩幻觉,或者绝妙的工程 Idea。我会在那里等你,我们一起完成最华丽的技能升维!


原「Gopher部落」已重装升级为「Go & AI 精进营」知识星球,快来加入星球,开启你的技术跃迁之旅吧!

我们致力于打造一个高品质的 Go 语言深度学习AI 应用探索 平台。在这里,你将获得:

  • 体系化 Go 核心进阶内容: 深入「Go原理课」、「Go进阶课」、「Go避坑课」等独家深度专栏,夯实你的 Go 内功。
  • 前沿 Go+AI 实战赋能: 紧跟时代步伐,学习「Go+AI应用实战」、「Agent开发实战课」、「Agentic软件工程课」、「Claude Code开发工作流实战课」、「OpenClaw实战分享」等,掌握 AI 时代新技能。
  • 星主 Tony Bai 亲自答疑: 遇到难题?星主第一时间为你深度解析,扫清学习障碍。
  • 高活跃 Gopher 交流圈: 与众多优秀 Gopher 分享心得、讨论技术,碰撞思想火花。
  • 独家资源与内容首发: 技术文章、课程更新、精选资源,第一时间触达。

衷心希望「Go & AI 精进营」能成为你学习、进步、交流的港湾。让我们在此相聚,享受技术精进的快乐!欢迎你的加入!

img{512x368}


商务合作方式:撰稿、出书、培训、在线课程、合伙创业、咨询、广告合作。如有需求,请扫描下方公众号二维码,与我私信联系。

© 2026, bigwhite. 版权所有.

别再卷前端 UI 了!未来万亿级用户的产品,根本没有界面

作者 bigwhite
2026年3月12日 07:48

本文永久链接 – https://tonybai.com/2026/03/12/building-for-trillions-of-agents

大家好,我是Tony Bai。

如果你看一眼2025年 Web 流量统计报告,你会发现一个令人脊背发凉的残酷真相:人类,在互联网上已经正式成为少数派,机器流量已历史性突破 50%。

硅谷创业教父 Paul Graham 曾有一句被无数创业者和产品经理奉为圭臬的名言:“Make something people want.”(做人们想要的东西)。

但在今天,如果你还在死磕这句话,你可能会死得很惨。在这个 AI Agent(智能体)全面爆发的前夜,这句箴言必须被冷酷地改写为:
“Make something Agents want.”(做智能体想要的东西)。

因为未来的超级软件,根本不需要界面。

你精心打磨的 UI,在 AI 眼里一文不值

过去这几年,我们的开发者和 SaaS 创业者都在疯狂地“卷”前端:我们花了无数个熬红双眼的夜晚,去优化页面的停留时长,去测试按钮的颜色,去设计无比华丽的交互动画和留客弹窗。

我们试图把最核心的功能藏在复杂的 Web 界面后,以此作为产品的“护城河”。

但现实狠狠地给了我们一记耳光。

因为在未来,那些高度硬核的知识工作者(首当其冲是程序员),将不再亲自去挑选工具、注册账号、点击鼠标。他们只会向自己的 Claude Code 或 OpenClaw 下达指令:“帮我把这个数据库清洗一遍。”

Agent 会成为那个真正“做决定”和“使用产品”的人。

YCombinator 的合伙人 Jared Friedman 曾一针见血地指出过现存系统最致命的 Bug:目前大多数标榜牛逼的开发者工具,依然不允许你通过纯 API 来注册账号和获取 Key。

如果你的系统不能让 Agent 瞬间自动注册并调用,那你的服务在硅基生命眼里就等于“死”了。Agent 根本没有耐心去看你的华丽网页,更不会去看你的网络研讨会(Webinar)。它只会默默绕过你,去寻找那些 API 最清晰、对机器最友好的竞品。

旧时代的 PLG(Product-Led Growth,产品驱动增长)漏斗彻底失效,我们正在进入一个由“API 文档决定生死”的时代。

旧商业模式崩塌,万亿 Agent 的新基建

当我深入研究目前最前沿的 Agent 生态时,我发现,不仅仅是前端 UI 失效了,连我们习以为常的“按人头收费(Seat-based)”的商业模式也在崩塌。

试想一下,如果一个企业从 50 个普通人类员工,变成了“50 个人类 + 5000 个全天候运行的 Agent”,按人头收费的逻辑怎么算?

Agent 的工作负载是爆发式的,它可能在一秒钟内发起 50 次并发请求,瞬间击穿你原本为“人类手速”设计的限流(Rate Limit)网关。

不要再去应用层卷那些同质化的 AI 壳子了。真正聪明的开发者,已经开始为万亿规模的 Agent 造轮子。以下是四大正在爆发的基础设施赛道:

  1. Agent 的沙盒计算层:未来的服务器农场不是为了托管人类的网站,而是为了托管 Agent 的无状态执行沙盒(如 E2B)。
  2. Agent 的身份与钱包:Agent 需要在互联网上爬取付费资源,Stripe 级别的微支付(Microtransactions)将迎来真正的机器间交易刚需。
  3. 机器间的服务发现(Service Discovery):当人类退居幕后,Agent 之间如何知道对方能提供什么服务?我们需要机器与机器之间的“握手协议”。
  4. 信任与越权治理:当 Agent 带着你的授权去操作公司核心 CRM 时,如何防止它“幻觉越权”?


图:E2B沙盒运行示意图

Agent-First 时代的生存铁律

Perplexity CEO Aravind Srinivas 说过一句极具穿透力的话:“把电脑给电脑,让它们为人类创造与人类使用电脑时相同的输出,是一个更好的主意。”

在这个不可逆转的软件重心转移中,普通开发者该如何避免被淘汰?请牢记以下三条铁律:

  • 铁律一:API 就是你的最终 UI。 如果你的核心功能没有暴露在 API、CLI(命令行)或 MCP (Model Context Protocol) 接口中,它就不存在。
  • 铁律二:文档是写给机器看的。 你的 –help 文档和 API Schema 必须极度结构化,让 Agent 的大语言模型能做到“一秒读懂、零次试错”。
  • 铁律三:放弃闭环壁垒,拥抱极致的可组合性(Composability)。 打造干净的、无状态的、可被机器随时读取和拼接的工作流。

丢掉鼠标,成为“造规则”的人

未来的十年,是复杂性从“人机交互”向“机器间协议”下沉的十年。

作为开发者,现在最紧迫的任务,就是明天上班打开你的项目,问自己一个问题:“如果不用网页,一个纯粹的 AI Agent 能在 5 秒内调通我的核心链路吗?”

去构建那些没有界面的、纯粹的、让 Agent 感到舒适的系统吧,它们才是下一个时代的王者。

参考资料:

  • https://x.com/levie/status/2030714592238956960
  • https://www.imperva.com/resources/resource-library/reports/2025-bad-bot-report

今日互动吐槽:

你觉得目前市面上,哪个常用产品/SaaS 的 API 设计得最反人类、最让 AI(和你自己)抓狂?

欢迎在评论区疯狂吐槽!


认知跃迁:如何抢跑 Agent 原生时代?

理念再宏大,如果不落实到代码上,宏大叙事就只是别人的狂欢。

很多老读者问我:“Tony 老师,道理我都懂,但我该如何从零开始,改造现有系统,设计一套自描述的 MCP 接口?又该如何让 Claude Code 帮我跑通复杂的自动化工作流?”

光靠看研报是学不会造轮子的。与其焦虑自己会被 AI 淘汰,不如抢先一步,成为驾驭 AI 的那个人。

在我的全新极客时间专栏 AI原生开发工作流实战 中,我将摒弃一切虚无缥缈的理论,直接从代码层面,手把手教你构建面向 Agent 的 API 和工具链。

  • 告别低效内耗,重塑开发范式:带你用 AI 抹平代码复杂度的壁垒,专注于业务与架构的本质。
  • 驾驭 AI Agent 工作流:手把手教你实现从需求分析、MCP 接口设计到代码生成的自动化流水线。
  • 实现职场跃升:从苦哈哈的“写死代码的搬砖人”,进化为用规则驱动万物互联的“工作流指挥家”

别再执着于网页上按钮的颜色了。扫描下方二维码,加入专栏,我们一起去构建万亿硅基生命的世界基石。


原「Gopher部落」已重装升级为「Go & AI 精进营」知识星球,快来加入星球,开启你的技术跃迁之旅吧!

我们致力于打造一个高品质的 Go 语言深度学习AI 应用探索 平台。在这里,你将获得:

  • 体系化 Go 核心进阶内容: 深入「Go原理课」、「Go进阶课」、「Go避坑课」等独家深度专栏,夯实你的 Go 内功。
  • 前沿 Go+AI 实战赋能: 紧跟时代步伐,学习「Go+AI应用实战」、「Agent开发实战课」、「Agentic软件工程课」、「Claude Code开发工作流实战课」、「OpenClaw实战分享」等,掌握 AI 时代新技能。
  • 星主 Tony Bai 亲自答疑: 遇到难题?星主第一时间为你深度解析,扫清学习障碍。
  • 高活跃 Gopher 交流圈: 与众多优秀 Gopher 分享心得、讨论技术,碰撞思想火花。
  • 独家资源与内容首发: 技术文章、课程更新、精选资源,第一时间触达。

衷心希望「Go & AI 精进营」能成为你学习、进步、交流的港湾。让我们在此相聚,享受技术精进的快乐!欢迎你的加入!

img{512x368}


商务合作方式:撰稿、出书、培训、在线课程、合伙创业、咨询、广告合作。如有需求,请扫描下方公众号二维码,与我私信联系。

© 2026, bigwhite. 版权所有.

打破“知识诅咒”:资深架构师在 OpenClaw 浪潮中的掉队与反思

作者 bigwhite
2026年3月7日 08:03

本文永久链接 – https://tonybai.com/2026/03/07/breaking-curse-of-knowledge-architect-reflection-openclaw

大家好,我是Tony Bai。

最近一个多月,一个名为 OpenClaw(其前身为火爆全网的 Moltbot/Clawdbot)的开源 AI Agent 项目在 GitHub 上引发了现象级的热潮。

这个项目的核心逻辑并不复杂:它本质上是一个“网关 + 大模型 + 智能体运行时”的架构组合。然而,令人惊奇的并非技术本身,而是参与这场狂欢的人群画像。

在 OpenClaw 的社区里,或者说在整个 AI 应用(特别是 Agentic Workflow)的早期探索者中,我们看到了一个极其反直觉的“倒挂现象”:

那些没有深厚技术包袱的跨界人士、产品经理、甚至是刚刚入门的初级开发者,往往比资深的架构师、高级程序员更能放开手脚。他们不仅用 AI 快速搭建出了令人拍案叫绝的应用,而且玩法百出;相反,那些拥有十几年专业知识的 IT 专家们,却在这场浪潮中显得迟疑、挑剔,甚至有些“滞后”。

为什么会这样?难道多年的专业训练,在 AI 时代反而成了一种负担?

这不是偶然,这是每一次技术范式发生根本性转移时,必然上演的心理学与社会学大戏。今天,我们来深度剖析,在这场由 AI 驱动的创新重组中,到底是什么法则在起作用?

认知的枷锁:知识的诅咒与“局部最优解”

在认知心理学中,有一个著名的概念叫做“知识的诅咒 (Curse of Knowledge)”。当你对某件事物极其精通后,你便很难再想象“不懂它是什么感觉”。

对于资深 IT 工程师来说,他们的大脑在过去二十年里被训练成了一台精密的逻辑机器。在他们的认知框架里,构建一个可用的软件必须经历严苛的工序:需求分析、系统设计、数据库建模、API 定义、编码、异常处理、编写测试用例、部署 CI/CD 流水线。这是软件工程沉淀半个世纪的“最佳实践”。

专业者的困境:寻找漏洞的本能

当一位资深架构师看到新手用自然语言向 OpenClaw 下达指令,几秒钟后直接越过所有中间步骤,“吐”出一个能跑的网页时,他的第一反应通常不是惊喜,而是找漏洞:

  • “这代码的扩展性太差了。”
  • “它根本没有考虑并发安全!”
  • “这简直是毫无设计模式可言的‘屎山代码’。”

专家们习惯用“工业级”的标准去审视一个还处于“泥巴期”的新事物。他们深陷在旧有范式的“局部最优解”中,用防御性的眼光抵触这种充满不确定性的黑盒魔法。

跨界者的优势:“白纸”的实用主义

而对于非 IT 人士或初级开发者来说,他们是一张白纸,没有这些沉重的认知包袱。

他们不关心代码是否优雅,不关心是否符合 DRY(Don’t Repeat Yourself)原则。他们只关心一个极其纯粹的实用主义目标:“这东西能不能帮我解决眼前的麻烦?”

因为没有“正确方法”的束缚,他们反而敢于向 AI 提出那些在传统程序员看来荒谬无比的需求。他们将大模型视为第一且唯一的开发范式,没有“退回旧路”的成本。这种无知者无畏的“松弛感”,正是颠覆性创新的温床。

创新与风险:不对称的试错成本

埃弗雷特·罗杰斯的《创新的扩散》理论告诉我们,人们对新技术的接受度,往往取决于采用该技术所带来的风险与收益的不对称性。

专业者的沉没成本与防御姿态

在企业环境中,高级工程师不仅是代码的生产者,更是系统稳定性、安全性与可维护性的最后一道防线。如果引入不可控的 AI Agent 导致了生产环境数据泄露或系统崩溃,承担责任的是专家。

此外,还有巨大的沉没成本 (Sunk Cost)。一位架构师花了十年时间精通 JVM 调优或分布式事务,当 AI 的出现让这些底层技能在应用层的价值瞬间稀释时,潜意识的自我防御机制会促使他们贬低 AI 的能力(“它只是个玩具,替代不了深度的逻辑思考”),以此来维护自身“手艺人”的安全感。

初学者的绝对进攻

反观那些跨界探索者,他们使用 OpenClaw 往往是为了解决个人的长尾痛点——比如用 AI 当一个带语音识别的智能闹钟,或者写一个爬虫去抓取公开数据。

对于他们来说,试错成本几乎为零。如果 AI 产生幻觉写错了代码,大不了删掉重新生成一次。他们不需要对代码的生命周期负责,不需要应对凌晨三点的线上报警。这种极低的责任负担,赋予了他们极其强大的探索勇气和行动力。

正如 OpenClaw 的原作者 Peter Steinberger 在访谈中反复强调的那句话:“我是为了好玩 (Have fun) 才做这个的。” 玩乐心态,在很多时候比严肃的工程思维更能催生奇迹。

权力的下放:从“技术专享”到“大众狂欢”

除了心理和认知因素,我们还必须看到 AI 带来的社会学层面的权力重组。

在过去的数字化时代,懂代码的 IT 工程师掌握了“与机器对话”的专属权力。他们就像是数字时代掌握着专业语言的翻译官,普通人必须通过他们(提需求),才能让机器运转。

而以 LLM 为核心的 AI Agent 工具,本质上是一场技术的民主化运动

它彻底打破了这种权力垄断。现在,交互界面从晦涩的编程语言退化成了最通用的人类自然语言。任何一个会说话的人,只要逻辑清晰,都可以越过“翻译官”,直接指挥机器集群。

  • 对于原本掌握专有技能的技术人,这种权力的稀释和下放,必然会带来认知上的不适感和本能的审视。
  • 而对于更广泛的大众群体,这却是天降神兵。他们突然获得了原本遥不可及的软件构建能力,于是爆发出前所未有的热情,在各个垂直领域大显身手。

小结:打破诅咒,重塑自我

当我们看懂了这层逻辑,我们就不难理解为何 OpenClaw 这样的项目能在极短时间内引爆开源社区,也能理解为何许多传统技术精英在面对 AI 时代显得有些迷茫。

历史的经验一再证明:在每一次颠覆性的范式转移初期,最先跑出来的往往不是被旧规则束缚的“老手”,而是那些轻装上阵、没有包袱的“新手”。

但这并不意味着资深 IT 专家将被淘汰。专家的绝对优势在于对复杂系统的宏观把控能力、对底层逻辑的深刻理解,以及深厚的工程底蕴。真正的危机在于:你是否被困在了自己过去的成功经验里?

对于所有技术从业者而言,破局之道只有一个:主动打破“知识的诅咒”。

放下固有的“代码洁癖”,拥抱这种看似“不够严谨”的 Agentic 范式。将你的专业工程经验,从“亲自写出每一行完美代码”升维到“如何设计更安全的护栏、更合理的架构,以驾驭庞大的机器集群”。

与其站在岸边审视新手的粗糙,不如自己跳入这股洪流。毕竟,在 AI 时代,保持“新手心态(Beginner’s Mind)”,才是最高级的专业素养。


你被“诅咒”了吗?

面对 AI 这种“黑盒魔法”,你是否也曾像文中描述的那样,本能地先去审视它的代码质量和扩展性,而错失了快速交付的时机?在你身边,是否已经出现了那种“不懂代码却玩转 AI”的新手神人?

欢迎在评论区分享你的“扎心”时刻或反思!


还在为“复制粘贴喂AI”而烦恼?我的新专栏 AI原生开发工作流实战 将带你:

  • 告别低效,重塑开发范式
  • 驾驭AI Agent(Claude Code),实现工作流自动化
  • 从“AI使用者”进化为规范驱动开发的“工作流指挥家”

扫描下方二维码,开启你的AI原生开发之旅。


你的Go技能,是否也卡在了“熟练”到“精通”的瓶颈期?

  • 想写出更地道、更健壮的Go代码,却总在细节上踩坑?
  • 渴望提升软件设计能力,驾驭复杂Go项目却缺乏章法?
  • 想打造生产级的Go服务,却在工程化实践中屡屡受挫?

继《Go语言第一课》后,我的《Go语言进阶课》终于在极客时间与大家见面了!

我的全新极客时间专栏 《Tony Bai·Go语言进阶课》就是为这样的你量身打造!30+讲硬核内容,带你夯实语法认知,提升设计思维,锻造工程实践能力,更有实战项目串讲。

目标只有一个:助你完成从“Go熟练工”到“Go专家”的蜕变! 现在就加入,让你的Go技能再上一个新台阶!


原「Gopher部落」已重装升级为「Go & AI 精进营」知识星球,快来加入星球,开启你的技术跃迁之旅吧!

我们致力于打造一个高品质的 Go 语言深度学习AI 应用探索 平台。在这里,你将获得:

  • 体系化 Go 核心进阶内容: 深入「Go原理课」、「Go进阶课」、「Go避坑课」等独家深度专栏,夯实你的 Go 内功。
  • 前沿 Go+AI 实战赋能: 紧跟时代步伐,学习「Go+AI应用实战」、「Agent开发实战课」、「Agentic软件工程课」、「Claude Code开发工作流实战课」、「OpenClaw实战分享」等,掌握 AI 时代新技能。
  • 星主 Tony Bai 亲自答疑: 遇到难题?星主第一时间为你深度解析,扫清学习障碍。
  • 高活跃 Gopher 交流圈: 与众多优秀 Gopher 分享心得、讨论技术,碰撞思想火花。
  • 独家资源与内容首发: 技术文章、课程更新、精选资源,第一时间触达。

衷心希望「Go & AI 精进营」能成为你学习、进步、交流的港湾。让我们在此相聚,享受技术精进的快乐!欢迎你的加入!

img{512x368}


商务合作方式:撰稿、出书、培训、在线课程、合伙创业、咨询、广告合作。如有需求,请扫描下方公众号二维码,与我私信联系。

© 2026, bigwhite. 版权所有.

UML 之父 Grady Booch:别听 CEO 瞎忽悠,软件工程的第三次黄金时代才刚刚开始

作者 bigwhite
2026年2月13日 08:13

本文永久链接 – https://tonybai.com/2026/02/13/grady-booch-uml-software-engineering-third-golden-age-begins

大家好,我是Tony Bai。

在 2026 年初的今天,如果你问一个软件工程师“最近感觉如何?”,得到的回答大概率是焦虑。

Anthropic 的 CEO Dario Amodei 曾预言:“软件工程将在 12 个月内被自动化。”

GitHub Copilot、Claude CodeGemini Cli等Coding Agent的代码生成能力确实让人惊叹,但也让人背脊发凉:如果 AI 能瞬间写出完美的 C++ 代码,我们这些还在啃算法、背八股文的人,存在的意义是什么?

在这个充斥着“软件工程已死”论调的时刻,一位真正的“上古大神”站了出来。

他是 Grady Booch

如果你是计算机科班出身,你一定听过他的名字。他是 UML(统一建模语言)的创始人之一,面向对象设计(OOD)的先驱,IBM Fellow。他入行时,程序员还在用打孔卡;他经历过汇编到高级语言的剧变,也经历过互联网泡沫的崩塌。

最近的一次深度访谈中,面对“AI 取代程序员”的言论,Grady Booch 微微一笑,给出了一个截然不同的判断:

“别担心。软件工程没有死,我们正站在‘第三次黄金时代’的门口。”

直面争议:“那是纯属胡扯”

访谈中,主持人问 Grady 如何看待“软件工程即将被自动化”的观点。

Grady 的回答非常直接且不留情面:“纯属胡扯”。

为什么这位泰斗如此笃定?因为那些鼓吹替代论的 CEO 们,混淆了两个根本性的概念:Coding(编码)与 Engineering(工程)。

  • Coding 是什么?是将设计好的逻辑翻译成机器能懂的语言。这是 AI 最擅长的,也是最容易被自动化的“翻译层”。
  • Engineering 是什么?是在资源受限、需求模糊、环境动态变化的前提下,寻找最优解的过程。

Grady 指出,软件工程师的本质工作,是平衡多维度的力量(Balancing Forces)。你需要平衡物理定律(光速限制延迟、芯片散热)、经济成本(算力预算、开发周期)、法律合规(数据隐私)、人类伦理(算法偏见)。

Grady补充,“AI 目前只是一个极其高效的‘实现者’。它连理解这些约束的门槛都没摸到。”

只要这个世界还存在资源稀缺和复杂的人性,就需要工程师去权衡利弊、做出决策。这才是工程的灵魂,而代码只是结果。

历史的望远镜:软件工程的三次跃迁

为了让我们看清未来,Grady 举起了历史的望远镜。他认为,软件工程的历史,就是一部抽象层级不断提升的历史。

第一次黄金时代 (1950s – 1970s):算法抽象

那时,软件刚从硬件中解耦。Fortran 和 Algol 的出现,让程序员不再需要手写汇编。

  • 当时的焦虑:“高级语言效率太低,真正的程序员只写汇编。”
  • 结果:汇编程序员确实变少了,但软件行业爆发了。我们开始关注算法。

第二次黄金时代 (1980s – 2000s):对象抽象

随着 PC 的普及,系统复杂度指数级上升。面向对象(OOP)和设计模式应运而生。

  • 当时的焦虑:“有了图形界面和开发工具,还需要专业程序员吗?”
  • 结果:软件渗入了人类生活的方方面面。我们开始关注对象和交互。

第三次黄金时代 (2000s – Now):系统抽象

现在,我们进入了第三阶段。云原生、微服务、以及现在的 AI。

  • 现在的焦虑:“AI 写代码了,我们要失业了。”
  • Grady 的预判:AI 是最新的编译器,是这一代最高的抽象层。它屏蔽了语法的细节,屏蔽了库的调用。

Grady继续指出:“每一次抽象层级的提升,都会消灭低端的重复劳动,但同时会释放出巨大的生产力,让我们去构建更宏大、更复杂的系统。”

未来的核心竞争力:系统思维

如果 AI 帮我们干了脏活累活(写 CRUD、写测试、修 Bug),那我们该干什么?

Grady 给年轻工程师的建议是:去拥抱“系统思维(Systems Thinking)”。

未来的软件工程师,将从 Coder(代码工匠)进化为 Architect(系统架构师)。

你的核心竞争力将不再是“精通 Go 语法”或“手写红黑树”,而是:

  1. 复杂性管理:当 AI 一天能生成 10 万行代码时,如何保证系统不崩塌?如何设计高可用的架构?
  2. 跨学科融合:Grady 提到了他在 NASA 火星任务中的经历。要构建那个系统,他必须懂生物学、神经学和物理学。AI 时代,软件将进入更多深水区,你需要懂业务、懂人性。
  3. 定义问题的能力:AI 是执行者,你是定义者。Problem Shaping(问题重塑)的价值将远远超过 Problem Solving(问题解决)。

“Fear not(不要恐惧)。” Grady 说,“你的工具变了,但你要解决的问题——如何用技术改善人类生活——从未改变。”

小结:站在深渊边缘,学会飞翔

在访谈的最后,Grady Booch 说了一段极具哲学意味的话。

面对 AI 带来的巨大变革,我们就像站在悬崖边缘。

你可以选择盯着深渊,恐惧地喊:“完蛋了,我要掉下去了。”

你也可以选择抬起头,说:“不,我要跳跃,我要飞翔。”

这就是起飞的时刻。

AI 帮你消除了实现的摩擦,降低了构建的成本。以前你受限于手速和团队规模,做不出伟大的产品;现在,限制你的只有你的想象力

软件工程没有死,它只是进化了。

而我们,有幸成为这第三次黄金时代的开启者。

资料链接:https://www.youtube.com/watch?v=OfMAtaocvJw


你准备好“飞翔”了吗?

Grady Booch 的判断让我们看到了一个更宏大的未来。作为一名开发者,你是否也曾感觉到“编码”与“工程”之间的那道分界线?你认为在即将到来的“第三次黄金时代”,除了系统思维,还有哪些能力是不可或缺的?

欢迎在评论区留下你的思考或困惑! 让我们一起在悬崖边缘,寻找飞翔的力量。

如果这篇文章给了你走出焦虑的勇气,别忘了点个【赞】和【在看】,并转发给你那些还在被“AI 替代论”困扰的朋友!


如何成为 AI 时代的“系统工程师”?

Grady Booch 告诉我们要具备系统思维,要学会编排 AI,而不是被 AI 取代。但这具体怎么落地?

  • 如何从“写代码”转型为“设计 Spec”?
  • 如何利用 Agentic Workflow 组建你的“数字研发团队”,去构建复杂的系统?
  • 如何建立 AI 时代的代码审查质量控制体系?

欢迎关注我的极客时间专栏AI 原生开发工作流实战

我们不教你如何在这个时代“卷”代码,我们教你如何站在巨人的肩膀上,成为驾驭算力的 System Engineer

扫描下方二维码,开启你的第三次黄金时代。


你的Go技能,是否也卡在了“熟练”到“精通”的瓶颈期?

  • 想写出更地道、更健壮的Go代码,却总在细节上踩坑?
  • 渴望提升软件设计能力,驾驭复杂Go项目却缺乏章法?
  • 想打造生产级的Go服务,却在工程化实践中屡屡受挫?

继《Go语言第一课》后,我的《Go语言进阶课》终于在极客时间与大家见面了!

我的全新极客时间专栏 《Tony Bai·Go语言进阶课》就是为这样的你量身打造!30+讲硬核内容,带你夯实语法认知,提升设计思维,锻造工程实践能力,更有实战项目串讲。

目标只有一个:助你完成从“Go熟练工”到“Go专家”的蜕变! 现在就加入,让你的Go技能再上一个新台阶!


商务合作方式:撰稿、出书、培训、在线课程、合伙创业、咨询、广告合作。如有需求,请扫描下方公众号二维码,与我私信联系。

© 2026, bigwhite. 版权所有.

输入需求,输出系统:AI Agent 正在实现软件工程的“终极梦想” —— 软件工厂!

作者 bigwhite
2026年2月10日 12:11

本文永久链接 – https://tonybai.com/2026/02/10/ai-agent-realizes-ultimate-dream-software-factory

大家好,我是Tony Bai。

在计算机科学与软件工程的历史长河中,始终存在着一个令人魂牵梦绕、却又屡屡受挫的终极梦想——“软件工厂(Software Factory)”

早在 20 世纪 60 年代,日本的大型科技企业(如日立、东芝)就开始尝试引入制造业的流水线理念来生产软件。80 年代,CASE(计算机辅助软件工程)工具试图实现全流程自动化;21 世纪初,MDA(模型驱动架构)试图通过 UML 图直接生成代码。

然而,这些尝试无一例外都未能成为主流。

为什么?因为软件开发与硬件制造有着本质的不同。硬件是标准化的,而软件需求充满了不确定性(Ambiguity)、非标准化(Non-standard)和创造性(Creativity)。传统的刚性流水线无法处理这种“软”的复杂性。

但这一次,不一样。

随着以 GPT-5.2、Claude 4.5、Gemini Pro 3.0 等为代表的大语言模型(LLM)能力的爆发,以Claude Code、Gemini Cli等编码智能体的快速演进,以及Agentic Workflow(智能体工作流)的成熟,我们第一次拥有了能够理解“非标需求”并将其转化为“标准代码”的通用推理引擎。

特斯拉前 AI 总监 Andrej Karpathy 将这一刻定义为 Software 3.0 的黎明。在这个新时代,那个尘封已久的“软件工厂”蓝图,正在从幻想变成触手可及的现实。

今天,我们就来深度剖析这座正在崛起的 AI 软件工厂,看看它将如何重塑我们的行业、生态与职业。

Software 3.0:从“写代码”到“定义目标”

要理解软件工厂的本质,我们需要先理解 Karpathy 提出的软件演进三阶段论。这是一次技术的迭代,更是编程范式的根本性迁移。

Software 1.0:显式编程 (Code)

这是我们最熟悉的时代。程序员使用 Go、Python、C++、Java、TypeScript 等语言,编写显式的逻辑规则。

  • 特征: 人类必须清楚地知道每一步该怎么做(How),然后翻译给机器。
  • 局限: 复杂度随着代码行数线性(甚至指数)增长,维护成本极高。这是典型的“手工作坊”模式。

Software 2.0:数据驱动 (Weights)

深度学习的兴起带来了 2.0 时代。程序员不再编写规则,而是编写目标(损失函数)和准备数据,由优化器(Optimizer)在神经网络的权重空间中搜索出最优解。这是一个黑盒。虽然它能解决图像识别等 1.0 很难解决的问题,但它缺乏逻辑的可解释性。

Software 3.0:自然语言编程 (Prompts)

现在,我们进入了 3.0 时代。LLM 成为了一个新的、通用的可编程实体。

  • 特征: 编程语言变成了英语(或任何自然语言)。我们不再需要告诉机器“怎么做(How)”,只需要告诉它“做什么(What)”和“想要什么结果(Goal)”。
  • 质变: Prompt 成了新的源代码。而能够理解 Prompt 并执行任务的 AI Agent,成了新时代的工人。

正是 Software 3.0 的出现,让“输入模糊需求,输出精确系统”成为了可能。

全景图:解构一座柔性的“AI 软件工厂”

想象一下,未来的软件交付不再是一个团队几周的冲刺,而是一个工厂几分钟的运转。这座工厂不再由传送带和机械臂组成,而是由运行在云端的 Agent Swarm(智能体集群)构成。

这是一座柔性制造的超级工厂,其运作流程如下:

输入端:非结构化的意图

你不需要编写代码,甚至不需要编写格式严格的 PRD 文档。

工厂的原材料可以是极其粗糙的:

  • 一段 30 分钟的产品会议录音。
  • 一张在白板上画的草图照片。
  • 或者仅仅是一句模糊的想法:“帮我做一个给宠物猫记账的小程序,要能识别猫粮的发票,还要有月度支出的数据看板。”

生产车间:智能体协作网络

需求进入工厂后,会被一个Orchestrator(编排器)接管,并分发给不同的“职能车间”。这些车间由专精不同领域的 Agent 组成:

  • 设计车间 (Architect Agent):
    它首先分析需求,进行系统拆解。它会输出:

    • API Spec: 定义前后端交互的接口(如 OpenAPI/Swagger)。
    • Database Schema: 设计数据库表结构(如 SQL DDL)。
    • Tech Stack: 根据需求量级选择技术栈(是选 Next.js 还是纯 HTML?)。
  • 制造车间 (Coder Agent):
    这是工厂的主力军。它会裂变出多个子 Agent 并行工作:

    • Frontend Agent: 根据设计稿生成 React 组件。
    • Backend Agent: 编写 API 逻辑和数据库访问层。
    • SQL Agent: 编写复杂的查询语句。
      它们通过 GitHub 或共享文件系统进行协作,像真实团队一样提交 Pull Request。
  • 质检车间 (QA Agent):
    这是保证“良品率”的关键。QA Agent 不会等到代码写完才介入,而是采用 TDD(测试驱动开发)模式。

    • 它会先根据 Spec 生成测试用例(Test Cases)。
    • 然后对 Coder Agent 提交的代码进行“红绿循环 (Red-Green Loop)”测试。
    • 如果发现 Bug,它不会只是报错,而是将错误日志作为“反馈信号”退回给制造车间,要求重做。
  • 装配车间 (DevOps Agent):
    代码通过测试后,DevOps Agent 上场。它编写 Terraform 或 Dockerfile,调用 AWS/Aliyun/Cloudflare的 API,自动配置云端环境,进行部署。

输出端:即时可用的服务

工厂的传送带末端,输出的不是一堆冷冰冰的代码文件,而是一个可访问的 URL,一个已经配置好的 Admin 后台,以及一套完善的系统监控仪表盘。

这就是 Software 3.0 的终极形态:Prompt in, System out.

核心变革:柔性制造与动态编排

为什么我们要强调这是“柔性”工厂?因为它解决的是传统 CI/CD 流水线最大的痛点——刚性。

传统的流水线是线性的(Build -> Test -> Deploy)。一旦 Test 挂了,流水线就停了,红灯亮起,必须等待人类工程师介入修 Bug。

但 AI 软件工厂是有生命、会呼吸的。

它是基于 Agentic Workflow 的动态有向无环图(DAG),甚至是包含循环的图。

  • 自愈 (Self-Healing):当 QA Agent 发现 Bug 时,系统不会停机。它会触发一个“修复循环”。Coder Agent 会分析 QA 给出的错误日志,结合源代码进行推理,修改代码,再次提交。这个过程可能在几秒钟内迭代数十次,直到测试通过。
  • 动态扩容 (Dynamic Scaling):如果 Architect Agent 发现需求特别复杂(比如涉及 50 个页面),它会自动指挥工厂“招人”——即启动更多的 Coder Agent 实例并行开发,最后再进行合并。

这是一条会思考的流水线。它不仅生产代码,还生产基础设施(IaC)。它与云厂商深度集成,实现了真正的 Serverless——作为用户,你连 Server 都不用感知,你只感知 Service。

行业震荡:生态与角色的重构

当这种“输入需求,输出系统”的工厂模式普及后,软件行业的格局将发生天翻地覆的变化。

软件工程:从“人际协作”到“机机协议”

传统的软件工程理论(Agile, Scrum, 看板)很大程度上是为了解决“人与人协作”中的摩擦——信息不对称、理解偏差、情绪波动。

但在 AI 工厂里,协作变成了 A2A (Agent-to-Agent) 的协议交互。

  • Agent 不会开小差。
  • Agent 不会误解符合 Spec 的接口定义。
  • Agent 不需要每日站会同步进度。

未来的软件工程,将从管理“人”,转向管理“协议”和“标准”。协作的重心将聚焦于“人与工厂”的交互——即如何更精准、更高效地向工厂下达指令(Prompt Engineering / Spec Writing)。

软件生态:开源项目的“模具化”

在 Software 1.0 时代,开源项目(如 React, Spring, Django)是给人用的库(Library)。我们需要学习它的文档,理解它的 API。

在 Software 3.0 时代,开源项目将变成工厂的“模具”。

我们可能不再直接引用库,而是告诉工厂:“用 React 的模具生产前端”。源代码(Source Code)本身可能会变成像汇编语言一样的中间产物/表示——只有 AI 读写它们,而人类只会面向Spec。

Software is ephemeral. Spec is eternal.(软件是瞬态的,规格是永恒的。)

从业者:从“码农”到“厂长”

这是最残酷但也最充满机遇的转变。软件公司的人才结构将呈现极端的两极分化:

  • 订货人 (Product Owner / PM):
    负责定义“我要什么”。在工厂时代,生产成本趋近于零,“决策”的成本变得极高。你需要极强的业务洞察力、审美能力和用户同理心。因为工厂生产得太快了,如果你不知道什么是好的,你生产出来的就是一堆垃圾。
  • 厂长 (Platform Engineer / Architect):
    负责维护工厂本身。你需要设计 Agent 之间的协作 SOP,优化工厂的“良品率”,集成最新的模型能力,确保工厂不会生产出有安全漏洞的产品。
  • 消失的角色:
    纯粹的、重复性的“代码搬运工”和初级 CRUD 工程师。他们的工作将完全被 Coder Agent 取代。

小结:工业革命的前夜

我们正处于软件行业“手工作坊”向“机器大工业”过渡的前夜,就像 1760 年代瓦特改良蒸汽机的前夜。

AI 软件工厂 不是科幻小说,它正在此时此刻发生。

Claude Code的Agent Team、针对编码智能体编排的Gas Town等,很可能都是这座工厂雏形的组件。

Karpathy 说的 “The hottest new programming language is English” 并不是一句玩笑。它意味着编程的门槛被无限降低,但构建系统的门槛被无限拔高。

无论你是想做“订货人”还是“厂长”,现在开始学习驾驭 AI Agent,学习如何构建和管理这些“数字员工”,是你拿到新时代船票的唯一方式。


你的“厂长”初体验

“软件工厂”的时代正在加速到来,我们每个人都将面临从“码农”到“订货人”或“厂长”的转型。想象一下,如果你现在拥有一座 24 小时不停工的“AI 软件工厂”,你最想让它为你生产一个什么样的系统?你认为在“机机协作”的未来,人类程序员最后的护城河在哪里?

欢迎在评论区分享你的脑洞与思考!让我们一起在这场软件工业革命的前夜寻找坐标。

如果这篇文章为你揭示了软件工程的未来,别忘了点个【赞】和【在看】,并转发给你的架构师朋友,大家一起未雨绸缪!


亲手搭建你的“微型工厂”

虽然完全自动化的“软件工厂”还在建设中,但其中的核心技术——Agent 编排、Spec 驱动开发——已经触手可及。

在我的极客时间专栏《AI 原生开发工作流实战》中,我将带你从零开始,利用 Claude Code,构建一个微型的 AI 软件流水线。

  • 如何让 Coder Agent 和 QA Agent 左右互搏,实现代码自愈?
  • 如何用 Spec 文档指挥整个生产流程?
  • 如何构建一个能自我修复 Bug 的智能体闭环?

扫描下方二维码,开启你的 AI 架构师之旅。


你的Go技能,是否也卡在了“熟练”到“精通”的瓶颈期?

  • 想写出更地道、更健壮的Go代码,却总在细节上踩坑?
  • 渴望提升软件设计能力,驾驭复杂Go项目却缺乏章法?
  • 想打造生产级的Go服务,却在工程化实践中屡屡受挫?

继《Go语言第一课》后,我的《Go语言进阶课》终于在极客时间与大家见面了!

我的全新极客时间专栏 《Tony Bai·Go语言进阶课》就是为这样的你量身打造!30+讲硬核内容,带你夯实语法认知,提升设计思维,锻造工程实践能力,更有实战项目串讲。

目标只有一个:助你完成从“Go熟练工”到“Go专家”的蜕变! 现在就加入,让你的Go技能再上一个新台阶!


商务合作方式:撰稿、出书、培训、在线课程、合伙创业、咨询、广告合作。如有需求,请扫描下方公众号二维码,与我私信联系。

© 2026, bigwhite. 版权所有.

Claude Code 创始人亲授:解锁 10 倍效率的 10 个“隐藏技能”

作者 bigwhite
2026年2月3日 08:26

本文永久链接 – https://tonybai.com/2026/02/03/claude-code-founder-10x-efficiency-10-hidden-skills

大家好,我是Tony Bai。

Claude Code 发布后,迅速成为了 AI 编程领域的“当红炸子鸡”。

大多数开发者对它的使用方式还停留在:“打开终端 -> 输入需求 -> 等待代码生成”。

但这真的发挥出它的全部潜力了吗?

最近,Claude Code 的创始人 Boris Cherny 亲自下场,在社交媒体上分享了团队内部使用的 Best Practices

看完这些技巧,我才意识到:我们以前可能只用了它 10% 的功力。

Boris 揭示了如何将 Claude Code 从一个简单的 CLI 工具,升级为一个支持并行、具备规划能力、能自我进化的“数字研发团队”。

今天,我将这 10 个隐藏技能 拆解给你,助你解锁 10 倍的开发效率。

并行工程——一个人就是一支队伍

技能 1:多线程并发 (Parallel Worktrees)

  • 痛点:传统的 AI 编程是线性的,AI 写代码时,你只能干等。
  • 创始人解法:“Do more in parallel.”
    利用 git worktree,你可以瞬间克隆出 3-5 个独立的工作目录。在每个目录里启动一个 Claude Session,分别处理不同的 Feature。
    • 窗口 1:重构后端 API;
    • 窗口 2:编写前端组件;
    • 窗口 3:运行全链路测试。

这是最大的生产力解锁。你的大脑带宽不再受限于 AI 的生成速度,而是受限于你的“多任务指挥能力”。

技能 2:左右互搏 (Agent Review Agent)

  • 痛点:AI 写的代码有时候逻辑不严密,自己 Review 又太累。
  • 创始人解法:让 AI 审查 AI。
    • Session A (Writer): 负责生成 Plan 和 Code。
    • Session B (Reviewer): 扮演 “Staff Engineer”,专门负责挑刺。

Boris 透露:让 Session B 对 A 的产出进行 Review,不仅能发现 Bug,还能显著提升代码的鲁棒性。

思维升级——先谋后动

技能 3:Plan Mode 的“一击必杀”

  • 痛点:直接让 AI 改复杂逻辑,往往改得乱七八糟。
  • 创始人解法:“Start every complex task in plan mode.”

面对复杂任务,按两下 Shift+Tab 进入 Plan Mode。把你的精力全部花在打磨 Plan 上。一旦 Plan 完美了,切换回 Execute Mode,让 Claude “One-shot(一击必杀)” 完成实现。

技能 4:子智能体探索 (Subagents for Exploration)

  • 痛点:面对陌生的巨型代码库,主 Agent 读取太多文件会导致 Context 溢出。
  • 创始人解法: “Use 5 subagents to explore the codebase.”
    你可以直接下令:use 5 subagents to explore the codebase and map out the dependency graph.
    这 5 个子智能体会并行阅读代码,互不干扰,最后将精华信息汇总给主 Agent。这相当于派出了 5 个侦察兵。

能力扩展——打造私人技能库

技能 5:把重复劳动封装为 Skill

  • 痛点:每天都在重复输入相同的 Prompt,比如“扫描一下有没有重复代码”。
  • 创始人解法: “Create your own skills.”

如果你发现某件事一天要做两次以上,把它写成 Skill。 比如 创建一个 /techdebt 命令。每次会话结束前运行一下,自动扫描并删除重复代码。

技能 6:自我进化的 CLAUDE.md

  • 痛点:项目规则太多,写在 Prompt 里太麻烦,写在文档里又懒得更新。
  • 创始人解法:“Ruthlessly edit your CLAUDE.md over time.”

不要手写规则,让 Claude 自己写。当它犯错并被你修正后,对它说:“把这个错误的原因和避免方法,写入 CLAUDE.md,这样你下次就不会再犯了。” 让你的规则文件像生物一样自行生长、进化。

自动化闭环——自修复与自验证

技能 7:Slack 驱动修 Bug

  • 痛点:看到 Bug -> 复制报错 -> 切换 IDE -> 粘贴报错。太慢了。
  • 创始人解法:“Zero context switching.”

配置 Slack MCP。在 Claude Code 里直接粘贴 Slack 上的 Bug 链接,说一句 “Fix”。Claude 会自动读取 Slack 里的讨论上下文,复现问题,并提交修复。

技能 8:Chrome 驱动验 UI

  • 痛点:前端代码写完了,还是得自己打开浏览器点点点。
  • 创始人解法:“Chrome MCP is a game changer.”

配置 Chrome MCP。让 Claude 写完代码后,自己打开浏览器,截图,对比设计稿,甚至自动点击按钮进行验证。Eye > Code.

高阶 Prompting——把 AI 当人看

技能 9:压力测试 (Challenge Claude)

  • 痛点:AI 容易顺从你的错误想法。
  • 创始人解法:“Grill me on these changes.”(拷问我)

告诉 Claude:“不要直接合并。直到你通过我的测试之前,不要生成 PR。证明这段代码是有效的。” 激发 AI 的批判性思维,让它从“执行者”变成“质检员”。

技能 10:状态栏定制 (Custom Statusline)

  • 痛点:开了 5 个终端,忘了哪个是干嘛的。
  • 创始人解法:使用 /statusline 自定义显示内容。

让每个终端的状态栏显示当前的 Git 分支、Context 使用量、以及当前任务的目标。一眼望去,掌控全局。

小结:从 Tool 到 Teammate

Boris 的分享向我们展示了 Claude Code 的终极形态:它不仅仅是一个 CLI 工具,它是一个可编程、可扩展、可并行的数字员工团队

掌握了这 10 个隐藏技能,你就不再是那个盯着屏幕发呆的 Coder,而是运筹帷幄的 Commander。

不要用蛮力去写代码,用架构去生成代码。

资料链接:https://x.com/bcherny/status/2017742741636321619


你的“提效”利器

创始人的这 10 个技巧中,哪一个最让你觉得“相见恨晚”?你自己在探索 Claude Code 或其他 AI Agent 时,是否也挖掘出了一些好用的“独门绝技”?

欢迎在评论区分享你的提效秘籍!让我们一起构建最强 AI 工作流。

如果这篇文章为你打开了新世界的大门,别忘了点个【赞】和【在看】,并转发给你的开发战友!


构建你的“数字特种部队”

看完这些技巧手痒了吗?

  • 如何配置 Slack MCPChrome MCP
  • 如何编写一个能自动修债的 /techdebt Skill
  • 如何用 Worktree 搭建并行流水线?

在我的极客时间专栏《AI原生开发工作流实战》中,我将带你实战 Boris 提到的一些高阶技巧。我们将手把手配置一个“一人抵十人”的超级开发环境。

扫描下方二维码,让你的开发效率原地起飞。


你的Go技能,是否也卡在了“熟练”到“精通”的瓶颈期?

  • 想写出更地道、更健壮的Go代码,却总在细节上踩坑?
  • 渴望提升软件设计能力,驾驭复杂Go项目却缺乏章法?
  • 想打造生产级的Go服务,却在工程化实践中屡屡受挫?

继《Go语言第一课》后,我的《Go语言进阶课》终于在极客时间与大家见面了!

我的全新极客时间专栏 《Tony Bai·Go语言进阶课》就是为这样的你量身打造!30+讲硬核内容,带你夯实语法认知,提升设计思维,锻造工程实践能力,更有实战项目串讲。

目标只有一个:助你完成从“Go熟练工”到“Go专家”的蜕变! 现在就加入,让你的Go技能再上一个新台阶!


商务合作方式:撰稿、出书、培训、在线课程、合伙创业、咨询、广告合作。如有需求,请扫描下方公众号二维码,与我私信联系。

© 2026, bigwhite. 版权所有.

你的 CLAUDE.md 写错了:为什么指令越多,AI 越笨?

作者 bigwhite
2026年1月29日 07:18

本文永久链接 – https://tonybai.com/2026/01/29/write-a-good-claude-md

大家好,我是Tony Bai。

在使用 Claude Code、Cursor 或 Gemini Cli 等 AI 编程工具时,你是否遇到过这样的情况:

明明在项目根目录写了 CLAUDE.md(或 AGENTS.md),洋洋洒洒列了几十条项目规范:“使用 TypeScript”、“不要用 any”、“单元测试覆盖率要达标”……

但 AI 就像个叛逆的实习生,经常对这些指令视而不见,反复犯同样的低级错误。

是你写的 Prompt 不够严厉吗?还是模型不够聪明?

最近,HumanLayer 团队发布的一篇深度分析文章揭示了真相:

问题恰恰在于你写得太多了。

Claude Code 的内部机制会给模型注入一条系统级提醒:

“IMPORTANT: this context may or may not be relevant to your tasks. You should not respond to this context unless it is highly relevant.”
(重要:此上下文可能与您的任务无关。除非高度相关,否则请忽略。)

这意味着,你的 CLAUDE.md 越臃肿,包含的无关信息越多,它被系统判定为“噪音”并整体忽略的概率就越大。

今天,我们来聊聊如何用工程化的思维,重构你的 AI 上下文管理。

第一性原理:AI 是无状态的“新员工”

要写好 CLAUDE.md,首先要理解 LLM 的本质:它是无状态的(Stateless)

每次你开启一个新的 Session,对于 AI 来说,都是入职第一天。它对你的代码库一无所知。CLAUDE.md 是它唯一的“入职手册”和“长期记忆”。

但这并不意味着你要把公司历史全塞给它。一个优秀的入职手册应该包含什么?

HumanLayer 的文章中 总结了 “The Trinity”(三要素)

  1. WHAT(地图): 技术栈是什么?项目结构是怎样的?(特别是 Monorepo,告诉它哪里是 App,哪里是 Lib)。
  2. WHY(目标): 这个项目的核心价值是什么?核心模块的职责边界在哪里?
  3. HOW(工具): 怎么构建?怎么跑测试?用 npm 还是 bun?

除此之外的任何废话,都是在消耗 AI 宝贵的注意力。

最佳实践一:少即是多 (Less is More)

研究表明,即便是最前沿的推理模型(Thinking Models),能稳定遵循的指令上限也就在 150-200 条左右。而小模型(如 Haiku 或 GPT-4o-mini)的遵循能力随着指令数量增加呈指数级下降

更糟糕的是 “位置偏见(Position Bias)”。LLM 高度关注开头(System Prompt)和结尾(最新对话),夹在中间的 CLAUDE.md 如果过长,极易沦为“被遗忘的中间层”。

因此,请遵循以下黄金法则:

  • 不要试图涵盖所有边缘情况。
  • 将根目录的 CLAUDE.md 控制在 300 行以内,HumanLayer 的生产环境甚至控制在 60 行以内
  • 每一行都要问自己:“如果没有这句话,AI 真的干不了活吗?”

最佳实践二:渐进式披露 (Progressive Disclosure)

如果你确实有很多规范要交代,怎么办?

答案是:不要把所有鸡蛋放在一个篮子里。

想象一下,HR 会在入职第一天把 500 页的《数据库运维手册》扔给一个前端开发吗?不会。

你需要构建一套“渐进式”的文档体系:

1. 建立文档库:

在项目中创建一个 .ai/docs/ 目录,存放特定领域的指南:

  • testing.md:详细的测试编写与运行指南。
  • database.md:Schema 定义与迁移规范。
  • architecture.md:核心架构图与数据流。

2. 建立索引:

在主 CLAUDE.md 中,只保留“触发器”:

  • “编写或运行测试前,请务必阅读 .ai/docs/testing.md。”
  • “涉及数据库变更时,请参考 .ai/docs/database.md。”

这样,当 AI 只是在写一个前端组件时,它的上下文窗口就不会被无关的后端 Schema 污染。保持注意力的纯净,是提升 AI 智商的关键。

最佳实践三:别把 AI 当 Linter 用

这是最常见的资源浪费:在 CLAUDE.md 里写了 50 行关于代码风格的规定——“缩进用 2 个空格”、“花括号不换行”、“变量名用驼峰”……

请记住:LLM 是昂贵的推理引擎,不是廉价的格式化工具。

让 AI 去关注缩进,就像让法拉利去送外卖,既贵又慢。而且,AI 即使知道规则,也经常因为概率性生成而“手滑”。

正确的解法是:Tooling > Prompting。

  1. 配置工具: 使用 Prettier, Biome, ESLint, govet 等确定性工具来处理格式。
  2. 设置 Hook: 配置 Claude Code 的 Stop Hook。如果 AI 生成的代码格式不对,让 Linter 报错,把错误信息喂回给 AI。
    • AI: (生成代码)
    • System: “Lint Error: Missing semicolon.”
    • AI: “Ah, fixing it.”

AI 极其擅长修复报错,但并不擅长凭空遵守“隐形的规则”

小结:杠杆的层级

在 AI 原生开发中,CLAUDE.md 处于“杠杆层级”的顶端。

  • 写错一行代码 = 1 个 Bug。
  • 写错一行 CLAUDE.md = 成百上千次错误的规划、错误的检索、错误的代码。

不要盲目依赖 /init 自动生成的文件,那只是个起点。你需要像维护核心代码一样,精心雕琢你的 CLAUDE.md。

现在,打开你的项目,检查一下那个文件。

删掉那些废话,把长文档拆分,把格式化交给工具。

给你的数字员工减负,它才能跑得更快。

资料链接:https://www.humanlayer.dev/blog/writing-a-good-claude-md


你的 CLAUDE.md 有几行?

读完这篇文章,不妨现在就去检查一下你项目里的 CLAUDE.md。它是清爽的“入职手册”,还是臃肿的“裹脚布”?你目前的行数是多少?

欢迎在评论区晒出你的“瘦身”成果!让我们一起给 AI 减负。

如果这篇文章帮你解决了 AI “不听话”的难题,别忘了点个【赞】和【在看】,并转发给你的团队,规范大家的 Prompt 工程!


构建工程化的 AI 工作流

CLAUDE.md 只是构建 AI 原生工作流的起点。

  • 如何配置 Hooks 来实现自动化代码审查?
  • 如何编写 Sub-Agents 来处理隔离的脏活累活?
  • 如何设计 Slash Commands 来固化团队的 SOP?

如果你想深入掌握 Claude Code 的高阶玩法,不仅仅是写 Prompt,而是构建一套“自动纠错、按需加载”的工程化体系。

欢迎关注我的极客时间专栏AI 原生开发工作流实战

我们不聊虚的,只讲能在生产环境中落地的 AI 工程实践。

扫描下方二维码,开启你的AI原生开发之旅。


你的Go技能,是否也卡在了“熟练”到“精通”的瓶颈期?

  • 想写出更地道、更健壮的Go代码,却总在细节上踩坑?
  • 渴望提升软件设计能力,驾驭复杂Go项目却缺乏章法?
  • 想打造生产级的Go服务,却在工程化实践中屡屡受挫?

继《Go语言第一课》后,我的《Go语言进阶课》终于在极客时间与大家见面了!

我的全新极客时间专栏 《Tony Bai·Go语言进阶课》就是为这样的你量身打造!30+讲硬核内容,带你夯实语法认知,提升设计思维,锻造工程实践能力,更有实战项目串讲。

目标只有一个:助你完成从“Go熟练工”到“Go专家”的蜕变! 现在就加入,让你的Go技能再上一个新台阶!


商务合作方式:撰稿、出书、培训、在线课程、合伙创业、咨询、广告合作。如有需求,请扫描下方公众号二维码,与我私信联系。

© 2026, bigwhite. 版权所有.

别读代码了,看着它流过就行:ClawdBot 作者的 AI 开发工作流

作者 bigwhite
2026年1月28日 08:04

本文永久链接 – https://tonybai.com/2026/01/28/clawdbot-author-ai-development-workflow

大家好,我是Tony Bai。

在过去的一年里,我们见证了 AI 编程工具的井喷。从 Copilot 到 Cursor,从 Windsurf 到 Claude CodeGemini CLI和Codex,每个人都在寻找那个“完美的开发助手”。

最近,爆火的个人AI助理开源项目 ClawdBotPSPDFKit 的创始人 Peter Steinberger 发布了一系列关于他AI 开发工作流的深度博文。他以一种近乎“未来主义”的视角,描述了一个令传统程序员既兴奋又恐惧的景象:

“I stopped reading code and started watching it stream by.”
(我不再读代码了,我只是看着它流过。)

这可真不是一句狂言,而是一种全新的且现实可行的工程范式

当 AI 的可靠性达到临界点,软件交付的速度不再受限于人类的打字速度,而是受限于模型的推理速度(Inference Speed)

今天,我们结合 Peter 的最新实践,为你拆解这套“以人为核心、AI 为手脚”的顶级开发工作流。

质变时刻:学会了“深思熟虑”的模型+工具链的“极简回归”

根据 Peter 的观察,真正的质变发生在 GPT-5.2 这一代模型发布之后。

早期的模型(如 Claude 3.5 Sonnet),虽然聪明但急躁,往往“顾头不顾腚”。而新一代的 Codex 模型学会了“沉默”

在面对一个复杂的重构任务时,模型可能会静默阅读代码长达 10 到 15 分钟,一言不发。这种“Think before Act”的特性,让它能够构建出极其完整的上下文图谱。结果就是:它能一次性(One-shot)搞定跨越数十个文件的大型重构,且几乎零 Bug。

这也宣告了 Plan Mode(规划模式)的消亡。以前我们需要强制 AI 先写计划再写代码,那是为了给旧模型的智商打补丁。现在,开发者可以直接与 AI 对话,像与一位资深架构师协作一样流畅。

此外,在尝试了市面上几乎所有工具(VS Code, Zed, Cursor, Gemini)之后,Peter 最终回归了一套极简的组合:
Ghostty + Claude Code + Minimal Tooling

为什么?因为 “Less is More”

  • 终端的复兴: 他抛弃了不稳定的 VS Code 终端,全面回归 Ghostty。因为在 AI 时代,终端才是最纯粹的交互界面。
  • 屏幕即战场: 他使用 Dell 40寸带鱼屏(3840×1620),同时平铺 4 个 Claude 实例 + Chrome。他不需要切换窗口,他像监控仪表盘一样监控着 4 个并发任务的进展。
  • 摒弃复杂 MCP: 他甚至反主流地删除了大部分 MCP(Model Context Protocol)。因为 AI 有时候会自作聪明地启动 Playwright 去抓取网页,而直接读取代码反而更快、更准、更省 Token。

Peter的这些实践告诉我们:不要被花哨的工具迷了眼。一个稳定、高性能的终端,加上一个聪明的 CLI Agent,就是最强大的武器。

像工厂一样生产:并行工程学

当“写代码”不再占用人类的脑力带宽时,Peter 的工作方式从“工匠”变成了“工厂厂长”

并行处理 (Parallel Processing)

他通常同时推进 3 到 8 个项目

  • 窗口 1:重构后端架构;
  • 窗口 2:优化前端交互;
  • 窗口 3:跑全链路测试。

开发者只需要在这些 Session 之间切换,确认结果,给出下一个指令。

线性推进,绝不回滚 (Never Revert)

“软件开发就像登山,走错路了就绕回来,而不是读档重来。”

他几乎不再使用 git reset。如果 AI 写歪了,直接告诉它“换个思路”,它会在现有基础上自我修正。甚至连 Plan Mode(规划模式) 都变得不再必要,就像前面提到的,新一代模型(GPT-5.2等)学会了“深思熟虑”,能一次性搞定复杂重构。

跨项目“抄作业” (Cross-Referencing)

代码复用从未如此简单。他不再写 Prompt 描述需求,而是直接说:

“Look at ../vibetunnel project, and implement the same logging system here.”

AI 会自动跨目录读取代码,提炼模式,并完美适配到当前项目。

基础设施的重构:CLI First

为了配合这种极速开发,Peter 彻底重构了他的技术栈选择逻辑。

拥抱 CLI (Command Line Interface)

“Whatever you build, start with a CLI.”

无论做什么 App,先做 CLI 版本。因为 Agent 调用 CLI 最方便,测试 CLI 最容易。GUI 只是 CLI 的一层皮。只要内核跑通了,让 AI 套个 React 壳只是分分钟的事。

Oracle(预言机)

当 Agent 遇到知识盲区(比如最新的 API 变动)时,它会自动调用 Oracle ——一个Peter开源实现的、联网的、专门负责爬取文档并总结答案的“元智能体”。知识获取的闭环,彻底自动化了。

文档驱动 (Docs-Driven)

他不再维护复杂的 Prompt 库,而是维护项目的 docs/ 目录。

想规范 AI 的行为?写一个 docs/architecture.md。

想让 AI 学会用 Vercel?在 CLAUDE.md 里加一行:logs: axiom or vercel cli。

文档,就是 AI 的“长期记忆”和“员工手册”。

给开发者的启示:核心竞争力迁移

在 Peter 的工作流中,我们看到了程序员核心竞争力的转移:

  1. 系统设计 (System Design) 是王道:
    当前的 AI 搞不定分布式系统设计,搞不定数据库 Schema 的前瞻性规划。这些“硬骨头”,才是人类的领地。
  2. 选择 AI 友好的生态:
    TypeScript (Web), Go (CLI), Swift (App),这三者是 AI 掌握得最好的。Peter 特别提到了 Go——以前他并不感冒,但后来发现 AI 写 Go 写得极好。为什么?因为 Go 简单的类型系统让 Lint 检查极快,AI 能迅速修正错误。相比之下,那些类型系统过于复杂或编译检查极其严格的语言,可能会增加 AI“一次做对”的难度,拖慢你的推理速度。

  3. 自动化一切 (Automate Everything):
    不要手动注册域名,写个 Skill 让 AI 去做。不要手动发推特,写个 CLI 让 AI 去发。为你自己,也为你的 AI 员工,构建大量的自定义基建

小结:享受创造

有人担心 AI 会让程序员失业,但 Peter 的实录告诉我们:这可能是程序员最好的时代。

在这个时代,限制你产出的不再是你的手速,也不再是你对某个库的熟悉程度,而仅仅是你的想象力

当你可以以推理速度交付软件,当你看着代码像瀑布一样流过屏幕时,编程就不再是枯燥的搬砖,而是一场纯粹的、创造性的游戏

资料链接:

  • https://steipete.me/posts/2025/optimal-ai-development-workflow
  • https://steipete.me/posts/2025/shipping-at-inference-speed

你的“未来工作流”

Peter 的工作流让我们看到了未来的一角。你敢想象自己“不再读代码”的那一天吗?在你的理想中,AI 应该帮你接管哪些“脏活累活”,让你能专注于更高维度的创造?

欢迎在评论区分享你的脑洞或对未来的担忧!让我们一起定义属于自己的 AI 工作流。

如果这篇文章点燃了你对 AI 编程的全新想象,别忘了点个【赞】和【在看】,并转发给你的极客朋友,邀请他们一起见证未来!


还在为“复制粘贴喂AI”而烦恼?

Peter 描述的“看着代码流过”的未来并非遥不可及。我的新专栏 AI原生开发工作流实战 将带你提前掌握这套高效范式:

  • 告别低效: 摒弃“聊天式编程”,重塑以文档和 CLI 为核心的开发范式。
  • 驾驭 Agent: 深入实战 Claude Code,像 Peter 一样构建自动化工作流。
  • 角色进化: 从“手动写代码”进化为“规范驱动开发”的工作流指挥家

扫描下方二维码,开启你的 AI 原生开发之旅。


你的Go技能,是否也卡在了“熟练”到“精通”的瓶颈期?

  • 想写出更地道、更健壮的Go代码,却总在细节上踩坑?
  • 渴望提升软件设计能力,驾驭复杂Go项目却缺乏章法?
  • 想打造生产级的Go服务,却在工程化实践中屡屡受挫?

继《Go语言第一课》后,我的《Go语言进阶课》终于在极客时间与大家见面了!

我的全新极客时间专栏 《Tony Bai·Go语言进阶课》就是为这样的你量身打造!30+讲硬核内容,带你夯实语法认知,提升设计思维,锻造工程实践能力,更有实战项目串讲。

目标只有一个:助你完成从“Go熟练工”到“Go专家”的蜕变! 现在就加入,让你的Go技能再上一个新台阶!


商务合作方式:撰稿、出书、培训、在线课程、合伙创业、咨询、广告合作。如有需求,请扫描下方公众号二维码,与我私信联系。

© 2026, bigwhite. 版权所有.

Clawdbot深度评测:全能AI助理的成本与实战避坑

作者 范, 路
2026年1月27日 08:47
一个复古机器人Clawdbot站在堆叠的Mac Mini主机上,周围环绕着爆炸式的社交媒体点赞图标,羊皮纸,钢笔彩色手绘的统一风格。

Clawdbot AI再进化,社交媒体又爆了。这一次是真的很厉害,还是尬吹?

大家好,欢迎收听老范讲故事的YouTube频道。被突然爆火的clawdbot给砸到头了,这是一种什么样的感觉?

我最近在X上面,看到很多人在晒他们新买的Mac mini,甚至有人晒了12台的Mac mini,摆满了办公桌。实在让我觉得很诧异,他们到底在干什么?后边都有一个词叫clawdbot。我一开始还没有太注意这件事情,昨天直播的时候有人问我:“最近最火的clawdbot你玩了没有?”哎呀我还没玩儿,因为最近在玩agent skills,还没有太关注到。这么神奇的东西我要去看一看。

突然爆火的原因

一个拟人化的AI小助手坐在办公桌前,旁边日历显示24小时工作,桌角有一堆正在燃烧的金币代表Token消耗,羊皮纸,钢笔彩色手绘的统一风格。

突然爆火的原因,是因为很多人跑出来吹了,说这个东西实在是太强了,又革命性了。2025年11月25日,这个产品就已经上线了,它是个开源产品,上线在GitHub上面。到2026年的1月,突然有很多位的网红博主开始非常用力的宣传这个产品,一下就火出圈了。这是一个住进聊天软件里面、7*24小时服务的助理,甚至有很多人给这个助理直接起了个名字。

大家要注意,我们一般不会给ChatGPT、Gemini或者是Anthropic Claude起名字,而像现在的这个clawdbot,很多人都给他们起名字了。这是一个非常非常划时代的事情,因为你一旦给它起名字了,它就人格化了。这不是那种情感陪伴型的聊天工具,这是一个帮你去办公的助理,这是非常重要的。这帮网络大V就出来吹了,说这是个人AI助理的未来形态。有人一周烧掉了1.8亿TOKEN。大家注意,这是非常关键的一个信息:使用clawdbot,你的TOKEN在燃烧

产品形态与体验的明显差异

1. 全时驻留

台Mac Mini安放在舒适的家居办公桌上,连接着漂浮的Word文档、Excel表格和iMessage聊天气泡,羊皮纸,钢笔彩色手绘的统一风格。

它的产品形态跟体验上,跟过去的产品有明显的差异。第一个特别重要的差异,就是全时驻留。像以前我要去跟ChatGPT聊天,我要点开APP,或者我要到网站上去打开这个网页;现在这个就不用了,它就永远在线,而且功能非常完整。这也是为什么Mac mini突然销量暴增的原因。你可以命令它:

  • 打开Word文档
  • 打开Excel
  • 去干任何事情,浏览网站
  • 用iMessage跟人聊天、给人发短信

它这个全能干,没有任何问题。但是你要保证所有功能都能使的话,特别是你要使用iMessage的话,你必须要有Mac的系统,要有Mac、要有Mac mini。这是一个自托管成本很低、部署很方便的系统。大家都是买个Mac mini放在家里头,甭管是放在办公桌上,还是放在机柜里,放在电视旁边,这都不重要。但是这是你放在自己家里头的,你不用再担心任何隐私问题了。

2. 持久记忆加上主动触达

AI助手手里拿着厚厚的记事本,正在主动轻拍一位正在休息的用户的肩膀进行提醒,背景充满记忆碎片,羊皮纸,钢笔彩色手绘的统一风格。

像我们现在都说ChatGPT也好,一些聊天工具也好,要有记忆,但是他们记住的东西其实非常少。原因也很简单,如果ChatGPT记住很多东西的话,他就不知道什么时候该用什么了。而现在的clawdbot他是全记忆,你跟他聊天的所有内容他都记得。

所以很多的博主上来用clawdbot之前,先会用很长的时间去跟他描述:

  • 我是谁
  • 我喜欢什么东西
  • 我在干什么
  • 我对什么东西感兴趣
  • 我对什么东西有什么样的要求
  • 为什么我喜欢这个球队、为什么我喜欢那首歌……

他会把这些东西通通都告诉这个clawdbot。他会记下来,记下完了以后再去跟你聊天的时候,这些通通都会变成系统资料,它就会很懂你。

而且clawdbot还有一点非常重要的是什么?就是它会主动的来去跟你聊天。原来是被动的,你不去跟ChatGPT说话,它就不会回答你任何问题,所以我们要先提出问题。而现在的话,你可以告诉他说:“什么什么时候记得提醒我干事”、“每天告诉我最近应该做一些什么什么样的事情”。不是说你列好计划让他做什么事情,而是说你觉得我应该做点什么,他会告诉你说我觉得你应该干点这个、应该干点那个,他会有很多这样的建议性的东西出来。甚至他每天早上起来说:“我今天早上起来了,把我认为你今天该干的活都给你列出来。”他可以干这样的事情。

开源且无所不能的系统

这个系统还是开源的,而且迭代的速度非常快。之所以突然爆火,还有一个很重要的原因,就是这个产品基本上是无所不能。你基本上能想到的活它全能干,包括你让它去做vibe coding,你让它指挥Claude code下去干活去,都没问题。它可以浏览各种网页替你买东西,通过agent skills和这个MCP,我们现在互联网上这些服务,它全都可以使用起来了。就是因为这些原因,这个产品突然就爆起来了。

但是你说这个里头有没有尬吹的部分?肯定有。你自己去安装的时候,你就会发现可能也没那么方便。而且如果有些人对于结果的格式要求非常严格的话,你可能会觉得他产出的东西依然是AI垃圾。但是方向是正确的,就是全时驻留、持久记忆、主动触达,这就是未来的AI助理的一个方向,而且还要最好能够全能一些,所有问题都可以解决掉。

有人说原来ChatGPT不是出过这种东西吗?原来ChatGPT你是可以通过WhatsApp跟他聊天的,为什么到这就突然爆了?因为很简单,ChatGPT你虽然可以通过WhatsApp跟他聊天,但是它只能调用ChatGPT里边这些东西。你说我想去调用外边这些东西,我想去写个Word文档、我想去做个PPT、我想去剪个视频、我想去搜集一些信息,它这个功能还是有一定局限的。他们家就是玩这套东西,所以就并没有推开。而现在clawdbot直接就爆了。

传奇的创始人:Peter Steinberger

一位睿智的程序员肖像,背景融合了PDF文档结构图和维也纳的建筑剪影,羊皮纸,钢笔彩色手绘的统一风格。

它的创始人很传奇,这个创始人的经历还让老范很有代入感,为什么?这哥们在维也纳是一位退休程序员。老范现在也可以算退休程序员了,但是人家还是比我厉害很多了。这个人叫Peter Steinberger,他是PSPDFKit的创始人。这个产品是什么?是面向开发者的PDF的SDK框架。它给你一套框架,然后你可以写程序,通过它这套框架去操作PDF,做PDF查看、PDF注释、PDF编辑、签署、填表单,做这些功能。它的产品在iOS、安卓、Web和桌面端全覆盖。它的公司主要是提供文档、PDF相关的SDK和框架能力的。因为它有这样的一个技术背景,所以对于配置系统、跨平台交付、可观测行为、安全边界等等这些方面,都是非常敏感的。这也是为什么clawdbot这样的一个产品突然会爆起来。

Clawdbot到底能干点什么?

什么都能干。就是这么简单的一个问题。但是你说真的什么都能干嘛?跟大家讲一个笑话。岳云鹏有一次出去参加综艺,人家问他你数学怎么样?说特别快没问题。然后就出了一个问题:

26*78等于多少?等于75。

人家说你这对不?

岳云鹏说:“我又没说我算的特别对,我就说我算的特别快,你就说我快不快吧?”

所以虽然clawdbot什么都能做,但是结果到底是不是能够让人满意,就是冷暖自知了。有些人很挑剔,他就觉得这不行;这些人可能提的问题也很模糊,对于结果又很挑剔,那么他就得不到满意的结果。有些人的问题提的非常详细、非常具体,对于结果特别是格式又要求不是很高,他们就会得到满意的结果。我觉得这样解释是相对比较清楚的。那种提问题、提要求的时候云山雾罩,经常玩这个“佛祖拈花一笑”,出来的这个结果还挑三拣四的这种领导,反正伺候起来比较难吧。比较难伺候的领导,clawdbot这样的助理他也搞不定。但是有一些领导就是提要求事无巨细,只要结果正确、格式无所谓的,这些领导,clawdbot就是你最好的助理。

部署Clawdbot的风险:TOKEN在燃烧

一个巨大的沙漏,里面的沙子是金币,正在快速流逝,象征昂贵的Token消耗,羊皮纸,钢笔彩色手绘的统一风格。

但是如果你去部署clawdbot,一定要小心的是什么?TOKEN在燃烧。前面有人一个礼拜烧了1.7亿TOKEN,那是非常非常贵的。通常使用clawdbot需要什么?就是买Anthropic Claude 4.5 Opus 200美金一个月的Max账号。如果没有这个账号的话,这个产品会很难用的。当然了现在我们就在看Anthropic会不会封他,因为前不久Anthropic刚刚把open code的账号给封了。原来我们使用open code的时候,也可以用Anthropic的20美金或者200美金的这种Pro或者是Max账号,但是Anthropic说不行,不让你用了。所以现在还要看,它到底能使到哪天。

千万千万不要干嘛?千万不要用Anthropic的API key,你真的会破产的。那个玩意非常非常的消耗TOKEN。GPT 5.2据说也还不错,但是跟Anthropic的Claude 4.5 Opus还是有一点点差距的,最好也是用200美金的Pro账号。用我现在这种plus账号可能是比较费劲的,我准备待会把它装上,把plus账号挂上试试。还有博主推荐Mini Max,Mini Max有10美金左右的月账号,它也是一种编程账号,效果再比open code再差一些,但是人便宜。大家也可以试一试。功能都是TOKEN烧出来的,你没有那么多TOKEN,就不要指望它有那么多功能。

为什么一定要Mac mini?

一个架子上整齐排列着多台Mac Mini组成的家庭服务器农场,指示灯闪烁,羊皮纸,钢笔彩色手绘的统一风格。

这么多人都去晒Mac mini,其实并不是必须要Mac mini,最好是使用闲置的非工作主力电脑。你说我这就是上班每天用的电脑,我把这个clawdbot挂在上头行不行?最好别这么干。为什么?因为你上班的电脑第一个,它的能力很强,晚上有可能还会关机,比如说你要把它合起来,这个电脑就会关掉。这个系统是要7*24小时工作的,所以你最好不要把它放在你的工作电脑上。很多家庭有这种闲置的Mac mini,放这个上面就挺方便的。价格也不贵,也还很省电,还很漂亮。特别是最新的Mac mini M4,很小、非常非常漂亮、非常精巧,放在家里头、放在各种地方都不显得突兀。

全功能的系统配置

最好是给clawdbot配这种叫“全功能的系统”。什么叫全功能系统?就是它可以直接使用浏览器、可以跑vibe coding、可以调用office,这些东西都是可以工作的。对于本地的算力其实并没有特别高的要求,所有的AI都是调云端的算力。它通过即时通讯工具来工作。我们想去跟clawdbot聊天的时候,你可以打开:

  • Telegram
  • Discord
  • iMessage
  • WhatsApp
  • 或者是给你发短信

都是可以的。国内的不行,像什么微信搞不定这事,因为微信对于这种机器人是封闭的,比较严格的,怕各种黑灰产。

很多人想去用iMessage,就是苹果系统的这种iMessage,这个就没办法,你必须使用Mac mini。你说我现在想整个Windows、想整个Linux上iMessage?上不去。这个iMessage也不是一个开放系统。很多苹果全家桶的玩家,特别是在程序员和AI玩家里头,苹果全家桶玩家的比例是很大的,肯定是喜欢上Mac mini的。家里头其他的闲置电脑其实也可以跑,Windows电脑也可以。但是如果你要在Windows电脑里跑,最好是装WSL。WSL就是Windows里面的Linux,现在Windows新的系统里边都是可以装一个Linux系统的。然后Linux电脑,这个肯定也是没问题的。我准备上NAS了,家里NAS已经跑了一大堆的各种各样的Docker了,它也是可以跑上去的。

云主机也没毛病。你都花了200刀去买套餐了,那你一个月花5刀去租个云主机跑这个clawdbot肯定也是没问题的。Oracle云上有免费的主机,大家可以上去玩耍一下。NAS、瘦服务器或者是在云主机上跑clawdbot,浏览器也是能用的,但是会比较费劲。vibe coding就要稍微克制一点了。如果是在你的Mac mini上,你就可以给它下指令,说打开哪个vibe coding的工具,然后在里边去给我写一什么产品出来,他自己吭哧吭哧就干活去了。你可以每天晚上睡觉之前给他布置一大堆任务,早上起来看看,完成几个、没有完成的部分你还可以去辅助一下。他是这样来干活的。你要是在云主机上,就不能干这活了。

Clawdbot是不是一次革命性的创新?

方向上肯定是。这个方向也很明确,就是无限记忆、私有部署、绝对隐私保护、7*24小时驻留、随时待命、主动沟通和提醒,基本可以解决各种问题。随着模型能力的提升、agent skills的发展,他的能力一定还会继续爆炸式增长。大模型厂商应该会争先恐后的推出新套餐了。因为有了前车之鉴,Anthropic估计过一段时间还是会封他的。这个咱们预言一下,咱们打个赌,猜一猜会不会把他封掉?前面open code用户量上去以后,Anthropic就直接把他封掉了。

因为现在买TOKEN基本上是两套玩法:一套就是你具体按100万TOKEN多少钱去算;另外一套就是给你套餐,这个编程套餐。因为现在编程实在是太烧TOKEN了,所以Anthropic出了这种编程套餐,OpenAI、谷歌都出了这种编程套餐。但是Anthropic还是希望,如果你想要去买它的编程套餐,你就只能用Claude code,你不能用其他的东西。像咱们现在讲这个clawdbot,这就不允许用。那么OpenAI跟谷歌应该会继续支持你。像open code这块,在Anthropic说我封闭它之后,OpenAI说我们准备继续支持。没毛病,你买我的plus套餐、Pro套餐,我都继续支持你。谷歌在这一块其实是放的比较宽松的,只要你愿意用,谷歌还是愿意笑脸相迎的。

国内的模型平台的话,也应该会推出一些专门的套餐,应该是会像code套餐这样,都是可以挂上使的。国内平台的code套餐基本上有5美金一个月的、10美金一个月的,甚至可能最便宜的有3美金一个月的。他们都是去仿真Anthropic的这个API形式,只要我仿真好了,就往上挂就完了,都是可以用的。

硬件与巨头的新机会

几个代表科技巨头的彩色球体悬浮在一张棋盘上方,象征市场博弈,羊皮纸,钢笔彩色手绘的统一风格。

家庭瘦服务器应该有新的应用场景,以后的NAS也可以配更好的CPU GPU了。至于家里是不是要买一台Mac mini,让我再犹豫几天吧,反正我目前为止还没有下决心再去买一个Mac mini。至于Mac mini农场,也许会在一段时间内流行起来。什么叫Mac mini农场?就是在一个房间里边装一大堆的Mac mini,允许大家从远程去访问它、替你去维护,我们只管去付租金就可以了。这可能也是一种未来的服务形式。

黑苹果可能会焕发第二春。什么叫黑苹果?就是在一些比较便宜的Intel这种架构上,使用macOS系统重新去破解,然后给你装上,让你去使用。这个东西叫黑苹果。其实黑苹果随着后来苹果出M系列芯片以后,已经不是那么活跃了,但是现在的话,应该会重新再活跃起来。

腾讯、Meta、苹果、谷歌机会来了,就看谁能抓得住了。为什么他们机会来了?他们做即时通讯工具的。既然大家觉得以后的这些个人助理应该是活在WhatsApp、活在Telegram、活在Discord里头了,腾讯说我这有微信,干脆我在这边给你配一个助理不就完事了吗?你有什么事跟助理说不就完了吗?我觉得他们未来是有机会的。至于说Meta的话,你像WhatsApp是它的,Facebook Messenger也是它的,全世界最大的两个即时通讯工具都是它的。苹果自己也是有iMessage的。它们都是有机会去腾飞一下的。

最后总结一下

又一个神奇的AI工具发布了,赶快玩起来吧。甭管好不好使,大家一定要去玩起来。7*24小时永久驻留、永久记忆、主动提醒、全能助理,这应该就是未来的方向了,这个基本上可以确定。助理已经这么强大了,具体做什么就是留给我们的问题了。网上的介绍视频里头经常是这样的,他问clawdbot:“你觉得我该干点什么?”还是要有自己的想法。只要烧得起TOKEN,我们每个人都会得到一个强大的全能助理。

好,这一期就讲到这里。感谢大家收听,请帮忙点赞、点小铃铛,参加DISCORD讨论群。也欢迎有兴趣、有能力的朋友加入我们的付费频道。再见。


背景图片

Claude Code 官方最佳实践:50 条没人告诉你的“核心军规”

作者 bigwhite
2026年1月25日 08:24

本文永久链接 – https://tonybai.com/2026/01/25/claude-code-official-best-practices-50-core-rules

大家好,我是Tony Bai。

在使用 Claude Code 的过程中,你是否遇到过这种情况:

有时候它简直是神,几秒钟就能重构一个复杂的模块;但有时候它又蠢得让人抓狂,甚至会一本正经地写出跑不通的代码,或者把你刚刚纠正过的错误再犯一遍。

为什么?是模型不稳定吗?

不,这通常是因为你的“打开方式”不对

Claude Code 本质上是一个运行在 CLI 环境中的自主智能体(Agentic Coding Environment)。它受限于一个核心物理法则:上下文窗口(Context Window)

  • 上下文满了,它就会“失忆”。
  • 指令不清晰,它就会“幻觉”。
  • 没有反馈,它就会“盲目自信”。

为了帮你跨越从“新手”到“高玩”的门槛,我精读了 Anthropic 刚刚发布的官方最佳实践文档,并结合实战经验,提炼出了这 50 条核心军规

掌握了它们,你就是指挥 AI 军团的编排者(Orchestrator)了。


基础心法——对抗熵增 (Foundational Tips)

核心逻辑: 上下文是稀缺资源,清晰度是最高杠杆。

  1. Clear Task Framing: 开局第一句话决定成败。明确告诉它:Role(角色) + Task(任务) + Context(背景)
  2. Front Load Instructions: 最重要的约束(比如“绝对不要修改配置文件”),必须放在 Prompt 的最前面。
  3. Verification (最高杠杆): 这是最重要的 Tip。 必须给 Claude 一个“验证它自己工作”的方法。
    • ❌ “修复这个 Bug。”
    • ✅ “修复这个 Bug,并编写一个测试用例来验证修复是否成功。”
  4. Provide Screenshots: 涉及 UI 修改,直接粘贴截图。Claude 现在的视觉能力极强,一张图胜过千言万语。
  5. Address Root Causes: 遇到报错,明确告诉它:“不要仅仅消除报错(Suppress),要解决根本原因。”
  6. Plan Mode (Shift+Tab): 复杂任务(涉及 >2 个文件)必须先进 Plan 模式。
    • Explore -> Plan -> Implement
  7. Review the Plan: 在它动手写代码前,先 Review 它的计划。这时候纠偏成本最低。
  8. One-shot vs Plan: 改个拼写错误?直接干。重构模块?必须 Plan。
  9. Specific Context: 不要让它通读整个仓库。用 @ 引用具体文件。
  10. Rich Content: 善用 cat error.log | claude,直接把日志管道喂给它。
  11. Clear Context: 任务做完了?立刻运行 /clear。不要在垃圾堆里盖新楼。
  12. Summarize Before Clear: 如果想保留记忆,先让它 /compact(压缩上下文),再继续。

工程化配置——给 AI 立规矩 (Configuration)

核心逻辑: 不要每次都手动教,把规则固化到文件里。

  1. CLAUDE.md 是宪法: 在根目录创建 CLAUDE.md,这是它每次启动必读的“员工手册”。
  2. Use /init: 运行 /init 命令,让 Claude 自动分析项目并生成初始的 CLAUDE.md。
  3. Prune Ruthlessly: CLAUDE.md 不要写废话!
    • ❌ “请写出优雅的代码。”(浪费 Token)
    • ✅ “使用 npm run test:unit 运行单元测试。”(高价值信息)
  4. Bash Commands: 在文档里告诉它项目特有的命令(如构建、部署脚本)。
  5. Code Style: 明确约定:用 Tab 还是 Space?用 TypeScript 还是 JS?
  6. Import Rules: 告诉它 @src/ 别名指向哪里,避免它瞎猜路径。
  7. Child Directories: 对于 Monorepo,可以在子目录放单独的 CLAUDE.md,它会自动继承。
  8. Permissions Allowlist: 别做“点点点”工程师。用 /permissions 把 ls, grep, npm test 加入白名单。
  9. Sandbox Mode: 对于不信任的任务,开启 /sandbox,让它在隔离环境中撒欢。
  10. Dangerously Skip: 只有在完全可控(断网/沙箱)时,才使用 –dangerously-skip-permissions。
  11. CLI Tools: 安装 gh (GitHub CLI),让 Claude 能直接提 PR、看 Issue。
  12. MCP Connect: 使用 claude mcp add 连接 Postgres 或 Notion。数据不再是孤岛。
  13. Learn CLI: 不知道怎么用某个工具?让 Claude 先运行 tool –help 自学。

技能与自动化——扩展能力 (Skills & Automation)

核心逻辑: 把重复的流程封装成“技能”,把 AI 集成到流水线。

  1. Skills Definition: 在 .claude/skills/ 下创建 SKILL.md,定义可复用的能力。
  2. Domain Knowledge: 把复杂的业务逻辑(如“订单状态流转规则”)封装成 Skill,用到时才加载。
  3. Disable Model Invocation: 对于高风险 Skill,设置 disable-model-invocation: true,强制人工确认。
  4. Custom Subagents: 定义专门的 .claude/agents/security-reviewer.md。
    • 让它扮演“安全专家”,只负责 Review,不负责写代码。
  5. Delegate to Subagents: 在主会话中说:“用 security-reviewer 检查刚才的代码。”
  6. Install Plugins: 运行 /plugin,去市场找现成的技能包(如 Python 代码分析)。
  7. Code Intelligence Plugin: 必装!给 Claude 提供“跳转定义”和“查找引用”的能力(基于 LSP)。
  8. Hooks: 设置 .claude/settings.json 中的 Hooks。
    • 例如:每次 Auto-fix 后自动运行 Lint。
  9. Headless Mode: claude -p “prompt”。这是自动化的神器。
  10. CI Integration: 在 GitHub Actions 里用 Headless Mode 自动 Review PR。
  11. Structured Output: 使用 –output-format json,让脚本能解析 Claude 的回答。
  12. Fan-out Pattern: 批量修改 100 个文件?写个 Shell 脚本循环调用 claude -p。

避坑指南——反模式 (Anti-patterns)

核心逻辑: 识别“失败的味道”,及时止损。

  1. The Kitchen Sink Session: 试图在一个 Session 里修 Bug、写新功能、又写文档。
    • 后果: 上下文污染,智商直线下降。
    • 解法: 一事一议,做完就 /clear。
  2. Over-correcting: 纠正了两次还不对?
    • 后果: 错误路径被强化,越改越错。
    • 解法: 别纠缠!直接 /clear,优化 Prompt 后重来。
  3. The Trust-then-Verify Gap: 还没测试就觉得“看起来是对的”。
    • 后果: 生产环境事故。
    • 解法: 没有 Pass 测试的代码,一行都别信。
  4. The Infinite Exploration: 让它“调查一下代码库”,不给范围。
    • 后果: 读了几百个文件,Token 耗尽,还没开始干活。
    • 解法: 限制搜索范围,或者用 Subagent 去做调研。
  5. Vague Error Reporting: 只说“不行”或“报错了”。
    • 后果: Claude 只能瞎猜。
    • 解法: 粘贴完整的 Stack Trace。

高阶操作——神级技巧 (Pro Moves)

  1. Resume Session: 昨天没干完?claude –resume 接着聊。
  2. Rename Session: 用 /rename 给会话起个好名字(如 feat-login-oauth),方便找回。
  3. Rewind (Esc+Esc): 走错方向了?双击 Esc 回滚到上一步,比改代码快。
  4. Let Claude Interview You: 不知道怎么写 Spec?
    • Prompt:“我想做个 X 功能。请作为一个资深架构师,向我提问,直到你觉得信息足够写出 Spec 为止。”
  5. Self-Correction Loop: 让它自己改自己的作业。
    • Prompt:“分析你刚才生成的代码,找出 3 个潜在的 Edge Case,并修复它们。”
  6. Model Tier Selection: 简单的 Lint 修复用 Haiku(快且便宜),架构设计用 Opus(聪明但贵)。
  7. Parallel Sessions: 开两个终端。一个写代码(Writer),一个做 Review(Reviewer)。左右互搏,质量倍增。
  8. Develop Intuition: 最后的建议——多用。建立对“上下文容量”和“模型能力边界”的体感。

小结:从 直觉 到 方法论

刚开始使用 Claude Code,你可能靠的是直觉。但要在大规模工程中稳定产出,你必须依靠方法论

这 50 条军规,就是从“抽盲盒”走向“工业化生产”的桥梁。掌握了它们,你就不再是被动的 User,而是这支硅基军团的 Commander

资料链接:https://code.claude.com/docs/en/best-practices


深度实战:构建你的“AI 原生工作流”

Tip 只是冰山一角。真正的威力在于将这些技巧组合成一套“开发工作流”

在我的极客时间专栏AI 原生开发工作流实战中,我将带你实战演示:

  • CLAUDE.md 实战:如何从零编写一个完美的、模块化的项目宪法?
  • 驾驭Claude Code:实现工作流自动化
  • 从“AI使用者”进化为规范驱动开发的“工作流指挥家”

别再用蛮力写代码了。扫描下方二维码,学会用 AI 的杠杆。


你的Go技能,是否也卡在了“熟练”到“精通”的瓶颈期?

  • 想写出更地道、更健壮的Go代码,却总在细节上踩坑?
  • 渴望提升软件设计能力,驾驭复杂Go项目却缺乏章法?
  • 想打造生产级的Go服务,却在工程化实践中屡屡受挫?

继《Go语言第一课》后,我的《Go语言进阶课》终于在极客时间与大家见面了!

我的全新极客时间专栏 《Tony Bai·Go语言进阶课》就是为这样的你量身打造!30+讲硬核内容,带你夯实语法认知,提升设计思维,锻造工程实践能力,更有实战项目串讲。

目标只有一个:助你完成从“Go熟练工”到“Go专家”的蜕变! 现在就加入,让你的Go技能再上一个新台阶!


商务合作方式:撰稿、出书、培训、在线课程、合伙创业、咨询、广告合作。如有需求,请扫描下方公众号二维码,与我私信联系。

© 2026, bigwhite. 版权所有.

Update Vim with Bells and Whistles

作者 Haoxiang Li
2024年12月26日 04:33
There is a lot happening in tech, and AI is apparently replacing developers in batches, according to all kinds of "authoritatives". The reason the singularity is behind schedule, and we still have jobs, must because AI is using Emacs. LOL.

如何管理桌面窗口

作者 Claude Ray
2020年12月23日 20:49

想向同事分享窗口切换的一点心得,不小心写成一篇没什么营养的方法论。虽然主要还是讲窗口切换。

publish

图片未加速

什么是窗口管理

如果你不知道什么是窗口管理,在开启话题之前,不妨先来确认一下窗口管理器和桌面环境的概念。

首先说桌面环境,翻译自 Desktop Environment,它负责为用户提供完整的操作界面,而不仅仅是狭义的“桌面部件”,还包括图标、窗口、工具栏、壁纸等等。

再说窗口管理器,Window Manager,它是上述桌面环境的一部分,关乎图形化应用的窗口的基本操作,主要为如何进行排列和切换。窗口管理器是桌面环境的一部分,甚至可以完全独立于桌面环境,只运行窗口管理器,从而节省硬件资源。它包含以下类型:

  • Float 悬浮:不同窗口可以相互重叠,就像桌子上随意摆放的白纸一样(这里借用了 Archlinux Wiki 的比喻)。正是 MacOS 和 Windows 提供的模式。
  • Tiling 平铺:窗口不能重叠,而是像瓦片一样挨个摆放。
  • Dynamic 动态:兼顾上述两种模式,可以动态切换窗口放置方式。

不同类型的窗口管理器提供了不同的窗口摆放方式,还提供了各自的窗口切换逻辑,其中“平铺”更倾向于使用键盘操作,如何选择,主要看个人口味。

虽然着重介绍了窗口管理器,但它不是今天的主角,我们应该跳出所有的运行环境,去发现真正的“窗口管理器”其实是使用者自己。

排列方式

窗口排列是一个答案无足轻重选择题,需要结合显示器的使用习惯作答。如果仅从思路上讲,相比手动排列,自动排列无疑是更好的选择,此时平铺类窗口管理器的优势就体现出来了。

然而,Linux 可以非常轻松地调换窗口管理器,在 MacOS 下可供的选择就不多了。yabai 要求关闭 SIP,提高了安全风险,Amethyst 功能较弱,好在轻量可控。如果放弃一点点平铺的功能性,可以选择 moom 这类辅助布局软件。考虑到本文不是工具推荐,也就不再介绍更多。

对使用小屏幕和习惯全屏的用户而言,绝大多数的使用场景是全屏,则没必要安装辅助工具。

切换方式

操作背景

按以下特征对号入座,目的是想让大家思考不同使用习惯之间的异同点。现在你的窗口管理习惯,是否适用于其他的用户呢?

窗口模式:

  • 全屏化
  • 窗口化
  • 最小化(隐藏)

桌面分布:

  • 单显示器-单桌面:将所有开启的窗口放在同一个桌面下,不采用任何虚拟桌面。
  • 单显示器-多桌面:(按照习惯)将不同的软件放在不同的虚拟桌面下。
  • 多显示器-单桌面:和多桌面类似,但不采用虚拟桌面,每台显示器就是一个桌面。
  • 多显示器-多桌面:各台显示器放置了不同的虚拟桌面,互相隔离。

操作习惯

  1. 鼠标/触摸板
  2. 全局快捷键(系统默认)
    • MacOS 可以使用 command+tab 和 command+` 切换,Linux、Windows 有 alt+tab
    • MacOS 可以使用 control+↑ 和手势操作,Linux、Windows 有 win、win+tab
  3. 启动器:例如 MacOS 的 Spotlight、Alfred,Windows 的 Everything,Linux 的 rofi、dmenu 等等
  4. 全局快捷键(自定义)

它们的区别:

  1. 寻找(思考) -> 移动(思考+操作) -> 确认(操作)
  2. 寻找(操作+思考) -> 确认(操作)
  3. 寻找(思考+肌肉记忆) -> 确认(操作)
  4. 确认(思考+肌肉记忆)

肌肉记忆≈闭眼操作

虽然存在很大的误差,但不难发现,桌面越复杂,操作复杂度的差距就越明显。

如何自定义快捷键

两个代表性工具,MacOS Hammerspoon,Linux wmctrl。同事 MacOS 开发较多,因此以 Hammerspoon 为例。

1
2
3
4
5
6
7
8
9
10
11
local hyper = {"cmd", "shift"}

-- 示例:打开或切换到浏览器
hs.hotkey.bind(hyper, "C", function()
hs.application.launchOrFocus("/Applications/Google Chrome.app")
end)

-- 示例:打开或切换到终端
hs.hotkey.bind(hyper, "Return", function()
hs.application.launchOrFocus("/Applications/Alacritty.app")
end)

假如一个应用开启了多个窗口,也可以通过窗口标题、序号进行精准切换。

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
--- 根据标题切换应用窗口
-- @param appTitle 系统 menu bar 左上角的标题
-- @param appName 安装目录的名称或绝对路径
-- @param winTitle 模糊匹配项目名,注意 .()[]+- 等字符需要转义
function launchOrFocusWindow(appTitle, appName, winTitle)
return function()
local app = hs.application(appTitle)
if app == nil then
hs.application.open(appName)
else
local windows = app:allWindows()
for _, win in pairs(windows) do
local found = string.match(win:title(), winTitle)
if found ~= nil then
win:focus()
return
end
end
app:activate()
end
end
end

-- 示例:VSCode 多开窗口的切换,给名为 "my-project" 的项目定制快捷键
hs.hotkey.bind(hyper, "1", launchOrFocusWindow("Code", "Visual Studio Code", "my%-project"))

launchOrFocusWindow 参数有些奇葩,因为 hs.application.get 和 hs.application.open 分别需要 title、path,互不兼容(可能是 bug)。
不过 get 和 open 还同时支持 bundleID,我认为名称对普通用户更友好,但如果你知道怎么获取 bundleID,自然可以用它来统一此处的入参。

利用丰富的 API,你还可以设计更多复杂的功能。

如何设置更多快捷键

全局快捷键极易引起冲突,譬如某狗输入法(别用)。为了避免这种烦恼,我们可以在 Hammerspoon 设置组合键。

1
local hyper = {"cmd", "alt", "ctrl"}

可惜,并不是所有人的手都能成长为“八爪鱼”,腱鞘炎了解一下?我们尽可能把多个按键合并,同时注意减少小拇指的使用。

以 MacOS 为例,使用 Karabiner-Elements,将大拇指附近不需要的按键设置为 hyper,配置示例如下

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
{
"title": "Change option key",
"rules": [
{
"description": "Change right_option to left_option + left_control + left_command if pressed with other keys, to escape if pressed alone.",
"manipulators": [
{
"type": "basic",
"from": {
"key_code": "right_option",
"modifiers": {
"optional": [
"any"
]
}
},
"to": [
{
"key_code": "left_option",
"modifiers": [
"left_control",
"left_command"
]
}
],
"to_if_alone": [
{
"key_code": "escape"
}
]
}
]
}
]
}

按住右 option,等于同时按住了 option+control+command,还可以随手实现轻按一下等于 ESC 的效果。

别忘了,组合键可不止这三个,还可以再从键盘上选几个键,设为 option+control+command+shift 等等,从此再也不用担心自定义的键位不够用了。

结语

排列窗口的方式很大程度取决于个人口味,自由度也非常高。窗口切换的操作具备更强的逻辑性,需要付出一定的成本。两者都可以提高工作效益,值得思考改进。但也必须承认,改进 Workflow 的边际效应明显,希望读完这篇文章的你,宁可什么都不做,也不要反复抉择。

最后,分享一下我目前的 MBP 使用习惯吧:极端的全屏使用者,彻底禁用 Dock,隐藏 Menu Bar,将通知和时间放在了 Touch Bar,每天享受沉浸式的屏幕体验。

Python dev workflow on macOS

作者 herrkaefer
2018年10月25日 04:57

Here is the new workflow in place of the old popular one using virtualenv, pip, requirements.txt and virtualenvwrapper.

Tools

  • pyenv for Python version installation and switch
  • Pipenv for virtualenv creation and package management for each project
  • Pipenv-Pipes for Pipenv environment switch

Pipenv is the central tool. pyenv provides specific version of Python (and pip) for Pipenv to initialize its virtualenv. Pipes is just a handy tool for fast navigation between Pipenv’s virtualenvs (like virtualenvwrapper’s workon), which may be built into Pipenv in the future.

Basic workflow

pyenv

To install:

$ brew install pyenv

then add eval "$(pyenv init -)" to shell (e.g. ~/.zshrc)

To show available Python versions to install:

$ pyenv install --list

To install a Python version:

$ pyenv install <version>

Pipenv

Install Pipenv:

$ brew install pipenv

To install environment with specific Python version other than system default, this version must exist in system, so we can use pyenv to install the version first, then switch to its context.

$ pyenv shell <version>
$ pipenv --python <version>

After this, pyenv will be of no use because corresponding Python and pip have been installed into Pipenv’s context, unless you update to a new Python version.

Tips

Create Pipfile from requirements.txt

To use Pipenv for an old project with requirements.txt available, we can first

$ pipenv install

Pipfile will be automatically created from requirements.txt, with all packages installed with specific version numbers.

Second, run

$ pipenv graph

to show a dependency tree graph, from which we can identify less packages that we want. Then we can manually edit Pipfile to keep only these key packages. Note that it does not need to make a Pipfile without any redundant (i.e. all packages are leaf nodes in the dependency tree).

Last, run pipenv install again.

Time saving with --skip-lock

Uninstall packages that are not in Pipfile

Manually deleted packages in Pipfile would not be automatically uninstalled, we can use

$ pipenv clean

Sublime Text syntax highlighting of Pipfile

(Tested for ST 3)

  1. Install package TOML for TOML syntax highlighting. (Pipfile uses TOML format.)
  2. Install package ApplySyntax for custom syntax hightlighting for non-default format
  3. Add the following to ApplySyntax settings:
"syntaxes": [
    {
        "syntax": "TOML/TOML",
        "rules": [
            {"file_path": ".*\\Pipfile$"}
        ]
    },
    {
        "syntax": "JavaScript/JSON",
        "extensions": ["Pipfile.lock"]
    },
]

The post Python dev workflow on macOS appeared first on herrkaefer.

Alfred 2 Workflow 推荐:OmniFocus Task Actions

作者 Lucifr
2013年4月22日 10:49
Alfred 2 Workflow 推荐:OmniFocus Task Actions

OmniFocus Task Actions 是一个可以在 Alfred 2 中对 Omnifocus 中的任务进行操作的 workflow。

功能

Alfred 2 Workflow 推荐:OmniFocus Task Actions

  • 搜索 project、context、perspective
  • 查看相应 project、context、perspective 下的任务
  • 查看 Inbox 中的任务
  • 查看今天完成的任务
  • 可对任务进行的操作:
    • Check/Uncheck
    • Flag/Un-flag
    • 改变 Project
    • 改变 context
    • 改变 start/due date
    • 添加 note
    • 在 OmniFocus 中打开

安装

下载 OmniFocus Task Actions 并导入 Alfred 2

关键词

  • .of - 显示可用操作列表

管理 Project

  • .offp [project 名称的一部分] - 搜索 project

    • ENTER - 显示所选 project 下的有效任务
  • .oftp [project 名称] - 显示该 project 下的有效任务

    • ENTER - 显示所选任务的细节

管理 Context

  • .offc [context 名称的一部分] - 搜索 context

    • ENTER - 显示所选 context 下的有效任务
  • .oftc [context 名称] - 显示该 context 下的有效任务

    • ENTER - 显示所选任务的细节

管理 Perspective

  • .offv [perspective 名称的一部分] - 搜索 perspective

    • ENTER - 显示所选 perspective 下的有效任务
  • .oftv [perpective 名称] - 显示该 perspective 下的有效任务

    • ENTER - 显示所选任务的细节

管理任务

  • .ofti - 显示 Inbox 中的任务

    • ENTER - 显示所选任务的细节
  • .ofdt - 显示今日完成的任务

    • ENTER - 显示所选任务的细节

可对任务进行的操作

Alfred 2 Workflow 推荐:OmniFocus Task Actions

值得注意的是任务的状态是直接可以通过 Check/Uncheck 这一项前的图标来看出来的,赞啊

设置

  • .oftheme - 切换主题,可选 light 和 dark,如果 Alfred 本身的主题是偏暗就选 light,反之则反之

快捷键

  • Shift+Ctrl+I - 显示 Inbox 中的任务
  • Shift+Ctrl+D - 显示今日完成的任务
  • Shift+Ctrl+P - 搜索 project
  • Shift+Ctrl+C - 搜索 context
  • Shift+Ctrl+V - 搜索 perspective

目前存在的问题

  • 对任务进行修改操作后有时似乎不能立刻反映出来
  • 图标无法显示的情况,先使用 .oftheme 选择主题就可以了
❌
❌