# @codependix/cli 中文文档

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

版本：0\.0\.76
npm 元数据更新时间：2026-11-10T03:13:25.149Z
中文译文更新时间：2026-11-10T07:26:29.927Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40codependix/cli
原文对照：https://npmcn.com/package/%40codependix/cli/?lang=original
项目主页：https://github.com/organizzolini/codebase/tree/main/projects/ic-suite/codependix/codependix-cli#readme
源码仓库：https://github.com/organizzolini/codebase

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

- 包体积（解压后）：86.3 kB，9 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- 运行依赖：12 个
- 首次发布：2026-10-05T00:30:37.953Z
- 最新版本发布：2026-11-10T03:13:24.845Z
- 近 30 天下载量：9278（2026-10-10 至 2026-11-08，npm 官方下载统计）
- 已发布版本数：74（近 12 个月 74 个）

## 中文简介

导出和验证 Nx 、 NestJS 以及文件级别依赖图和边界的命令行工具

## 安装

```sh
npm install @codependix/cli
```

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

## README

# \\\\ 代码平起克

[![npm](https://img.shields.io/npm/v/@codependix/cli?logo=npm&label=npm)](https://www.npmjs.com/package/@codependix/cli)

**作为JSON和Markdown图表输出一个项目的依赖性图表——Nx、NestJS和文件级的导入,并打开这些图表被判断的规则.**

Codependix读取每个项目所依赖的,并使其成为四个方法: Nx 项目图,一个 NestJS 项目的模块图, 一个 TypeScript 项目的自有 文件级导入图,以及 Python 项目本身的文件级导入图. 每个图都送到任何目的地 `codependix.config.ts` 工程名称—— JSON 文件, Markdown 锚 块分解成已有文件, 如 a `README.md`或两者兼有。 一样 然后根据配置规则判断已建图 声明——见 [`@codependix/boundaries`](https://npmcn.com/package/%40codependix/codependix-boundaries/README.md)。 。 。 .

```bash
pnpm add --filter <project> --save-dev @codependix/cli
```

```bash
codependix map --write --config configuration/codependix.config.ts
```

## 使用量

一个命令, `map`,没有每个图型子命令。 哪个图表运行于 a 哪个规则判断它完全是一个 函数,每个运行名称 `--config` 因为没有搜索,也没有默认 [`configuration/codependix.config.ts`](https://npmcn.com/configuration/codependix.config.ts) 为这个仓库自己.

| 旗帜 | 含义 |
| --- | --- |
| `--check [check]` | 无法使用从 `boundaries` 财务报告和审定财务报表 `reports` |
| `--config <config>` | **要求.** 密码平分配置文件路径 。 关闭它失败运行, 命名旗帜; 没有搜索 |
| `--dependencies` | 构建 `--check boundaries` 项目的依赖性 `--projects` 或者说 `--tags` 名称,将其发现作为注释(默认)报告。 没有效果 `--projects` 或者说 `--tags` |
| `--no-dependencies` | 构建 `--check boundaries` 仅限项目 `--projects` 或者说 `--tags` 名称,而不是他们的依赖。 没有效果 `--projects` 或者说 `--tags` |
| `-d, --directory [directory]` | 工作空间根, 其 Nx 工程图显示此运行 。 工作目录的默认值 |
| `--exclude [exclude]` | 逗号分隔了已配置的软块 `exclude`。当 `exclude` 从未配置 |
| `--file-imports` | 构建、检查和写入 `fileImports` 此运行的图表类型 |
| `--no-file-imports` | 跳过 `fileImports` 此运行的图表类型 |
| `-f, --format [format]` | 要打印到标准输出, 其中一个 `json` 财务报告和审定财务报表 `markdown` (默认 : `markdown`) (中文(简体) ). 只有在运行也为其配置了一个工作空间目的地时,一个图表类型才会打印出来,即使它自己的切换旗启用了它. A 类 `--check boundaries` 运行后添加其调查结果,列在 `boundaries` 键入 `json` (单位:千美元) `Boundaries` 节 `markdown` |
| `--include [include]` | 逗号分隔了已配置的软块 `include`。当 `include` 从未配置 |
| `--json-output [jsonOutput]` | 将每个活动图类型的数据写入,在此路径上合并成一个JSON文件,由图类型名键入. 类型仅在运行同时为其配置工作空间目的地时才会出现 。 A 类 `--check boundaries` 运行中将结果添加到 a `boundaries` 键 |
| `--markdown-output [markdownOutput]` | 在这条路径上, 将每个激活的图类型的图 合并成一个 Markdown 文件 。 类型仅在运行同时为其配置工作空间目的地时才会出现 。 A 类 `--check boundaries` 运行中添加其结果为 `Boundaries` 节 |
| `--nestjs-modules` | 构建、检查和写入 `nestjsModules` 此运行的图表类型 |
| `--no-nestjs-modules` | 跳过 `nestjsModules` 此运行的图表类型 |
| `--nx-projects` | 构建、检查和写入 `nxProjects` 此运行的图表类型 |
| `--no-nx-projects` | 跳过 `nxProjects` 此运行的图表类型 |
| `--projects [projects]` | 以逗号分隔的项目名称或根来导出,作为 globs, 以超越 `include` 已选择 。 还将工作空间图缩小到命名的集,以及 `--check boundaries` 仅根据指控它的调查结果而失败 |
| `--tags [tags]` | 逗号分隔 要导出 Nx 标记, 超出 `include` 已选择 。 缩小工作空间图和 `--check boundaries` 对标记的项目,如 `--projects` 已经 |
| `--write` | 写入每个配置的导出 |

### 两者 `--check` 名称

`--check` 搜索失败的名称, 因为这两个结果属于 在拉力请求的对面.

| `--check` 价值 | 运行失败的 |
| --- | --- |
| `boundaries` | 一个边缘,或者一个循环,打破一个公开的规则 |
| `reports` | 配置的目的地不再持有新运行将写入的内容 |

边界侵犯是由分支造成的 并由分支固定,所以 门每个拉取请求,一次一个工程——看 [每个项目的大门](https://npmcn.com/package/%40codependix/cli/#readme-the-per-project-gate)。与 它描述的工作空间,并且会让每个改变工程的分支失败 而非分支本身所做的任何工作,所以在 默认的分行和门都没有。 那也是一样 [`callidescope`](https://npmcn.com/package/%40codependix/callidescope-cli/README.md) 之间 `--check depth` 财务报告和审定财务报表 `--check reports`,以及 `reports` 故意在两种文字中拼写相同: 这是相同的发现, 和两个名字 它会使两份报告 无法读取在一起.

-   `--check boundaries` 没有读到目的地,写什么,所以它离开 每一个承诺出口 完全按照它发现的.
-   `--write --check boundaries` ——边界没有目的地 t.
-   `--write --check reports` 拒绝 : 导出无法在运行中 stale 刚刚写的.
-   一个赤裸的 `--check`,或其价值仅为分离器的,被拒绝。 读取为 "门什么也没有" 它会是一个不能失败的大门, 这比没有更糟糕 门是因为它看起来像保护.

### 哪个工程找不到边界

每项发现都记入属于以下项目: 每个项目都有一个节点 禁止拥有它的边缘 源代码,是文件或 NestJS 级别查找到其图表的项目 和无法启动该集装箱项目的集装箱——其 当堆栈时, 信件指定拥有它失败的类的项目 显示另一个.

`--projects` 财务报告和审定财务报表 `--tags` 将项目命名为运行中的评委。 图形构建 以及他们所依赖的一切 运行失败时, 只能从指定项目中收费 。 一个只收取到 a 依赖性记录为“在依赖性中”,而不失败: 被命名的项目是建立在它的上, 但这不是该项目的修复. `--no-dependencies` 仅靠指定项目建设。 没有旗帜 每个项目都经过评判。 A 类 `--projects`编号 :`--tags` 选择不匹配 工程——拼写错误的名称、无人携带的标签或工作空间 root —— 被拒绝作为拒绝的命令行, 而不是作为门运行 没有判断力.

### 当没有命名模式时

没有命名 `--check` 也没有 `--write` 被问到,作为三个项目菜单—— `boundaries`, (中文(简体) ), `reports`, (中文(简体) ), `write`。 。 。 .

没有旗子可以关闭提示, 因为没有什么可以打开的 关闭无法回答的地方 : 运行失败, 其标准不是终端 立即命名它想要的旗帜,而不是绘制菜单. 那个 拒绝是负载而不是防御性的—— `prompts` 不失败于 a 非致命的结节。 它使菜单,永远不会解决,让过程 退出 0, 这将将一个忘记模式旗的脚本运行变成 默默地成功,却无所写. 取消终端的菜单 报告的方式与拒绝的命令行相同,而不是崩溃.

没有任何模式可以推断,这是规则 `codometer`还有.. `callidescope`旗帜也跟着来.

在Nx工作区,门是每个项目 `codependix-bound` 目标,以及 出版是整个工作区唯一的 `write` 运行。 这个仓库的 `guard-code` 在每次拉动请求中达到第一个,其发布工作流程运行 默认分支的第二个:

```bash
nx run <project>:codependix-bound
nx run configuration:codependix:write
```

一个项目失败 —— 缺少锚, 或者 NestJS 项目失败 启动其集装箱——据报道,其他集装箱没有停止: `--write` 无论是 完全成功, 或确切指定哪些项目在完成时失败 每一个其他的.

### 每个项目的大门

`--check boundaries --projects <name>` 是一个项目的大门,不需要 任务执行者. [`@codependix/nx`](https://npmcn.com/package/%40codependix/codependix-nx/README.md) 推断它是一个 Nx 工作空间作为缓存 `codependix-bound` 每个项目的目标 工作空间根, 所以 `nx affected -t codependix-bound` 选择工程 a 已触动更改和失败名称 一个全工作空间的任务。 目标宣布没有配置, 所以 `guard-code --configuration=check` 发生违约,因为 `callidescope-restrict` 已经.

出版在全工作空间停留: 1 `--write` 运行生成每个项目的 锚块,必须反映一个承诺,所以 `configuration:codependix` 实值 `write`\- 仅且不属于 `guard-code`。 。 。 .

### 输出到哪里

印刷和交付是分开的. `--format` 决定什么达到标准 输出; 目的地在 `workspace` 组合和 `--json-output`编号 :`--markdown-output` 决定什么到达文件.

Markdown是控制台默认值,因为它是一个在读取 终端和粘贴成一个问题. `--format json` 用于机器读取 标准输出,所以每个诊断都到标准出错——保持标准 输出清洁和可解析为数据.

### 边界报告

`--check boundaries` 将其结果日志为标准错误,并给出 `--format`, (中文(简体) ), `--json-output`,或 `--markdown-output`,并把它们打印成 报告:a `boundaries` 在JSON中键,并作为 `### Boundaries` 节 马克倒地。 A 类 `--check boundaries`\- 只运行,不输出任何东西,打印只是 报告;一项出口也包含在一份文件中。 没有 这些旗帜中,只有边框的运算不显示任何字迹,还有运算 导出时的图表与以前完全一样.

JSON持有 `judgedProjects` (其结论失败的项目), `violations` (单位:千美元)`level`, (中文(简体) ), `rule`, (中文(简体) ), `message`, (中文(简体) ), `source`, (中文(简体) ), `target`, (中文(简体) ), `cycle`,则 收费 `projects`,则a `verdict` 联 合 国 `fail` 或者说 `note`和 `failures` (单位:千美元)`level`, (中文(简体) ), `error`,指控 `projects`,一个 `ownerProject` 当失败时 代码属于另一个工程,和 a `verdict`A级 `note` 是发现 生活在一个被判断的项目的依赖中,不会失败运行。 这个 Markdown列出了他们收取的每个项目下的相同结果,a 标记为未失败.

调查结论由谁负责,每个案件都有报告 印数,以四个例子表示: [周期](https://npmcn.com/package/%40codependix/codependix-examples/examples/boundary-cycles/README.md), (中文(简体) ), [禁止的边缘](https://npmcn.com/package/%40codependix/codependix-examples/examples/boundary-forbidden-edges/README.md), (中文(简体) ), [两者之一的附属关系](https://npmcn.com/package/%40codependix/codependix-examples/examples/boundary-dependency-notes/README.md), (中文(简体) ), 财务报告和审定财务报表 [无法启动的容器](https://npmcn.com/package/%40codependix/codependix-examples/examples/boundary-boot-failures/README.md)。 。 。 .

## 软件包

| 软件包 | 作用 |
| --- | --- |
| [`@codependix/cli`](https://npmcn.com/package/%40codependix/cli/) | 管弦乐四幅图的建造者并交付其出口 |
| [`@codependix/boundaries`](https://npmcn.com/package/%40codependix/codependix-boundaries/README.md) | 为工作空间构建每个层次的图表,根据宣布的规则判断,并报告打破规则的情况. `--check boundaries` 代表批发 |
| [`@codependix/configuration`](https://npmcn.com/package/%40codependix/codependix-configuration/README.md) | 读取 `codependix.config.ts` 并解决每个项目的出口目的地和边界规则 |
| [`@codependix/examples`](https://npmcn.com/package/%40codependix/codependix-examples/README.md) | 21个主题被绘制成图,每个主题都带有指南 代码endix制作从它 |
| [`@codependix/nx`](https://npmcn.com/package/%40codependix/codependix-nx/README.md) | Nx 插件: 推断每个项目 `codependix-bound` 运行的目标 `--check boundaries` 超过项目及其 Nx 依赖性 |
| [`@codependix/nx-projects`](https://npmcn.com/package/%40codependix/codependix-nx-projects/README.md) | 构建工程的 Nx 邻接和整个工作空间 |
| [`@codependix/nestjs-modules`](https://npmcn.com/package/%40codependix/codependix-nestjs-modules/README.md) | 探索雀巢JS项目的容器并构建其模块图 |
| [`@codependix/file-imports`](https://npmcn.com/package/%40codependix/codependix-file-imports/README.md) | 构建工程的文件级导入图 — a `typescript` 模块走自己的 `ts.Program`,则a `python` 模块解析 `import`编号 :`from ... import` 声明 |

## 代理技能

编码代理的代理技能发布于 [`@codependix/agents`](https://github.com/Organizzolini/codebase/tree/main/projects/ic-suite/codependix/codependix-agents)数字 :

| 技能 | 说明 |
| --- | --- |
| [`codependix-export`](https://github.com/Organizzolini/codebase/tree/main/projects/ic-suite/codependix/codependix-agents/skills/codependix-export) | 导出依赖性图表并运行边界检查 |
| [`codependix-configure`](https://github.com/Organizzolini/codebase/tree/main/projects/ic-suite/codependix/codependix-agents/skills/codependix-configure) | 配置图表类型、导出目的地和边界规则 `codependix.config.ts` |
| [`codependix-navigate`](https://github.com/Organizzolini/codebase/tree/main/projects/ic-suite/codependix/codependix-agents/skills/codependix-navigate) | 查询依赖路径并导航软件包关系 |
| [`codependix-triage`](https://github.com/Organizzolini/codebase/tree/main/projects/ic-suite/codependix/codependix-agents/skills/codependix-triage) | 破坏边界并报告漂移情况 |

## 实例

上面描述的每一个行为, 和每一个没有,因为它活着 至今为止,只有JSDoc的评论中, 才有由真实的 工具输入 [`@codependix/examples`](https://github.com/Organizzolini/codebase/tree/main/projects/ic-suite/codependix/codependix-examples)数字 :

-   [读取](https://github.com/Organizzolini/codebase/tree/main/projects/ic-suite/codependix/codependix-examples) ——每个示例一个目录 可自行读取,并配置第一个出口目的地和采用 在工作区没有锚地
-   [一般事务人员(其他职等)](https://github.com/Organizzolini/codebase/tree/main/projects/ic-suite/codependix/codependix-examples/AGENTS.md) - 一个"代码"说X - 打开 这个例子"表, 加权到拒绝和 `--check` 停滞

## 开始

```bash
nx run codependix-cli:start
```

## 测试

```bash
nx run codependix-cli:vitest
```

## \* 调和

这个项目源于 [巢js - 命令 - 项目](https://npmcn.com/configuration/conformetry-templates/nestjs-command-project) 符合模板.

## 常见问题

### @codependix/cli 是什么？

导出和验证 Nx 、 NestJS 以及文件级别依赖图和边界的命令行工具

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

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

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

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

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

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

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

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

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

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

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

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

