Files
kefu/deploy/protocol-integration-20260916/payload/AGENT_SYNC_20260916.md
T
2026-09-21 10:34:06 +08:00

38 lines
3.1 KiB
Markdown
Raw 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.
# 智能体与「全部账号」已同步到协议版客户端
2026-09-16 把 `C:\kefu` 那边开发的三件事同步到本目录(协议版客户端,v1.4.16)。
## 同步了什么
**一、智能体(角色 + 规则)**——客户端这边是真正用得上的部分:
- 新增 `agent_rules.py`:人设与规则的纯逻辑层(guide 补充指令 / forbid 禁止措辞 / reply 固定口径),单角色切换与多角色协作都在这里。
- `ai_config.py`:新增 `AI_AGENTS` / `AI_AGENT_PLAN` 两个下发字段,并在内置人设里加了一段「客户发来短消息 / 数字时严禁说成乱码」。
- `ai_chat.py`:系统提示词追加角色段落、出口校验禁止措辞、固定口径直接回、纯数字单独给一条会话指令。
协议版的发送链路走 `protocol_engine._generate` → `ai_chat.get_ai_reply`,所以上面这些自动生效,协议引擎本身不用改。配了本地裁判时走 `model_router.answer`,它内部同样调 `ai_chat.get_ai_reply`,也一样覆盖。
**二、线上那条错误回复的修复**:客户发来血糖值「13」,模型回"这串像系统编码"。提示词、会话指令、出口兜底三处都加了拦截,最后一道关不掉也不依赖配置——一个智能体都不配时照样生效。
**三、后台的「全部账号」范围**:`admin_backend.tenant_filter`、`archive_store.TenantScope`、`admin_api.ALL_ACCOUNTS` 与写路径的 `single_tenant` 守卫。本目录没有 `admin-web` 前端,所以管理端页面那部分(智能体页、账号下拉框默认全部)在这里不适用,只同步了后端能力,避免以后从这个目录起后台时功能对不上。
## 怎么同步的
`ai_chat.py` / `ai_config.py` / `rbac.py` 在两个目录里原本逐字节相同(只差我这次的改动),直接覆盖。`admin_backend.py` / `admin_api.py` / `archive_store.py` / `archive_api.py` 两边已经因为别的原因分叉(本目录的接口是 async 写法,`archive_store` 还是归档性能优化之前的版本),所以是**按差异移植**,没有整文件覆盖——那样会把 `C:\kefu` 那边不相干的改动一起带过来。
`export_jobs` 在本目录还是旧的 N+1 写法,补丁按这边的形状单独适配过。
## 没有同步的
- **归档性能优化**(游标 SQL、`message_count` 的租户谓词、`desktop_accounts` 的 `include_counts`):那是 9 月 14 日在 `C:\kefu` 做的另一件事,和这次无关,本目录仍是旧版。要不要跟进是另一个决定。
- **知识库**(`knowledge_*.py`、`knowledge:*` 权限码):`C:\kefu` 那边正在并行开发,本目录没有这套文件,这次没碰。
## 验证
本目录跑过:归档 25、管理端与数据层 204、客户端 AI 525、协议链路 100、打包 30、网关与路由等 181,合计 1065 个用例全部通过。
## 后续完整整合
同日后续整合已补齐本文当时尚未同步的知识库、归档性能和管理前端,另补充协议回复知识引用与风险审核。本文保留此前同步记录;当前功能和启动方式以 [INTEGRATION_20260916.md](INTEGRATION_20260916.md) 为准。