跳到主要内容

文档索引

在以下地址获取完整的文档索引:https://docs.langchain.org.cn/llms.txt

在进一步探索之前,请使用此文件发现所有可用页面。

Deep Agents CLI 是一款开源的终端编程智能体,基于 Deep Agents SDK 构建。它具备持久化记忆,能在不同会话间保持上下文,学习项目规范,使用可定制的技能,并在人工审批控制下执行代码。 Deep Agents CLI Deep Agents CLI 具有以下内置功能:
  • 文件操作 - 通过工具读取、编写和编辑文件,使智能体能够管理和修改代码及文档。
  • Shell 执行 - 执行命令以运行测试、构建项目、管理依赖项以及与版本控制系统交互。
  • 网页搜索 - 在网上搜索最新信息和文档(需要 Tavily API 密钥)。
  • HTTP 请求 - 向 API 和外部服务发送 HTTP 请求,以执行数据获取和集成任务。
  • 任务规划与跟踪 - 将复杂任务分解为离散步骤并跟踪进度。
  • 存储与检索记忆 - 在会话间存储和检索信息,使智能体能够记住项目规范和习得的模式。
  • 上下文压缩与转储 - 总结较旧的对话消息并将原件转储至存储空间,从而在长会话中释放上下文窗口空间。
  • 人机回环 (Human-in-the-loop) - 对敏感的工具操作需要人工审批。
  • 技能 - 通过自定义专业知识和指令扩展智能体的能力。
  • MCP 工具 - 从 Model Context Protocol (模型上下文协议) 服务器加载外部工具。
  • 追踪 - 在 LangSmith 中追踪智能体操作,以实现可观测性和调试。

内置工具

该智能体附带以下内置工具,无需配置即可使用
工具描述人机回环 (Human-in-the-Loop)
ls列出文件和目录-
read_file读取文件内容;针对特定模型支持多模态内容-
write_file创建或覆盖文件必需1
edit_file对现有文件进行针对性编辑必需1
glob查找匹配模式的文件-
grep在文件中搜索文本模式-
execute在本地或远程沙箱中执行 shell 命令必需1
web_search (网页搜索)使用 Tavily 搜索网页必需1
fetch_url (获取 URL)获取网页并将其转换为 Markdown必需1
task将工作委托给子智能体进行并行执行必需1
ask_user向用户提出开放式或多选题-
compact_conversation (压缩对话)总结旧消息,将原件转储至后端存储,并在上下文中用摘要替换它们混合2
write_todos (写入待办)为复杂工作创建并管理任务列表-
1:潜在的破坏性操作在执行前需要用户审批。要跳过人工审批,您可以切换自动审批(shift+tab)或在启动时使用相应选项
deepagents -y
# or
deepagents --auto-approve
在非交互式运行 CLI 时(通过 -n 或管道 stdin),即使使用了 -y/--auto-approve,shell 执行默认也是禁用的。使用 -S/--shell-allow-list 来允许特定的命令(例如 -S "pytest,git,make"),使用 recommended 以启用安全默认值,或使用 all 以允许任何命令。此外也支持 DEEPAGENTS_CLI_SHELL_ALLOW_LIST 环境变量。详情请参阅 非交互模式与管道
2:当 Token 使用量超过模型感知的阈值时,CLI 会自动在后台转储对话。转储会通过 LLM 总结旧消息,并将原件弹出至存储(/conversation_history/{thread_id}.md),在上下文中用摘要替换。如果需要,智能体仍可从转储文件中检索完整历史记录。compact_conversation 工具允许智能体(或您)按需触发转储。作为工具调用时,默认需要用户审批。
观看演示视频 以了解 Deep Agents CLI 的工作原理。
Deep Agents CLI 官方暂不支持 Windows。Windows 用户可以尝试在 适用于 Linux 的 Windows 子系统 (WSL) 下运行。

快速入门

设置模型凭据

