@defrex/autobuild-hosted-store-service

中文文档
1.6.0发布于 2026/11/12Apache-2.0TypeScriptES Module近 30 天下载 3136
中文使用文档
文档目录5 节
  1. 全面部署
  2. 网络/自动变量
  3. 主机调度器
  4. 已连接的项目
  5. 项目秘密加密

@defrex/autobuild-hosted-store-service

可选主机自动构建服务由远程构建 Store 和 全票源 HTTP 协议 @defrex/autobuild-postgres-store; 数据 协议服务器住在这里, 而客户端的一半, 电线计划, 和符号 装有薄荷的船 @defrex/autobuild 核心软件包。 Next.js 应用程序 住在这个包裹里 app/ 树:它挂载这些机器协议 不变,并服务 饼干认证操作仪表板在同一 源代码. server.ts 此包中仍为已命名的赤本 非下一个主机的机器服务入口.

全面部署

使用软件包 deployment/package.json 财务报告和审定财务报表 deployment/vercel.json 作为 小数 Git 仓库, 用 Bun 安装, 输入锁定文件, 并导入到 韦克塞尔。 模板明确标出此服务及其所需的核心 对等到同一释放。 软件包构建命令阶段 完整的应用程序, 迁移 Postgres,然后创建 Next.js. 不需要源检出或补丁 .

跟着 自主办指南 确切的模板, 环境、检查和升级程序。 它在这个包裹中飞来飞去; 自我接待 不支持和买方的谨慎。 仅存储 模式是默认:没有可选的调度器, /api/dispatch 返回时 503个,“为这一部署在其他地方部署”,没有提供克龙.

项目证书不透明 abp_1_<id>_<secret> 无记名值绑定在一个 已注册的正态寄存器 。 服务只储存一份SHA-256摘要 随机秘密,加上项目,创建者,创建时间,最后使用,过期和 撤销元数据。 它检查证书状况和项目登记 读取单个数据库中的每个请求, 没有正验证缓存 在请求之间。 最后使用最多为每60秒一次,并有线索 实际使用时间最多为60秒; 相互竞争的服务实例共享数据库 断取. 已经在飞行中的认证在撤销时可能完成 . 存储器存在读取仅在一个 HTTP 引用中重复使用; 事件 读取和变异锁保持新鲜。 撤销对下一个请求生效而不影响 其他全权证书。 收到不明、过期或被吊销的证书 401 auth· ; 收到已删除的项目 403 auth 与 project not registered。 。 。 .

部署所有者在本地运行这些命令, 并访问数据库 :

ab-hosted-store credentials issue https://github.com/acme/app --user [email protected]
ab-hosted-store credentials list https://github.com/acme/app
ab-hosted-store credentials revoke https://github.com/acme/app --id ID --user [email protected]

发布此密钥一次; 列表仅包含元数据 。 可选发行 接受 --ttl-seconds N 或者说 --expires-at ISO-8601对于行政/非互动印发,将返回的符号设定为: AB_TOKEN. 互动项目登入使用 ab connect <service-url>· ; 它能把证书保存在寄存处之外 并且没有秘密 上一个 AB_TOKEN 价值和价值 mint operator 编号 : mint build 为: 已退休: 服务回复到证书格式已改变并点数 改为 credentials issue。所支持的旧协议形状仍然与新的 证书; 协议兼容性不会恢复已退休的认证 .

mint admin --ttl-seconds N 创建明确的版本, 归属所有者 碎玻璃证书。 它可以跨越项目界限. 仅保留所有者 : 从不给,或 AB_STORE_SECRET 给调度员或建筑代理人.

见 远程存储权限, (中文(简体) ), 入场券 财务报告和审定财务报表 运营者授权。 。 。 .

