Deep Agents CLI 将数据存储在两个目录层次结构中:
~/.deepagents/ — Deep Agents 特定数据(代理记忆、技能、会话)
~/.agents/ — 工具无关数据(跨 AI CLI 工具共享的技能)
目录结构
~/.deepagents/
├── sessions.db # 用于对话检查点的 SQLite 数据库
├── history.jsonl # 命令输入历史
└── {agent}/ # 每代理目录(默认:"agent")
├── AGENTS.md # 用户对代理指令的自定义
├── skills/ # 用户级技能
│ └── {skill-name}/
│ └── SKILL.md
└── agents/ # 自定义子代理定义
└── {subagent-name}/
└── AGENTS.md
~/.agents/ # 工具无关别名(跨 AI CLI 共享)
└── skills/ # 任何兼容工具可用的技能
└── {skill-name}/
└── SKILL.md
{project}/ # 项目级(在 git 仓库根目录)
├── AGENTS.md # 项目指令(根级)
└── .deepagents/
│ ├── AGENTS.md # 项目指令(首选位置)
│ ├── skills/ # 项目特定技能
│ │ └── {skill-name}/
│ │ └── SKILL.md
│ └── agents/ # 项目特定子代理
│ └── {subagent-name}/
│ └── AGENTS.md
└── .agents/ # 工具无关项目技能
└── skills/
└── {skill-name}/
└── SKILL.md
数据存放位置
| 数据 | 位置 | 读/写 | 备注 |
|---|
| 会话 | ~/.deepagents/sessions.db | R/W | SQLite 检查点数据库 |
| 输入历史 | ~/.deepagents/history.jsonl | R/W | JSON-lines,上下箭头召回 |
| 基础指令 | 包 default_agent_prompt.md | R | 不可变,随 CLI 升级更新 |
| 用户自定义 | ~/.deepagents/{agent}/AGENTS.md | R/W | 附加到基础指令 |
| 项目指令 | .deepagents/AGENTS.md 或 AGENTS.md | R | 如果存在则两者都加载 |
| 用户技能 | ~/.deepagents/{agent}/skills/ | R/W | 代理特定技能 |
| 共享技能 | ~/.agents/skills/ | R | 工具无关,跨 CLI |
| 项目技能 | .deepagents/skills/ 或 .agents/skills/ | R | 项目范围 |
| 自定义子代理 | ~/.deepagents/{agent}/agents/ | R/W | 用户定义的子代理 |
| 项目子代理 | .deepagents/agents/ | R | 项目定义的子代理 |
优先级规则
当同一项存在于多个位置时,更高优先级完全胜出(不合并)。
优先级顺序(从低到高):
~/.deepagents/{agent}/skills/ — 用户 deepagents
~/.agents/skills/ — 用户工具无关
.deepagents/skills/ — 项目 deepagents
.agents/skills/ — 项目工具无关 (最高)
加载技能时,CLI 会验证解析后的文件路径是否位于这些目录之一。解析到所有技能根目录之外的符号链接将被拒绝。要允许额外目录中的符号链接目标,请参阅 [skills].extra_allowed_dirs。
子代理
优先级顺序(从低到高):
~/.deepagents/{agent}/agents/ — 用户级
.deepagents/agents/ — 项目级 (最高)
每个子代理都是一个 AGENTS.md 文件,包含 YAML frontmatter(name、description、可选 model)和用于系统提示的 markdown 正文。有关完整格式参考,请参阅 自定义子代理。
所有指令源都是组合的(不覆盖):
- 包基础提示 (始终加载)
~/.deepagents/{agent}/AGENTS.md (附加)
.deepagents/AGENTS.md (附加)
- 项目根目录的
AGENTS.md (附加)
.deepagents 与 .agents
| 目录 | 用途 | 使用时机 |
|---|
.deepagents/ | Deep Agents CLI 特定 | 使用 CLI 特定功能的技能和配置 |
.agents/ | 工具无关 | 您想跨不同 AI CLI 工具共享的技能 |
使用 .agents/skills/ 适用于与任何 AI 编码助手配合使用的技能。
使用 .deepagents/skills/ 适用于依赖 Deep Agents 特定工具或约定的技能。
| 需求 | 操作 |
|---|
| 重置所有数据 | rm -rf ~/.deepagents |
| 仅清除会话 | rm ~/.deepagents/sessions.db |
| 清除输入历史 | rm ~/.deepagents/history.jsonl |
| 重置代理指令 | deepagents agents reset --agent {name} |
| 删除技能 | rm -rf ~/.deepagents/{agent}/skills/{skill-name} |
删除 ~/.deepagents/sessions.db 将移除所有对话历史和检查点。
此操作无法撤销。