Admin Portal

把新增模型与导入帐号收进同一套入口

这个入口不再把“新增模型供应商”和“导入供应商帐号”拆散在不同地址。当前版本统一从 /portal/admin/ 进入:一边看 pack/provider 目录、做 preview/import,一边继续保留 item 级 reused / reactivated / replaced 的 batch-import 结果面板。

  • 默认同域走 /portal-admin-api/
  • 静态页与 CRM API 解耦
  • 保留旧地址兼容,不打断现有操作

逻辑分组 / 路由

这页给插件前置路由使用,负责维护 logical_grouppublic_modelrouteshadow_host_id / shadow_group_id 的关系。当前首版已经能直接调 /api/logical-groups 系列接口,适合先把 canonical shadow route 收进统一管理面。

  • 适用动作 创建 logical group、绑定 public model、维护 route 与 shadow group 映射。
  • 默认 API Base https://sub.tksea.top/portal-admin-api

新增模型 / 供应商目录

这页负责浏览已安装 pack、选择 provider、调用 preview-import / import,同时提供 provider manifest 草稿生成与发布。当前版本已经支持先保存草稿,再经由 CRM 服务端写入 pack/provider 文件并自动提交到仓库。

  • 适用动作 查看 pack 与 provider、输入 keys 做 preview/import、生成 provider 草稿,并一键发布到仓库。
  • 默认 API Base https://sub.tksea.top/portal-admin-api

Route 健康视图

这页专门给运营看 route 当前运行状态,聚合 routefailroutecool、 最近一次选路与 failover 事件。首版只做只读健康视图,不在这里直接改 route。

  • 适用动作 查看 healthy / cooldown / failing / disabled,确认 sticky、failover 与最近错误是否一致。
  • 默认 API Base https://sub.tksea.top/portal-admin-api

帐号资产

这页把导入结果收成插件侧 provider_accounts 库存,直接展示帐号属于哪个 logical_group / route / shadow_group / shadow_host,并提供人工 enable / disable / retire 动作。

  • 适用动作 查看帐号库存、筛选 route 归属、执行人工启停与退役。
  • 当前边界 启停动作当前只修改插件库存状态,不直接改宿主 account 记录。

导入供应商帐号

这页继续负责 live batch-import:创建 run、拉取 run summary、查看 item 级别的 matched_account_stateaccount_resolution

  • 适用动作 批量导入第三方 key,验证 reused / created / reactivated / replaced
  • 默认 API Base https://sub.tksea.top/portal-admin-api
可立即使用
逻辑分组 + Provider 导入

依赖现有 /api/logical-groups/api/packs/api/providers/*/api/batch-import/* 即可完成。

当前边界
浏览器提交到 CRM,再由 CRM 写仓库

页面不会直接拼 Git 命令;所有写 pack/provider 与提交仓库的动作,都统一走 CRM 服务端的发布接口。

安全前提
仍需 Admin Token

CRM 的 API 权限仍由 Bearer token 控制,同域反代只解决浏览器可达性,不降低鉴权门槛。