网络/自动变量

  • BETTER_AUTH_SECRET: 单独 32+ 字符高通会话秘密.
  • BETTER_AUTH_URL:确切的公开来源(http://localhost:3000 (当地).
  • GITHUB_CLIENT_ID, (中文(简体) ), GITHUB_CLIENT_SECRET: 仅服务器 OAuth 应用程序值.
  • AB_WEB_AUTH_PROVIDERS=github: 启用提供者设置 .
  • AB_WEB_SUPER_USER_EMAILS:逗号分隔,大小写不敏感超级用户电子邮件列表.
  • AB_WEB_REPOSITORIES (折旧):可选每数据库导入一次 正常寄存器来源 。 持久登记册在 导入; 编辑和重新启动从未复活已删除的工程.
  • AB_WEB_MCP_RESOURCE (可选): MCP 服务器的保护资源 将符号绑定为; 默认为 <BETTER_AUTH_URL>/mcp见 自动托管指南的变量。 。 。 .

删除电子邮件会屏蔽其下一个网关请求, 即使其数据库支持 语句尚未过期。 旋转 BETTER_AUTH_SECRET 结束每个浏览器 届会. AB_STORE_SECRETGitHub的客户端秘密 PostgreSQL/blob证书, 机器代号,和 OAuth 账户代号是只使用服务器的,决不能使用 NEXT_PUBLIC_ 名称.

在另一个能装箱的主机, bun run dev 或者说 bun run start 从此 软件包目录为完整服务 应用. bun run hosted-store 仅服务机器路线.

主机调度器

发件内核不属于此包. 认证的 GET /api/dispatch 结束点及其部署时的站点在单独的 @defrex/autobuild-hosted-dispatcher 软件包; 部署选择通过安装并安装其 路径,而且只有主机状态的部署从未尝试过调度勾选. 随着调度器的安装, ab-hosted-service-build 收拾宾客 分发归档 。 它传送归档和选定的提供者插件 输入 /api/dispatch。调度器 README 声明插件选择规则. 见 自主办指南 页:1 时间表、功能持续时间和耗尽.

Sandbox SDK 认证了内部部署的 OIDC 身份 Vercel 函数,所以不 VERCEL_TOKEN 属于主机部署 方式; 查看调度包的 README 环境 变量和证书处理.

已连接的项目

在部署前从被绑定的释放中移出 PostgreSQL(bun run postgres:migrate) (中文(简体) ). 该服务保持独立、持久的项目登记册; 现有的构建或售票数据不登记项目。 一个管理员 使用部署数据库证书管理,不重新部署:

ab-hosted-store projects list
ab-hosted-store projects add https://github.com/owner/project --user [email protected]
ab-hosted-store projects remove https://github.com/owner/project --user [email protected]

从源检出, 替换 bun packages/hosted-store-service/src/bin.ts 页:1 ab-hosted-store配置 AB_POSTGRES_URL 或者说 DATABASE_URL 在那个 进程。 数据库拥有补助金管理; --user 被宣布为审计 归属,不是经过验证的登录 。 普通工程/仓库令牌无法管理 登记。 每个条目记录归正源 URL,添加时间, 和增加身份。 SSH git 拼写规范化为 HTTPS; 本地路径和 拒绝带有证书的 HTTPS URL 。 复制增加了保存元数据; 删除是一元化的,并重新添加记录新的添加.

超级用户可以操作每个已注册的项目. 组织成员可以 仅运作分配给各自组织的现行项目;未分配遗产 只有超级用户才能看到项目。 成员由正式成员授予 电子邮件,包括首次登录前的电子邮件,并在每次请求中重新检查。 仪表盘, MCP 发现和呼叫,以及每个操作员 API 路由查询当前 登记。 从所有这些表面隐藏一个工程以及随后的 - 建筑、活动、文物和门票, 并且重新登记可以恢复访问。 已经开始的工作没有取消 . 机器证书与一个注册项目挂钩;立即删除 拒绝其证书而不删除历史.

直接链接到 /?repo=<URL-encoded normalized origin>。页面选择 当请求的原产地丢失或被移除时,第一个登记来源,以及 空登记册显示没有项目数据或控制 。 登记册出错未能结案; 数据库失败后环境不会倒退.

AB_WEB_REPOSITORIES 已贬值。 非空 CSV 完全导入一次 在第一个登记册初始化时, 与演员 system:AB_WEB_REPOSITORIES。导入和持久标记承诺 在解剖学上,同时开始。 没有的变量不消耗 标记。 以后重新启动或编辑到变量中从未重新添加已删除的工程; 使用所有者命令进行后续管理.

主机调度员查询每个授权的当前注册情况 引证. 与 AB_DISPATCHER_REPOSITORIES 未设置, 它服务所有注册 项目; 明确清单维护其顺序,并与当前 登记。 空登记册是成功的零项目引用.

该服务公布已知的虚假放置时间 CRON_SECRET 是未设或空白的, 不需要调度人员来源。 启用时, 它会发布持久发送 从这一选择中插入,包括: 不包括的项目。 授权项目读取前同步同一事实 回答;不需要账户秘密。 见 放置协议。 。 。 .

托管的入场券范围为证书注册项目. 生命周期 源自该项目的有效配置 跟踪器将连接保留在调度器中并接收源反馈 从服务票表面。 此服务没有线性后端 . AB_TICKET_BACKEND 财务报告和审定财务报表 LINEAR_API_KEY 一个启动删除时被忽略 和所有 AB_TICKET_*_STATE 寿命周期变量被删除并被忽略. 部署从解剖角度构建了人口众多的v1机票数据,需要 blob 证书、访问权限和这样做的前缀 拥有者 ab-hosted-store tickets assign-team 命令.

退休人员 AB_WEB_ALLOWED_EMAILS 变量在启动时被拒绝,即使为空. 替换为 AB_WEB_SUPER_USER_EMAILS;审查清单,因为这些身份 是部署维护者。 第一个组织通过 浏览器管理合同, (中文(简体) ), 然后通过电子邮件添加成员,并分配未分配的遗留项目。 单靠超级用户 创建鼠标,设置或清除单一所有者,并指定或移动项目。 拥有者 管理他们的成员。 删除最后一个成员或超级用户的指定 在下次请求时取消人类访问而不重新登录;现有项目 证书在被撤销之前一直有效.

项目秘密加密

设定 AB_PROJECT_SECRETS_KEY 服务配置和部署配置 32个随机字节的编码,用 openssl rand -base64 32。 。 。 . 把它保存在数据库和源控制之外 用部署机密备份. 适配器验证每个写入和项目有秘密时的密钥 以决定。 部署核查员检测到不同的密钥,包括写入 第一次加密写入后为空 。 缺少、错误或错误的密钥 失败写入并关闭非空解析;元数据仍然可以读取。 项目 没有秘密 继续发送没有加密密钥, 即使另一个 计划有秘密 如果添加了秘密, 空快照仍然拒绝交接 自决议通过以来. 密钥从不传递到内核/儿童环境. 轮回不支持. 刷新提供者类型是内部集成; 此发布没有真实 OpenAI 类型或登录端点. 静态秘密使用连接的主人的CLI.

版本与发布记录

@defrex/autobuild-hosted-store-service 共发布 23 个版本,首次发布于 2026/09/17;过去 12 个月发布了 23 个版本。

版本发布日期距今
1.6.0latest2026/11/12今天
1.5.02026/11/092 天前
1.4.22026/11/048 天前
1.4.12026/11/039 天前
1.4.02026/11/039 天前
1.3.02026/10/2913 天前

其他发布通道:beta → 1.0.0-beta.4。

关于 @defrex/autobuild-hosted-store-service 的常见问题

如何安装 @defrex/autobuild-hosted-store-service?

在项目目录运行 npm install @defrex/autobuild-hosted-store-service,或使用 pnpm add / yarn add / bun add。它还需要宿主项目提供 peer 依赖:@defrex/autobuild(>=0.11.0 || >=1.0.0-0 <1.0.0)。npm 7 及以上与 pnpm 8 及以上默认会自动安装必需的 peer 依赖,Yarn 需要手动安装。它还提供命令行工具 ab-hosted-store、ab-hosted-service-build,可以用 npx ab-hosted-store 直接运行。

@defrex/autobuild-hosted-store-service 支持 TypeScript 吗?

支持。包内自带 TypeScript 类型声明(package.json 声明了 types 入口),安装后即可获得类型提示,无需再安装 @types 包。

@defrex/autobuild-hosted-store-service 支持 ESM 还是 CommonJS?

以 ES Module 形式发布,推荐使用 import 引入。在 CommonJS 项目中,Node.js 20.19+ / 22.12+ 可以直接 require() 不含顶层 await 的 ES Module,更早的版本需要改用动态 import()。

@defrex/autobuild-hosted-store-service 可以商用吗?

@defrex/autobuild-hosted-store-service 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@defrex/autobuild-hosted-store-service 的下载量有多少?

根据 npm 官方下载统计,@defrex/autobuild-hosted-store-service 在 2026/10/12 – 2026/11/10 这 30 天内被下载 3,136 次,日均约 105 次。下载量会把 CI 构建、镜像同步和作为其他包依赖的安装一并计入,适合横向比较热度,不能直接等同于使用人数。

@defrex/autobuild-hosted-store-service 还在维护吗?

最新版本 1.6.0 发布于 2026/11/12(今天);至今共发布 23 个版本,其中过去 12 个月发布了 23 个;首次发布于 2026/09/17。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。