# @diagc/cli 中文文档

规范地址：https://npmcn.com/package/%40diagc/cli/

版本：1\.9\.0
npm 元数据更新时间：2026-11-01T16:23:20.461Z
中文译文更新时间：2026-11-12T12:38:57.256Z
软件包许可：AGPL-3\.0-only

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

原始 npm 页面：https://www.npmjs.com/package/%40diagc/cli
原文对照：https://npmcn.com/package/%40diagc/cli/?lang=original
项目主页：https://ferroman.github.io/diagc/
源码仓库：https://github.com/Ferroman/diagc

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

- 包体积（解压后）：16.5 MB，2089 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=22
- 运行依赖：6 个
- 首次发布：2026-09-26T12:10:58.091Z
- 最新版本发布：2026-11-01T16:23:20.143Z
- 近 30 天下载量：2521（2026-10-12 至 2026-11-10，npm 官方下载统计）
- 已发布版本数：37（近 12 个月 37 个）

## 中文简介

作者软件-architecture图作为代码,将其编译为被验证的模型,在本地工作室编辑,并发布页面和图像.

## 安装

```sh
npm install @diagc/cli
```

也可以使用：`pnpm add @diagc/cli`、`yarn add @diagc/cli`、`bun add @diagc/cli`

## README

# diagc 数据

图表作为代码,有本地工作室. diagc将寄存于您仓库的图源变成其他人可以打开的东西.

-   **页面和图片.** `diagc publish` 每个图表写一个自成一体的 HTML 页面,和一个 PNG。 在浏览器中页面折叠,缩放和切换视图,后没有服务器. 在 GitHub Pages 、 GitLab Pages 或任何静态主机上主机页面,并将PNG 置入 README 中 .
-   **Diffs在拉请求.** 一个 GitHub 动作对一个拉动请求进行评论,该请求会修改一个图:修改的列表,以及图片的前后.
-   **地方工作室.** `diagc studio` 打开针对您的仓库的浏览器应用程序。 在那里绘制一个图表,工作室将其保存为寄存器中的文件. `diagc eject` 将绘制的图表转换成 TypeScript .
-   **在终点站.** `diagc show` 将图表打印为文本,用于管道或编码代理. `diagc tui` 在您编辑时浏览图表全屏并重新绘制.

图表是您寄存器中的普通文件,所以它们像其它文件一样,进行diff,审查和重构.

```bash
npm i -g @diagc/cli   # or: npx @diagc/cli studio
```

需要节点 22.

## 快速启动

```bash
diagc init shop    # a starter diagram in .diagrams/src/, the .gitignore lines, compiled
diagc studio       # opens the editor, recompiling as you edit
```

`npm i -D @diagc/core` 如果您想要类型和完成 `.diagram.ts` 文件 – CLI 编译它们 .

## 图标

| 命令 | 它会做什么 |
| --- | --- |
| `diagc init` | 设置寄存器: 启动图( S)`--type c4` 用于一个C4 1 `.gitignore` 线条,并带有 `--agents` 编码代理工具指南的指针( :`AGENTS.md` 编号 : `CLAUDE.md`还有克洛德密码技术. |
| `diagc compile` | 编译 `.diagrams/src/**/*.diagram.{ts,json}` 已确认的文物 `.diagrams/.artifacts/`。默认命令. |
| `diagc lint` | 报告所编集的内容,但可能是一个错误——打字、重复、未使用或未提取的部分. `--json` 用于脚本或代理; 1 出口直到清理. |
| `diagc watch` | 编译,然后在每一个变化. |
| `diagc publish` | 写入自定义的 HTML 页面 `.diagrams/html/` 和巴布亚新几内亚 `.diagrams/static/`。 。 。 . |
| `diagc show` | 将一个图表打印为文本:框画字符的框、行和标签,在终端上涂上彩色并用管子平面. `--plane`, (中文(简体) ), `--layers`, (中文(简体) ), `--depth` 财务报告和审定财务报表 `--root` 选择视图, `--ascii` 这些角色. |
| `diagc studio` | 根据当前目录为视觉编辑器服务( 默认) `http://127.0.0.1:5173`) (中文(简体) ). 这里绘制的图表被保存为 `.diagram.json`。 。 。 . |
| `diagc tui` | 浏览终端中的图全屏:折叠并展开,进入一组,切换平面和分层,搜索. 随着源头的变化重新绘制. |
| `diagc eject` | 替换已绘图 `.diagram.json` 生成 `.diagram.ts`,先检查以重建同一模型. |
| `diagc diff` | 在图中绘制两个git refs,或一个 ref和工作树之间的变化:页前和页后和PNG,以及一个摘要. |
| `diagc guide` | 打印如何写出图表:DSL,然后每个图表类型一个话题(`diagc guide c4`) (中文(简体) ). 为编码代理所写,与为人所写一样多. |

`diagc --help` 列出每个命令和旗帜,以及 [CLI 参考](https://ferroman.github.io/diagc/docs/reference/cli.html) 有细节.

PNG 导出驱动器无头 Chrome. 没有一个人, `publish` 写出 HTML 并这样说; `npx playwright-core install chromium` 获得它找到的浏览器, 或点 `CHROME_PATH` 在一个.

## 两种写作方式,一种模式

写一个 `.diagram.ts` 与构建者DSL, 或者画一个在工作室,它写一个 `.diagram.json` 给你的 两者都编译到同一个被验证的模型上,所以一个图从不被困在制作它的工具中. 位置单独存在 `<name>.layout.json`,在不同的diffs中保持意义和坐标.

提交 `.diagrams/src/`。 。 。 . `.diagrams/.artifacts/`, (中文(简体) ), `.diagrams/html/` 财务报告和审定财务报表 `.diagrams/diff/` 正在构建产出 - `diagc init` 给它们取个颜色.

## 文档

网站和现场实例: [https://ferroman.github.io/diagc/ (中文(简体) )](https://ferroman.github.io/diagc/)

完整的文件、教程和模型参考: [https://github.com/费罗曼/迪亚克](https://github.com/Ferroman/diagc)

## 许可证

[仅限AGPL-3.0](https://github.com/Ferroman/diagc/blob/main/LICENSE)第7节 附加许可 : 您的作者, 以及从他们那里创建的页面和图像, 您可以随意许可 。 有商业执照。 见 [项目README](https://github.com/Ferroman/diagc#license)。 。 。 .

## 常见问题

### @diagc/cli 是什么？

作者软件-architecture图作为代码,将其编译为被验证的模型,在本地工作室编辑,并发布页面和图像\.

### 如何安装 @diagc/cli？

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

### @diagc/cli 支持 TypeScript 吗？

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

### @diagc/cli 支持 ESM 还是 CommonJS？

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

### @diagc/cli 需要什么版本的 Node\.js？

package\.json 的 engines 字段要求 Node\.js \>=22。版本不符时 npm 默认只给出警告，开启 engine-strict 后会拒绝安装。

### @diagc/cli 可以商用吗？

@diagc/cli 使用 AGPL-3\.0-only 许可。最严格的 Copyleft：除分发外，通过网络向用户提供基于它的服务也需要开源对应源码。闭源 SaaS 使用前务必评估。以上为概括，不构成法律意见，请以许可原文为准。

### @diagc/cli 的下载量有多少？

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

### @diagc/cli 还在维护吗？

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