将您提供商的 API 密钥导出为环境变量,或将其添加到 ~/.deepagents/.env
export OPENAI_API_KEY="your-api-key"
为了避免在每个终端会话中设置密钥,请将它们添加到 ~/.deepagents/.env。请参阅 环境变量
该 CLI 适用于任何支持工具调用的 LLM。默认安装了 OpenAI、Anthropic 和 Google。对于其他提供商(Ollama、Groq、xAI 等),请参阅 提供商

安装并运行

默认安装了 OpenAI、Anthropic 和 Google。其他提供商(Ollama、Groq、xAI 等)可作为可选扩展使用 —— 详情请参阅 提供商
curl -LsSf https://langch.in/gh-da-cli | bash
deepagents

给智能体分配一个任务

Create a Python script that prints "Hello, World!"
在修改文件之前,智能体会提议更改并显示差异 (diff) 以供您审批。

启用追踪(可选)

要在 LangSmith 中查看智能体操作、工具调用和决策,请将以下内容添加到 ~/.deepagents/.env 或在 shell 中导出变量
~/.deepagents/.env
LANGSMITH_TRACING=true
LANGSMITH_API_KEY=lsv2_...
LANGSMITH_PROJECT=optional-project-name  # Specify a project name or default to "deepagents-cli"
有关设置详情和用法,请参阅 使用 LangSmith 进行追踪

提供商

现成支持 OpenAI、Anthropic 和 Google。其他提供商需单独安装,以便您仅获取所需内容。
# Add extra providers to an existing install
uv tool install deepagents-cli --with langchain-xai
有关支持的提供商的完整列表,请参阅 模型提供商

交互模式

