找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

5190

积分

0

好友

716

主题
发表于 7 小时前 | 查看: 5| 回复: 0

在当前的软件开发领域,AI 编码助手已经成为提升效率的关键工具。 Claude Code 无疑是其中的热门选择,而 OpenAI 的 Codex 与 Google 的 Gemini 也各自拥有稳定的开发者用户群。

但是,当你尝试同时使用多个这样的工具时,配置的复杂性便会凸显。不同的认证流程、各异的基础 URL、以及各自为政的模型与配置方式,都让整体体验变得割裂。Bifrost 在其 CLI-agents 文档中,将自身定位为解决此类碎片化问题的方案:它通过一个网关(gateway)为支持的 agents 提供“通用模型访问”,并集成了 MCP 与可观测性功能。

这正是 Bifrost CLI 的吸引力所在。

与其将 Claude Code、Gemini 和 Codex 视为三个独立的终端工作流,Bifrost CLI 允许你从一个统一的界面启动它们,并将所有流量路由至 Bifrost 网关。根据官方文档,Bifrost CLI 围绕一个交互式的初始化流程构建:你选择网关、运行适配层(harness)、模型,然后无需手动拼接任何配置即可启动会话。

更广义地说,Bifrost 的目标不仅仅是“在一个地方打开多个工具”,而是“通过同一个网关支撑的工作流,在受支持的 agents 上灵活使用不同的供应商与模型组合”。

在本文中,我将演示如何通过 Bifrost CLI 从一个界面同时管理 Claude Code、Gemini 和 Codex,并探讨其真正的价值:它如何让我们在同一工作流中更灵活地思考“代理选择”与“模型选择”。

Bifrost CLI 概念图:整合 Claude Code, Codex CLI 和 Gemini CLI

为什么需要一个统一界面?

过去几个月,AI 编码代理已成为我开发工作流中不可或缺的一部分。Claude Code 备受瞩目,Codex 对于 OpenAI 生态的开发者而言仍是熟悉的选择,而 Gemini CLI 也逐渐成为终端开发者的选项之一。

问题在于,同时使用多个编码代理意味着要面对多套不同的安装与配置流程。

每个工具都有自己关于认证、基础 URL、模型选择和配置的假设。即便每一套设置单独来看都不复杂,但当需要在工具间切换,或在真实项目中测试不同的“模型+代理”组合时,这些摩擦会迅速累积。

这正是 Bifrost CLI 的价值所在。

吸引我的并不仅仅是“用一个命令启动不同的编码代理”。更重要的是,Bifrost 通过其网关站在这些代理之前,这意味着工作流不仅是“在 Claude Code、Gemini 和 Codex 间切换”,更包括了“从一个界面灵活地选择与路由模型”。Bifrost 官方将其称为 通用模型访问:任何在 Bifrost 中配置的供应商或模型,都可以与受支持的代理搭配使用。

Bifrost CLI 交互式启动界面

对我而言,Bifrost CLI 的吸引力很简单:不再将 Claude Code、Gemini 和 Codex 视为彼此完全独立的终端环境,而是将它们纳入同一个工作流的一部分。

这便将核心问题从“我该用哪个编码 CLI?”,转变为更务实的:“如何在不同编码代理与模型之间切换,而不必每次都重新配置一切?”

什么是 Bifrost?网关为何重要?

在深入探讨 Bifrost CLI 之前,先理解 Bifrost 本身是什么会更有帮助。

Bifrost 是一个 AI 网关。简单来说,它位于你的应用程序或工具与底层模型供应商之间。它并非让每个工具直接连接每个供应商,而是在前端提供了一层统一的抽象。官方文档将其描述为一个面向多家供应商、兼容 OpenAI 的 AI 网关,支持可观测性、治理、缓存、故障切换与负载均衡等功能。

这一点很关键,因为 Bifrost CLI 并非一个自带模型的“独立外壳”。它的工作方式是将编码代理连接到你已经运行的 Bifrost 网关上。

Bifrost CLI 快速入门

根据 CLI 快速入门指南,流程通常从启动 Bifrost 网关开始:

npx -y @maximhq/bifrost

这会在本地启动网关,默认监听 http://localhost:8080。然后在另一个终端中启动 CLI:

npx -y @maximhq/bifrost-cli

安装完成后,你可以直接运行:

bifrost

运行 Bifrost CLI 前,你需要确保 Claude CodeGemini CLICodex CLI 已经安装并能正常运行。

如果尚未安装,可按以下步骤快速安装:

  1. 安装 Claude Code:

    curl -fsSL https://claude.ai/install.sh | bash

    安装后,启动命令为 claude
    Claude Code 终端界面

  2. 安装 Codex CLI:

    npm install -g @openai/codex

    安装后,启动命令为 codex
    Codex CLI 终端界面

  3. 安装 Gemini CLI:

    npm install -g @google/gemini-cli

    安装后,启动命令为 gemini
    Gemini CLI 终端界面

请注意:你需要为每个 LLM 供应商准备相应的订阅或 API Key 才能使用其服务。

