Files
my_wiki/wiki/practices/Mitchellh-AI-Adoption-Journey.md
T
2026-04-11 23:12:14 +08:00

154 lines
8.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
title: "Mitchell Hashimoto 的 AI 采用之旅"
source: "https://mitchellh.com/writing/my-ai-adoption-journey"
author: "Mitchell Hashimoto"
published: 2026-02-05
last_updated: 2026-04-11
tags:
- practices
- adoption
- harness-engineering
raw_sources:
- path: raw/My AI Adoption Journey.md
hash: "sha256:initial"
---
# Mitchell Hashimoto 的 AI 采用之旅
本文记录了 HashiCorp 创始人 Mitchell Hashimoto 从 AI 怀疑论者到深度用户的六个阶段采用之旅。他的经历为如何有效采用 AI 工具提供了实用的指导框架。
## 核心论点
Mitchell 认为,任何有意义的工具采用都必然经历三个阶段:
1. **低效期** - 初期感觉不如现有工作流高效
2. **胜任期** - 逐渐掌握,达到与手动工作相当的效率
3. **变革期** - 发现新的工作方式,彻底改变工作流和生活
> **关键洞察**:必须强迫自己度过前两个阶段,才能发现 AI 的真正价值。
---
## 六个采用阶段
### 阶段 1:放弃聊天机器人界面
**立即停止尝试通过聊天机器人执行有意义的工作。**
聊天机器人(如 ChatGPT、Gemini 网页版)有其实际价值,是日常 AI 工作流的一部分,但在编码方面的效用非常有限。你大多只是希望它们基于先前训练得出正确结果,而纠正它们需要你(人类)反复告诉它们错了。这种方式效率低下。
**关键发现**
- 聊天界面在棕色地带(brownfield)项目中效果很差
- 复制粘贴代码和命令输出的过程令人沮丧
- 必须使用**智能体(Agent)**才能找到价值
**智能体的最低要求**
- 读取文件
- 执行程序
- 发出 HTTP 请求
> **个人转折点**:将 Zed 命令面板的截图粘贴到 Gemini,要求它用 SwiftUI 重现,结果非常好。Ghostty 的 macOS 命令面板仅在此基础上做了轻微修改。
---
### 阶段 2:重现自己的工作
**强迫自己用智能体重现所有手动提交。**
Mitchell 最初使用 Claude Code 时并不满意,觉得必须润色它生成的所有内容,这比自己动手花的时间还多。但他没有放弃,而是**强迫自己用智能体重现所有手动提交**—— literally 把工作做两遍。先手动完成工作,然后与智能体斗争以产生相同质量和功能的结果(当然不让它看到手动解决方案)。
**这一过程的收获**
1. **分解任务** - 将会话拆分为独立、清晰、可操作的任务。不要试图在一个大型会话中"画出整只猫头鹰"。
2. **规划与执行分离** - 对于模糊的请求,将工作分为规划会话和执行会话。
3. **自我验证** - 如果给智能体一种验证其工作的方法,它通常会修正自己的错误并防止回归。
**更重要的收获**
- 了解了智能体擅长什么、不擅长什么
- 对于擅长的任务,掌握了如何获得想要的结果
- 知道了**什么时候不应该使用智能体**——这本身就是巨大的时间节省
---
### 阶段 3:日终智能体
**每天最后 30 分钟启动一个或多个智能体。**
Mitchell 的下一个模式是:**留出每天最后 30 分钟来启动一个或多个智能体。** 他的假设是,也许可以让智能体在他无法工作的时间取得一些积极进展。基本上:不要试图在已有时间内做更多事情,而是尝试在没有的时间内做更多事情。
**发现的高价值任务类别**
- **深度研究会话** - 要求智能体调查某个领域,例如查找特定语言中具有特定许可证类型的所有库,并为每个库生成多页摘要,包括优缺点、开发活动、社会情绪等。
- **并行智能体尝试不同的模糊想法** - 不期望它们产生可交付的成果,但也许可以在第二天处理任务时揭示一些未知的未知。
- **Issue 和 PR 分类/审查** - 智能体擅长使用 `gh`(GitHub CLI),因此手动编写了一个快速方法来并行启动一堆智能体来分类问题。不允许智能体回应,只需要第二天的报告来指导高价值或低工作量的任务。
> **关键洞察**:这不是让智能体整夜循环运行。大多数情况下,智能体在半小时内完成任务。但在工作日的后半段,通常会感到疲惫,脱离心流状态,个人效率低下,因此将精力转移到启动这些智能体上,第二天早上可以"热启动",比平时更快地开始工作。
---
### 阶段 4:外包确定的任务
**让智能体做所有它几乎肯定能正确完成的工作,同时你处理其他任务。**
到了这个阶段,Mitchell 对 AI 擅长和不擅长的任务非常有信心。对某些任务,AI 会取得基本正确的解决方案有很高的信心。因此,旅程的下一步是:**让智能体做所有这些工作,同时你处理其他任务。**
**具体做法**
- 每天从昨晚分类智能体的结果开始
- 手动过滤出智能体几乎肯定能很好解决的问题
- 让它们在后台运行(一次一个,不是并行)
- **同时处理其他事情**——不是刷社交媒体,而是处于正常的、AI 前的深度思考模式
**关键规则**
- **关闭智能体桌面通知** - 上下文切换非常昂贵。为了保持效率,人类应该控制何时中断智能体,而不是相反。
- 在工作的自然休息时间,切换过去检查一下,然后继续。
> **技能形成的权衡**:这很好地抵消了 [Anthropic 技能形成论文](https://www.anthropic.com/research/AI-assistance-coding-skills) 中提出的问题。你在权衡:不为委托给智能体的任务形成技能,同时继续在手动处理的任务中自然形成技能。
---
### 阶段 5:工程化 Harness
**每次发现智能体犯错时,花时间设计一个解决方案,让智能体永远不会再犯那个错误。**
> **显而易见的事实**:当智能体第一次就产生正确结果,或最坏情况下只需要最少润色时,效率会高得多。实现这一点的最可靠方法是给智能体快速、高质量的工具来自动告诉它什么时候错了。
**Harness 工程的两种形式**
1. **更好的隐式提示(AGENTS.md** - 对于简单的事情,比如智能体反复运行错误的命令或找到错误的 API,更新 `AGENTS.md`(或等效文件)。每一行都基于一个糟糕的智能体行为,而且几乎完全解决了所有问题。
2. **实际的编程工具** - 例如,截图脚本、运行筛选测试等。这通常与 AGENTS.md 更改配对,让它知道这个工具的存在。
> **这就是我今天的位置**:每当看到智能体做了坏事,就真诚地努力防止它再做那件坏事。或者,相反地,真诚地努力让智能体验证它们在做正确的事。
---
### 阶段 6:始终有一个智能体在运行
**如果智能体没有在运行,问问自己"现在有什么是智能体可以为我做的吗?"**
Mitchell 同时也在**始终有一个智能体在运行**的目标下运作。他特别喜欢将这与较慢、更周到的模型(如 Amp 的深度模式,本质上就是 GPT-5.2-Codex)结合使用,这些模型可能需要 30 多分钟来进行小的更改。但另一面是,它确实倾向于产生非常好的结果。
**当前状态**
- 还没有运行多个智能体,目前也不想这么做
- 有一个智能体在运行是一个很好的平衡
- 目前正常工作日中可能只有 10-20% 的时间有效地让后台智能体运行
- 正在积极努力改善这一点
> **关键原则**:不想为了运行智能体而运行智能体。只有当有一个认为对自己真正有帮助的任务时才运行它们。这个目标的一部分挑战是改善自己的工作流和工具,以便可以有源源不断的高质量工作来委托。即使没有 AI,这也很重要!
---
## 今天的状态
这就是 Mitchell 今天的位置。
通过这段旅程,他个人达到了一个点:成功使用现代 AI 工具,并相信自己以基于现实的适当、审慎的观点来处理它。他完全不在乎 AI 是否会留下来——他是一个软件工匠,只是出于对这个行业的热爱而构建东西。
整个领域发展得如此之快,他确信很快就会回头看这篇文章,嘲笑自己的天真。但正如他们所说,如果你不能为过去的自己感到尴尬,你可能就没有成长。只希望能朝着正确的方向成长!
---
## 相关研究
- [[Harness-Engineering|Harness 工程]]
- [[Long-Running-Harness-Design|长运行应用的 Harness 设计]]
- [[OpenAI-Codex-Harness-Engineering|OpenAI Codex Harness 工程]]