
Cline CLI 与我对 Cline Core 不朽的热爱
Cline CLI 预览版现已推出并开源!当我开始开发 Cline 时,他是一个紧密集成的 VS Code 扩展,花了数月时间才将他解放为一个可以嵌入任何环境的独立服务。
这就是 Cline Core。Cline for JetBrains 是基于这项服务构建的,现在我非常高兴也能在终端中使用 Cline CLI。家是心之所在,而 CLI 早在多年前就偷走了我的心。
npm install -g cline
我们在 CLI 中的重点是可脚本化。我的口头禅之一是“LLM 将非结构化数据转换为结构化数据”——这在脚本中非常有用。想象一下编写一个 cron 作业(即自动重复任务),读取所有朋友的社交媒体,生成关于他们的结构化 JSON,然后重新部署一个关于他们生活动态的小型静态网站,自动通知您关键时刻。开源的 Cline CLI 可以让这成为一个周末项目。
来自我们 Discord 中关于您可以使用 Cline CLI 构建的一些我最喜欢的想法
- 将记忆写入文件的视频游戏 NPC
- 后台 Clines 的 Web 界面协调器
- Jupyter notebook/其他非 IDE 应用程序中的 Cline
- 远程控制移动应用程序
- Cline 驱动的 Discord 机器人,回答常见问题
- Shell 脚本中的 Cline
- GitHub issue 中的 Cline 自动分类/分析错误报告
我想你明白我的意思了,有了我们最好的 OSS 代理男孩,一切皆有可能。他正在长大,准备在农场里帮忙。是的,我都是手动写博客的。
好了,让我们深入了解细节。
Cline CLI 有何特别之处
我们的 CLI 是您 IDE 的伴侣,它们旨在无缝协作。更重要的是,CLI 旨在管理许多并行运行的代理,提供全面的脚本化能力,并提供便捷的聊天界面。
完整功能的 CLI
Cline CLI 带来了 Cline 的全部功能。所有功能均可用,例如计划与执行 (plan & act)、检查点、终端执行和无头浏览器使用。与往常一样,Cline CLI 支持各种提供商和模型供选择。此外,高级工具提供编排功能,使您能够轻松管理 Cline 群集。
实验性子代理
IDE Cline(如 VS Code 和 JetBrains 中)可以调用 Cline CLI 来委托具有全新上下文窗口的任务。在此第一个版本中,Cline 被指示一次使用一个子 cline,并等待子 cline 完成。
让代理良好地协同工作很困难,但我们正在创建一个必要的实验框架
多头 Cline Hydra
我们的架构允许将多个前端连接到正在运行的任务。今天就可以创建一个移动应用程序来远程控制您的桌面 Cline 实例。或者您可能希望您的 IDE 远程控制在服务器上运行的 cline。
注意:目前这些互操作性功能仅在 JetBrains IDE 和 CLI 之间可用(对 VS Code 的支持即将推出,但我们必须进行一次可怕的迁移)。
还可以在 IDE 和 CLI 之间传递任务,请看这里
Cline Core 的架构
该方案是 Cline Core 作为简单的节点进程运行,公开 gRPC API,允许他被集成到社区能想象到的任何东西中。还可以同时连接多个前端,通过网络进行操作,并传递任务。它是这样的

“表示层”(即用户界面)作为 gRPC 客户端连接到 Cline Core 并告诉他该做什么。Cline Core 发送回状态更改和 LLM 消息的订阅,允许表示层显示内容。
Cline Core 作为 gRPC 客户端连接到“主机提供程序层”,后者实现与他所嵌入的环境的集成。因此,例如,Cline Core 可以要求 VS Code 提供 linter 输出。我们还为 Cline CLI 提供了一个通用主机提供程序,因此如果您不想,就不必实现它。
完整的 gRPC 文档即将推出——我们仍在打磨一些粗糙的边缘,不过 Cline Core 在我们的源代码中是完全可用的。您可以到 Discord 上的 #cli 聊天室与我交流。


