console-core

oc-console-core · package · G16-Console · Layer 1

① 作用

Console 后端领域层:基于 drizzle-orm + PlanetScale 的数据库访问、Actor 权限上下文、以及 Account/User/Workspace/Key/Billing/Subscription/Model/Provider 等 CRUD 与计费逻辑。src/drizzle/index.ts 封装事务与上下文,src/account.ts 处理账号创建/删除(含级联清理 key、coupon、auth),src/workspace.ts 创建 workspace 并默认生成管理员与 API key,src/billing.ts 对接 Stripe 做 credits 充值。

② 提供能力

· Database 封装:PlanetScale drizzle 客户端 + 事务/上下文(src/drizzle/index.ts:36)
· Actor 权限上下文:请求用户/角色/workspace 断言(src/actor.ts)
· 账号生命周期:create/remove/fromID,删除级联清理(src/account.ts:13,27)
· workspace 创建与成员管理(src/workspace.ts:17)
· API Key 管理与角色隔离(src/key.ts:11)
· Stripe 计费:credits 充值/订阅/用量计费(src/billing.ts:22,29)
· 模型/Provider 目录与 ZenData 模型成本定义(src/model.ts)
· 订阅限额:free/lite/black 阶梯(src/subscription.ts:7)
· 全量 drizzle schema SQL(src/schema/*.sql.ts,account/auth/billing/key/model/provider/referral/user/workspace/ip/benchmark)
· 邀请邮件渲染(动态 import console-mail,src/user.ts:142)

③ 依赖(上游)

节点机制证据
console-mailworkspace-dep@opencode-ai/console-core/package.json dependencies.@opencode-ai/console-mail
console-resourceworkspace-dep@opencode-ai/console-core/package.json dependencies.@opencode-ai/console-resource

④ 被依赖(下游)

节点机制证据
console-appworkspace-dep@opencode-ai/console-app/package.json dependencies.@opencode-ai/console-core
console-functionworkspace-dep@opencode-ai/console-function/package.json dependencies.@opencode-ai/console-core
console-supportworkspace-dep@opencode-ai/console-support/package.json dependencies.@opencode-ai/console-core

⑤ 为什么存在(why)

设计意图(官方)

将 Console 的业务领域逻辑从 app(前端/网关)与 function(worker)中独立出来,供 app、support、function 三方复用,避免数据库 schema 与计费逻辑重复实现。

改造关联

官方底座,未被本机装配层直接引用

⑥ 怎么用(how)

怎么用

典型场景与协作

模块内部结构 DAG(36 模块 · 103 边) 内部结构基线 v1.18.29,v1.18.35 包级结构未变(36 包集合逐一致)