diff --git a/docs/changelog/2026-06-12-server-agent-action-hint.md b/docs/changelog/2026-06-12-server-agent-action-hint.md new file mode 100644 index 00000000..0653d6cd --- /dev/null +++ b/docs/changelog/2026-06-12-server-agent-action-hint.md @@ -0,0 +1,33 @@ +# 2026-06-12 新服务器 Agent 安装/升级提示 + +## 摘要 + +新添加的服务器不再因预生成 `agent_api_key` 误显示「离线」;列表与展开详情明确提示需安装或升级 Agent,并提供一键操作。 + +## 动机 + +用户添加服务器后 CPU/内存/心跳为空,界面无指引。根因:仅有 DB 中的 API Key 被当作「已装 Agent」,实际从未安装。 + +## 涉及文件 + +- `server/utils/agent_version.py` — `agent_is_installed`、`compute_agent_guidance` +- `server/api/servers.py` — 列表/详情返回 `agent_action*`;状态判定修正 +- `frontend/src/components/servers/ServerAgentHint.vue` — 提示条(新增) +- `frontend/src/components/servers/ServerInlineDetail.vue` — 展开详情提示 +- `frontend/src/pages/ServersPage.vue` — 列表「需安装/需升级」芯片、单台安装/升级 +- `frontend/src/composables/servers/useServerFormDialog.ts` — 创建后 toast +- `frontend/src/types/api.ts` — 类型 +- `tests/test_agent_version.py` — 单测 + +## 迁移 / 重启 + +需重启 API;前端构建部署。 + +## 验证 + +```bash +.venv/bin/pytest tests/test_agent_version.py -q +cd frontend && npm run type-check +``` + +添加服务器 → 状态应为「未知」→ 展开行见「尚未安装 Agent」→ 点「安装 Agent」。 diff --git a/frontend/src/components/servers/ServerAgentHint.vue b/frontend/src/components/servers/ServerAgentHint.vue new file mode 100644 index 00000000..da616654 --- /dev/null +++ b/frontend/src/components/servers/ServerAgentHint.vue @@ -0,0 +1,68 @@ + + + diff --git a/frontend/src/components/servers/ServerInlineDetail.vue b/frontend/src/components/servers/ServerInlineDetail.vue index ddc82f98..c800d0a3 100644 --- a/frontend/src/components/servers/ServerInlineDetail.vue +++ b/frontend/src/components/servers/ServerInlineDetail.vue @@ -1,5 +1,15 @@