回到 Bifrost CLI,在新终端中启动 bifrost 后,你可以选择要使用的编码代理。以下界面展示了选择过程:

Bifrost CLI 插件选择菜单

这里的价值不仅仅在于能从一个界面打开多个代理,而在于它们都连接到了同一个控制层。这为更灵活的工作流(如模型访问、可观测性及代理配置)打开了大门。

可以这样理解:

  • Bifrost 网关 = 路由与控制层
  • Bifrost CLI = 通过该网关启动编码代理的交互式工作流层

Bifrost CLI 有何不同?

通常,尝试一个新的编码代理总会遇到配置上的摩擦,例如环境变量、针对特定供应商的基础 URL、API Key、模型配置等。

Bifrost CLI 用一个交互式流程取代了大量重复工作:你只需运行一个命令,选择你的设置,剩下的由 CLI 处理。文档将其描述为“一个交互式终端工具,将编码代理连接到 Bifrost 网关,无需手动配置”。

实际操作时,启动 CLI (bifrost) 后,它会引导你完成一系列设置,包括网关 URL、可选的虚拟密钥、要使用的适配层以及要启动的模型。CLI 会自动为每个支持的代理配置基础 URL、API Key 和模型设置,并从网关获取可用模型列表。

Bifrost CLI 配置就绪界面

另一个优点是,体验不会在首次启动后就结束。Bifrost CLI 提供了一个持久化的、支持标签页的终端 UI。这让它更像一个真正的工作流层,而非一次性启动器。

一个实用的安全细节是:CLI 会将虚拟密钥存储在操作系统的密钥环中,而非明文的配置文件;同时将基础 URL、适配层、模型等通用默认项写入 CLI 配置。

所以,我对 Bifrost CLI 的简单总结是:

  • 提供了一个进入 Claude Code、Gemini 和 Codex 的统一入口
  • 允许在同一流程中选择模型
  • 消除了大量重复的配置摩擦
  • 通过持久化的工作流,使会话切换更加自然

通过 Bifrost CLI 使用 Claude Code

Bifrost CLI 中从 Claude Code 开始是个不错的选择,因为它是目前备受关注的编码代理。

你不再需要将 Claude Code 当作一个需要独立配置的环境。相反,你启动 Bifrost CLI,选择 Claude Code 作为适配层,选取模型,然后在交互式终端界面中调整其余会话设置。

流程如下:

  1. 在一个终端启动网关:npx -y @maximhq/bifrost
  2. 在另一个终端启动 CLI:bifrost
  3. Bifrost CLI 打开后,你可以在终端界面中直接配置会话。正如启动页所示,你可以查看或修改 Base URLHarnessModelVirtual KeyWorktree,而无需编辑配置文件。

这是体验的关键:Bifrost CLI 将设置过程转变为引导式启动流程。在此界面中,你可以使用快捷键:

  • u:修改基础 URL
  • v:新增或更新虚拟密钥
  • h:切换适配层
  • m:选择不同模型
  • w:为 Claude Code 启用工作树模式
  • Enter:启动

通过 Bifrost CLI 使用 Claude Code 的完整流程:

  1. 启动 Bifrost 网关
  2. 运行 bifrost
  3. 确认选择 Claude Code 作为适配层
  4. 在 Bifrost CLI 界面中选择模型
  5. 在同一终端 UI 中调整所需设置
  6. Enter 启动

Claude Code 在 Bifrost CLI 中运行

这种灵活性才是更大的看点。与其将 Claude Code 视为“固定配置”,不如将其视为“我想使用的界面”,而将模型层的选择与路由交给 Bifrost 处理。

通过 Bifrost CLI 使用 Codex

当 Claude Code 能够通过 Bifrost CLI 正常工作时,接下来尝试 Codex。这时,“一个界面”的故事更具说服力,因为你不仅在复用相同的启动流程来运行另一个编码代理,也在复用同一个“由网关支撑的模型工作流”。

