Cell 最佳实践

Cell 粒度选择、CellSpec 配置、Provider 策略、治理策略和配额设置的实践建议。


Cell 粒度选择

Cell 是唯一隔离域(AX-1),粒度选择决定了数据边界、合规边界和计费边界。

粒度适用场景优点代价
per-user个人桌面产品最强隔离,数据完全私有无法共享 KB/Agent/记忆
per-workspaceIDE 编程工具项目隔离,CKG 独立切 workspace = 换 Cell
per-department企业多部门部门内共享 Agent/KB需 Actor 隔离运行时行为
per-team小团队协作灵活共享需明确 admin 角色

判断标准

  1. 数据边界:一个人的数据 vs 一个团队的数据?→ 选后者的粒度
  2. 合规边界:GDPR 请求给一个人 vs 给一个组织?→ 选后者
  3. 计费边界:谁付账?→ 谁的粒度做 Cell

CellSpec 配置建议

immutable 字段(创建后不可变)

存储

不需要配置。路径由引擎从 (DataDir, ID) 推出,三层 SQLite 自动管理。

DenyPaths

始终包含 hypervisor.db 和应用配置文件:

DenyPaths: []string{
    filepath.Join(dataDir, "hypervisor.db"),
    configFilePath,
}

Provider 策略选型

策略含义适用场景
own_only仅用 Cell 私有 Provider个人桌面(自己的 API Key)
shared_only仅用 Hypervisor 共享池企业统一管理密钥
own_first优先私有,fallback 到共享HR 部门(PII 优先私钥)
shared_first优先共享,fallback 到私有通用场景

自动推导:单侧池非空时自动推导。两侧皆非空时必须显式声明,否则 ErrProviderStrategyUnset。


治理策略选型

GovernMode

ModeYellow Zone 行为典型用途
open(默认)Allow + Audit编程、助手、通用
lockedDeny金融合规、展示

Compliance 预设

// 通用
governance.StandardPreset()   // open + allow

// 金融/审计
governance.RegulatedPreset()  // locked + internal_only

// 展示/Demo
governance.ReadonlyPreset()   // locked + deny

注意:Compliance 只决定 RedactorRules + GuardrailsRequired,不直接管理 DenyPaths。


配额设置建议

计算配额

配额建议值说明
MaxConcurrentRuns3~5单 Cell 并发 Run 数
TokensPerMinute100,000防止单用户打满 Provider
TokensPerDay2,000,000日限额

外设配额

配额建议值
MaxIMChannels5
MaxMCPServers10
MaxCronJobs20
MaxEmailAccounts3
MaxSkillsInstalled50

配额判据在唯一增长点执行(INV-QUOTA-05),超限返回 429。


常见反模式

反模式正确做法
在部门 Cell 内给 Agent/Skill 加 per-actor 过滤结构资源归 Cell,运行时行为归 Actor
想让员工有私有 Agent/KB → 加 owner_id给员工开个人 Cell
CellSpec 填了 Skills 字段已删除,通过 Skills() handle 装配
不声明 ProviderStrategy 但两侧池都有必须显式声明

相关文档