Skip to content
LangSmith 文档版本 跟随上游 源快照 e71445e0 更新于 2026-10-18

设置编码 agent

配置 Claude Code、Codex、Gemini CLI 和 Deep Agents Code,使其通过 LLM Gateway 路由 LLM 调用。

NOTE

LLM Gateway 处于 beta 阶段。

配置编码 agent 使用标准的 LLM Gateway 端点,以实现集中化的成本控制、可观测性和审计跟踪。该网关对每个调用者进行身份验证、按模型 ID 路由、执行策略并追踪每次调用。

Claude Code 可以使用标准的 Anthropic Messages 格式,而 Codex 和 Deep Agents Code 可以使用标准的 OpenAI 兼容格式。Gemini CLI 使用 Google 的原生 API,需要直接模型访问。

前置条件

在配置客户端之前,设置你的 LangSmith API 密钥:

bash
export LANGSMITH_API_KEY="lsv2_..._....cbed3e"

Claude Code CLI

Claude Code 支持两种独立的身份验证方法。在配置之前选择一种:

  • Workspace provider secret:组织通过存储在工作区机密中的一个提供商密钥来管理计费和策略。对于组织管理的用量,使用此方法。
  • Claude subscription OAuth:Anthropic 将 LLM 调用计入用户个人的 Claude Plus 或 Max 订阅,而不是工作区提供商密钥,同时 LangSmith 仍强制执行网关权限、策略和追踪。当开发者拥有自己的订阅时,使用此方法。

使用工作区提供商密钥

将 ANTHROPIC_API_KEY 设为你的 LangSmith API 密钥。Claude Code 会从你的 shell 环境,或从随 --settings 传入的设置文件中的 env 块读取这些变量。

如果你的 LangSmith 部署在某个区域或自托管实例上,请将下方示例中的网关主机名替换为你的区域网关主机名。

仅使用 Anthropic 模型

将 ANTHROPIC_BASE_URL 设为 Anthropic 格式的网关端点。网关会从该端点推断 anthropic/ 提供商前缀。

在 --settings 文件中声明的变量优先于你 shell 中已导出的任何内容,因此网关 URL 和 API 密钥保证会覆盖你可能已在环境中设置的任何周边 ANTHROPIC_* 值(例如来自全局 shell 配置文件或另一个工具)。

bash
touch ~/.claude/langsmith_gateway.settings.json
echo '{"env": {"ANTHROPIC_BASE_URL": "https://gateway.smith.langchain.com/anthropic/","ANTHROPIC_API_KEY": "YOUR_LANGSMITH_KEY_HERE"}}' > ~/.claude/langsmith_gateway.settings.json
claude --settings ~/.claude/langsmith_gateway.settings.json

将 YOUR_LANGSMITH_KEY_HERE 替换为你的 LangSmith API 密钥。

跨提供商路由模型层级

将 ANTHROPIC_BASE_URL 设为网关根,然后将每个 Claude 模型层级映射到一个带提供商前缀的网关模型 ID。

在 --settings 文件中声明的变量优先于你 shell 中已导出的任何内容,因此网关 URL、API 密钥和模型映射保证会覆盖任何周边的 ANTHROPIC_* 值。

bash
touch ~/.claude/langsmith_gateway.settings.json
echo '{"env": {"ANTHROPIC_BASE_URL": "https://gateway.smith.langchain.com","ANTHROPIC_API_KEY": "YOUR_LANGSMITH_KEY_HERE","ANTHROPIC_DEFAULT_OPUS_MODEL": "anthropic/claude-opus-5","ANTHROPIC_DEFAULT_SONNET_MODEL": "openai/gpt-5.6-terra","ANTHROPIC_DEFAULT_HAIKU_MODEL": "fireworks/accounts/fireworks/models/glm-5p2"}}' > ~/.claude/langsmith_gateway.settings.json
claude --settings ~/.claude/langsmith_gateway.settings.json

将 YOUR_LANGSMITH_KEY_HERE 替换为你的 LangSmith API 密钥。

这些模型 ID 只是示例。将每个层级映射到在工作区机密中配置的任何模型,或通过 Gateway Credits 可用的模型;网关负责跨提供商的请求转换。详情参阅 API 格式。

使用 Claude 订阅 OAuth

NOTE

Claude 订阅 OAuth 需要一个有效的 Claude Code Plus 或 Max 订阅。如果你使用的是工作区 Anthropic API 密钥,请改用工作区提供商密钥方法。

Claude Code Plus 和 Max 用户可以将他们保存的 Anthropic OAuth 凭据通过网关发送。此模式不需要在工作区提供商机密中设置 ANTHROPIC_API_KEY。