在手动配置中,Codex 需要通过将其基础 URL 指向 Bifrost 的兼容端点(通常是 http://localhost:8080/openai/v1)并提供 Bifrost 虚拟密钥来配置。

但通过 Bifrost CLI,你无需直接编辑 Codex 的配置文件。只需打开同一个 Bifrost 终端 UI,将适配层切换到 Codex,选择模型,然后从同一个交互式界面启动。

Codex 在这个设置中特别有用的一点是:Bifrost 并不把它限定在 OpenAI 托管的模型上。官方文档展示了如何使用其他供应商的模型启动 Codex,例如:

codex --model anthropic/claude-sonnet-4-5-20250929
codex --model gemini/gemini-2.5-pro

这清楚地表明:Bifrost 不只是个简单启动器。Codex 仍是代理界面,但底层模型可以来自其他供应商。

使用步骤很简单:

  1. 打开同一个 Bifrost CLI 界面
  2. 将适配层切换为 Codex
  3. 选择模型(例如 anthropic/claude-sonnet-4-5-20250929
  4. 在就绪界面上直接启动

在 Bifrost CLI 中选择 Codex 作为适配层

通过 Bifrost CLI 运行的 Codex,使用 Claude 模型

实用提醒:Codex 文档提到,为 Bifrost 网关配置 Codex 前,建议先运行 /logout 命令。此外,使用非 OpenAI 模型时,这些模型需要支持 Codex 期望的工具调用能力。

通过 Bifrost CLI 使用 Gemini

当切换到 Gemini 时,Bifrost CLI 的价值更加直观。你不需要学习第三套设置,也无需管理另一条单独的配置路径。你仍然使用同一个 Bifrost 界面、同一个启动流程、同一个模型选择工作流。唯一的变化是适配层。

这才能真正被称为“一个界面”。

实际操作:

  1. 在终端1启动网关:npx -y @maximhq/bifrost
  2. 在终端2启动 CLI:bifrost
  3. h 将适配层切换到 Gemini
  4. m 选择模型
  5. 按回车启动

在 Bifrost CLI 中切换至 Gemini

这也让 Bifrost 的“大局观”更清晰。一旦将 Gemini CLI 通过 Bifrost 路由,其所有流量都会经过 Bifrost 网关,从而可以访问该网关设置中配置的任何供应商/模型,并获得可观测性与治理能力。

这意味着 Gemini 并不限于谷歌托管的模型。官方文档展示了使用 provider/model-name 格式运行来自其他供应商的模型,例如 openai/gpt-5anthropic/claude-sonnet-4-5-20250929

兼容性前提:Gemini CLI 文档指出,非 Google 的模型必须支持工具调用能力,因为 Gemini CLI 依赖此能力进行文件操作、终端命令与代码编辑。

尽管如此,整体体验正是我所期望的:保留同一个 Bifrost 界面,通过几次按键切换到 Gemini,选择模型,然后无缝继续工作。

面向代理与模型的统一界面

在使用 Bifrost CLI 管理了 Claude Code、Codex 与 Gemini 之后,我最大的体会是:真正的价值远不止“把多个编码代理放在一起”。

更重要的收益在于:Bifrost 提供了一个同时跨越“代理”与“模型”的统一界面。

这听起来是个细微差别,但它确实改变了工作流。通常,编码代理与底层模型是强绑定的。而通过 Bifrost,这种绑定变得更加灵活:你交互的编码代理与真正处理请求的模型,不必像过去那样固定匹配。Bifrost 文档明确将此称为受支持代理间的“通用模型访问”。

这就是为什么用“一个界面”来描述 Bifrost CLI 非常贴切。它提供了一个一致的流程,用于:

  • 选择编码代理
  • 选择模型
  • 在不重建配置的情况下改变这些选择
  • 在同一终端工作流中于不同会话间切换

在实践中,这意味着你可以因为喜欢 Claude Code 的界面而使用它;当想对比行为时可以切换到 Codex;或在需要时转向 Gemini,而无需从头开始。同时,你可以将模型选择作为一个独立的决策来考量。

对我而言,这带来了三点实际收益:

  1. 更容易比较不同代理的行为:无需分别为每个工具搭建环境,你可以在同一界面中切换,将精力集中在它们的表现上。
  2. 更容易试验不同的模型选择:想在某个编码代理中尝试其他模型?Bifrost 让这看起来是工作流的常规环节。
  3. 长期降低配置摩擦:即便单独配置每个工具不算难,跨工具重复设置也会令人厌倦。Bifrost CLI 通过单一的交互式流程、可记忆的设置以及为重启/切换设计的持久化终端 UI 来替代这些重复劳动。

若要用一句话概括其核心价值:

Bifrost CLI 不只是在一个地方启动 Claude Code、Gemini 与 Codex——它提供了一个能更自由地混搭“代理选择”与“模型选择”的统一工作流。

这使得这套方案不仅仅是“方便”,而是“真正有用”。

总结

通过 Bifrost CLI 整合使用 Claude Code、Codex 与 Gemini 后,最大的收获是它带来了超越“便利性”的价值。

Bifrost CLI 真正改变的是工作流范式。你不再需要为每个编码代理维护独立的配置路径,而是在一个统一的界面中工作,将底层的路由与控制交给 Bifrost 网关。这让跨代理切换、试验不同模型组合变得无比轻松,整体体验也更为一致。Bifrost 文档描述的 通用模型访问,在实际使用这三个代理后,显得非常贴切。

如果你已经对 Claude Code 感兴趣,同时也希望在同一个终端工作流中灵活接入 Gemini 与 Codex,那么 Bifrost CLI 会让这一设想变得切实可行,极大提升了开发者的工具管理效率。在 云栈社区运维/DevOps 板块,你也能找到更多关于高效命令行工作流与自动化实践的分享。




上一篇:OpenMythos开源:PyTorch复现Claude Mythos循环深度推理架构
下一篇:基于Virtualization.framework在macOS上运行iOS 26虚拟机:解决模拟器权限测试难题
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-4-20 12:45 , Processed in 0.620304 second(s), 41 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表