📌 项目地址cline/cline | ⭐ 68,241 颗星 | 🔧 TypeScript | 📜 未标注

一个引擎,五种壳

Cline 是一个开源编程 agent,68,241 个 Star,TypeScript 写的。它最值得聊的不是某个功能,而是产品思路:agent 内核只有一套,外面套了五个壳。CLI、桌面应用、VS Code 扩展、JetBrains 插件、SDK,跑的都是同一个引擎。

这对用户意味着什么?你在 VS Code 里用熟了它,切到终端或者 PyCharm,体验不会变。对开发者来说,SDK 路线更有意思:你可以拿这个内核造自己的东西。

先看装法

终端党

npm i -g cline

装完在终端里用。它有两种模式:交互式聊天,或者完全 headless。headless 模式是给 CI/CD 和脚本准备的,这一条就把它和“只能坐在编辑器前用”的工具区分开了。

VS Code 用户:从 VS Marketplace 装扩展。在编辑器里创建文件、跑命令、浏览网页、调用工具,每个操作都要你审批(human-in-the-loop),agent 不会自作主张。

JetBrains 用户:从 JetBrains Marketplace 装插件,IntelliJ IDEA、PyCharm、WebStorm、GoLand 都支持。

想要独立应用:macOS 和 Windows 有原生桌面应用。可以在任意文件夹跑 agent 会话、设置定时任务、管理模型和 MCP 服务器。定时任务这个点值得注意,说明它的定位不只是“写代码时用”,还包括“我不在场时代码自己跑”。

想造轮子

npm install @cline/sdk

SDK 提供的是 Node.js 编程接口,官方列出的能力包括自定义工具、多 agent 团队、连接器、定时自动化。想在自己产品里嵌一个编程 agent 的团队,这是现成的底座。

它干活的方式

两个核心能力。

跨文件编辑。Cline 会先读项目结构,搞清楚文件之间的关系,然后做协调修改,不是只改眼前那一个文件。干活过程中它盯着 linter 和编译器的输出,缺 import、类型不匹配、语法错误这类问题,在你看到之前就顺手修了。在 VS Code 和 JetBrains 里,每次编辑都以 diff 形式呈现,可以审查、修改或回退。所有变更有 checkpoint 记录,agent 搞砸了能整体撤销。

执行命令。直接在终端跑 bash 命令,实时监控输出,装依赖这类操作可以交给它自己完成。

读源码前先看仓库结构

这个仓库是 monorepo,各产品的代码位置分散:

产品 位置
SDK sdk/
CLI apps/cli/
VS Code 扩展 仓库根目录(迁移中)
桌面应用 apps/examples/desktop-app/

桌面应用的技术栈有点意思:Tauri 壳加 Bun sidecar 加 Next.js UI,典型的“用 Web 技术拼原生应用”的路线。

有一点要单独说清楚:JetBrains 插件没有开源。它是运行在 JetBrains 平台上的闭源客户端,连接的是共享的 agent core。如果你选型的硬性条件是“全家桶全开源”,这里要打个折扣。各组件有独立的 CHANGELOG,跟踪版本变化还算方便。

我的看法

Cline 把“agent 内核”和“交付形态”拆开做,这个架构决策让它能同时覆盖编辑器用户、终端用户和二次开发者。加上审批机制和 checkpoint 兜底,它对“agent 乱改代码”的恐惧做了不少工程上的回应。如果你正在挑一个编程 agent 日常用,或者想找个引擎做二次开发,这个仓库值得花半小时看看。

更细的用法文档在 docs.cline.bot,README 没列出的命令参数直接查那里。

这篇文章对你有帮助吗?

发表回复