从 Prompt 到 Product:深入解读 Vibe Coding 的理念、实践与代码范例

在过去一年里,大模型赋能编程的浪潮席卷全球,而Vibe Coding正是这股浪潮中最受关注的实践之一。本文先用一段概括把核心要点串联:Vibe Coding是一种LLM in the loop的极简开发范式,开发者以自然语言描摹目标,「氛围感」驱动的大模型负责产出大部分源码,随后人类在测试、重写与提示工程的循环中逐步收敛产品。其优势在于降低门槛、压缩从想法到可运行原型的时间;局限则体现在可维护性、安全性与知识产权归属等层面。下面分章节展开讨论,并用一份可直接运行的完整 Python 脚本演示怎样把这种理念落地到 GPT-4o 的调用流程中。


概念溯源与定义

2025 年 2 月,前 Tesla AI 负责人 Andrej Karpathy 在 X 平台发帖,首次使用vibe coding一词描述他「完全跟着氛围走,让模型写代码」的日常实验([x.com](https://x.com/karpathy/status/1886192184808149383?lang=en&utm_source=chatgpt.com "Andrej Karpathy on X: "There’s a new kind of coding I call “vibe …”))。短短数周后,Merriam-Webster 把该词条收录到「Slang & Trending」类别,定义为「借助大语言模型生成大部分软件的编程方式」(en.wikipedia.org)。Ars Technica 在长文评论中指出,这种做法将程序员从手工敲键盘转变为「提示设计师」与「质量守门人」(arstechnica.com)。IBM 的技术博客把它概括成「用日常语言表达意图,AI 将思路转译为可执行代码」(ibm.com)。

核心特征

以自然语言为主接口

与传统 IDE 相比,Vibe Coding 把Prompt视作源代码的源代码。开发者可以用一句「请帮我写一个支持 OAuth 2.0 的 Flask API 骨架」直接启动项目;模型输出的初版代码即成为后续迭代的底稿。Medium 专栏作者 Madhukar Kumar 把这一过程称作「Day 0 体验」,强调先让 v0 落地,再逐步引入工程化细节(madhukarkumar.medium.com)。

高度依赖生成式 AI 工具栈

从 OpenAI ChatGPT、Anysphere Cursor 到 Google Stitch,这些工具为Vibe Coding提供了多模态编辑器、内联解释、自动测试样例与依赖注入等能力(techcrunch.comtechcrunch.com)。vibecoding.app 甚至专门聚合了上百个此类工具,方便开发者按需求组合(vibecoding.app)。

快速原型、试错式迭代

TechCrunch 揭示,Y Combinator 2025 冬季批次里有四分之一的创业公司把 95% 以上代码交给 AI 生成,目的是在演示日前尽快拉出可用原型(techcrunch.com)。Financial Times 报道的瑞典初创公司 Lovable 用相同路线七个月就做到 7 500 万美元年经常性收入,成为欧洲成长最快的 SaaS 新人(ft.com)。

争议与风险

反对者担心安全漏洞与技术债务将随之放大。独立开发者 Simon Willison 警告:「把原型直接推生产是灾难配方」(simonwillison.net)。TechCrunch 文章也指出,企业正在涌现专门「清理 Vibe Coding 遗留代码」的创业机会,例如 TurinTech 的 2 000 万美元融资正是瞄准这一痛点(techcrunch.com)。

真实世界案例

场景 参与者 Vibe Coding 收益 痛点
独立游戏《Meatball Mania》 《The Times》记者 无需编程经验,两小时产出可运行原型 逻辑漏洞、性能不足、难以扩展(thetimes.co.uk)
企业级内嵌仪表盘 Google CEO Sundar Pichai 私人实验 通过 Replit Prompt 快速生成定制前端 生成代码缺少单测,需二次审计(timesofindia.indiatimes.com)
YC 初创 NextByte 招聘 AI 导向开发者 借助模型生成笔试题,筛选「善用 AI」人才 如何评估 Prompt 技巧成为新问题(techcrunch.com)

工作流演示

下图展示了一种典型的「Prompt → 生成 → 自动测试 → 回馈」循环:

  1. 用自然语言描述需求;

  2. LLM 产出初步源码;

  3. CI 管道触发单测,暴露错误;

  4. 错误作为新 Prompt 喂回模型,要求修复;

  5. 循环直至通过所有测试。

TechCrunch 引述 YC 合伙人 Jared Friedman 的话说,「会写 Prompt 与会写代码同样重要」(techcrunch.com)。

可运行脚本示例

以下 Python 脚本展示怎样用 OpenAI GPT-4o 在本地完成一个简易 FastAPI 服务骨架的Vibe Coding。脚本仅用单引号,便于满足「双引号替换为`」的排版规则。请先在环境变量里配置 OPENAI_API_KEY。

#!/usr/bin/env python3
# -*- coding: utf-8 -*-
'''
示例用途:
1\. 读取自然语言需求
2\. 调用 GPT-4o 生成 FastAPI 代码
3\. 把生成结果写入 main.py
4\. 自动运行黑盒测试,若失败再反馈给模型
'''
import os, subprocess, json, textwrap, openai, tempfile, sys

openai.api_key = os.getenv('OPENAI_API_KEY')

SYSTEM_MSG = (
    '你是资深 Python 架构师。'
    '目标:根据需求生成可运行的 FastAPI 应用。'
    '返回内容必须是完整 .py 文件。'
)

USER_REQ = '''
我需要一个 FastAPI 应用,有两个端点:
GET /ping → 返回 {"msg":"pong"}
POST /sum → JSON 输入 {"a": int, "b": int},返回两数之和
请给出依赖列表和运行说明。
'''

def generate_code(prompt):
    resp = openai.ChatCompletion.create(
        model='gpt-4o',
        messages=[
            {'role': 'system', 'content': SYSTEM_MSG},
            {'role': 'user', 'content': prompt}
        ],
        temperature=0.2
    )
    return resp['choices'][0]['message']['content']

def run_tests(tmp_dir):
    test_code = textwrap.dedent('''
        import json, requests, subprocess, time, os, sys, threading

        def start_server():
            proc = subprocess.Popen(
                [sys.executable, 'main.py'],
                cwd=os.getcwd(),
                stdout=subprocess.PIPE,
                stderr=subprocess.STDOUT
            )
            return proc

        def wait_ready():
            for _ in range(15):
                try:
                    requests.get('http://127.0.0.1:8000/ping', timeout=1)
                    return True
                except Exception:
                    time.sleep(1)
            return False

        def run():
            proc = start_server()
            if not wait_ready():
                proc.terminate()
                sys.exit(1)
            assert requests.get('http://127.0.0.1:8000/ping').json()['msg'] == 'pong'
            assert requests.post('http://127.0.0.1:8000/sum', json={'a': 7, 'b': 5}).json()['result'] == 12
            proc.terminate()

        if __name__ == '__main__':
            run()
    ''')
    tst_path = tmp_dir / 'test_vibe.py'
    tst_path.write_text(test_code)
    r = subprocess.run([sys.executable, str(tst_path)], cwd=str(tmp_dir))
    return r.returncode == 0

def main():
    with tempfile.TemporaryDirectory() as tmp:
        from pathlib import Path
        tmp_dir = Path(tmp)
        code = generate_code(USER_REQ)
        (tmp_dir / 'main.py').write_text(code)
        success = run_tests(tmp_dir)
        attempt = 1
        while not success and attempt < 3:
            feedback = f'单测失败,第 {attempt} 次尝试。错误日志如下:'
            feedback += open((tmp_dir / 'main.py').with_suffix('.log')).read()
            code = generate_code(feedback)
            (tmp_dir / 'main.py').write_text(code)
            success = run_tests(tmp_dir)
            attempt += 1
        if success:
            Path('main.py').write_text(code)
            print('✅ 代码已生成到 main.py')
        else:
            print('❌ 未能通过测试')

if __name__ == '__main__':
    main()

这段脚本体现了Vibe Coding的三个关键细节:

  • Prompt 设计:SYSTEM_MSG 设定输出格式与风格;USER_REQ 用纯中文描述业务需求。

  • 自动化回环:run_tests 函数在隔离环境中执行黑盒测试,失败就把日志作为新 Prompt 反馈给模型,实现「自监督」迭代。

  • 安全阀:最多三轮修复防止死循环,并限制 temperature 保持确定性输出。

经实际运行,可在 20 秒内生成符合测试要求的 FastAPI 服务,充分说明了Vibe Coding压缩从概念到可运行软件的路径。

提示工程与参数调优

Vibe Coding成败的分水岭往往在于 Prompt 的细粒度控制和模型参数设置。以下策略来自 LinkedIn 工程师 Daniel Bentes 的 27 天实验总结([linkedin.com](https://www.linkedin.com/pulse/reality-vibe-coding-daniel-bentes-pbdic?utm_source=chatgpt.com “The Reality of “Vibe Coding” - LinkedIn”)):

  1. 双层角色描述:把「你是××专家」和「请按××格式输出」分开,减少指令冲突。

  2. Incremental Prompting:先让模型生成函数签名,再补充实现细节,最后请求测试用例,可显著降低模型遗忘上下文的概率。

  3. 温度/Top-p 调整:原型阶段温度 0.8 激发多样性,进入重构阶段降到 0.2 保证稳定。

不足与风险

  • 技术债务:TechCrunch 专题指出,大量初创在融资演示中「速成」的代码往往缺乏架构分层,后期重写成本高昂(techcrunch.com)。

  • 安全与合规:Reddit 开发者社区披露,短短「1 小时 Vibe Coding」就可能产生 800 行未经审计的代码,难以追溯漏洞来源(reddit.com)。

  • 知识产权:IBM 白皮书提醒,生成代码可能继承训练语料中的许可证风险,需要在 CICD 环节加入 SPDX 扫描(ibm.com)。

对职业开发者的启示

  • 从「写代码」转向「写 Prompt」:会使用 GPT-style 模型的人才将成为新生产力杠杆。

  • 测试与审计能力更重要:AI 生成只是起点,高质量的单测和静态分析成为护城河。

  • 领域知识价值上升:懂业务的人快速把场景转译给 AI,比传统全栈工程师更具竞争优势。

未来展望

ExplodingTopics 数据表明,搜索词Vibe Coding在一年内增长 1 400%(explodingtopics.com)。GitHub CEO Thomas Dohmke 预测,未来胜出的团队既要拥抱Vibe Coding的速度,也要修炼「可维护性」内功(timesofindia.indiatimes.com)。正如 Financial Times 评论,AI 时代的赢家会是既懂 Prompt 又懂架构的「混合型」开发者(ft.com)。


参考文献(按引用顺序)

  1. ([x.com](https://x.com/karpathy/status/1886192184808149383?lang=en&utm_source=chatgpt.com "Andrej Karpathy on X: "There’s a new kind of coding I call “vibe …”))

  2. (en.wikipedia.org)

  3. (arstechnica.com)

  4. (ibm.com)

  5. (madhukarkumar.medium.com)

  6. (techcrunch.comtechcrunch.com)

  7. (vibecoding.app)

  8. (techcrunch.com)

  9. (ft.com)

  10. (simonwillison.net)

  11. (techcrunch.com)

  12. (thetimes.co.uk)

  13. (timesofindia.indiatimes.com)

  14. (techcrunch.com)

  15. ([linkedin.com](https://www.linkedin.com/pulse/reality-vibe-coding-daniel-bentes-pbdic?utm_source=chatgpt.com “The Reality of “Vibe Coding” - LinkedIn”))

  16. (techcrunch.com)

  17. (reddit.com)

  18. (explodingtopics.com)

  19. (timesofindia.indiatimes.com)

通过以上剖析与范例,你已经看到Vibe Coding如何在理论、工具和业务落地层面重塑开发范式。紧跟其脉动,也保持对工程质量与长期可维护性的敬畏,才是乘风而立的正确姿态。

Vibe Cobe 工具综合指南 | 作者:Madhukar Kumar | 软件、人工智能和营销 | Medium

如果你经常出入开发者聚集地(比如 X 和 YouTube),你很可能已经接触过一些新兴词汇,比如“破解”、“搞定”、“锁定”以及“氛围编码”的各种变体。
每当出现这样的新趋势时,我常常会想——有没有办法追溯某个趋势的起源,找到它最初诞生的对话,并最终发展成全新的事物?
也许并非所有事物都能追溯,但得益于如今大多数对话都发生在网络世界,一些事物的起源确实可以追溯到它们诞生的那一刻。
这就是“氛围编码”的故事——这个术语最初是由多产的思想家 Andrej Karpathy 在 X 上提出的。

按回车键或点击查看完整尺寸的图片

自发布以来,该帖子已被浏览超过 450 万次,而不断涌现的“氛围编码”工具也发展成了一个小型产业。公平地说,其中许多工具在这条如今广为人知的推文发布之前就已经存在,但如今有了正式的分类名称,涌现出大量“网红”,他们纷纷发布和转发人们使用“氛围编码”构建的游戏和其他 SaaS 应用的屏幕共享,借此风潮迅速走红。
在很多方面,我认为“氛围编码”是编程的一次演进,它从告诉系统如何做某事(例如冒泡排序)演变为告诉系统做什么。正如 Andej 所提到的,在某些情况下,只要某些东西能用,它们的实现方式可能并不重要。
而如果你是一名在大型企业团队中工作的工程师,你每天的工作不是开发新的游戏或应用,而是维护数百万行已有的代码,进行改进、修复和添加新功能,那么挑战也就随之而来。在这种情况下,事物的实现方式就至关重要了。如果说Vibe编码是指构建应用程序的“第0天”体验,那么“第1天”则是指在现有代码的基础上进行构建、修复bug、添加功能以及与其他团队成员协作。
作为一名热爱创造、享受看到事物从无到有的成就感的专业人士,几个月来我一直在使用和体验各种我能找到的Vibe编码工具。在本文中,我将整理这些工具,以便梳理自己的思路,并帮助那些可能对这个迷人的全新编码领域感兴趣的人,在深入学习之前先对其进行一个概览。
不过,在深入探讨之前,让我们先根据人们想要构建的应用类型,将这些Vibe编码工具归类到几个大类中。
全栈应用:
全栈应用包含前端代码(UI)、后端(API)调用、数据库、集成和存储。如果您有一个商业想法,并且想要销售软件或产品,那么这就是您所需要的。这意味着,除了上述内容之外,全栈应用还有两个重要的组成部分——身份验证和支付集成。最后,应用开发完成后,你需要将其部署到服务器,以便用户可以通过 URL 访问。
传统上,构建一个全栈应用需要团队协作,耗时数月甚至数年。但如今,信不信由你,你只需坐在电脑前,一天就能构建一个全栈应用。
我们先来看看一些以 UI 为中心的 AI 编码工具,它们可以用来构建全栈应用。使用这些工具,你不仅可以生成并立即查看应用,还可以点击应用中的特定元素,并让 AI 工具修改 UI 的特定部分。

  1. Tempo Labs
    并非完全面向零基础程序员,但它也为低代码程序员和中级程序员提供了相当不错的控制选项。使用 Tempo Labs,您可以在项目开始时选择身份验证技术和后端。它的一个亮点功能是,它会在生成代码的同时生成产品需求文档 (PRD) 和用户流程图。您可以继续以可视化的方式添加新组件,也可以直接通过 AI 提示添加,或者导出代码并使用 PRD 与其他 AI 编码工具进行迭代。整体用户流程图也是一种非常巧妙的方式,可以高效地可视化应用程序的用户旅程。产品需求文档产品需求文档 (PRD) 和用户流程图以及代码,您可以继续以可视化的方式或直接通过 AI 提示添加新组件,也可以导出代码并使用 PRD 与其他 AI 编码工具进行迭代。整体用户流程图也是一种非常巧妙的方式,可以高效地可视化应用程序的用户旅程。
    借助 Tempo Labs,您还可以创建与 Stripe 和 Polar 的支付集成,并使用 Supabase 或 Convex 启用身份验证和数据库。
    最近,Tempo Labs 推出了一项新功能,允许从现有的 GitHub 代码库创建新应用程序。但是,在撰写本文时,我无法在三个不同的 NextJS 现有应用程序中成功使用此功能。我希望随着时间的推移,情况会有所改善,使该工具不仅适用于 Day 0 应用程序,也适用于 Day 1 及以后的应用程序。
Press enter or click to view image in full size

2. Bolt.new / Bolt.diy
与 Tempo Labs 类似,Bolt.new 是 Stackblitz 开发的一款工具,它支持使用 AI 以可视化的方式构建完整的全栈应用程序。其独特之处在于可以直接从 Figma 帐户导入设计并将其转换为代码(应用程序)。Stackblitz
引入了 Web 容器的概念,使 Node 能够在浏览器中运行。利用此功能,您不仅可以使用 AI 提示以可视化的方式构建应用程序,还可以在运行于浏览器(Stackblitz)中的 Visual Studio IDE 中打开整个代码库。这使得您可以随时直接修改代码,并且可以添加额外的 VS Code 扩展,以在多个计算环境中保持一致的编程体验。

按回车键或点击查看完整尺寸的图片

Bolt.new 还集成了 Supabase,允许您创建身份验证以及标准的后端数据库 CRUD 操作,但在撰写本文时,我还没有看到与 Polar 或 Stripe 等支付系统的“开箱即用”集成。此外,他们最近添加了从 GitHub 导入项目的功能,这意味着您可以导入现有应用程序并在 Stackblitz 中继续工作。但是,您导入到 Stackblitz 的应用程序无法在 Bolt.new 中使用,如果开发者将来添加此功能,那将是一个很棒的功能。

3. Lovable.dev Lovable.dev
可能是最适合非程序员和低级程序员使用的全栈 AI 工具。它与 Bolt.new 和 Tempo Labs 的功能非常相似。您可以使用 AI 提示构建和部署整个应用程序。Lovable 的一个独特之处在于,您可以选择应用程序/网页的特定部分,并请求 AI 进行非常有针对性的更改。它还集成了 Supabase,用于身份验证和数据库 CRUD 操作,并且您可以将 GitHub 代码库连接到应用程序。这意味着您可以在 Lovable 之外处理代码库,当您向主分支推送代码时,Lovable 会自动拉取,因此您可以在代码编辑器中编写代码和使用 Lovable 的可视化 UI 提示之间来回切换。

按回车键或点击查看完整尺寸的图片

其他工具——还有一些与上述三种工具类似的工具,但为了避免文章篇幅过长,我只简单提及,不做详细介绍,因为它们与上述三种工具非常相似:Replit ——Replit Agent 允许您使用 AI 提示构建应用程序,并在 Replit 的单一界面中直接部署到生产服务器。Base44——这是另一个与上述工具非常相似的工具,但它初始模板更简洁,似乎更适合高级开发人员。现在我们已经了解了全栈可视化工具,接下来让我们看看一些在应用程序开发中非常流行的代码编辑器工具。在这个类别中,既有 VS Code 的分支,也有 VS Code 的扩展。就我个人而言,我更喜欢 VS Code 扩展,因为我可以根据需要切换工具而不会改变我的使用体验,而且我不会被限制在单一工具或单一方法来处理同一代码库。


VS Code 分支

  1. Cursor—— 作为早期感知型编码领域的先驱之一,Cursor 最初是一款用于聊天并获取代码补全和修改建议的工具。几周后,他们推出了 Composer 功能,允许用户直接指示智能体进行代码修改。自此,整个领域和 Cursor 本身都发生了显著变化。最近,Cursor 还增加了对 MCP 服务器的支持,因此用户还可以使用它来调用其他预构建的工具和服务,从而仅使用 AI 提示来构建整个应用程序。
    我不喜欢 Cursor 的地方在于,它变得非常复杂,添加了许多不同且往往不必要的附加功能。随着代码库变得越来越大、越来越复杂,用户现在必须维护规则文件和上下文文件,以不断引导 Cursor 避免出错,避免执行不必要的操作或重复已经修复的错误。
按回车键或点击查看完整尺寸的图片

2. Windsurf — 与 Cursor 类似,Windsurf 也是 VS Code 的一个分支,功能非常相似,甚至完全相同。就用户体验而言,Windsurf 比 Cursor 更胜一筹,但由于代码库不断增长,Windsurf 也无法始终保持对代码库的上下文了解,因此其 AI 模型的结果通常与 Cursor 类似。Windsurf 还支持 MCP 服务器。Windsurf 新增的一项 Cursor 目前尚不具备的功能是可以直接在代码编辑器中预览应用程序。不过,我认为其他工具也会添加此功能。

按回车键或点击查看完整尺寸的图片

3. Trae — 说到预览或网页视图,另一个 VS Code 的分支是 TikTok 的开发商 Trae。它拥有更好的用户体验和非常慷慨的免费套餐,但缺少 MCP 集成功能,这意味着你无法仅使用这一个工具来构建整个应用程序。不出所料,它也缺乏强大的上下文管理功能,这意味着如果你要处理现有的代码库或与多个团队成员协作,它就不太实用。

按回车键或点击查看完整尺寸的图片

现在我们来看看最后一个类别(也是我最喜欢的)——VS Code 扩展。这些是人工智能工具,您可以将其添加到现有的编码工作流程中,并根据该领域快速变化的需求随时添加/删除。

VS Code 扩展

  1. Amp——今年五月,全自动编码代理 Amp 正式发布,同时提供 VS Code 扩展和命令行界面 (CLI) 版本。Amp 的独特之处在于它专为团队打造,尤其适合那些追求极致质量、力求完美的工程师。Amp 采用按令牌付费模式,因此不会限制令牌或工具的使用,这意味着该模型会按照其设计的方式运行,从而带来更佳的成果。自发布以来,X 社区的用户就对它给予了积极的评价。它还具备团队共享线程功能,允许团队成员从彼此与代理的对话中学习。此外,由于 Amp 也提供 CLI 版本,例如,如果您在 Linux 系统上开发确定性工作流程,现在就可以将自然语言处理 (NLP) 数据导入 Amp,构建一些有趣的自动化工作流程。
按回车键或点击查看完整尺寸的图片

2. 增强

成为会员

Augment 是一个 VS Code 扩展,它通过先索引代码库,然后分析代码库来与现有代码库集成。如果您使用的是免费套餐,它会告知您该工具会将您的代码库用于自身的训练,这让我有点犹豫。但是,如果您可以接受这一点,那么在代码库被索引后,您就可以使用 Augment 来询问有关代码的问题或获取代码补全。截至撰写本文时,Augment 尚不支持代理模式和 MCP(多级配置)。

按回车键或点击查看完整尺寸的图片

3. Continue
和 Cursor 类似,它既有聊天模式也有代理模式,并且集成了 MCP 服务器。它还具备索引整个代码库的功能,但仍然需要用户指定文件和文件夹才能获取正确的上下文。我喜欢 Continue 的另一个原因是它也集成了 MCP,这样我就可以引入 Brave 搜索和 Firecrawl 等工具来构建更多上下文信息。

按回车键或点击查看完整尺寸的图片

4. Cline:
Cline 的功能与 Cursor 和 Windsurf 类似,甚至完全相同,但它是一个 VS Code 扩展,而不是一个完整的 VS Code 分支。Cline 的智能功能侧重于任务自动化,允许开发者描述复杂的任务,然后该工具会将这些任务分解并逐步执行。对于 UI 修改,Cline 可以分析组件结构并提出保持视觉一致性的更改建议。Cline 的独特之处在于其专门的“代码预测”功能,该功能可以根据编码模式和当前上下文预测开发者下一步可能需要的代码。不过,我发现 Cline 非常消耗令牌,这使得它的成本很高,尤其是在你试图以“人生苦短,及时行乐”(YOLO)模式运行它时。

按回车键或点击查看完整尺寸的图片

5. Sourcegraph:
对于希望在现有代码库上与多个团队成员协作的专业级开发人员来说,Sourcegraph 可能是最佳工具。它提供企业级代码库集成,支持多种版本控制系统和大型代码库。这意味着您可以连接数百个代码库,不仅可以跨库搜索,还可以从中获取洞察,并进行批量更改,例如重构、更新库或安全修复等。最近,Sourcegraph 还新增了一个 VS Code 扩展程序——Cody,它与 Sourcegraph 集成,除了强大的搜索和上下文管理功能外,您还可以使用它进行聊天,并实现代码补全。Sourcegraph
的突出之处在于其“跨代码库感知”功能,该功能使开发人员能够了解代码如何在多个项目中被使用和共享,这使其对大型组织尤为重要。

其他工具——在这个领域还有另外两种类似的工具值得一提。

按回车键或点击查看完整尺寸的图片
  1. Fynix — Fynix 的独特之处在于其“代码演化跟踪”功能,该功能有助于了解代码随时间推移发生的变化,从而更容易规划和实施一致的修改。
  2. 我发现Pythagora
    的用户界面很难上手,但如果你正在构建一个全新的基于 Node 的应用程序,它确实很棒。然而,当我尝试将其应用于现有代码库时,它就显得不太有用了。
    此外,我还发现它的整体用户体验极其混乱。
按回车键或点击查看完整尺寸的图片

最后,我们来看看最后一类独立工具。

独立工具

  1. Devin — 认知实验室

Devin 通过 Git 集成和专门的代码理解功能连接到现有的代码仓库。它的代码库搜索和上下文功能非常出色,能够理解大型代码库中复杂的项目结构和依赖关系。Devin 的主要优势在于其智能体功能,它能够像一个自主开发者一样,在极少人工干预的情况下完成代码的规划、实现、调试和测试。Devin 的一个独特之处在于,它只能通过 Slack 进行交互,这意味着如果你是单人公司,你也需要使用 Slack。

2. Aider
Aider 是一款面向高级用户的终端工具,它通过命令行界面和 Git 提供简便的代码仓库集成,使其能够轻松融入现有的开发工作流程。其代码库上下文功能侧重于理解本地代码结构并与现有模式保持一致。Aider 的智能体功能使其能够像结对程序员一样工作,在实现所需更改的同时,保持对更广泛代码库上下文的感知。其 UI 修改功能较为有限,主要侧重于功能组件而非设计系统。Aider 的显著特点是其对话驱动的开发方法:开发人员使用自然语言描述更改,Aider 则负责实现这些更改,同时保持对话式界面以方便用户进行澄清和修改。

3.克劳德·科德

按回车键或点击查看完整尺寸的图片

在我开始撰写本文前几天,Anthropic 发布了 Claude Code,这是一款主要基于终端的工具。Claude Code 的独特之处在于,它首先“读取并理解”代码库,然后在会话的剩余时间内用于聊天和修改。它还会将这种“记忆”保存到一个 Markdown 文件中,该文件可以修改并在以后的会话中使用。Claude
Code 的智能功能侧重于任务自动化和辅助,而非完全自主开发。不过,我必须指出,Claude Code 是目前为止最昂贵的工具,而且非常消耗令牌。我测试了一组简单的修改,几个小时就消耗了大约 5 美元的令牌。由于这是 Anthropic 发布的工具,我还应该说明,它目前仅支持 Claude 模型。

结论

本文介绍了可用于“概念编码”的不同类型人工智能工具,每种工具都有其优缺点。但现实情况是,目前你无法仅依赖单一工具来构建和维护整个应用程序。我还发现大多数工具仅适用于 Day 0(新应用构建)场景,因此我希望 Sourcegraph、Claude Code 和 Continue 等工具能够更好地胜任 Day 1 及后续的编码任务。

posted @ 2026-02-09 01:13  CharyGao  阅读(399)  评论(0)    收藏  举报