按桌面客户端统一方案 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>
119 lines
3.3 KiB
Markdown
119 lines
3.3 KiB
Markdown
# 08. Heicode 客户端说明
|
|
|
|
## 客户端定位
|
|
|
|
Heicode 客户端是用户主体验,承担本地对话、想法输入、任务推进、执行反馈、交付接收和高危审批。它不是独立模型配置工具,也不是 CodeGW 后台客户端。
|
|
|
|
Heicode Manager 不是主体验,但它仍然负责账号与安全、客户端下载、Git/云资源绑定、Agent 部署、任务状态、余额与审计等辅助操作。用户不在网页上编码,主要在客户端里推进开发任务。
|
|
|
|
客户端必须保持:
|
|
|
|
- 只登录 Heicode。
|
|
- 只使用 Heicode 提供的模型。
|
|
- 不出现模型提供方选择。
|
|
- 不出现旧服务入口。
|
|
- 视觉风格与 Heicode 保持一致。
|
|
|
|
## 登录
|
|
|
|
客户端登录地址:
|
|
|
|
```text
|
|
https://code.xinghanlab.com
|
|
```
|
|
|
|
用户打开客户端后,点击登录,跳转或打开 Heicode 登录流程。登录完成后,客户端读取 Heicode 会话状态。
|
|
|
|
## 模型
|
|
|
|
客户端模型来源:
|
|
|
|
```text
|
|
Heicode
|
|
-> CodeGW 用户侧模型能力
|
|
-> 客户端展示可用模型
|
|
```
|
|
|
|
客户端不内置默认 Claude 模型,也不让用户选择模型提供方。用户看到什么模型,由 Heicode 和 CodeGW 映射决定。
|
|
|
|
## 主要功能
|
|
|
|
| 功能 | 说明 |
|
|
|------|------|
|
|
| 对话输入 | 用户描述产品想法、开发任务或维护需求 |
|
|
| 任务推进 | 继续要求、查看 Agent 执行反馈、接收交付结果 |
|
|
| 任务状态 | 查看 Heicode 返回的任务和子 Agent 进度 |
|
|
| 模型选择 | 从 Heicode 提供的模型中选择 |
|
|
| 高危审批 | 对生产部署、密钥访问、云操作做确认 |
|
|
| 日志反馈 | 展示关键执行反馈和失败原因 |
|
|
| 安装更新 | 从 Heicode 下载页获取安装包 |
|
|
|
|
## 客户端里的 Agent 闭环
|
|
|
|
客户端里发生的不是单次对话,而是持续推进的任务闭环:
|
|
|
|
```text
|
|
用户输入想法或补充要求
|
|
-> Heicode 判断当前子任务
|
|
-> 调用 Agent 执行需求/开发/测试/修复/部署中的某一环
|
|
-> Agent 按权限调用需要的 SK 工具
|
|
-> 中间结果、失败原因和下一步建议回到客户端
|
|
-> 用户继续补充、修正或审批
|
|
-> Agent 继续推进
|
|
-> 最终返回交付物和部署结果
|
|
```
|
|
|
|
所以客户端应该更像“任务驾驶舱”,而不是一次性聊天窗口。
|
|
|
|
## 高危审批体验
|
|
|
|
审批弹窗应清楚展示:
|
|
|
|
- 操作类型。
|
|
- 目标资源。
|
|
- 请求角色。
|
|
- 风险等级。
|
|
- 有效期。
|
|
- 预计影响。
|
|
- 是否会派生短期凭证。
|
|
|
|
用户操作:
|
|
|
|
- 批准。
|
|
- 拒绝。
|
|
- 查看详情。
|
|
|
|
## 安装包分发
|
|
|
|
安装包由 Heicode 下载页提供。
|
|
|
|
平台:
|
|
|
|
- macOS arm64。
|
|
- Windows。
|
|
- 后续可扩展 Linux。
|
|
|
|
macOS 注意:
|
|
|
|
- 如果未完成 Developer ID 签名和 notarization,系统可能弹出安全提示。
|
|
- 产品文案应说明当前安装方式和后续签名计划。
|
|
|
|
## 客户端不应该出现的内容
|
|
|
|
1. 模型提供方配置。
|
|
2. 旧登录入口。
|
|
3. 第三方路由登录入口。
|
|
4. CodeGW 后台入口。
|
|
5. Azure Key Vault 地址、access token 或密钥保管器后台信息。
|
|
6. 长期云密钥输入框。
|
|
7. 无法解释的个人 API key 自动复制。
|
|
|
|
## 验收标准
|
|
|
|
1. 打开客户端只看到 Heicode 登录入口。
|
|
2. 登录地址是 `https://code.xinghanlab.com`。
|
|
3. 模型列表来自 Heicode。
|
|
4. 没有模型提供方菜单。
|
|
5. 没有旧品牌和旧模型默认文案。
|
|
6. 高危审批能明确展示风险和资源范围。
|