Skill 接入
更新时间:2026-05-26
Skill 方式通过指令文件定义调用规则,放在 Agent 项目中,教会 Agent 在合适的时机主动调用 API。Skill 不注册工具,而是通过自然语言指令引导 Agent 的行为——Agent 读取指令后,在对话中自行决定何时发起 HTTP 请求。
适用场景
| 条件 | 说明 |
|---|---|
| Agent 可执行命令 | 编程类 Agent(Claude Code、OpenCode、Codex CLI 等)可在对话中调用 curl |
| 需要精细控制 | 希望自定义 Retain / Recall / Reflect 的触发时机和行为规则,而非完全交给 Agent 自主决策 |
| 无 MCP 支持 | Agent 不支持 MCP 协议,或不希望通过 MCP 注册工具 |
Skill 与 MCP 并非互斥——MCP 提供结构化的工具调用能力,Skill 定义行为规则和触发时机。两者可以同时使用:通过 MCP 注册工具让 Agent 知道"能做什么",通过 Skill 指令告诉 Agent "什么时候做"。
工作原理
- 在项目目录下放置 Skill 文件(
SKILL.md) - Agent 启动时自动加载该文件中的指令
- Agent 根据指令中的触发规则,在对话中通过
curl调用记忆服务 API - 调用结果作为上下文,辅助 Agent 的后续回复和决策
快速安装
复制并运行以下命令,一键完成 CLI 安装、配置文件创建和 Skill 文件部署:
Bash
1# ━━ 一键安装(CLI + 配置 + Skill 文件) ━━
2
3mkdir -p ~/.cloudmemory && cat > ~/.cloudmemory/config << 'EOF'
4api_url = "https://cloud.memory.bj.baidubce.com/api"
5api_key = <your-api-key>
6EOF
7chmod 600 ~/.cloudmemory/config && curl -fsSL https://cloud-memory.bj.bcebos.com/get-cli | bash
8
9# 然后为你的 Agent 安装 Skill 文件(参阅下方「分步配置」选择安装方式)
分步配置
如果需要按步骤安装,请根据你的 Agent 类型选择对应配置方式。
Claude Code
1. 安装 CLI 并创建配置:
Bash
1mkdir -p ~/.cloudmemory && cat > ~/.cloudmemory/config << 'EOF'
2api_url = "https://cloud.memory.bj.baidubce.com/api"
3api_key = <your-api-key>
4EOF
5chmod 600 ~/.cloudmemory/config && curl -fsSL https://cloud-memory.bj.bcebos.com/get-cli | bash
2. 创建 Skill 文件:
Bash
1# 复制下方「Skill 模板」的完整内容,然后执行:
2mkdir -p .claude/commands
3cat > .claude/commands/cloud-memory.md << 'SKILLEOF'
4# (在此粘贴 Skill 模板内容)
5SKILLEOF
Codex CLI
1. 安装 CLI 并创建配置:
Bash
1mkdir -p ~/.cloudmemory && cat > ~/.cloudmemory/config << 'EOF'
2api_url = "https://cloud.memory.bj.baidubce.com/api"
3api_key = <your-api-key>
4EOF
5chmod 600 ~/.cloudmemory/config && curl -fsSL https://cloud-memory.bj.bcebos.com/get-cli | bash
2. 将 Skill 内容添加到 Codex 指令:
将下方「Skill 模板」的完整内容追加到 ~/.codex/instructions.md 或项目级 instructions 文件中。
其他 Agent
| Agent | Skill 文件路径 |
|---|---|
| OpenCode | .opencode/skills/memory-service/SKILL.md |
| 自建 Agent | 参考其文档确认指令文件加载路径 |
Skill 模板
以下模板可直接使用,替换占位符后写入 SKILL.md 即可。
Markdown
1---
2name: memory-service
3description: Agent 记忆服务接入。在对话前检索相关记忆,在对话后存储重要信息,实现跨会话长期记忆。
4---
5
6# Agent 记忆服务
7
8通过 API 接入百度 Agent 记忆服务,实现长期记忆能力。
9
10## 连接信息
11
12- API Base URL: `<YOUR_API_BASE_URL>`
13- Bank ID: `<YOUR_BANK_ID>`
14- API Key: 通过环境变量 `MEMORY_API_KEY` 读取,不硬编码在文件中
15
16## 调用方式
17
18所有请求使用 HTTP Bearer 认证,通用请求头:
19
20```
21Authorization: Bearer $MEMORY_API_KEY
22Content-Type: application/json
23```
24
25### Recall(检索记忆)
26
27**何时调用:** 每次收到用户新问题时,在回答前先调用。
28
29```bash
30curl -s -X POST <YOUR_API_BASE_URL>/recall \
31 -H "Authorization: Bearer $MEMORY_API_KEY" \
32 -H "Content-Type: application/json" \
33 -d '{"query": "<用户的提问或当前话题>", "bank_id": "<YOUR_BANK_ID>", "budget": "mid"}'
34```
35
36将返回的 `results` 数组中的记忆文本作为上下文,辅助回答用户问题。
37
38### Retain(存储记忆)
39
40**何时调用:** 对话中出现以下信息时,在回复后调用:
41- 用户分享了个人偏好、习惯或背景
42- 做出了重要决策或表达了明确观点
43- 涉及项目、技术栈或业务关键信息
44- 需要跨会话记住的事实或约定
45
46```bash
47curl -s -X POST <YOUR_API_BASE_URL>/memories/retain \
48 -H "Authorization: Bearer $MEMORY_API_KEY" \
49 -H "Content-Type: application/json" \
50 -d '{"content": "<需要记忆的内容,用自然语言完整描述>", "bank_id": "<YOUR_BANK_ID>", "tags": ["user:<用户标识>", "topic:<话题>"]}'
51```
52
53### Reflect(反思推理)
54
55**何时调用:** 需要对历史记忆进行综合判断、趋势分析或生成总结时调用,而非仅检索事实。
56
57```bash
58curl -s -X POST <YOUR_API_BASE_URL>/reflect \
59 -H "Authorization: Bearer $MEMORY_API_KEY" \
60 -H "Content-Type: application/json" \
61 -d '{"query": "<需要反思的问题>", "bank_id": "<YOUR_BANK_ID>", "budget": "mid"}'
62```
63
64## 行为规则
65
661. **先检索后回答**:收到用户消息后,先 Recall 检索相关记忆,再结合检索结果回答
672. **主动存储**:识别到值得长期记住的信息时,主动 Retain,无需用户明确要求
683. **使用 Tags 隔离**:Retain 时始终携带 `user:` 和 `topic:` 标签,Recall 时携带对应标签以精确匹配
694. **自然语言描述**:Retain 的 content 使用完整的自然语言,保留人物、时间、原因等上下文
705. **Document ID**:同一会话的所有 Retain 使用相同的 `document_id`,便于后续更新和删除
716. **避免敏感信息**:不要将密码、密钥等敏感数据写入记忆
使用建议
- API Key 安全:不要将 API Key 写入 Skill 文件或代码仓库,统一通过环境变量引用
- 触发时机:Skill 中明确"先 Recall 后回答、关键信息主动 Retain"的规则,避免 Agent 遗漏调用
- Tags 规范:在 Skill 中约定标签格式(如
user:alice、project:atlas),确保 Retain 和 Recall 使用一致的标签体系 - 与 MCP 并存:Skill 定义行为规则,MCP 提供结构化工具调用,两者可以同时使用
- 按项目定制:不同项目的 Skill 可以有不同的 Bank、Tags 约定和触发规则,互不干扰
- 发送给 Agent:将「Skill 模板」内容直接发送给你的 Agent,Agent 会自动使用你的凭据创建 Skill 文件
评价此篇文章
