# @chatluna/patchbay 中文文档

规范地址：https://npmcn.com/package/%40chatluna/patchbay/

版本：0\.1\.11
npm 元数据更新时间：2026-11-09T13:40:56.765Z
中文译文更新时间：2026-11-09T18:00:50.069Z
软件包许可：MIT

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

原始 npm 页面：https://www.npmjs.com/package/%40chatluna/patchbay
原文对照：https://npmcn.com/package/%40chatluna/patchbay/?lang=original
项目主页：https://github.com/ChatLunaLab/patchbay#readme
源码仓库：https://github.com/ChatLunaLab/patchbay

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

- 包体积（解压后）：146 kB，28 个文件
- 模块格式：ES Module
- TypeScript 类型：包内自带
- Node.js 要求：\>=20
- 运行依赖：2 个
- 首次发布：2026-11-03T11:57:20.411Z
- 最新版本发布：2026-11-09T13:40:56.513Z
- 近 30 天下载量：2029（2026-10-10 至 2026-11-08，npm 官方下载统计）
- 已发布版本数：13（近 12 个月 13 个）

## 中文简介

用于 Koishi 、 Satori 、 Satori 适配器和 Cordis 插件的 Cordis 4 补丁, 线接入纱线、 pnpm 或 npm

## 安装

```sh
npm install @chatluna/patchbay
```

也可以使用：`pnpm add @chatluna/patchbay`、`yarn add @chatluna/patchbay`、`bun add @chatluna/patchbay`

## README

# 补丁

运行 Koishi 、 Satori 、 Satori 适配器和一些 Cordis 插件的补丁 **科尔地斯 4**,保存在一个地方,并用一个命令将线接入纱线,pnpm或npm.

每个补丁都针对一个准确的上游版本,列于 [`patchbay.json`](https://npmcn.com/package/%40chatluna/patchbay/patchbay.json)。没有重新发布:您的软件包管理器安装上游柏油球并应用此软件包的补丁.

## 使用

```sh
npm i -D @chatluna/patchbay      # or yarn add -D / pnpm add -D
npx patchbay sync                # writes .patchbay/ and the package-manager config
npm install                      # or yarn install / pnpm install
```

提交 `.patchbay/` 与配置组合 `sync` 写作。 运行 `patchbay sync` 在升级了补丁字后再次出现。 它取代了上一个版本所写的每根针.

| 软件包管理器 | 什麽 `sync` 写入 | 当补丁适用时 |
| --- | --- | --- |
| 亚伦 2+ | `resolutions` → `patch:<pkg>@npm:<version>#~/.patchbay/<pkg>@<version>.patch` | 安装时 |
| 页:1 | `pnpm-workspace.yaml`数字 : `overrides`, (中文(简体) ), `patchedDependencies`, (中文(简体) ), `allowUnusedPatches` | 安装时 |
| 无 | `overrides`直接依附于同一种类, `postinstall: patchbay apply` | 安装后, 设置 |

`sync` 从 `packageManager`,然后是锁文件,然后是运行它。 过 `--pm yarn|pnpm|npm` 自己选择 Yarn 1没有补丁支持,被拒绝.

每个被补丁的包被固定在其被补丁的版本上,连同这些别名:

-   `koishi` → `@koishijs/core`
-   `minato` → `@cordisjs/plugin-database`

一个后来安装其中之一的插件得到补丁构建.

在npm时, `patchbay apply` 保存它在每个软件包中应用的补丁的副本(`.patchbay.patch`) (中文(简体) ). 它跳过已经流过的软件包,并在应用更新的软件包之前取消更旧的补丁 .

### 从代码

```ts
import { apply, sync } from '@chatluna/patchbay'

const pm = sync(projectDir) // 'yarn' | 'pnpm' | 'npm'
// ...run the install...
if (pm === 'npm') apply(projectDir)
```

## 维护

```sh
yarn refresh edit <name>     # unpack upstream to .work/<pkg>/{a,b}, current patch applied to b
# edit .work/<pkg>/b
yarn refresh commit <name>   # diff a → b into patches/<pkg>@<version>.patch
yarn verify                  # every patch applies to its upstream tarball
yarn test                    # unit tests plus real yarn, pnpm and npm installs
```

要补齐新软件包或版本,请将其条目添加到 `patchbay.json`运行 `yarn refresh edit <name>`做出改变,然后承诺.

## 许可证

麻省理工学院

## 常见问题

### @chatluna/patchbay 是什么？

用于 Koishi 、 Satori 、 Satori 适配器和 Cordis 插件的 Cordis 4 补丁, 线接入纱线、 pnpm 或 npm

### 如何安装 @chatluna/patchbay？

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

### @chatluna/patchbay 支持 TypeScript 吗？

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

### @chatluna/patchbay 支持 ESM 还是 CommonJS？

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

### @chatluna/patchbay 需要什么版本的 Node\.js？

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

### @chatluna/patchbay 可以商用吗？

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

### @chatluna/patchbay 的下载量有多少？

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

### @chatluna/patchbay 还在维护吗？

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