用你的订阅登录 Claude Code,然后配置网关。

在 --settings 文件中声明的变量优先于你 shell 中已导出的任何内容,因此网关 URL 和自定义标头保证会覆盖任何周边的 ANTHROPIC_* 值。该设置文件还能让你的 LangSmith API 密钥不进入你的 shell 历史和点文件。

bash
touch ~/.claude/langsmith_gateway.settings.json
echo '{"env": {"ANTHROPIC_BASE_URL": "https://gateway.smith.langchain.com/anthropic","ANTHROPIC_CUSTOM_HEADERS": "X-Api-Key: YOUR_LANGSMITH_KEY_HERE"}}' > ~/.claude/langsmith_gateway.settings.json
claude --settings ~/.claude/langsmith_gateway.settings.json

将 YOUR_LANGSMITH_KEY_HERE 替换为你的 LangSmith API 密钥。

Claude Code 使用并刷新来自其保存登录的 OAuth 凭据,包括 anthropic-beta 标头中所需的 OAuth 能力。

LangSmith API 密钥对网关请求进行身份验证,并仍受网关权限和策略约束。网关将 OAuth bearer 转发给 Anthropic,因此 Anthropic 会将该调用计入用户的 Claude 订阅,而非工作区提供商密钥。要确认调用经过网关路由,请检查追踪是否出现在 gateway 追踪项目中,如验证设置所述。

WARNING

对于此模式,请保持 ANTHROPIC_AUTH_TOKEN 和 ANTHROPIC_API_KEY 未设置。任一变量都会优先于保存的订阅登录。

WARNING

配置网关后,Claude Desktop 插件会失效。

Codex CLI

Codex 使用 Responses API。将以下内容添加到 ~/.codex/config.toml,以通过标准端点使用 Gateway Credits 调用托管的 Kimi K3 模型:

toml
model = "moonshotai/kimi-k3"
model_provider = "langsmith-gateway"

[model_providers.langsmith-gateway]
name = "LangSmith Gateway"
base_url = "https://gateway.smith.langchain.com/v1"
env_key = "LANGSMITH_API_KEY"
wire_api = "responses"
supports_websockets = false

然后运行:

bash
codex

要改用自带密钥模型,请将 model 替换为其带提供商前缀的 ID,例如 openai/gpt-5.4-mini。

WARNING

配置网关后,Codex Desktop 插件会失效。该 TOML 配置强制通过网关进行身份验证,因此 OpenAI 不再直接处理插件身份验证。

Gemini CLI

Gemini CLI 发送 Google 原生的 Generate Content 请求,而标准端点不暴露这些请求。按照直接模型访问配置 /gemini 路由,然后运行:

bash
gemini

Deep Agents Code

将 OpenAI 兼容客户端与标准端点一起使用,然后通过 openai 集成传入托管模型 slug:

bash
export OPENAI_BASE_URL="https://gateway.smith.langchain.com/v1"
export OPENAI_API_KEY="$LANGSMITH_API_KEY"

dcode --model openai:moonshotai/kimi-k3

要使用自带密钥模型,请保留标准 base URL,并在 openai: 之后传入一个带提供商前缀的模型,例如 openai:anthropic/claude-opus-5。有关提供商原生的集成和模型 ID,参阅直接模型访问。

全公司部署

对于向所有开发者推广网关的组织,请通过移动设备管理或共享的 shell 配置文件分发配置。分发:

  1. 每个客户端的标准网关 base URL。
  2. 每用户或每团队一个工作区范围的 LangSmith API 密钥,取决于你的策略粒度。
  3. 为每个编码 agent 批准的模型 ID。
  4. 如果你的组织使用 Codex,则包括 Codex config.toml。

提供商 API 密钥集中保存在 LangSmith 工作区机密中。Gateway Credits 模型不需要提供商 API 密钥。

验证设置

在配置一个编码 agent 之后,发起一次测试调用并确认:

  1. 该调用成功,且 agent 收到了响应。
  2. 在你的 LangSmith 工作区中,gateway 或 gateway-<short_api_key>-<api_key_id> 追踪项目里出现了一条追踪。

如果该调用以 403 失败,请检查你的 API 密钥角色是否包含 gateway:invoke 和 workspaces:read。如果一个自带密钥调用以提到缺少提供商密钥的 400 失败,请让你的组织管理员将该提供商的密钥添加到工作区机密。

后续步骤


BytesRouter 是社区翻译站点,所有译文仅供参考,一切以官方英文原文为准。