引言:AI 浪潮下的“内卷”与新机遇
从 AI Agent 到 AI 浏览器,再到 IDE 和 CLI 的深度融合,软件开发领域正经历一场前所未有的“内卷”。近期,主流 AI 厂商纷纷推出命令行界面 (CLI) 编程助手,如 OpenAI Codex CLI、Anthropic Claude Code 和 Google Gemini CLI,预示着 AI 驱动的软件开发新纪元。
📌 Gemini CLI:量大且免费的先锋
个人开发者可通过 Google 账号免费获取 Gemini Code Assist 许可证,享受 Gemini 2.5 Pro 及其强大的 100 万 token 上下文窗口。预览期间,提供业界最高的免费额度:每分钟 60 次、每天 1,000 次模型请求。
面对层出不穷的 AI 编程工具,程序员们常常感到应接不暇。本文旨在梳理当前主流的 AI 编程框架与工具,帮助读者建立宏观认知,理解这场深刻变革的脉络与核心。
核心概念与关键领域
🤖 AI Agent:自主智能体系统
Agent AI 指能够自主感知环境、做出决策并采取行动以实现特定目标的 AI 系统。它们通常以框架或库的形式存在,旨在简化 AI 应用的开发流程。
主流开源代表:
- LangChain & LangGraph: 用于构建 LLM 驱动应用的框架与低层级编排框架。
- AutoGen: 用于创建可自主行动或与人类协同工作的多智能体 AI 应用程序的框架。
- CrewAI: 轻量级、极速的 Python 框架,专为开发适用于各种场景的自主 AI 代理而设计。
- LlamaIndex: 构建基于 LLM 和工作流的数据驱动代理的领先框架。
- Agno: 专为构建多 Agent 系统设计的 Python 框架,支持 Agent 间共享记忆、知识和推理能力,分为五级能力。
- GPT Researcher: 智能体代理,专为各种任务的综合在线研究而设计。
💡 Agent 演进:从任务编排到系统级代理
早期 Agent 框架侧重任务编排,而 Browser Use 等 AI 浏览器代理使普通用户无需编码即可自动化在线任务。OpenAI 的 CUA (Computer-Using Agent) 更进一步,使 AI 能像人一样操作真实计算机界面,实现跨网页、文件和应用执行复杂指令。
基于 Agent 的定制工作流:
- n8n: 工作流自动化平台,结合代码灵活性与无代码便捷性,支持原生 AI 能力和 400+ 种集成。
- dify: 开源 LLM 应用开发平台,融合 Agentic AI 工作流、RAG、模型管理等,加速原型到生产。
🧑💻 编程助手:赋能开发者的利器
当前主流的 AI 编程助手主要分为 IDE 集成、在线生成式和命令行界面 (CLI) 三大类。
IDE 集成:
- VSCode, Cursor, Windsurf, Zed (基于 Rust), Trae 等。
- VSCode 插件: GitHub Copilot, Gemini Code Assist, Claude Code, Tabnine, Cody, Lingma (通义灵码), Trae AI (豆包) 等。
GitHub Copilot 作为一个特殊存在,深度集成于 GitHub 生态,支持仓库代码分析、Issues、PR 处理等。
⚠️ 插件禁用风波:VSCode 与 AI IDE 的竞争
Cursor 等基于 VSCode 套壳的 AI IDE 曾因复用其插件生态而受追捧,但近期 VSCode 开始限制其核心插件(微软自研)只能用于微软产品,导致部分套壳 IDE 无法支持 C/C++、Remote-SSH 等主流插件,这凸显了 AI IDE 市场竞争的激烈性。
💻 Terminal 终端:AI 的新战场
各类 CLI 工具的运行离不开终端环境。
- Warp: 目前体验最好的 AI 终端,支持 agent、mcp 等功能。
- starship: 基于 Rust 实现的终端美化工具。
- Nerd Fonts: 针对开发者添加大量字形(图标)的编程字体。
⚙️ AI 开发主流编程语言
目前 AI 应用、MCP 或 CLI 开发常用语言包括 JS、Python、Go、Rust。
- JavaScript/TypeScript: 简单易上手,前端 AI 应用首选。
- Python: AI 编程的“一等公民”,大量 AI 框架和库用 Python 开发。
- Go & Rust: 常用于服务或命令行开发,侧重性能。
🤝 大模型协议:互联互通的基石
为规范 LLM 交互和上下文信息提供,出现了多种协议。
- MCP (Modal Context Protocol): 开放标准,规范如何向 LLM 提供上下文信息,如同 USB-C 接口,统一应用向模型传递工具、数据、偏好等。在编程领域尤为热门。
- AG-UI (Agent-User Interaction Protocol): 代理-用户交互协议。
📚 AI 文档:实时准确的信息之源
LLM 生成代码建议时常因依赖过时信息而产生问题,新的 AI 文档工具旨在解决此痛点。
- Context7: 通过 MCP 机制直接从源头获取最新、特定版本的文档和代码示例,确保 LLM 输出建议的准确性。
- DeepWiki: 基于 GitHub Repo 源代码生成最新版可对话式文档,由 Devin 驱动。
- Gitingest: 将任意 GitHub 代码库转换为适合 LLM 提示的文本摘要。
📦 AI SDK:构建 AI 应用的工具包
AI SDKs 提供统一 API 接口,方便开发者与多种模型提供商无缝交互。
- AI SDK (Vercel 维护): 基于 TypeScript,支持 Next.js、React、Svelte、Vue 等,几乎满足大部分 LLM API 调用需求。
- Google Gen AI SDK: 专为 TypeScript 和 JavaScript 开发者设计,构建由 Gemini 提供支持的应用。
- OpenAI SDK & Anthropic SDK: 提供便捷访问各自 REST API 的工具包。
🎨 AI 代码生成与前端 UI
Next.js、React、Tailwind CSS 等框架对 AI 代码生成友好,易于生成美观网页。
- 动画/3D 效果: p5.js, three.js。
- 快速构建风格统一界面: shadcn/ui (基于 Radix + Tailwind)。
- 换肤工具: tweakcn 可视化主题编辑器,可一键导出 shadcn 配置代码。
开源 Chat UI 方案:
如果对本地部署 AI Chat 或开发类似 ChatGPT 应用感兴趣,以下项目值得参考:
- Open WebUI: 可扩展、功能丰富、用户友好的自托管 AI 平台,支持各种 LLM 运行器。
- Chat SDK: 免费开源模板,使用 Next.js 和 AI SDK 构建。
- LobeChat: 现代化设计的开源 ChatGPT/LLMs 聊天应用与开发框架,支持语音合成、多模态、可扩展插件。
- Cherry Studio: 支持多个 LLM 服务商的桌面客户端。
- Text generation web UI: 适用于大型语言模型的 Gradio Web UI。
软件演进:三次范式变革
🔄Andre Karpathy 的洞察:Software Is Changing (Again)
Andrej Karpathy 结合其在斯坦福、OpenAI 和特斯拉的经历,分析了软件发展的历史、现状与未来趋势,指出软件正经历三次根本性变革。
软件 1.0:指令式编程
过去 70 年的软件底层逻辑,人类编写代码,给计算机下达精确指令。代表:GitHub 上的无数代码仓库。
软件 2.0:数据驱动神经网络
通过调整数据集和运行优化器自动生成神经网络的“权重”参数。代表:Hugging Face 和 Model Atlas 等模型平台。
软件 3.0:自然语言编程
LLM 成为新型计算机,提示词(prompts)即“程序”,用人类自然语言编写,大幅降低编程门槛。例如:用几句话提示 LLM 进行情感分类。
📌 Vibe Coding:人人皆可编程
由 Andrej Karpathy 提出,指依赖 LLM 生成和修正软件的全新编程方式。开发者更多充当“提示提供者”和“测试者”,通过自然语言与 AI 协同对话,甚至“看看、说说、跑一下、然后复制粘贴”即可完成项目。
Karpathy 强调,这三种编程范式将长期共存,掌握它们对未来行业从业者至关重要。
🧠 LLM 本质:数字世界的“操作系统”
Karpathy 将 LLM 类比为多种概念,其中“数字操作系统”最为贴切,揭示其复杂生态系统特性。
- 新型“公用事业”: 训练和运营成本高昂,按使用量收费,提供智能服务。
- 高科技“晶圆厂”: 巨额资本支出,形成深厚技术积累。
- 数字“操作系统”: 最贴切的比喻,LLM 是复杂软件生态系统,具备资源调度、内存管理(上下文窗口)、应用分发等功能。
- 1960 年代的计算: 当前 LLM 计算集中于云端,用户通过网络交互,类似大型机时代。预示未来个人 LLM 计算的可能性。
- 终端与 GUI: 直接与 LLM 通过文本交流如终端对话,期待更直观的 GUI 交互。
🔬 理解 LLM “心智”:超能力与认知缺陷并存
LLM 通过自回归 Transformer 模型从海量数据中学习,展现出类似人类的“涌现心理”。
✅ 超能力:
- 百科全书般的知识和记忆,远超任何个体人类。
❌ 认知缺陷:
- 幻觉 (Hallucination): 凭空捏造信息,对知识边界缺乏认知。
- 锯齿状智能 (Jagged Intelligence): 在某些领域超人,但在简单问题上犯低级错误。
- 顺行性遗忘 (Anterograde Amnesia): 无法巩固知识,上下文窗口更像工作记忆。
- 安全漏洞: 易受提示注入攻击,可能泄露数据。
与 LLM 协作,需扬长避短,充分利用其超能力,同时规避其认知缺陷。
🤝 LLM 应用与人机协作:加速“生成-验证”循环
未来的软件产品和服务将部分自治。LLM 应用如 Cursor 和 Perplexity 兼具辅助与自治特性。
LLM 应用特性:
- 上下文管理:自动处理大量信息。
- 多模型协调:底层协调多个模型。
- 应用特定 GUI:更直观展示信息,提升人机协作效率。
- 自治滑块 (Autonomy Slider):用户可根据任务调整 LLM 自治程度。
人机协作效率提升关键:
- 加速验证:GUI 利用人类视觉能力,比阅读纯文本更高效。
- “牵住” AI 的缰绳:限制 AI 输出粒度,使其以小步、增量方式进行,避免过度反应。
✨ 为“代理”而设计:新的数字信息消费者
AI 代理是具有“人类灵魂”的计算机,需要我们为其重新构建软件基础设施。
- LLM 友好的信息格式:提供类似 robots.txt 的
llm.txt,用 Markdown 描述网站内容。 - 为 LLM 重写文档:将为人类编写的文档转化为 LLM 代理可直接调用的格式(如 Markdown + curl 命令)。
- LLM 友好的工具:如 gitingest,将 GitHub 仓库转换为 LLM 可读文本摘要。
主动为 LLM 提供更友好的访问方式至关重要,能降低成本并提高效率。
⚙️ 上下文工程:构建高质量 LLM 应用的核心
“上下文工程”比“提示词工程”更准确,它是一门融合工程方法与直觉艺术的复杂实践,旨在为 LLM 提供“刚刚好”的信息。
科学性:
- 涉及任务说明、few-shot 示例、RAG、相关数据(多模态)、工具使用、状态记录、历史追踪、上下文压缩等。
- 信息太少、太杂或形式不当,都会影响模型性能。
艺术性:
- 对语言模型“心理机制”的直觉理解与经验积累。
上下文工程只是构建完整 LLM 应用的一部分。整个系统还需要负责任务分解、动态封装上下文、调用不同 LLM、设计生成-验证流程、构建安全机制等,远超简单的“ChatGPT 包装器”。
结语:面向“代理的十年”
AI 的演进正超越纯对话模式,与应用程序及操作系统深度融合,目标是赋予 AI 更大的操作权限,执行更复杂、更自动化的任务。
🛠️ 对普通用户:
- 日常需求可通过对话式 AI 或 AI 浏览器轻松满足。
- 复杂任务则需集成 AI 功能的 IDE 或支持任务编排的工作流。
🚀 对开发者:
- 理解并驾驭 AI、GUI 和操作系统三者关系至关重要。
- 未来软件重心在于如何巧妙编排这些元素,构建与 AI 无缝协作的智能应用。
- “全民编程”时代已来临,专业程序员与 “Vibe Coder” 都将参与其中。
Karpathy 提醒我们,软件开发,尤其自治系统,是漫长而复杂的过程。我们正处于“代理的十年”,而非“代理之年”,需保持耐心,让人类始终参与其中。最终,我们应构建能增强人类能力的“钢铁侠战衣”——具有定制 GUI 和 UI/UX 的部分自治产品,加速“生成-验证”循环,并通过“自治滑块”逐步提升自治程度。
“这是一个令人惊叹的时代!” 我们将亲眼见证软件自治的程度从左向右滑动,而我们,正是这场伟大变革的参与者和建设者。
🆕 新趋势:应用自我扩展功能
近期演示的笔记应用通过“笔记”内容为自身生成新功能,预示着未来 AI 应用发展的新方向:通过与应用对话来拓展自身功能。
参考文献
- [1] Codex CLI: https://github.com/openai/codex
- [2] Claude Code: https://github.com/anthropics/claude-code
- [3] Gemini CLI: https://github.com/google-gemini/gemini-cli
- [4] LangChain: https://github.com/langchain-ai/langchain
- [5] LangGraph: https://github.com/langchain-ai/langgraph
- [6] AutoGen: https://github.com/microsoft/autogen
- [7] CrewAI: https://github.com/crewAIInc/crewAI
- [8] LlamaIndex: https://github.com/run-llama/llama_index
- [9] Agno: https://github.com/agno-agi/agno
- [10] GPT Researcher: https://github.com/assafelovic/gpt-researcher
- [11] Browser Use: https://github.com/browser-use/browser-use
- [12] CUA(Computer-Using Agent): https://openai.com/index/computer-using-agent
- [13] Dia: https://www.diabrowser.com
- [14] n8n: https://github.com/n8n-io/n8n
- [15] dify: https://github.com/langgenius/dify
- [16] VSCode: https://code.visualstudio.com
- [17] Cursor: https://www.cursor.com
- [18] Windsurf: https://windsurf.com
- [19] Zed (基于 Rust 实现): https://zed.dev
- [20] Trae: https://www.trae.ai
- [21] Cline: https://github.com/cline/cline
- [22] GitHub Copilot: https://github.com/features/copilot
- [23] Gemini Code Assist: https://marketplace.visualstudio.com/items?itemName=Google.geminicodeassist
- [24] Claude Code for VSCode: https://marketplace.visualstudio.com/items?itemName=anthropic.claude-code
- [25] Windsurf Plugin: https://marketplace.visualstudio.com/items?itemName=Codeium.codeium
- [26] Tabnine: https://marketplace.visualstudio.com/items?itemName=TabNine.tabnine-vscode
- [27] Cody: https://marketplace.visualstudio.com/items?itemName=sourcegraph.cody-ai
- [28] Qodo Gen: https://marketplace.visualstudio.com/items?itemName=Codium.codium
- [29] Roo Code: https://marketplace.visualstudio.com/items?itemName=RooVeterinaryInc.roo-cline
- [30] Augment: https://marketplace.visualstudio.com/items?itemName=augment.vscode-augment
- [31] Lingma (通义灵码-国产): https://marketplace.visualstudio.com/items?itemName=Alibaba-Cloud.tongyi-lingma
- [32] Trae AI (豆包-国产): https://marketplace.visualstudio.com/items?itemName=MarsCode.marscode-extension
- [33] v0.dev: https://v0.dev
- [34] bolt.new: https://bolt.new
- [35] jules: https://jules.google.com
- [36] Replit AI: https://replit.com/ai
- [37] aider: https://github.com/Aider-AI/aider
- [38] codename goose: https://github.com/block/goose
- [39] Open Interpreter: https://github.com/OpenInterpreter/open-interpreter
- [40] Copilot Web: https://github.com/copilot
- [41] updates log: https://code.visualstudio.com/updates
- [42] Has the VSCode C/C++ Extension been blocked?: https://github.com/getcursor/cursor/issues/2976
- [43] Microsoft C/C++ Extension appears to no longer support unofficial forks of VS Code: https://github.com/VSCodium/vscodium/issues/2300
- [44] Warp: https://www.warp.dev
- [45] starship: https://github.com/starship/starship
- [46] Nerd Fonts: https://www.nerdfonts.com
- [47] Rust CLI Cutover (Burndown List): https://github.com/openai/codex/issues/1262
- [48] Modal Context Protocol: https://modelcontextprotocol.io
- [49] AG-UI: https://github.com/ag-ui-protocol/ag-ui
- [50] Context7: https://github.com/upstash/context7
- [51] DeepWiki: https://deepwiki.com
- [52] Devin: https://devin.ai
- [53] Gitingest: https://github.com/cyclotruc/gitingest
- [54] Sequential Thinking MCP Server: https://github.com/modelcontextprotocol/servers/tree/main/src/sequentialthinking
- [55] mcp.so: https://mcp.so
- [56] AI SDK: https://github.com/vercel/ai
- [57] Google Gen AI SDK: https://github.com/googleapis/js-genai
- [58] OpenAI SDK: https://github.com/openai/openai-node
- [59] Anthropic SDK: https://github.com/anthropics/anthropic-sdk-typescript
- [60] p5.js: https://github.com/processing/p5.js
- [61] three.js: https://github.com/mrdoob/three.js
- [62] shadcn/ui: https://github.com/shadcn-ui/ui
- [63] tweakcn: https://github.com/jnsahaj/tweakcn
- [64] radix: https://www.radix-ui.com
- [65] tailwind: https://tailwindcss.com
- [66] Open WebUI: https://github.com/open-webui/open-webui
- [67] Chat SDK: https://github.com/vercel/ai-chatbot
- [68] LobeChat: https://github.com/lobehub/lobe-chat
- [69] function call: https://lobehub.com/zh/blog/openai-function-call
- [70] Cherry Studio: https://github.com/CherryHQ/cherry-studio
- [71] Text generation web UI: https://github.com/oobabooga/text-generation-webui
- [72] AUTOMATIC1111/stable-diffusion-webui: https://github.com/AUTOMATIC1111/stable-diffusion-webui
- [73] Software Is Changing (Again): https://youtu.be/LCEmiRjPEtQ?si=Sfw_2aK_L8y2u2mZ
- [74] Model Atlas: https://huggingface.co/spaces/Eliahu/Model-Atlas