文章摘要
作者分享了使用AI辅助开发Ghostty应用非侵入式macOS自动更新功能的完整过程,包括未经编辑的AI编码会话记录、开发思路及成本分析,强调AI是辅助工具而非替代品,开发者仍需进行大量人工编码迭代。
文章总结
用AI开发非传统功能:Ghostty的无干扰macOS自动更新
作者 Mitchell Hashimoto
发布时间 2025年10月11日
原文链接 mitchellh.com
核心内容
我最近为Ghostty终端应用开发了一个无干扰的macOS自动更新功能,这个功能主要借助AI完成开发。以下是开发过程的详细记录:
功能背景
- 起因:在一次重要的OpenAI演示会上,Ghostty的更新弹窗意外打断了演示流程
- 解决方案:开发无干扰更新通知系统,在终端窗口内显示更新状态,避免弹出窗口干扰用户工作
开发流程
前期规划
- 不使用AI工具,先手动研究Sparkle框架的文档
- 确定后端使用Sparkle的自定义UI协议,前端采用标题栏按钮方案
UI原型设计
- 第一轮AI会话:创建SwiftUI视图原型
- 关键技巧:要求AI先制定计划而非直接编码
- 成果:获得方向正确的UI原型,但需要大量手动优化
遇到技术障碍
- 发现标题栏样式冲突导致UI不可见的严重bug
- 多次AI调试失败后,决定采用备选方案:在窗口右下角显示更新通知
后端开发
- 手动创建框架后,让AI填充具体实现
- 初次尝试失败,重构视图模型结构
持续优化
- 进行16轮AI会话,包括:
- 代码重构
- 文档补充
- 模拟测试场景创建
- 最终集成
- 进行16轮AI会话,包括:
成本与时间
- 总花费:$15.98(AI计算资源)
- 开发时间:约8小时实际工作时间(分布在3天内)
- 相比纯手动开发的优势:
- 快速迭代UI细节
- 可以并行处理其他事务(如AI调试时准备早餐)
经验总结
- AI作为助手的定位:专家开发者应该将AI视为辅助工具而非替代品
- 重要实践:
- 分阶段小任务开发
- 保持最终手动代码审查
- 完善的代码文档有助于后续AI协作
- 公开AI开发会话作为教学资源
这个功能已合并到Ghostty代码库,将在1.3版本中正式发布。整个过程展示了如何有效结合人类专业判断与AI辅助工具进行复杂功能开发。
评论总结
评论总结
1. 关于Ghostty的正面评价
- 主要观点:用户对Ghostty的功能和设计表示赞赏,认为它是一款优秀的终端工具。
- 关键引用:
- "Ghostty is awesome and I almost dropped iTerm for it"(Shadowmist)
- "Loving Ghostty!"(WD-42)
2. 关于AI编程工具的讨论
- 支持观点:AI工具在编程中能提供灵感,帮助快速实现初始代码,尤其适用于UI框架等繁琐任务。
- 关键引用:
- "AI is excellent at being my muse...the single biggest win for coding agents"(tptacek)
- "The agent can do so much of the tedious searching and trial and error"(WD-42)
- 关键引用:
- 反对观点:部分用户对AI工具的实际效率持怀疑态度,认为其可能降低生产力或产生不可靠代码。
- 关键引用:
- "People are really bad at evaluating whether ai speeds them up or slows them down"(dlvhdr)
- "The code the agent created has a critical bug...it's absolutely failing to fix it"(chrsig)
- 关键引用:
3. 关于Ghostty的质疑
- 主要观点:部分用户质疑Ghostty频繁出现在热门页面是否合理,甚至怀疑其为付费广告。
- 关键引用:
- "why is HN putting it on front page every other week?"(nextworddev)
- "Smells like paid ad for amp and sourcegraph"(ampIsBad)
- 关键引用:
4. 关于AI代码审核的讨论
- 主要观点:用户强调即使使用AI生成代码,仍需人工审核以确保质量。
- 关键引用:
- "I went in to review every single line to make sure"(hoppp)
- "I'm not shipping code I don't understand"(chrisweekly)
- 关键引用:
5. 其他观点
- 关于Mitchell的回应:用户赞赏Mitchell对OpenAI事故的回应,认为其体现了负责任的态度。
- 关键引用:
- "I really respect Mitchell's response to the OpenAI accident"(commandersaki)
- 关键引用:
- 关于Amp框架的讨论:用户对Mitchell使用的Amp框架表示好奇,希望了解其与其他工具的对比。
- 关键引用:
- "Curious how it stacks up against Claude Code"(piazz)
- 关键引用:
总结
评论中既有对Ghostty和AI编程工具的积极评价,也有对其实际效果和动机的质疑。AI工具的支持者认为其能显著提升效率,尤其是初始阶段;而反对者则强调人工审核的必要性,并对AI的可靠性表示担忧。此外,部分用户对Ghostty的频繁曝光提出疑问,甚至怀疑其为商业推广。