a0616eaebf84d2162ff603ebb0a054c6bed75cd9
需求:管理员在 HM 控制台按订阅套餐控制谁能用蜂群。照搬现有 MaxAgents(#8)模式 (per-plan、管理员设、不硬编码 tier)。 后端: - model SubscriptionPlan 加 SwarmEnabled bool(default false;AutoMigrate 加列,跨三库)。 - model GetUserSwarmEnabled(userId):用户任一活跃套餐 SwarmEnabled=true 即放行(镜像 GetUserMaxAgents);无套餐/DB 不可用 => false(opt-in)。 - controller AgentCreateUserSwarm gate:普通用户须有开通套餐,管理员(role>=admin)绕过(测试/运维)。 - controller 套餐 admin upsert 字段映射加 swarm_enabled(create 整结构已自动带)。 前端(web/default 套餐编辑): - plan-form schema/defaults/映射 + types 加 swarm_enabled。 - 套餐编辑抽屉加「蜂群使用权」Switch(镜像 enabled)。 - zh.json 加 "Swarm Access" → 蜂群使用权(en 用 key 兜底)。 默认关闭(opt-in)、管理员逐套餐勾选;gate 在 swarm 创建入口,与 swarm 运行时是否启用无关。 测试 TestGetUserSwarmEnabled(无套餐/开通/未开通/过期/多套餐/非法 user)。build+vet+model 测试全绿。 影响面:HM 订阅模型(加字段)+ swarm 创建鉴权 + admin UI;不涉计费扣费/密钥/swarm 契约。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Heicode
Heicode 面向多人协作、可追溯交付的软件团队:把需求对齐、实现、验证、发布和持续运营连成一条少断层的链路,并用可编排的智能体角色承接其中可标准化的环节——强调「能复盘、能审计、能按团队规模裁剪」,而不是罗列某一家的工具栈。
下面的目录表仅供工程查阅;不代表对外产品承诺、路线图或你必须采用的集成方式。
本仓 = Heicode Manager(HM)端。 历史上终端/桌面客户端(
cc-haha)、官网(website)与 Manager 曾同处一个 monorepo;现已拆分,本仓只保留 Heicode Manager(基于 new-api 的模型网关 + 管理控制台)。客户端(终端 + 桌面)在heicode-macos-release-dev/heicode-winos-release-dev独立仓。
这个仓库里有什么(工程布局)
| 目录 | 大致含义 |
|---|---|
heicode/ |
Heicode Manager:基于 new-api 的模型网关 + 管理控制台。Go(Gin/GORM)后端 + web/default 前端(Bun/Rsbuild/React)。 |
docs/ |
产品共识、实施计划与集成契约(索引见 docs/README.md)。 |
客户端与官网不在本仓。
产品在解决什么问题
- 协作范式:把瀑布 / 敏捷下的角色分工落到可复述的闸门与智能体承接边界。
- 交付可追溯:文档、沟通与变更尽量与版本、发布对齐,便于复盘与合规。
- 模型与执行分层:HM 提供模型网关与权限 / 计费;云端 agent 由 agent_management(AM)部署,客户端拿到 agent 公网地址后直连 agent 使用。
产品定位与架构共识见 docs/heicode.md,实施计划见 docs/plan.md。
快速启动(开发联调)
Heicode Manager 在 heicode/ 子目录:Go 后端 + web/default 前端。完整构建 / 运行命令与分层规则见 heicode/CLAUDE.md 与 heicode/README.md。
与 Heicode 登录相关的最小路由(以实际代码为准):
GET /heicode/oauth/authorizeGET /heicode/oauth/session
平台侧能力还包括模型发现(如 GET /v1/models)与 Anthropic Messages 兼容入口等。
集成与对接契约见 docs/integration/(HM↔AM、桌面客户端对接等)。
许可证
heicode/(Heicode Manager,基于 new-api)许可证见 heicode/LICENSE(常见为 AGPLv3)。
Languages
Go
98.8%
Python
1.1%