快速开始
Deep Agents Code 会自动集成以下 model providers:除安装相关 provider package 外,无需额外配置。-
安装 provider packages
每个 model provider 都需要对应的 LangChain integration package。这些 packages 以 optional extras 形式提供,以保持应用轻量。OpenAI、Anthropic 和 Gemini 默认包含。可以在 session 中用
/install安装任何其他 extra,或在 shell 中用dcode --install安装:不带 argument 运行/install可列出有效 extras。若要在初始 CLI install 期间预安装 extras,请设置DEEPAGENTS_CODE_EXTRAS: -
设置 credentials
使用
/authcredential manager 为 provider 添加 API key:对于 non-interactive runs、CI/CD,或任何无法使用 TUI 的环境,请改为设置 provider 的 environment variable。完整 key resolution order 请参阅 Provider credentials;将 key 作用域限定到 Deep Agents Code 的方法请参阅DEEPAGENTS_CODE_prefix;每个 provider 的 environment variable 请参阅 Provider reference。 若要配置 model parameters,请参阅 Model parameters。
Provider reference
Deep Agents Code 使用 Python 构建,请使用 Python provider reference docs。Model routers 和 proxies
OpenRouter 和 LiteLLM 等 model routers 通过单一 endpoint 提供对多个 providers 的 models 的访问。 请使用这些服务的专用 integration packages:| Router | Package |
|---|---|
| OpenRouter | langchain-openrouter |
切换 models
若要在 Deep Agents Code 中切换 models,可以:-
使用
/modelcommand 打开 interactive model switcher。这会显示来自每个已安装 LangChain provider package 的 model profiles 的 available models。并非所有 models 都会出现在这里。如果你的 model 缺失,请直接传入 model name(例如/model gpt-5.5)。详情请参阅 Which models appear in the switcher。 -
将 model name 直接指定为 argument,例如
/model gpt-5.5。无论该 model 是否出现在选项 1 的列表中,你都可以使用所选 provider 支持的任何 model。Model name 会传递给 API request。 -
通过
--model在启动时指定 model,例如:
Model resolution order
Model resolution order
Deep Agents Code 启动时会按以下顺序解析要使用的 model:
- 如果提供,
--modelflag 始终胜出。 ~/.deepagents/config.toml中的[models].default,即 user 有意设置的 long-term preference。~/.deepagents/config.toml中的[models].recent,即上次通过/model切换到的 model。它会自动写入,但绝不会覆盖[models].default。- Environment auto-detection:回退到第一个可用 startup credential,检查顺序为:
OPENAI_API_KEY、ANTHROPIC_API_KEY、GOOGLE_API_KEY、GOOGLE_CLOUD_PROJECT(Vertex AI)。
--model、/model 和 saved defaults([models].default / [models].recent)使用。哪些 models 会出现在 switcher 中
/model selector 会从已安装 provider packages 动态构建列表。展开下方内容可查看完整 criteria 和 troubleshooting。
How the switcher builds its model list
How the switcher builds its model list
Interactive
/model selector 会动态构建列表,它不是写死在 Deep Agents Code 中的 hardcoded list。当以下条件全部为真时,model 会出现在 switcher 中:-
Provider package 已安装。 每个 provider(例如
langchain-anthropic、langchain-openai)都必须与deepagents-code一起安装,可以作为 install extra 预安装,也可以稍后用/install <extra>添加(例如/install ollama)。如果 package 缺失,switcher 中会缺少整个 provider section。 -
Model 有启用
tool_calling的 profile。 Deep Agents Code 需要 tool-calling support,因此 profile 中没有tool_calling: true的 models 会被排除。这是 model 缺失于列表的最常见原因。对于不内置 profiles 的 providers(请参阅 Provider reference table),你可以在config.toml中定义一个:严格来说,这不是让 model 出现在 switcher 中的必要条件,将它添加到modelslist 也可以,而且更简单。当你希望 Deep Agents Code 知道 model context window 和 capabilities,以支持 auto-summarization 等 features 时,profile 很有用。所有可覆盖 fields 请参阅 Profile overrides。 -
Model 接受并生成文本。 Profile 中显式将
text_inputs或text_outputs设置为false的 models(例如 embedding 或 image-generation models)会被排除。
config.toml 的 [models.providers.<name>].models 下定义的 models 会绕过 profile filter,无论 profile metadata 如何,它们始终出现在 switcher 中。这是添加列表中缺失 models 的推荐方式。Troubleshooting missing models
| 症状 | 可能原因 | 修复方式 |
|---|---|---|
| Switcher 中缺少整个 provider | Provider package 未安装 | 安装 extra(例如 /install groq) |
| 显示 provider 但缺少特定 model | Model profile 中 tool_calling: false,或不存在 profile | 在 config.toml 中将 model 添加到 [models.providers.<name>].models,或直接使用 /model <provider>:<model> |
| Provider 显示 ⚠ “missing credentials” | API key env var 未设置 | 按 Provider reference table 设置 credential env var |
| Provider 显示 ? “credentials unknown” | Provider 使用 Deep Agents Code 无法验证的 non-standard auth | Credentials 可能仍然可用,请尝试切换到该 model。如果 auth 失败,请检查 provider docs |
设置 default model
你可以设置一个 persistent default model,供后续所有 CLI launches 使用:-
通过 model selector: 打开
/model,导航到想要的 model,并按Ctrl+S将其 pin 为 default。在当前 default 上再次按Ctrl+S会清除它。 -
通过 command:
/model --default provider:model(例如/model --default anthropic:claude-opus-4-7) -
通过 config file: 在
~/.deepagents/config.toml中设置[models].default(请参阅 Configuration)。 -
从 shell:
-
从 shell:
-
通过 command:
/model --default --clear -
通过 model selector: 在当前 pinned default model 上按
Ctrl+S。
Model parameters
向 model 传递额外 constructor kwargs,包括 sampling controls、reasoning/thinking budgets、context window sizes、request timeouts,以及底层 chat-model class 接受的任何其他参数。可在三个位置设置,按优先级从高到低:-
启动时用
--model-params一次性设置。 JSON string,仅限 session: -
Session 中通过
/model --model-params设置。 使用相同 JSON syntax,无需重启即可替换 params(并可选择替换 model): -
持久保存在
config.toml中。 每次启动都应用的 provider-level defaults(可带 optional per-model sub-tables):
params,且仅限当前 session(session 中途的更改不会持久化)。config.toml 中的 per-model sub-tables 会覆盖 provider-level keys(浅层 merge,完整语义请参阅 Model constructor params)。--model-params 不能与 --default 组合使用。
不要将 credentials(
api_key)放入 params,请改用 api_key_env 指向 environment variable。max_input_tokens、tool_calling、capability flags),这不同于 constructor params,请参阅 Profile overrides。
Advanced configuration
有关 provider params、profile overrides、custom base URLs、compatible APIs、arbitrary providers 和 lifecycle hooks 的详细配置,请参阅 Configuration。Connect these docs to Claude, VSCode, and more via MCP for real-time answers.