像在聊天界面中一样自然输入即可。智能体将使用其内置工具、技能和记忆来协助您完成任务。
在 CLI 会话中使用这些命令
  • /model - 切换模型或打开交互式模型选择器。详见 切换模型
  • /agents - 在预配置的智能体之间快速切换而无需重启。详见 切换智能体
  • /remember [context] - 回顾对话并更新记忆与技能。可选择性地传递额外上下文
  • /skill:<name> [args] - 直接按名称调用技能。技能的 SKILL.md 指令连同您提供的任何参数都会注入到提示词中
  • /skill-creator [args] - 用于创建高效智能体技能的指南
  • /offload (别名 /compact) - 通过将消息转储至存储并保留摘要占位符来释放上下文窗口空间。如果需要,智能体可以从转储文件中检索完整历史记录
  • /tokens - 显示当前上下文窗口 Token 使用情况的详细分解
  • /clear - 清除对话历史记录并开始新线程
  • /threads - 浏览并恢复之前的对话线程
  • /mcp - 显示活跃的 MCP 服务器和工具
  • /reload - 重新读取 .env 文件、刷新配置并重新发现技能而无需重启。对话状态将被保留。覆盖行为请参阅 DEEPAGENTS_CLI_ 前缀
  • /theme - 打开交互式主题选择器以切换颜色主题。支持内置主题及任何 用户定义主题
  • /update - 在线检查并安装 CLI 更新。检测您的安装方式(uv、Homebrew、pip)并运行相应的升级命令
  • /auto-update - 开启或关闭自动更新
  • /trace - 在 LangSmith 中打开当前线程(需要 LANGSMITH_API_KEY
  • /editor - 在外部编辑器中打开当前提示词 ($VISUAL / $EDITOR)。请参阅 外部编辑器
  • /changelog - 在浏览器中打开 CLI 更新日志
  • /docs - 在浏览器中打开文档
  • /feedback - 打开 GitHub issues 页面以提交错误报告或功能请求
  • /version - 显示安装的 deepagents-cli 和 SDK 版本
  • /help - 显示帮助信息和可用命令
  • /quit - 退出 CLI
输入 ! 进入 shell 模式,然后输入您的命令。
git status
npm test
ls -la
通用
快捷键操作
Enter (回车)提交提示词
Shift+Enter, Ctrl+J, Alt+Enter, 或 Ctrl+Enter插入新行
Ctrl+A选择输入框中的所有文本
@文件名自动补全文件并注入内容
Shift+TabCtrl+T切换自动审批
Ctrl+U删除至行首
Ctrl+X在外部编辑器中打开提示词
Ctrl+O展开/折叠最近的工具输出
Escape (退出键)中断当前操作
Ctrl+C中断或退出
Ctrl+D退出

非交互模式与管道

使用 -n 运行单个任务,而不启动交互式界面
deepagents -n "Write a Python script that prints hello world"
您还可以通过 stdin 管道传输输入。当输入被管道传输时,CLI 会自动以非交互方式运行
echo "Explain this code" | deepagents
cat error.log | deepagents -n "What's causing this error?"
git diff | deepagents -n "Review these changes"
git diff | deepagents --skill code-review -n 'summarize changes'
当您将管道输入与 -n-m 结合使用时,管道内容会首先出现,随后是您传递给标志的文本。
管道输入的最大限制为 10 MiB。
非交互模式下默认禁用 Shell 执行。使用 -S/--shell-allow-list 启用特定命令(例如 -S "pytest,git,make"),使用 recommended 启用安全默认值,或使用 all 允许任何命令。
CI/CD 管道中运行时间过长或行为异常的智能体可能会无限循环。--max-turns N 为操作员提供了一个硬性的上限,而无需触及 SDK 内部逻辑
deepagents -n "fix the failing tests" --max-turns 10
N 必须为正整数,且会覆盖默认的内部安全上限。当预算超出时,程序将以退出码 124 退出(与 GNU timeout 一致),以便 CI 能够区分预算超限和常规失败。此项需要 -n 或管道 stdin;否则将以退出码 2 退出。
使用 -q 以获得适合管道传输到其他命令的干净输出,使用 --no-stream 在写入 stdout 之前缓冲完整响应(而非流式传输)
deepagents -n "Generate a .gitignore for Python" -q > .gitignore
deepagents -n "List dependencies" -q --no-stream | sort
在非交互模式下,智能体被指示做出合理的假设并自主推进,而不是提出澄清问题。它还会倾向于使用非交互式命令变体(例如 npm init -yapt-get install -y)。
# Allow specific commands (validated against the list)
deepagents -n "Run the tests and fix failures" -S "pytest,git,make"

# Use the curated safe-command list
deepagents -n "Build the project" -S recommended

# Allow any shell command
deepagents -n "Fix the build" -S all
请谨慎使用。-S all (或 --shell-allow-list all) 允许智能体在无需人工确认的情况下执行任意 shell 命令。

启动时运行命令

使用 --startup-cmd 在会话接受第一个提示词之前运行一次 shell 命令。输出将显示在会话顶部,这对于在输入第一个提示词之前检查 git status、列出文件或验证环境设置非常方便。
# Interactive: show git status before the first prompt
deepagents --startup-cmd "git status"

# Combine with an initial prompt — the command runs first, then the prompt is submitted
deepagents --startup-cmd "ls -la" -m "Summarize what's in this directory"

# Non-interactive: see env state before the task runs
deepagents --startup-cmd "git diff --stat" -n "Review these changes"
该命令在任何 -m 提示词或 --skill 调用分发之前运行,并遵循您的 shell 环境。非零退出和超时会发出警告但不会中止会话。在非交互模式下,该命令有 60 秒的超时限制。
输出不会注入到智能体的消息历史中 —— LLM 看不到它。要将命令输出交给智能体,请通过 stdin 管道传输(例如 git diff | deepagents -n "Review these changes")。

切换模型

您可以在会话期间使用 /model 命令切换模型,而无需重启 CLI,或者在启动时使用 --model 标志进行指定
> /model anthropic:claude-opus-4-6
> /model openai:gpt-5.5
deepagents --model openai:gpt-5.5
运行 /model 以打开交互式模型选择器,它会按提供商分组显示可用模型。 有关切换模型、设置默认值以及添加自定义模型提供商的完整详细信息,请参阅 模型提供商

模型参数

通过在启动时向 --model-params 传递 JSON,或在会话中期向 /model --model-params 传递 JSON,可以覆盖模型调用参数(例如推理力度、思考预算、最大输出 Token 等)
deepagents --model openai:gpt-5.5 --model-params '{"reasoning": {"effort": "high"}}'
deepagents --model anthropic:claude-opus-4-7 --model-params '{"thinking": {"type": "enabled", "budget_tokens": 10000}}'
# Mid-session — swap model and params in one step
/model --model-params '{"temperature": 0.7}' anthropic:claude-opus-4-7

# Or open the selector and apply params to whatever you pick
/model --model-params '{"num_ctx": 16384}'
CLI 标志仅对当前会话有效。--model-params 不能与 --default 结合使用。有关持久的提供商级别默认值、逐个模型覆盖以及特定提供商的示例,请参阅提供商页面上的 模型参数

切换智能体

运行 /agents 打开智能体选择器,在 ~/.deepagents/ 中的智能体之间快速切换而无需重启。切换会重置对话线程并刷新技能发现。此选择会被持久化,因此下次直接启动 deepagents 时会继续使用同一个智能体。-a/--agent 始终具有最高优先级;-r/--resume 则会恢复该线程原本使用的智能体。

配置

CLI 将所有配置存储在 ~/.deepagents/ 下。在该目录中,每个智能体都有自己的子目录(默认:agent
路径目的
~/.deepagents/config.toml模型默认值、提供商设置、构造函数参数、配置文件覆盖、主题、更新设置、MCP 信任库
~/.deepagents/.env全局 API 密钥和密钥。请参阅 配置
~/.deepagents/hooks.json生命周期事件钩子(会话开始/结束,任务完成等)
~/.deepagents/<agent_name>/每个智能体特有的记忆、技能和对话线程
.deepagents/ (项目根目录)项目特定的记忆和技能,在 git 仓库内运行时加载
# List all configured agents
deepagents agents list
有关完整参考 —— 包括 config.toml 架构、提供商参数、配置文件覆盖和钩子配置 —— 请参阅 配置

内存

自定义任何智能体主要有两种方式
  • 记忆AGENTS.md 文件和自动保存的记忆,可在不同会话间持久存在。使用记忆来存储通用编码风格、偏好和习得的规范。
  • 技能:全局和项目特定的上下文、规范、指南或指令。使用技能来存储仅在执行特定任务时才需要的上下文。
使用 /remember 明确提示智能体根据当前对话更新其记忆和技能。
正在使用 SDK 构建自定义智能体?请参阅 记忆 了解程序化记忆后端。

自动记忆

在您使用智能体时,它会自动将信息以 Markdown 文件的形式存储在 ~/.deepagents/<agent_name>/memories/ 中,并遵循“记忆优先”协议
  1. 研究:在开始任务前搜索记忆中的相关上下文
  2. 响应:在执行过程中不确定时检查记忆
  3. 学习:自动为未来的会话保存新信息
智能体通过具有描述性文件名的主题来整理其记忆
~/.deepagents/backend-dev/memories/
├── api-conventions.md
├── database-schema.md
└── deployment-process.md
当您教给智能体规范时
deepagents --agent backend-dev
> Our API uses snake_case and includes created_at/updated_at timestamps
它会为未来的会话记住这些内容
> Create a /users endpoint
# Applies conventions without prompting

AGENTS.md 文件

AGENTS.md 文件 提供在会话启动时始终加载的持久上下文
  • 全局~/.deepagents/<agent_name>/AGENTS.md —— 每个会话都会加载。
  • 项目:任何 git 项目根目录下的 .deepagents/AGENTS.md —— 当 CLI 在该项目中运行时加载。
两个文件都会在启动时追加到系统提示词中。
智能体在回答项目特定问题或当您引用过去的工作或模式时,也可能会读取其记忆文件。当您提供有关智能体行为的信息、对其工作的反馈或要求它记住某事的指令时,智能体会更新 AGENTS.md。如果它从您的互动中识别出模式或偏好,它也会更新其记忆。若要在额外的记忆文件中添加结构化的项目知识,请将它们添加到 .deepagents/ 中并在 AGENTS.md 文件中引用它们。您必须在 AGENTS.md 文件中引用这些额外文件,智能体才能感知到它们。额外文件不会在启动时读取,但智能体可以在需要时引用和更新它们。
全局 AGENTS.md (~/.deepagents/agent/AGENTS.md)
  • 您的个性、风格和通用的编码偏好
  • 通用的语气和沟通风格
  • 通用的编码偏好(格式化、类型提示等)
  • 适用于各处的工具使用模式
  • 不会随项目改变的工作流和方法论
项目 AGENTS.md (项目根目录下的 .deepagents/AGENTS.md)
  • 项目特定的上下文和规范
  • 项目架构和设计模式
  • 该代码库特有的编码规范
  • 测试策略和部署流程
  • 团队指南和项目结构

使用技能

技能是可重用的智能体能力,提供专门的工作流和领域知识。您可以使用 技能 为您的 Deep Agent 提供新的能力和专业知识。Deep Agent 技能遵循 Agent Skills 标准。一旦添加了技能,您的 Deep Agent 将自动利用它们,并随着您使用智能体并提供额外信息而更新它们。 使用 /remember 明确提示智能体从当前对话中更新技能和记忆。
  1. 创建技能
    # User skill (stored in ~/.deepagents/<agent_name>/skills/)
    deepagents skills create test-skill
    
    # Project skill (stored in .deepagents/skills/)
    deepagents skills create test-skill --project
    
    这将生成
    skills/
    └── test-skill
        └── SKILL.md
    
  2. 打开生成的 SKILL.md 并编辑该文件以包含您的指令。
  3. 可选地向 test-skill 文件夹添加额外的脚本或其他资源。欲了解更多信息,请参阅 示例
您也可以直接将现有技能复制到智能体的文件夹中
mkdir -p ~/.deepagents/<agent_name>/skills
cp -r examples/skills/web-research ~/.deepagents/<agent_name>/skills/
您可以使用像 Vercel 的 Skills CLI 这样的工具在您的环境中安装社区 Agent Skills,并使您的 Deep Agent 能够使用它们
# Install a skill globally
npx skills add vercel-labs/agent-skills --skill web-design-guidelines -a deepagents -g -y

# List installed skills
npx skills ls -a deepagents -g
全局安装 (-g) 会将技能符号链接到 ~/.deepagents/agent/skills/ —— 这是默认智能体的用户级技能目录。项目级安装(省略 -g)将技能放置在当前目录相关的 .deepagents/skills/ 中,使在该项目中运行的任何智能体(无论其名称如何)都能使用它们。
全局安装仅针对默认的 agent 目录。如果您使用自定义名称的智能体,请使用项目级安装,或手动将技能符号链接到 ~/.deepagents/{your-agent}/skills/
启动时,CLI 会从 Deep Agents 和共享别名目录中发现技能
~/.deepagents/<agent_name>/skills/
~/.agents/skills/
.deepagents/skills/
.agents/skills/
~/.claude/skills/          (experimental)
.claude/skills/            (experimental)
当存在重复的技能名称时,优先级较高的目录会覆盖优先级较低的目录(请参阅 应用数据)。对于项目特定技能,项目根目录必须包含 .git 文件夹。当您从项目文件夹内的任何位置启动 CLI 时,CLI 将通过检查是否包含 .git 文件夹来查找项目根目录。对于每个技能,CLI 从 SKILL.md 文件的 frontmatter 中读取名称和描述。当您使用 CLI 时,如果任务与技能描述匹配,智能体将读取技能文件并遵循其指令。您还可以通过 /skill:<name> [args] 直接调用技能。技能发现会在启动时以及执行 /reload 时运行。
使用 --skill 在启动时调用技能,而无需以交互方式输入斜杠命令
# Open the TUI and immediately run a skill
deepagents --skill code-review

# Pass a request to the skill with -m
deepagents --skill code-review -m 'review the auth module'

# Pipe content into a skill
cat diff.txt | deepagents --skill code-review

# Pipe content and add a request
cat diff.txt | deepagents --skill code-review -m 'focus on security'
--skill 同样适用于非交互模式
# Run a skill headlessly
deepagents --skill code-review -n 'review this patch'

# Quiet mode (only agent output on stdout)
deepagents --skill code-review -n 'review this patch' -q
--skill 配合 --quiet--no-stream 使用时需要 -n (非交互模式)。
# List all user skills
deepagents skills list

# List project skills
deepagents skills list --project

# Get detailed info about a specific skill
deepagents skills info test-skill
deepagents skills info test-skill --project

子代理

将自定义 子智能体 定义为 Markdown 文件,以便 CLI 智能体可以将专门的任务委托给它们。每个子智能体都位于包含 AGENTS.md 文件的独立文件夹中
.deepagents/agents/{subagent-name}/AGENTS.md   # Project-level
~/.deepagents/{agent}/agents/{subagent-name}/AGENTS.md  # User-level
同名的项目子智能体将覆盖用户子智能体(见 优先级规则)。 frontmatter 需要包含 name (名称) 和 description (描述)(与 SubAgent 字典规范 相同)。Markdown 正文将成为子智能体的 system_prompt (系统提示词)。除了基础规范外,AGENTS.md 文件还支持一个可选的 model (模型) frontmatter 字段,用于为此子智能体覆盖主智能体的模型。使用 provider:model-name 格式(例如 anthropic:claude-opus-4-6openai:gpt-5.5)。省略此项则继承主智能体的模型。
其他 SubAgent 字段(tools, middleware, interrupt_on, skills)目前无法通过 AGENTS.md frontmatter 进行配置 —— 以这种方式定义的自定义子智能体会继承主智能体的工具。如需完全控制,请直接使用 SDK。
子智能体的 AGENTS.md 文件使用 YAML frontmatter,后接 Markdown 正文
---
name: researcher
description: Research topics on the web before writing content
model: anthropic:claude-haiku-4-5-20251001
---

You are a research assistant with access to web search.

## Your Process
1. Search for relevant information
2. Summarize findings clearly
对于简单的委托任务,使用更便宜、更快速的模型,同时让主智能体保持使用能力更强的模型
---
name: general-purpose
description: General-purpose agent for research and multi-step tasks
model: anthropic:claude-haiku-4-5-20251001
---

You are a general-purpose assistant. Complete the task efficiently and return a concise summary.
这将覆盖内置的通用子智能体,将所有委托的任务路由到更便宜的模型。详情请参阅 覆盖通用子智能体

使用 MCP 工具

使用外部 MCP (模型上下文协议) 服务器的工具扩展 CLI。在项目根目录放置一个 .mcp.json 文件,CLI 将自动发现它。需要 OAuth 授权的服务(Slack, GitHub, Linear, Notion, ...)可以使用 deepagents mcp login <server> 进行一次性认证;Token 将持久化到 ~/.deepagents/mcp-tokens/ 中并自动刷新。有关配置格式、OAuth 登录、自动发现和故障排除,请参阅 MCP 工具指南

使用远程沙箱

CLI 使用 “沙箱即工具” 模式:CLI 进程(LLM 循环、记忆、工具分发)运行在您的机器上,但智能体工具调用(read_file, write_file, execute 等)针对的是远程沙箱,而非您的本地文件系统。要将文件放入沙箱,请使用 设置脚本 或提供商的文件传输 API(参见 处理文件)。 有关沙箱架构、集成模式和安全最佳实践的深入了解,请参阅 沙箱
CLI 默认包含 LangSmith 沙箱支持。AgentCore, Modal, Daytona 和 Runloop 需要安装额外扩展。

安装提供商依赖项

安装 deepagents-cli 时已默认包含。无需额外安装。

设置提供商凭据

export LANGSMITH_API_KEY="your-key"

带沙箱运行 CLI

deepagents --sandbox langsmith
标志描述
--sandbox TYPE要使用的沙箱提供商:langsmith, agentcore, modal, daytona, 或 runloop (默认:none)
--sandbox-id ID按 ID 重用现有沙箱,而不是创建新沙箱。跳过创建和清理步骤。详情请参考您的沙箱文档
--sandbox-setup PATH要在沙箱创建时运行的设置脚本路径
示例
# Create a new Daytona sandbox
deepagents --sandbox daytona

# Reuse an existing sandbox (skips creation and cleanup)
deepagents --sandbox runloop --sandbox-id dbx_abc123

# Run a setup script after sandbox creation
deepagents --sandbox modal --sandbox-setup ./setup.sh
使用 --sandbox-setup 在沙箱创建后运行 shell 脚本。这对于克隆仓库、安装依赖项和配置环境变量非常有用。
setup.sh
#!/bin/bash
set -e

# Clone repository using GitHub token
git clone https://x-access-token:${GITHUB_TOKEN}@github.com/username/repo.git $HOME/workspace
cd $HOME/workspace

# Make environment variables persistent
cat >> ~/.bashrc <<'EOF'
export GITHUB_TOKEN="${GITHUB_TOKEN}"
export OPENAI_API_KEY="${OPENAI_API_KEY}"
cd $HOME/workspace
EOF
source ~/.bashrc
CLI 会使用您的本地环境变量扩展设置脚本中的 ${VAR} 引用。将密钥存储在本地 .env 文件中以供设置脚本访问。
沙箱可以隔离代码执行,但面对带有不可信输入的提示词注入攻击时,智能体仍然很脆弱。请务必使用人机回环审批、短期密钥,并仅使用受信任的设置脚本。详情请参阅 安全注意事项

使用 LangSmith 进行追踪

启用 LangSmith 追踪,以便在 LangSmith 项目中查看智能体操作、工具调用和决策。 将您的追踪密钥添加到 ~/.deepagents/.env,这样每个会话都会启用追踪,而无需逐个 shell 导出变量:
~/.deepagents/.env
LANGSMITH_TRACING=true
LANGSMITH_API_KEY=lsv2_...
LANGSMITH_PROJECT=optional-project-name  # Specify a project name or default to "deepagents-cli"
要为特定项目进行覆盖,请将相同的密钥添加到项目目录下的 .env 文件中。有关完整的加载顺序,请参阅 环境变量 如果您愿意,也可以将这些设置为 shell 环境变量。Shell 导出始终优先于 .env 值,因此这是临时覆盖或测试的好选择:
export LANGSMITH_TRACING=false
当通过程序从 LangChain 应用调用 CLI 时(例如,作为 非交互模式 下的子进程),您的应用和 CLI 都会产生 LangSmith 追踪。默认情况下,这些追踪都会进入同一个项目。要将 CLI 追踪发送到专用项目,请设置 DEEPAGENTS_CLI_LANGSMITH_PROJECT
~/.deepagents/.env
DEEPAGENTS_CLI_LANGSMITH_PROJECT=my-deep-agent-execution
然后为您的父应用追踪配置 LANGSMITH_PROJECT
~/.deepagents/.env
LANGSMITH_PROJECT=my-app-traces
这样可以保持应用级的可观测性整洁,同时仍在单独的项目中捕获智能体的内部执行过程。您还可以使用 DEEPAGENTS_CLI_ 前缀(例如 DEEPAGENTS_CLI_LANGSMITH_API_KEY)将 LangSmith 凭据范围限定为 CLI。
配置完成后,CLI 会显示一行带有 LangSmith 项目链接的状态信息。在受支持的终端中,点击链接即可直接打开。您也可以使用 /trace 打印 URL 并在浏览器中打开。
 LangSmith tracing: 'my-project'

命令参考

# Use a specific agent configuration
deepagents --agent mybot

# Use a specific model (provider:model format or auto-detect)
deepagents --model anthropic:claude-opus-4-7
deepagents --model gpt-5.5

# Auto-approve tool usage (skip human-in-the-loop prompts)
deepagents -y
选项描述
-a, --agent NAME使用具有独立记忆的具名智能体。会覆盖 config.toml 中的 [agents].recent。默认值:agent(或者如果设置了 [agents].recent,则为最近使用的智能体)
-M, --model MODEL使用特定模型 (provider:model)
--model-params JSON作为 JSON 字符串传递给模型的额外参数(例如 '{"temperature": 0.7}'
--default-model [MODEL]设置默认模型
--clear-default-model清除默认模型
-r, --resume [ID]恢复会话:-r 用于最近的会话,-r <ID> 用于特定线程
-m, --message TEXT会话开始时自动提交的初始提示词(交互模式)
--skill NAME启动时调用技能
--startup-cmd CMD启动时在第一个提示词之前运行的 shell 命令。输出会渲染在记录中供参考,但不会添加到智能体的消息历史中。非零退出和超时会发出警告但不会中止;非交互模式适用 60 秒超时。见 启动时运行命令
-n, --non-interactive TEXT非交互式运行单个任务并退出。除非设置了 --shell-allow-list,否则 shell 禁用
--max-turns N在非交互模式下限制智能体轮次。超过时以退出码 124 退出。需要 -n 或管道 stdin。见 使用 --max-turns 限制轮次计数
-q, --quiet为管道传输提供干净输出——仅将智能体的响应发送到 stdout。需要 -n 或管道 stdin
--no-stream缓冲完整响应并一次性写入 stdout,而非流式传输。需要 -n 或管道 stdin
--stdin显式从 stdin 读取输入而不是自动检测。当 stdin 不可用或为 TTY 时会报错
-y, --auto-approve自动审批所有工具调用而不提示(禁用人机回环)。交互式会话期间可使用 Shift+Tab 切换
-S, --shell-allow-list LIST以逗号分隔的自动审批 shell 命令列表,使用 'recommended' 开启安全默认值,或使用 'all' 允许任何命令。适用于 -n 和交互模式
--json管理类子命令(agents, threads, skills, update)发出机器可读的 JSON。输出封装格式:{"schema_version": 1, "command": "...", "data": ...}
--sandbox TYPE用于代码执行的远程沙箱:none (默认), langsmith, agentcore, modal, daytona, runloop。LangSmith 已包含;AgentCore/Modal/Daytona/Runloop 需要扩展包
--sandbox-id ID重用现有沙箱(跳过创建和清理)
--sandbox-setup PATH沙箱创建后运行的设置脚本路径
--mcp-config PATH添加一个显式的 MCP 配置作为最高优先级源(与自动发现的配置合并)
--no-mcp禁用所有 MCP 工具加载
--trust-project-mcp信任带有 stdio 服务器的项目级 MCP 配置(跳过审批提示)
--profile-override JSON作为 JSON 字符串覆盖模型配置文件字段(例如 '{"max_input_tokens": 4096}')。合并在配置文件覆盖之上
--acp通过 stdio 作为 ACP 服务器运行,而不启动交互式界面
-v, --version显示版本
-h, --help显示帮助
命令描述
deepagents help显示帮助
deepagents agents list列出所有智能体(别名:ls
deepagents agents reset --agent NAME清除智能体记忆并重置为默认值。支持 --dry-run (预览模式)
deepagents agents reset --agent NAME --target SOURCE从另一个智能体复制记忆
deepagents update检查并安装 CLI 更新
deepagents skills list [--project]列出所有技能(别名:ls
deepagents skills create NAME [--project]使用 SKILL.md 模板创建新技能。幂等操作 —— 重新创建现有技能会打印提示信息而非错误
deepagents skills info NAME [--project]显示有关技能的详细信息
deepagents skills delete NAME [--project] [-f]删除技能及其内容。支持 --dry-run (预览模式)
deepagents threads list [--agent NAME] [--limit N]列出会话(别名:ls)。默认上限:20。-n--limit 的短标志。其他标志:--sort {created,updated}--branch TEXT(按 git 分支过滤),-v/--verbose(显示所有列,包括分支、创建时间和初始提示词),-r/--relative(相对时间戳)
deepagents threads delete ID删除会话。支持 --dry-run (预览模式)
deepagents mcp login NAME [--config PATH]为标记为 auth: "oauth" 的 MCP 服务器运行 OAuth 登录流程。见 MCP 工具
deepagents deploy将您的智能体部署到 LangSmith。见 使用 CLI 部署
所有管理子命令都支持 --json 以获得机器可读的输出。详见 命令行选项破坏性命令(agents reset, skills delete, threads delete)支持 --dry-run,以在不进行更改的情况下预览结果。在 JSON 模式下,--dry-run 会返回带有 dry_run: true 字段的相同封装数据。

© . This site is unofficial and not affiliated with LangChain, Inc.