@galcraft/contracts

中文文档
0.1.0发布于 2026/11/01MPL-2.0TypeScriptES Module

@galcraft/contracts 提供跨包和宿主边界的线格式类型、Zod schema、具名操作目录与测试夹具。Studio、Player、领域包和插件通过公开出口共享作品、素材、页面、制作、运行和宿主契约;各模块定义自己内部使用的执行参数与结果。

原始使用文档

共同契约

@galcraft/contracts 提供跨包和宿主边界的线格式类型、Zod schema、具名操作目录与测试夹具。Studio、Player、领域包和插件通过公开出口共享作品、素材、页面、制作、运行和宿主契约;各模块定义自己内部使用的执行参数与结果。

@galcraft/contracts/fixtures 提供作品身份、场景、素材元数据、精确依赖、快照和玩家资料等固定逻辑输入。开发者用这些夹具验证 schema 解析、JSON 往返及拒绝规则;领域包和宿主测试使用实际安装、编译、播放或磁盘事务检查对应行为。

源码开发者在仓库根执行 pnpm --filter @galcraft/contracts build 生成 dist/,执行 pnpm --filter @galcraft/contracts test 检查契约。插件作者执行 npm install @galcraft/[email protected] @galcraft/[email protected] 独立安装 SDK,也可使用 tools/plugin-development/distribute-sdk.mjs 准备的 tarball,并从 @galcraft/contracts 导入所需类型或 schema。使用 DSL 解析器的插件另安装匹配版本的 DSL 包。普通浏览器消费者可以直接使用适合浏览器的契约出口;插件开发 CLI 的环境要求见 plugins 包说明。

GalCraft 契约代码使用 MPL-2.0。SDK tarball 随包提供 LICENSE,并在 dist/licenses/project/ 保留许可范围、第三方声明和 LICENSES/SOURCE-CODE.md 源码取得说明。维护者在公开发行时提供匹配版本的源码;使用者按随包许可处理使用、修改及再分发。

版本与发布记录

@galcraft/contracts 共发布 2 个版本,首次发布于 2026/11/01;过去 12 个月发布了 2 个版本。

版本发布日期距今
0.1.0latest2026/11/012 天前
0.0.0-stage2026/11/012 天前

关于 @galcraft/contracts 的常见问题

@galcraft/contracts 是什么?

@galcraft/contracts 提供跨包和宿主边界的线格式类型、Zod schema、具名操作目录与测试夹具。Studio、Player、领域包和插件通过公开出口共享作品、素材、页面、制作、运行和宿主契约;各模块定义自己内部使用的执行参数与结果。

如何安装 @galcraft/contracts?

在项目目录运行 npm install @galcraft/contracts,或使用 pnpm add / yarn add / bun add。

@galcraft/contracts 支持 TypeScript 吗?

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

@galcraft/contracts 支持 ESM 还是 CommonJS?

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

@galcraft/contracts 可以商用吗?

@galcraft/contracts 使用 MPL-2.0 许可。弱 Copyleft:可以商用,也可以和闭源代码一起使用;但如果分发时修改了 MPL 授权的文件,这些文件的修改需以 MPL 开源。以上为概括,不构成法律意见,请以许可原文为准。

@galcraft/contracts 还在维护吗?

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