synthetic-lab/octofriend

An open-source coding helper. Very friendly!

解决的问题

Octofriend 是一个专为开发者设计的终端式编码助手,旨在提供一个私密、灵活且工具丰富的开发环境。它解决了被锁定在单一 LLM 提供商或模型中的问题,允许用户在对话过程中切换模型,并在无遥测的情况下集成各种外部工具,如语言服务器和 MCP 服务器。

工作原理

Octo 作为一个 CLI 工具运行,可连接 OpenAI 兼容或 Anthropic 兼容的 API(包括本地 LLM)。它通过以下方式增强编码体验:

  • 工具集成:自动检测并使用语言服务器协议(LSP)服务器,实现 IDE 级别的导航(例如跳转到定义),并支持模型上下文协议(MCP)以实现丰富的数据访问。
  • 沙箱化:内置 Docker 支持,允许助手在容器内执行 shell 命令和编辑文件,以保护主机系统。
  • 自动修复:可使用自定义训练的 ML 模型自动处理工具调用和代码编辑失败的情况。
  • 上下文管理:支持会话恢复、基于目录的规则文件(OCTO.md),以及 Agent Skills 规范,实现可复用的上下文相关指令。
  • 多模态支持:如果所选模型支持视觉功能,用户可将图片附加到消息中。

适用人群

希望拥有高度可定制、零遥测的编码助手,能够在不同 LLM 提供商、本地模型和沙箱环境中工作的开发者。

主要亮点

  • 模型无关:可在对话过程中无缝切换不同 LLM API(OpenAI、Anthropic、本地模型)。
  • 零遥测:无数据收集,确保代码隐私。
  • Docker 沙箱:在 Docker 容器内运行助手操作,确保安全。
  • LSP 与 MCP 支持:集成语言服务器和模型上下文协议支持。
  • 网络搜索:通过 Synthetic 或 Exa API 集成网络搜索功能。
  • 会话持久化:自动按目录保存对话,并支持轻松恢复。

相关

  • 项目
  • 项目
  • 项目
  • Dispatch