外观
项目私有记忆与可复用知识,怎样避免跨 Agent 或跨项目越权?
项目版本说明
这些问答整合历史设计与实现资料;当前 main 分支 README 以工作包描述建设状态。具体能力、实验数据与设计目标的边界见项目状态与证据。
标准回答
身份决定可访问范围,记忆的归属与可见性决定能否读取、写入或共享。授权需要覆盖检索候选、正文、缓存和历史视图;把项目私有内容泛化成知识时,也不能默认它已经可公开或跨项目复用。
通俗例子
两个项目都问“发布流程是什么”,语义相似不意味着可共享。项目 A 的内部环境地址即使被抽取成“经验”,也不能因此被项目 B 召回。
深入解释
**身份来自可信认证:**SDK、MCP 或直接 API 都进入一致授权逻辑,不能接受请求中任意填写的 project_id 就放行。
**检索与返回都要守边界:**按实际查询方案应用权限条件,并保证最终返回与缓存命中仍受授权检查。候选数量不足时不能为了凑 Top-K 混入别的项目内容。
**共享是显式的业务决策:**复制或泛化可能仍含私有事实和约束,需要定义发布权限与来源保留方式,而不是由模型自行把私有内容标成通用知识。
追问与回答
历史版本也要鉴权吗?
需要。历史仍可能含私有信息,当前权限撤销也不能通过历史查询绕过。
缓存怎么隔离?
键和返回检查要覆盖实际权限范围及版本,避免不同用户或项目复用不相容的结果;具体策略需核对实现。
易混淆点
提示词中的“不要泄露”不能替代服务端授权。
进一步举证
- 补齐主体、项目、角色、权限及共享状态的数据关系。
- 准备跨项目查询、权限撤销、历史读取和缓存命中的测试。
内容来源
- Android · AI Agent 知识手册 · 原条目
resume-R27