# @cyaxis/ulvia 中文文档

规范地址：https://npmcn.com/package/%40cyaxis/ulvia/

版本：1\.0\.12
npm 元数据更新时间：2026-11-08T13:55:26.001Z
中文译文更新时间：2026-11-11T09:53:21.793Z
软件包许可：MIT

本文由上游 README 翻译，可能存在偏差，请结合原文核对 API、命令与配置。版权与许可归原作者所有。

原始 npm 页面：https://www.npmjs.com/package/%40cyaxis/ulvia
原文对照：https://npmcn.com/package/%40cyaxis/ulvia/?lang=original

## 关键信息（来自 npm 元数据）

- 包体积（解压后）：2.2 MB，14 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- 运行依赖：2 个
- 首次发布：2026-10-25T09:16:06.773Z
- 最新版本发布：2026-11-08T13:55:25.837Z
- 近 30 天下载量：2329（2026-10-11 至 2026-11-09，npm 官方下载统计）
- 已发布版本数：13（近 12 个月 13 个）

## 中文简介

Ulvia CMS安装并发布CLI.

## 安装

```sh
npm install @cyaxis/ulvia
```

也可以使用：`pnpm add @cyaxis/ulvia`、`yarn add @cyaxis/ulvia`、`bun add @cyaxis/ulvia`

## README

# 乌尔维亚CLI

乌尔维亚安装并发布CLI.

