按桌面客户端统一方案 v0.1 + agent_management Sub Mode Runtime 对接,强制全量统一,不留兼容。
命名统一(强制,无兼容):
- 全仓 agnet/Agnet/AGNET → agent/Agent/AGENT:后端 Go(路由 /api/agent/*、env AGENT_*、
结构体/函数、19 个文件改名)、前端(agent-console/agent-hub、/api/agent 调用、i18n)、
DB(表 agent_*、列 agent_id)、compose/.env、文档、脚本。
- DB 加幂等迁移 renameAgnetTablesToAgent():启动时 rename 老 agnet_* 表/列,保住生产数据。
统一方案核心(10 项):
- callback 统一 /api/agent/callbacks/runtime-events(路由/广播URL/函数名)。
- artifact 兜底判定改用 Runtime 权威信号 metadata.synthesized(§7.2)+ 结构化 artifact_type。
- Manager→Runtime 路径对齐 /api/agent/sub-agile/deployments(§2.2),{deployment_id} 回退 swarm_id。
- 状态裁决 display_status:Manager 唯一裁判,completed 无有效产物→needs_codegen/
completed_without_deliverable(§10.6),接入 detail/timeline/workflow。
- GET /api/heicode/capabilities 能力发现(§6)。
- 模型策略 per_role(role_models)+ 收集 allowed_model_ids(§9)。
- resource_binding_id→secret_ref 服务端解析,客户端不再 inline secret_ref(§17.6)。
- 客户端统一路由层 /api/heicode/sub-agile|swarm/*(task≡deployment,复用控制面)+ workflow 投影。
- 日志分层 user_logs/debug_logs(§13)。
验证:go build ./... + go test(controller/router/model/middleware)全绿;前端 tsc -b + rsbuild build 通过。
待部署:VM .env 的 AGNET_*→AGENT_*;启动迁移自动 rename 表;其他三仓库需同步切到 /api/agent。
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
3.9 KiB
3.9 KiB
07. CodeGW、Azure Key Vault、Agent 平台边界说明
目标
本文用于讲清楚 Heicode 与 CodeGW、Azure Key Vault、Agent 平台之间的产品和技术边界,避免再次变成缝合式系统。
总体边界
| 系统 | 能力归属 | 普通用户是否直接进入 |
|---|---|---|
| Heicode | 产品总入口,包含客户端主体验与 Manager 辅助控制台 | 是 |
| CodeGW | 模型网关、模型调用、余额、额度、用量日志 | 否 |
| Azure Key Vault | 长期凭证托管、密钥引用、后端受控读取 | 否 |
| Agent 平台 | AKS 执行层、状态、日志、事件、指标 | 否 |
Heicode 与 CodeGW
Heicode 使用 CodeGW 的方式:
- 查询普通用户可见模型。
- 查询余额和额度。
- 查询用量和调用日志。
- 建立
channelId、CodeGW user、token 或 group 的映射。
Heicode 不做:
- CodeGW 渠道管理。
- CodeGW 模型供应商配置。
- CodeGW 价格配置。
- CodeGW 管理员用户管理。
- 把 CodeGW 后台开放给普通用户。
产品口径:
CodeGW 是 Heicode 的模型网关和计费底座,用户在 Heicode 中查看模型和用量,不直接使用 CodeGW 后台。
Heicode 与 Azure Key Vault
Heicode 使用 Azure Key Vault 的方式:
- 写入用户授权后的长期凭证。
- 保存和管理
secret_ref。 - 执行密钥健康检查、metadata、轮换、禁用、撤销。
- 为高危操作申请短期凭证。
Heicode 不做:
- 在数据库保存明文密钥。
- 把 Azure Key Vault access token 交给前端。
- 把 Azure Key Vault 管理入口作为普通用户入口暴露。
产品口径:
密钥保管器负责保存凭证,Heicode 只保存引用。子 Agent 使用资源时,平台按权限和审批结果获取短期访问能力。
Heicode 与 Agent 平台
Heicode 传给 Agent 平台:
- 用户上下文。
- 任务目标。
- 子 Agent 角色。
- AGENT.md。
- resource context。
- permission manifest。
secret_ref。- 审批策略。
- 模型和预算配置。
sk_context/tool_permissions。- 回调地址。
Agent 平台回传 Heicode:
- deployment 状态。
- 子 Agent 状态。
- 事件。
- 日志。
- 指标。
- 审计事件。
- 使用量。
- 当前子环节状态。
- 中间交付物。
- 部署结果。
Heicode 不传:
- 长期明文密钥。
- CodeGW key 原文。
- Azure Key Vault 管理凭据。
- 数据库密码。
产品口径:
Heicode 决定用户想做什么、能用什么资源和谁来做;Agent 平台负责把这些任务安全运行起来,在过程中按权限调用需要的 SK 工具,并把子环节状态、交付物和部署结果回传给 Heicode。
客户端与 Manager 的边界
客户端主做:
- 登录 Heicode。
- 对话和任务输入。
- 继续补充要求和修正方向。
- 展示 Heicode 提供的模型。
- 高危操作审批。
- 查看执行反馈和交付结果。
Manager 主做:
- 账号与安全。
- 客户端下载。
- Git、文档、SK、云资源绑定。
- Agent 部署。
- 任务状态、用量和审计查看。
- 风险与授权范围确认。
客户端不做:
- 选择模型提供方。
- 配置 CodeGW 渠道。
- 直接访问 Azure Key Vault。
- 直接保存长期云密钥。
Manager 不做:
- 主开发对话。
- 网页编码。
- 替代客户端完成高危审批。
当前延期项
Heicode 到 Agent 平台真实部署 API 的完整联调仍可延期。
但 Heicode 侧必须准备好:
- payload。
- manifest。
- 审计字段。
- callback URL。
- 本地占位控制面。
- 日志、事件、指标的数据展示位置。
验收口径
- 普通用户只进入 Heicode。
- 客户端只登录 Heicode。
- CodeGW 独立服务运行。
- Azure Key Vault 只通过 Manager 后端受控身份访问,普通用户不直接进入。
- Agent 平台接口只收结构化上下文和
secret_ref,不收长期明文密钥。