Files
aiagent/docs/zhini-kefu/知你客服14号能力文档.md
renjianbo eabf90c496 feat: add AI学习助手 agent (KG+RAG ideal) and renshenguo feishu bot
- Add AI学习助手 agent creation script with all 39 tools, 3-layer KG+RAG memory
- Add renshenguo (人参果) feishu bot integration (app_service + ws_handler)
- Register renshenguo WS client in main.py startup
- Add RENSHENGUO_APP_ID / RENSHENGUO_APP_SECRET / RENSHENGUO_AGENT_ID config
- Reorganize docs from root into docs/ subdirectories
- Move startup scripts to scripts/startup/
- Various backend optimizations and tool improvements

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-06 01:37:13 +08:00

69 lines
4.1 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 知你客服 14 号 · 能力说明
## 1. 定位
**知你客服 14 号**在 **知你客服 13 号** 工作流与提示词基础上演进:保留 13 号的连线整理、工具纪律与单行 JSON 输出约定,并将 LLM 可用工具扩展为平台当前注册的**全量内置工具**(与 `app.core.tools_bootstrap` 一致),用于需要 **HTTP、本地文件、系统信息、文本/时间/数学/JSON、只读数据库、Android 日志** 等能力的客服场景。
---
## 2. 版本关系
| 项目 | 说明 |
|------|------|
| 上游模板 | 默认由脚本自 **知你客服 13 号** 复制(可通过环境变量指定其他源 Agent) |
| 画布 | 与 13 号创建脚本一致:去自环、合并重复边、统一左右锚点、分层布局 |
| 记忆与会话 | 与 13/12 相同,依赖工作流 **Cache(`user_memory_*`)**、Redis 与可选 MySQL 持久化;详见 `agent记忆实现方案.md` |
---
## 3. 内置工具一览(10 项)
以下工具在 **「llm-unified」** 节点中 **`enable_tools`**,名称需与后端注册一致。
| 工具名 | 能力摘要 |
|--------|----------|
| **http_request** | HTTP(S) 请求:抓取网页、调用公开 API;按返回 JSON 的 `body` 等提炼信息。 |
| **file_read** | 读取工作区内的本地文件(相对路径或落在允许根目录下的绝对路径)。 |
| **file_write** | 写入/追加工作区内文件;受大小与路径校验约束。 |
| **system_info** | 系统与运行环境信息;含 **本地文件工作区根路径** `local_file_workspace_root`(回答「工作区在哪」等)。 |
| **text_analyze** | 文本分析:`text` + `operation`:`count`(字数/行数等)、`keywords`(简单词频)、`summary`(截取前几段作摘要)。 |
| **datetime** | 日期时间:常用 `operation=now`,可选 `format`(strftime)。 |
| **math_calculate** | 安全算术表达式计算(如四则运算、`sqrt` 等),结果以工具返回为准,禁止臆造。 |
| **json_process** | JSON:`operation` 为 `parse` / `stringify` / `validate`。 |
| **database_query** | **只读 SQL**:**仅允许 SELECT**;默认连平台库,可选 `data_source_id` 指定数据源;注意 `timeout`。 |
| **adb_log** | Android 设备日志:需运行环境已安装 **adb** 且设备可用;按工具参数拉取/过滤日志。 |
---
## 4. 输出与纪律(继承 13 号并加强)
- **最终回复**:仍以 **一行合法 JSON** 结尾(含 `intent`、`reply`、`user_profile` 等),无 Markdown 代码围栏。
- **用户画像**:末行 JSON 中的 **`user_profile` 须如实填写**;用户已告知昵称时需含 **`name`**,避免空对象覆盖会话记忆(与 13 号约定一致)。
- **file_write**:同一轮用户请求中避免无故多次写入;勿以本地文件写入替代 JSON 中的会话画像。
- **DSML / invoke**:勿在正文中重复刷屏工具标签行;说明工具结果用自然语言,再以单行 JSON 收尾。
- **database_query**:禁止非 SELECT;不得编造查询结果。
- **adb_log**:仅在用户明确需要设备日志时使用;无环境或失败时如实转述工具错误信息。
---
## 5. 使用与维护
| 项目 | 说明 |
|------|------|
| 创建/更新脚本 | `backend/scripts/create_zhini_kefu_14.py` |
| 默认源/目标 Agent | 源:`知你客服13号`;目标:`知你客服14号`(可用环境变量覆盖) |
| 执行 API | 需携带稳定 **`user_id`**(若工作流 Cache 键含 `{{user_id}}`),以免记忆串用户 |
| 进程 | 工作流在 **Celery** 中执行;更新工具或引擎后需 **重启 API + Celery** |
---
## 6. 能力与边界
- **database_query** 访问的是平台配置的数据库或已登记数据源,表结构与安全策略以部署环境为准。
- **adb_log** 强依赖宿主机是否安装 adb、USB/网络调试是否连通,生产环境需单独评估权限与审计。
- **text_analyze** 的摘要/关键词为轻量规则实现,复杂语义仍以 LLM 为主。
---
*文档内容随脚本与平台实现变更;以仓库内 `create_zhini_kefu_14.py` 及实际 Agent 配置为准。*