操作员从新的 Ubuntu 主机到运行中的本地或公众的行程 现场,跟着 [犬类安装指南](https://npmcn.com/package/%40cyaxis/ulvia/INSTALLATION.md)。 。 。 .

工作空间软件包包含私人源代码. 官方发布是 无工作空间依赖性捆绑并公开发布为 `@cyaxis/ulvia`数字 :

```bash
bun add --global @cyaxis/ulvia@latest
ulvia --help
```

从工作空间, 构建并发布一个精确的发布内容 :

```bash
bun run cli:build --version 0.0.3 --stack-version 0.0.1-beta
bun run cli:publish --version 0.0.3
```

该建筑创建了已检查的 npm 归档和下面的 SHA-256 接收 `artifacts/cli`。 CLI 软件包版本及其相容的初始多克堆栈 版本是独立的,两者都被封入该收据. 出版 仅接受精确的对,针对公共 npm 注册,并使用 `next` 预释放标记或 `latest` 稳定版本。 这需要npm 在仓库外配置证书.

```bash
bun run ulvia -- configure network
bun run ulvia -- services start --version 0.0.1-beta
bun run ulvia -- services status
bun run ulvia -- instance create preview --label "Preview site"
bun run ulvia -- instance list
bun run ulvia -- instance credentials preview
bun run ulvia -- instance stop preview
bun run ulvia -- instance delete preview --yes
bun run ulvia -- services stop
bun run ulvia -- upgrade edge --version 0.0.1-beta
bun run ulvia -- upgrade provider --version 0.0.1-beta
bun run ulvia -- reset --yes
bun run ulvia -- release ./my-collection
bun run ulvia -- release /path/to/contract-directory
bun run ulvia -- release /path/to/provider-directory
bun run ulvia -- push contract ulvia/cms.installations@1.3.0 --repository https://repository.example
bun run ulvia -- pull collection example/ui@1.0.0 --repository https://repository.example
bun run ulvia -- yank collection example/ui@1.0.0 --repository https://repository.example --reason "Superseded"
bun run ulvia -- restore collection example/ui@1.0.0 --repository https://repository.example
bun run ulvia -- prune
```

`example/ui` 是一个假设的集合,需要作者和明确出版; 没有捆绑正式的启动收藏 .

上面的堆栈版本是一个准确被公布的图像标记的例子. 工作空间 源代码没有嵌入的初始堆栈版本: 其第一个 `services start` 需求 `--version`。包件释放在构建时嵌入默认值。 再见 开始重用安装的文摘。 建筑工作空间源不替换 运行图像或升级已安装的收藏.

生命周期命令管理相同的 Docker 编译项目,用于回转和 任何目录中的公共设施。 持久性 数据寿命低于 `$XDG_DATA_HOME/ulvia` 或者说 `~/.local/share/ulvia`· ; `ULVIA_DATA_DIR` 仍然是测试和CI的明显隔离。 这个 CLI 存储撰写的发布 `<data>/repository`共享提供者, MongoDB, 代理, 文件, 秘密和日志在下面直播 `<data>/services`; 每个 无国籍的边缘有独立的状态和下面的日志 `<data>/instances/<name>`。 。 。 . CLI 从未启动应用程序服务器、 监督其 PID 或构建 软件图像。 它只把 犬形的公众图像拉到下面 `docker.io/cyaxis`,验证其Ulvia组件和堆栈-API标签,以及 存储为每个组件选择的不可移动寄存器文摘.

第一个生命周期命令创建安全安装配置 `127.0.0.1:5100`。在创建实例前配置公众曝光:

```bash
ulvia configure network \
  --bind 0.0.0.0 \
  --http-port 80 \
  --tls acme \
  --https-port 443 \
  --acme-email ops@example.com
ulvia start
ulvia instance create website --domain example.com
```

配置一直维持在 `<data>/services/installation.json` 财务报告和审定财务报表 不是每次启动模式。 要求 `0.0.0.0` 和每一次在ACME中 安装需要一个明确的DNS域. 网络配置已锁定 在一审之后,因为它的犬形边缘URL是提供者的一部分 供养. 提供者操作员端口仍然只循环;存储实例是 通过自己的Edge和共享代理曝光.

`services start` 只启动共享代理、 MongoDB 和 提供方 . 在第一次初始化时,它使用由 `cli:build`,或 明确 `services start --version <version>` 超过。 稍后开始再使用 已逝去的教诲,和已逝去的教诲 `--version`; 组件变化 必须经过 `upgrade`。 。 。 . `instance create` 一个孤立的供应商租户,并立即开始 其奉献的边缘. `instance start` 只重新启动已经提供的 这是Edge。 所有边缘使用共享代理端口:一个实例命名 `default` 备查 `http://default.localhost:5100`,而这种情况 作为 `preview` 用途 `http://preview.localhost:5100`。 。 。 . `ULVIA_HTTP_PORT` 财务报告和审定财务报表 `ULVIA_PROVIDER_PORT` 提供 测试和CI初始隔离默认值. 交互式配置属于 改为 `ulvia configure network`. 提供方仍在它的舟口上听 私人多克网络内部的5103;只有主机上的操作端口 变化. `start` 是共享服务的同位素便利命令加每个 以前创建过本地实例; 从未创建过隐含实例.

生命周期边界是故意的:

一个仓库是一个普通的CMS实例:

```bash
ulvia services start
ulvia instance create registry
ulvia instance status registry
ulvia instance credentials registry
```

打开它 `/.cms/setup`,并选择 **新仓库**。另一个 按钮接受存储地址或选择 `https://repo.ulvia.fr`。 。 。 . 创建安装系统 API 和管理员, 并且没有收藏 页. 仓库设置属于此实例; 没有 `--profile`, (中文(简体) ), `upgrade-profile`,或共享仓库环境设置。 变化来源 保存已安装的针头。 空地可以完成下线设置.

`upgrade provider --version VERSION` 用保留取代共享图像 在启动失败时检查和回滚。 安装资源和证书 保留在供应商储存中;明确的合同/收集升级使用 允许的工作流程。 书记官处不需要单独的图像、服务或端口.

`repository login URL` 验证仓库身份并保存共享的 CMS PAT 通过 `ULVIA_REPOSITORY_TOKEN` 或者说 `--token-stdin`常规 仓库账户可要求命名空间,无需CMS管理员即可发布 特权。 登录同时标出来源和仓库身份; 写入拒绝 重定向和身份改变。 日志删除连接并保存 PAT 而不撤销远程标志.

客户端配置 `$XDG_CONFIG_HOME/ulvia/config.json` 或者说 `~/.config/ulvia/config.json`文件使用模式 0600, 目录 0700. `ULVIA_CONFIG_DIR` 超过该位置; `ULVIA_DATA_DIR` 单独隔离 客户端配置 `<data>/config`。命名空间、账户、上传和 释放属于他们的 CMS 实例的提供者存储。 启动从未声称 或重新指定命名空间。 见 [安装指南](https://npmcn.com/docs/installation/README.md#9-repository-cms-instance) 财务报告和审定财务报表 [仓库建筑](https://npmcn.com/docs/architecture/community-repository.md)。 。 。 .

| 命令 | 供应商租户 | 边缘容器 |
| --- | --- | --- |
| `services start` | 不创建一个 | 不启动一个 |
| `instance create <name>` | 永久性租户 | 创建并启动其边缘 |
| `instance start <name>` | 重新使用现有租户 | 只从边缘开始 |
| `start` | 从不提供 | 共享服务后启动每个已存在的边缘 |

`instance credentials <name>` 只打印管理员的电子邮件和 密码 提供商和实例无记名证留在 私人运行时间文件 。 共享服务,每个实例都有独立 `stop`, (中文(简体) ), `status`,以及 `logs` 边框。 软件升级是明确的 通过组件范围 `upgrade <component> --version <exact-version>`。 。 。 . 正常开始总是重用所安装的文摘,并且永远不要跟随更新的标签. 第一个启动验证缓存的精确版本图像, 下载只缺失 图像。 明确升级仍能拉出要求的标记. `reset --yes` 创建工程、实例、共享状态和本地寄存器 包括由当地供应商托管的账户。 独立部署 存储器和CLI所保存的存储器连接被保存. 没有 检查或修改当前工作目录. `release <resource-directory>` 接受一个可信任的本地 `ulvia.release.ts` 条目 或读 `definition.json` 和路线 `kind`数字 : `collection`, (中文(简体) ), `contract`,或 `provider-manifest`它验证并存储一个 不可改变的释放。 供应商清单必须确切注明合同解除 已经存在于本地仓库中。 释放不连接或测试提供者. `release <directory> --recursive` 发现下方的作者资源根 文件夹,在嵌入 Bloc 定义前停止。 它命令合同由 然后编写提供者清单和收藏依赖. 现有的本地依赖性被再用. 来源录取发生 在存储任何资源之前; 每项资源单独承诺, 所以 存储或出版冲突可留下部分批次。 重试相同 释放是一能的。 重复坐标和符号链接被拒绝. 发现范围为256个资源、4096个目录和32个目录级别; 已准备的犬形字节和资产被限定为512 MiB. `push` 仍为 明确的单独命令.

```bash
ulvia release infra/releases
bun run release:official
# Equivalent SDK source entry:
ulvia release infra/releases
```

官方大楼使用可信赖的本地建筑 `ulvia.release.ts` 输入所有 SDK 特性、表列索赔和拖带共用相同的清单和编译器。 见 [SDK 工作流程](https://npmcn.com/docs/development/sdk-releases.md) 对于明确版本, 源模块规则并生成运行时间附件 .

申报的合同固定资产 `definition.json` 改为: `fixtures/<asset-id>` 并通过文摘核实。 与 不同内容失败。 本地释放存储是一个私有的 CLI 缓存, 不是 HTTP 服务器. `push` 将其发布到已配置的 CMS 仓库; 其公开 允许的目录和下载使用情况 `ulvia/repository` 约束 `/.cms/call/ulvia/repository`CMS的安装和供应商的管理 消耗这些公共来源. `prune` 空出本地缓存而不删除 服务或实例数据.

合同作者只能将元数据保存在 `definition.json` 拆分时 能力递归以下 `capabilities/`每个能力都是JSON 对象。 可选 `mocks/**/*.json` 片段包含一个模拟器及其显式 `capabilityId`;模拟嵌入能力碎片拒绝. 编译器 那种能力 和嘲笑 他们宣布的ID, 所以路径永远不会影响 不可改变的文摘. `definition.json` 无法包含内含 `capabilities` 此 JSON 源格式中的数组。 SDK 特性代替使用 `defineFeature` 财务报告和审定财务报表 明确的能力/模具,产生相同的允许释放格式.

`push <publisher/id@version>` 从本地缓存释放中推断出这种类型。 如果 多个目录中都有同样的坐标,请具体说明 `push contract`, (中文(简体) ), `push collection` 或者说 `push provider` 解决歧义. `pull` 还没完呢 一个明确的类型 下载 并重新输入一个准确的坐标 本地.

`push all` 独立地发布本地缓存中的所有非锁定发布 工作目录。 它命令合同继承, 然后是提供者和已知的本地收藏依赖。 所有文物和每件 namespace 的账户所有权在第一次上传前检查 。 无命名空间 没有可用账户证书的释放不会默默跳过. 远程拒绝或转移失败停止批次; 已完成 出版物仍然可见。 重复命令调和相同的释放 并恢复其余部分。 接收仓库仍然验证依赖性 所有不可改变的文物 单次推进,需要转移 依从相先.

```bash
ulvia push ulvia/cms.emailer@1.0.0
ulvia push all
```

`repository login` 保存默认终点; `--repository` 财务报告和审定财务报表 `ULVIA_REPOSITORY_URL` 仍为已明确取消。 每个保护请求的使用 来源/身份限制的PAT。 上传绑定账户、命名空间和所有权 修改; 转移或撤销防止未经授权的继续。 出版物 重新运行录入和进化规则, 串行资产, 验证字节 长度和SHA-256摘要,使文物最后可见. 精确重试 是同位素; 不同的字节, 在一个现有的坐标拒绝.

协议和精确坐标客户端生活在 `@bernouy/repository/repository/publication`. 编写《加拿大国际日报》和《加拿大国际日报》 共同执行这些客户。 官方提供商构成域名 明确启用仓库实例的服务和持久性;边缘 曝光选中的合同 。 仓库使用普通的CMS能力和账号PAT.

`yank` 是可逆目录元数据: 它隐藏了新目录的发布 解析而不删除其确切的历史字节. `restore` 揭露出来 再来一次 雇用的ANKs 封锁新的依赖性出版物 已公布的供应商名单仍可读取.

收藏以递归地块保存不可改变的管理副本 类似目录 `translations/en/collection.json` 财务报告和审定财务报表 `translations/en/theme/colors.json`。下面每个 JSON 对象 `translations/<locale>/` 帮助该地方的平面目录. Collection, Bloc, 设置, 文本, 主题和示例元数据存储 这些目录的可重复使用的密钥,而不是内含标签。 可能发生密钥 每个地方只有一块 收藏区域必须定义每个 引用密钥; 附加的地语目录可能是部分的, 并返回到 这个.

收藏主题作为命令文件集编写 。 内容 `theme/definition.json` 包含主题标签密钥和命令列表 类别标识。 分类文件可依次排列如下 `theme/`; 数据 扫描仪从内部找到它们 `id`,虽然清单仍然是唯一的 显示顺序的来源 。 类别文件名必须匹配其ID, 重复的ID 和孤儿文件拒绝,并且分类/调用元数据使用共享翻译 键。 类别使用a `entries` 包含普通符号和可选的数组 类型 `font-face` 由本地 WOFF2 资产支持的条目.

收集资产在下文循环发现 `assets/`; 它们的小写 相对路径是他们的稳定身份。 藏品中没有申报 `definition.json`。可选根 `assets/definition.json` 只接受一个 `deprecations` 由这些路径键入的对象。 编译器获得媒体类型, 大小与文摘. 仅安全演示文稿 SVG 文件接收 `inline-svg` 配置自动; 其他 SVG 仍然是可下载资产, 但不能是 扩展为作者 Page DOM.

收集文本使用递归 `texts/definitions/**/*.json` 稳定阵列 身份证和行政元数据,加递归 `texts/locales/<locale>/**/*.json` 内容值的对象。 释放 命令将它们合并为普通的收藏文本记录。 路径从不前缀a 文本 ID; 重复定义、 重复每个本地值和未知值 ID拒绝.

块根在下方递归被发现 `blocs/`文件夹变为 Bloc 当它包含 `definition.json`,其基名必须与已声明的 Bloc 相匹配 身份证,发现就停止了 `settings/definition.json` 永远不要弄错 为了一个被窝住的布洛克 中间分组目录只包含目录 并且不影响释放身份.

制作者图像捆绑系统合同和文件 和提供人名单,没有授权收款或启动资产。 一个 不完全的快照明显失败; 拖曳不返回网络 . 重新启动保存已有的账户、命名空间所有权和已编辑的页面 重新开放其持续执行的现成实例。 只生成 API 从 SDK 特性目录中获取的快照:

```bash
bun run generate:official-bootstrap
```

此命令既不发布给运行中的仓库, 也不升级已有的仓库 举个例子 藏品仅由明确供应者建造和出版 源; 此命令中没有启动收藏. 个人手册,使用 `release` 按抚养顺序排列: 专业前的精确母合同,然后提供商列出和收集依赖. 出版、系统安装过渡、收集升级和集装箱 图像替换仍然是单独的动作.

`instance create` 通过提供者操作提供指定实例 API,然后开始它的边缘。 连接审查验证运行时间报告 完全明确的说法。 供应商的行为由实施自主测试覆盖.

正式发布独立演变:目前的设施合同和 提供者的明显使用 `1.3.0`; 保留本地格式 `v1`提供收藏品 由他们的作者改编. 每个命名实例都使用 `<name>.localhost` 除非提供明确的域; `default` 是一个普通的名字。 仓库主机使用 CMS 实例 书记官处的安装。 客户端 PAT 连接和本地释放缓存 与共享服务和实例生命周期分开.

## 收集实例

`ulvia preview <collection-directory> --output <new-directory> [--dependency <directory>] [--locale <locale>] [--theme-mode <light|dark>] [--no-screenshots] [--serve]` 导出收藏示例框架、生成的 PNG 、 一个交互式本地探索器和一个 出处表 屏幕截图需要 Playwright Chromium 浏览器 (单位:千美元)`bunx playwright@1.64.1 install chromium`) (中文(简体) ). 依赖性和所需合同 明确从本地来源/缓存中解析;预览从不发布。 见 [收藏实例](https://npmcn.com/docs/blocs/examples.md) 用于源格式和发布格式.

## 常见问题

### @cyaxis/ulvia 是什么？

Ulvia CMS安装并发布CLI\.

### 如何安装 @cyaxis/ulvia？

在项目目录运行 npm install @cyaxis/ulvia，或使用 pnpm add / yarn add / bun add。它还提供命令行工具 ulvia，可以用 npx ulvia 直接运行。

### @cyaxis/ulvia 支持 TypeScript 吗？

该包的 package\.json 没有声明类型入口。需要类型提示时，可以在 npm 上查找社区维护的 @types/cyaxis\_\_ulvia 是否存在。

### @cyaxis/ulvia 支持 ESM 还是 CommonJS？

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

### @cyaxis/ulvia 可以商用吗？

@cyaxis/ulvia 使用 MIT 许可。宽松许可：允许商业使用、修改和再分发，通常只需在分发时保留原版权与许可声明。以上为概括，不构成法律意见，请以许可原文为准。

### @cyaxis/ulvia 的下载量有多少？

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

### @cyaxis/ulvia 还在维护吗？

最新版本 1\.0\.12 发布于 2026/11/08（2 天前）；至今共发布 13 个版本，其中过去 12 个月发布了 13 个；首次发布于 2026/10/25。发布频率只是参考信号：功能稳定的工具可能很少需要更新，建议结合源码仓库的 issue 和提交记录判断。

