不是又一个聊天机器人壳,而是一套带认知循环与长期记忆的 Agent 运行时。
它到底解决什么问题
四条主线能力,对应四类真实存在的业务诉求。
替代重复性人力:7×24 在线应答、线索筛选、订单跟进与售后处理,能力边界与转人工策略可配置。
LangGraph 编排的认知循环:意图识别、工具选择、结果反思与自我纠偏,长链路任务不失控。
基于 Milvus 的向量记忆与结构化画像双轨并存,跨会话保持上下文一致。
全栈可私有化部署,模型、数据与记忆留在客户自己的网络边界内。
能力一览
- 认知循环四引擎:intent-extractor → plan-engine → assess-engine → reflect-engine
- 三级记忆:会话记忆(session)→ 情景记忆(episodic)→ 语义记忆(semantic),含记忆衰减与上下文溢出治理
- 五层人格:角色、语气、边界、专业知识与行为策略分层注入
- 19 个内置工具:联网搜索、SQL 查询、图表生成、代码执行、邮件发送、知识检索等
- 多 Agent 协作:orchestrator 编排 + supervisor 监督 + 通信协议
- 多通道接入:企业微信(SCRM pull)、飞书(push API)、钉钉(push API)、Web Chat(WebSocket)
这不是 PPT 里的产品
下面的数字来自 uniclaw-copit 仓库的真实代码:模块、数据表、接口与能力项。
技术栈
功能清单
8 个业务域、41 项具体能力。每一项都对应代码里真实存在的实现。
认知循环
modules/cognitive思考-行动-学习闭环,四个引擎各司其职,长链路任务不失控。
- intent-extractor:从用户输入抽取结构化意图与关键槽位
- plan-engine:把意图展开成可执行的步骤序列,决定调用哪些工具
- assess-engine:对工具返回结果做质量评估,判断是否需要重来
- reflect-engine:回合末反思,失败路径自我纠偏并写回记忆
- LangGraph 状态机驱动,每个节点状态可持久化、可回放
三级记忆
modules/memory记住的不是聊天记录,是分层沉淀的用户认知。
- session-storage:会话级短期记忆,保持当次对话上下文连贯
- episodic-storage:情景记忆,记录「发生过什么」的具体事件
- semantic-storage:语义记忆,沉淀「这是个什么样的用户」的长期认知
- vector-search + milvus-client:向量化检索,语义相似召回
- memory-decay:记忆衰减机制,避免陈旧信息长期占据权重
- context-overflow:上下文溢出治理,长会话自动压缩与裁剪
- memory-sync-pipeline:记忆同步流水线,异步落库不阻塞对话
人格系统
modules/persona角色、语气、边界、知识、策略五层分离,改人设不用改代码。
- 角色层:Agent 的身份定位(客服 / 销售 / 顾问 / 导师)
- 语气层:表达风格与措辞约束
- 边界层:什么能答、什么必须转人工,越界即触发接管
- 知识层:挂载专属知识库与专业领域资料
- 策略层:行为策略,如追问节奏、推荐时机与促单策略
内置工具
modules/tool/builtins19 个开箱工具,覆盖搜索、数据、文档、通信与生成。
- 信息获取:web-search、web-fetch、wikipedia、knowledge-search
- 数据处理:sql-query、json-extract、text-process、calculator
- 生成能力:chart-generate、qrcode、code-exec、translate
- 时间与地理:datetime、calendar、weather、map-search
- 通信与记忆:email-send、memory-write、skill-search
多通道接入
modules/channel用户在哪里,Agent 就在哪里。
- 企业微信:SCRM pull 模式对接,走企微生态
- 飞书:push API 主动推送
- 钉钉:push API 主动推送
- Web Chat:WebSocket 实时双向通信
- realtime-module 与 webhook-module 分别承担长连接与回调两条通路
- 开放 API:业务系统直接调用,嵌入自有产品
多 Agent 协作
modules/collaboration复杂任务拆给多个专精 Agent,而不是塞给一个全能 prompt。
- agent-orchestrator:任务分解与分派,管理 Agent 间的执行顺序
- supervisor:监督者角色,检查产出质量并决定是否需要返工
- communication-protocol:Agent 间结构化通信协议
- collaboration-logger:协作过程全量记录,可回放排查
主动触达与演化
modules/{outreach,evolution,skill}不只是等着被问,也会在合适的时候主动出现。
- outreach:事件驱动与定时调度两种触发方式
- 多渠道路由,按用户偏好选择触达通道
- skill:从真实会话中沉淀可复用技能,越用越准
- evolution:基于反馈持续优化策略与提示
- research:深度研究模式,多轮检索整合输出
平台治理
modules/{auth,management,usage,audit}多租户 SaaS 该有的东西一样不少。
- 多租户隔离:租户、角色、权限分层管理
- 用量计量:Token 消耗、工具调用次数按租户统计
- 审计日志:Agent 的关键行为留痕可追溯
- 健康检查与调试模块,便于生产环境排障
接口契约
12 个代表性接口。列在这里的是对外契约的骨架,完整定义随部署提供。
/v1/chat/completions对话主入口,支持流式返回与工具调用编排
/v1/realtimeWebSocket 实时双向通道,供 Web Chat 与长连接场景
/v1/channels/wecom/callback企业微信 SCRM pull 模式回调入口
/v1/channels/feishu/event飞书事件推送接收与应答
/v1/channels/dingtalk/event钉钉事件推送接收与应答
/v1/tools/{name}/invoke工具调用,受授权、配额与审计三重约束
/v1/memory/{userId}/semantic读取语义记忆画像,用于排查与运营
/v1/persona/{id}/layers五层人格配置:角色 / 语气 / 边界 / 知识 / 策略
/v1/workflows/{id}/run触发可编排的多步业务流程
/v1/collaboration/orchestrate多 Agent 协作编排入口
/v1/usage/tokens按租户统计 Token 消耗与工具调用次数
/v1/audit/logsAgent 关键行为审计日志
一次真实调用
接口长什么样,比接口清单更能说明问题。
01$ curl -X POST https://agent.zhenbei.tech/v1/chat/completions \02 -d '{"tenant":"acme","channel":"wecom","message":"上周那批货到哪了"}'0304{ "intent": { "name": "order.track", "slots": { "batch": "last_week" } },05 "plan": ["memory.recall", "sql.query", "assess"],06 "tools": [{ "name": "sql-query", "ms": 84, "rows": 3 }],07 "reflect": { "rewritten": false, "memory_written": true },08 "reply": "那批货 9/18 已到上海仓,共 240 件。" }契约纪律
接口是承诺,不是实现细节的暴露。这三条规则我们一直在守。
破坏性变更走大版本,提前一个版本周期公告。已发布的接口不会因为内部重构而改语义。
错误码语义化而不是笼统 500,调用方(包括 AI Agent)能据此决定是重试还是放弃。
默认返回结构化数据而不是给人类看的文本,这样 AI 能直接读,不需要人截图转述。
功能模块
5 组、19 个代码模块,全部来自 uniclaw-copit 仓库的真实目录结构。
uniclaw-server/src/modules/Agent 的「大脑」:怎么想、怎么做、怎么纠错。
cognitive认知循环四引擎:意图抽取、规划、评估、反思
src/modules/cognitive/servicesexecution执行层:把规划结果落到具体动作并回收结果
src/modules/executionllm模型抽象层:OpenAI / Anthropic / Google 多供应商统一接入
src/modules/llmworkflow工作流:可编排的多步业务流程
src/modules/workflow让 Agent 记住事、保持人设一致。
memory三级记忆:session / episodic / semantic + Milvus 向量 + 衰减与溢出治理
src/modules/memorypersona五层人格模型:角色、语气、边界、专业知识、行为策略
src/modules/personaknowledge知识库与 RAG 检索,知识检索工具的数据源
src/modules/knowledgeskill技能系统:从真实会话中沉淀可复用技能
src/modules/skill怎么接入用户、怎么多个 Agent 一起干活。
channel渠道适配器:飞书、企微 SCRM、Web,含 Webhook 与实时网关
src/modules/channel/adapterscollaboration多 Agent 协作:编排器、监督者、通信协议与协作日志
src/modules/collaborationoutreach主动触达:事件驱动与定时调度的对外触达任务
src/modules/outreachpublic-chat公开会话:面向外部用户的对话入口
src/modules/public-chatAgent 手上有什么工具可用。
tool工具框架 + 19 个内置工具(搜索、SQL、图表、代码执行、邮件等)
src/modules/tool/builtinsresearch深度研究:多轮检索与信息整合
src/modules/researchevolution自主进化:从会话反馈中优化策略与提示
src/modules/evolution多租户 SaaS 的地基。
auth / admin认证与租户管理:JWT、OAuth2、租户、角色与权限
src/modules/{auth,management,admin}customer / application客户与应用:客户档案、应用配置与业务对象
src/modules/{customer,application}usage / audit用量计量与审计日志,Token 消耗与操作留痕
src/modules/{usage,audit}system / debug / health系统配置、调试工具与健康检查
src/modules/{system,debug,health}分层设计
从接入到运行时,每一层负责什么、用什么实现。
channel 模块:企微 SCRM pull / 飞书 push / 钉钉 push / Web Chat WebSocket / 开放 API
cognitive 四引擎:意图抽取 → 规划 → 评估 → 反思,LangGraph 状态机驱动
session / episodic / semantic 三级存储 + Milvus 向量检索 + 记忆衰减
persona 五层人格注入:角色 / 语气 / 边界 / 知识 / 策略
skill 技能演化、tool 内置工具(19 个)、knowledge 知识库 RAG、workflow 工作流
collaboration:orchestrator 编排、supervisor 监督、agent 间通信协议
NestJS 11 · TypeScript · Prisma 7 · MariaDB / MySQL · Redis · LangChain · LangGraph
关键流程
最重要的几条路径,逐步拆开看。
一次完整的认知回合
从用户一句话到 Agent 给出答案,中间发生了什么。
- 1
渠道适配器收到消息,归一化成内部消息结构
- 2
intent-extractor 抽取意图与槽位,判断是否需要追问
- 3
memory 召回相关记忆:会话上下文 + 情景记忆 + 语义画像
- 4
persona 注入五层人格,组装本回合的系统上下文
- 5
plan-engine 生成执行计划,选择要调用的 tool
- 6
assess-engine 评估工具返回,不合格则重规划
- 7
reflect-engine 回合反思,把结论与经验写回记忆
- 8
响应经渠道适配器回到用户,全过程写入审计与用量
跨会话记住一个用户
用户上周说的偏好,这周还在。
- 1
对话中识别出稳定事实(身份、偏好、禁忌、业务阶段)
- 2
写入 episodic 记忆并向量化进 Milvus
- 3
memory-sync-pipeline 异步落库,不阻塞当前对话
- 4
语义记忆聚合形成用户画像
- 5
下次会话向量检索召回相关记忆,连同画像一起注入上下文
- 6
memory-decay 让陈旧记忆权重随时间下降
多 Agent 协作处理复杂任务
一个 Agent 搞不定时,交给一组。
- 1
orchestrator 接收任务并拆解为子任务
- 2
按能力标签分派给专精 Agent
- 3
Agent 间通过 communication-protocol 交换中间结果
- 4
supervisor 检查各环节产出,不合格打回重做
- 5
collaboration-logger 记录完整协作链路
- 6
汇总结果返回,链路可回放用于优化
技术栈
性能与规模
这些数字不是估算,是从代码与运行配置里读出来的。每一条都注明了它的实际含义,避免被当成宣传口径。
uniclaw-copit意图抽取 → 规划 → 评估 → 反思,每步独立模块、独立可测
会话 / 情景 / 语义分层沉淀,含记忆衰减与上下文溢出治理
搜索、SQL、图表、代码执行、邮件、知识检索开箱可用
企微 / 飞书 / 钉钉 / WebSocket / 开放 API,同一套适配器抽象
角色、语气、边界、知识、策略分离,改人设不用改代码
OpenAI / Anthropic / Google 及兼容协议的国内模型均可
仓库里数得出来的事实
下面每一项都能在 uniclaw-copit 里核对:模块、数据表、接口与能力项。我们判断一件事「做完没有」的方式,就是看这些数字有没有变。
安全与合规支撑点
Uniclaw 在安全上具体做了什么、边界画在哪里。每一条都标注了对应的实现位置,方便核对。
什么能答、什么必须转人工写进人格配置,越界即触发接管,不依赖提示词自觉。
modules/persona 边界层每个工具调用都要过权限与配额校验,超配额立即失败,不给模型越权的空间。
modules/tool · usage自建 Milvus,向量与记忆数据留在客户网络内;可对接私有化模型服务。
Dockerfile 单镜像交付委托关系、工具调用与权限快照全程留痕,协作链路可完整回放。
modules/audit · collaboration-logger与 UIAM 打通后,Agent 凭据、作用域与工具权限统一由身份内核管理并可即时吊销。
UIAM tenant_code claim · MFA enrollment语义记忆按租户隔离,支持按策略清理,记忆衰减避免陈旧信息长期占权。
modules/memory · memory-decay数据停在哪一层
数据边界由产品形态决定,不是一个可以随手打开的开关。这是四条业务线共同的判断。
端侧产品的最小边界。这一层的数据在设计上就没有上传通道,不是靠开关关闭的。
- legdger 全部账目:本机加密存储,云端只有密文
- legdger 端侧 AI 统计与问答:推理在设备内完成
- NewTool 桌面与 wasm 形态:算法内核无 IO,数据不出进程
- pxc 抓包流量:内核跑在本机,不经第三方服务
私有化交付的边界。模型、向量、业务数据与审计记录全部部署在客户自己的网络里。
- Uniclaw 记忆与知识向量:自建 Milvus,不出内网
- Uniclaw 模型服务:可对接私有化部署的兼容协议服务
- UIAM 身份与审计数据:整套部署在客户网络边界内,可完全离网
- Uniscrm 素材与媒体:对象存储可对接客户自有 OSS
- Unilearning 课件与学习记录:单容器交付,数据自主
唯一需要外部网络的是同步与外部通道,且传输内容是加密密文或已脱敏的消息。
- legdger 跨设备同步:只上传最新密文,服务端不积历史
- Uniscrm 企微通道:与企业微信官方接口通信,走官方存档能力
- Uniclaw 通道:飞书 / 钉钉 push API,内容按租户隔离
- NewTool 远程调用:经 MCP 传输,算法内核本身不发起网络请求
公司级安全原则
不管哪条业务线,这六条是共同的底线。
凡是能写死在编译器、框架或查询层里的约束,就不写进文档让人记住。租户隔离由查询层监听器强制,域边界由 Go 的 internal 机制在编译期拒绝。
jOOQ TenantScopeVisitListener · Go internal 墙敏感数据默认留在用户设备或客户网络内。四条业务线全部支持私有化交付,端侧产品(legdger)连 AI 分析都不出设备。
legdger 端侧 AI · Uniclaw 自建 Milvus · Unilearning 单容器Agent 不共用人类凭据,服务端不硬编码长期密钥,端侧接入走可撤销令牌。任何凭据都能被单独吊销而不影响其他主体。
UIAM MACHINE 主体 · OSS STS AssumeRole · ledger-cli 令牌认证、授权、工具调用、抓包调试全部产生结构化记录。不是为了合规而记,是为了出事时能回放。
uiam-audit · collaboration-logger · pxc 会话记录委托关系用 act claim 表达「谁代表谁」,权限逐跳取交集。审计里能回答「哪个用户授权了哪个 Agent、调用了哪个工具、用了哪些权限」。
RFC 8693 Token Exchange · agent_tools 注册表数据库变更走版本化迁移,重复执行结果一致;应用发布是单镜像替换,回滚就是换回上一个镜像。
Liquibase · 各域方言迁移 · Docker 单镜像部署与集成
全部产品线均支持私有化交付,具体形态因产品而异。
一条命令拉起 MariaDB + Redis + 服务,本地与 POC 最快路径。
- docker compose up -d 启动依赖
- Prisma 迁移与生成
- Node.js 20+ / pnpm 9+
模型、数据与记忆留在客户自己的网络边界内。
- 自建 Milvus 向量库,向量数据不出内网
- 可对接私有化模型服务(兼容 OpenAI 协议)
- Dockerfile 单镜像交付
不绑定某一家模型厂商。
- llm 模块统一抽象,OpenAI / Anthropic / Google 均可
- 国内模型走兼容协议接入
- 按场景选择不同模型:对话用快模型、规划用强模型
Agent 的身份与权限直接复用 UIAM 的身份内核。
- 已适配 UIAM 的 tenant_code claim 与 MFA enrollment
- Webhook 接线实现身份事件同步
- Agent 凭据与工具授权由 UIAM 下发
方案对比
同一件事,不同的做法。左栏是我们的选择,右栏是常见的替代方案——差别通常不在功能表上,而在边界画在哪里。
谁会感觉到变化
功能清单说服不了人,角色视角可以。下面是四类角色接入前后的真实差别。
重复咨询占满人力,夜班和节假日无人覆盖,客户体验断档
数字员工 7×24 承接重复咨询,越界自动转人工并附完整上下文
线索进来没人筛,销售时间耗在低质量线索上
线索官主动触达并完成资格判定,到阶段成熟才转交人工销售
制度文档没人看,同一个问题被不同人问一百遍
挂载企业知识库 + RAG 检索,答案有出处,还能沉淀为技能
担心业务数据出内网,不敢在真实场景用 AI
模型、数据与向量库全部私有化,向量数据不出内网
版本与路线
已发布的写清楚交付了什么,开发中的写清楚正在做什么,规划中的写清楚打算做什么。已发布的条目不会再被推翻。
v0.9已发布认知内核- 认知循环四引擎
- 三级记忆与 Milvus 向量检索
- 19 个内置工具
- 模型供应商抽象层
v1.0已发布平台化- 五层人格模型
- 五类通道接入
- 多 Agent 协作编排
- 多租户与用量计量
v1.2开发中演化能力- 技能从会话中自动沉淀
- 深度研究模式增强
- Agent 间通信协议标准化
- 与 UIAM 凭据下发全面打通
v2.0规划中生态- 跨企业 Agent 联邦协作
- 能力与技能市场
- 行业 Agent 模板
- 端侧小模型混合推理
集成与对接对象
Uniclaw 需要和谁打交道、用什么方式。
SCRM pull 模式对接,走企微生态触达客户
push API 主动推送与事件接收
push API 主动推送与事件接收
记忆与知识的向量检索底座,可私有化部署
llm 模块统一抽象,按场景选不同模型
Agent 身份、委托链与工具授权由身份内核下发
落地场景
这套东西在真实业务里怎么用。
把重复咨询交给数字员工,人工只处理真正的例外。
- 企微 / 飞书 / 钉钉 / Web 多通道统一接待
- 越界问题自动转人工并附带完整上下文
- 会话沉淀为知识库,下次直接答对
线索进来先筛一遍,销售只跟有价值的。
- 主动触达新线索,多轮对话完成资格判定
- 客户画像自动沉淀,跟进要点实时更新
- 到阶段成熟时转交人工销售
公司制度和历史文档,问一句就有答案。
- knowledge 模块挂载企业知识库
- RAG 检索 + 语义记忆保证答案有出处
- 私有化部署,资料不出内网
不用等数据团队排期,问一句就出图。
- sql-query 工具直连业务库(只读)
- chart-generate 生成可视化图表
- research 模式做多轮深入归因
常见问题
裸调模型没有记忆、没有人设约束、没有工具授权边界,也不留审计。Uniclaw 提供的是运行时:认知循环保证长任务不跑偏,三级记忆保证跨会话一致,工具与权限保证它只做该做的事。
把身份、Agent 与私域的复杂度,交给一套可治理的内核
无论你是要替换现有的 IAM、搭建 Agent 中台,还是想把企微私域真正运营起来——先从一次 30 分钟的架构沟通开始。我们会先判断问题是不是我们擅长解的那类,不合适会直接说。