# @agentsfleet/orly 中文文档

规范地址：https://npmcn.com/package/%40agentsfleet/orly/

版本：0\.28\.0
npm 元数据更新时间：2026-11-03T04:45:40.273Z
中文译文更新时间：2026-11-06T13:27:45.891Z
软件包许可：MIT

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

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

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

- 包体积（解压后）：742 kB，111 个文件
- 模块格式：ES Module
- TypeScript 类型：未声明
- 运行依赖：3 个
- 首次发布：2026-08-22T17:02:58.196Z
- 最新版本发布：2026-11-03T04:45:39.928Z
- 近 30 天下载量：3138（2026-10-05 至 2026-11-03，npm 官方下载统计）
- 已发布版本数：57（近 12 个月 57 个）

## 中文简介

仓库范围工程的利用:使代理规则化,使执行这些规则的大门化为物质,并证明任何编码代理人的PR边界.

## 安装

```sh
npm install @agentsfleet/orly
```

也可以使用：`pnpm add @agentsfleet/orly`、`yarn add @agentsfleet/orly`、`bun add @agentsfleet/orly`

## README

![agentsfleet](https://raw.githubusercontent.com/agentsfleet/orly/main/branding/agentsfleet-mark-glow.png)

# 或者说

[![npm](https://img.shields.io/npm/v/@agentsfleet/orly?logo=npm&logoColor=white)](https://www.npmjs.com/package/@agentsfleet/orly) [![bun ≥1.4.4](https://img.shields.io/badge/bun-%E2%89%A51.4.4-FBF0DF?logo=bun&logoColor=black&labelColor=FBF0DF)](https://bun.sh/) [![coverage](https://img.shields.io/codecov/c/github/agentsfleet/orly?logo=codecov&logoColor=white)](https://codecov.io/gh/agentsfleet/orly) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)

[![Claude Code](https://img.shields.io/badge/Claude_Code-D97757?logo=claude&logoColor=white)](https://platform.claude.com/docs/en/claude-code) [![Codex](https://img.shields.io/badge/Codex-412991)](https://github.com/openai/codex) [![OpenCode](https://img.shields.io/badge/OpenCode-000000?logo=opencode&logoColor=white)](https://opencode.ai/) [![Amp](https://img.shields.io/badge/Amp-091C1E)](https://ampcode.com/)

**AI-原生发展,定型. 你的经纪人在编辑前会读到规则,而门在忽略规则时会捕捉到.**

> \[注\] **你是经纪人吗?** 读取 [`llms.txt`](https://npmcn.com/package/%40agentsfleet/orly/llms.txt) 而不是这个页面.
> 
> 它带有为机器写成的相同的设置:精确的命令,精确路径,以及对每次失败的决定表. 人类应该继续在这里.

* * *

## 为何存在或存在

你的经纪人读你的公约。 然后写随所喜. 没有检查.

两者兼有:

-   **规则** ——代理在编辑前读取.
-   **盖茨** ——脚本被接入了被忽略规则时会失败的git钩.

规则来源于gstack和gbrain,然后被硬化 超过500+ 合并拉运请求 [代理任务](https://github.com/agentsfleet/agentsfleet)。 。 。 .

你不同意的,你自己的 `AGENTS.md` 赢了.

与克洛德代码,Codex,OpenCode,和Amp合作.

* * *

## 0.28:无遥测,更瘦光谱

或者收集不使用遥测,以及 `orly skill-event` 财务报告和审定财务报表 `orly lifecycle` 不见了. 光谱模板是一个骨架,其评论引用了光谱标准中的规则. 每个维度都带有其测试层次和结果,基线来自基数的连续集成运行.

`docs.language` 现在报告在已更改的光谱行上留下的模板槽. 仍然带有已退休者的配置 `execution` 键被拒绝.

## 0.26:规则成为标准

规则现在以标准为标准: 短页的规则块 应用,检查,坏,好和为什么. 三项技能包括: `orly-spec`, (中文(简体) ), `orly-build` 财务报告和审定财务报表 `orly-ship`。 。 。 . 这个 `orly-standards-reviewer` 代理检查一个diff 违反标准 在拉请求之前.

永远 `AGENTS.md` 低于16KiB,低于37KB. 发送页面、审计脚本、读取门和 `orly judge` 不见了. `orly gate pr` 检查代码和 Git; 在写入时审查一个 spec .

`orly doctor` 检查每个代理运行时间都有gstack和"大象-金鱼"模型(EGM),无论您运行哪个版本. 代码云任务得到相同的设置; 参见 [架构页面](https://npmcn.com/package/%40agentsfleet/orly/docs/ORLY_ARCHITECTURE.md#codex-cloud-environment)。 。 。 .

见 [释放](https://github.com/agentsfleet/orly/releases) 用于出版版本. 下面的安装命令获取已公布的软件包 . 发布工作流程在版本更改后发布0.28.0 `main` 或明确发布运行.

* * *

## 先决条件

| 惠璶 | 为什么 | 版本 |
| --- | --- | --- |
| [包头](https://bun.sh/) | 运行或运行; `bunx` 拿来 | ≥ 1.4.4 |
| gi | 或写出钩子; `orly gate` 读取分支 | 任意 |
| 编码代理 | 有东西要看规则 | Claude 代码、 Codex、 OpenCode 或 Amp |
| 检查命令 | `orly gate` 随便你 `.orly/orly.json` 名称 | 无论您的仓库已经运行 |

> \[大 永远不要复制钩子 每个队友都跑 `orly init` 一次在他们自己的退票, 即使在规则被承诺.

* * *

## 安装已发布的软件包

在您想要管理的仓库内运行此程序 .

```bash
bunx --bun @agentsfleet/orly init
```

或扫描您的源,检测您的语言,并安装只应用的规则.

> \[TIP\] 尝试 `bunx --bun @agentsfleet/orly init --dry-run` 先说 它预览了生成的规则并更改了任何内容.

完成任何设置项目 `init`运行 `bunx --bun @agentsfleet/orly doctor` 并输入生成的文件. 使用 `bunx --bun @agentsfleet/orly <COMMAND>` 以下命令; `<COMMAND>` 命名命令及其选项. 已生成 Git 钩子引用被绑的套件通过 `bunx`; Bun 必须在钩子搜索路径上. 无需全面安装或依赖项目.

队友们拿到克隆的规则就跑 `orly init` 安装他们的钩子.

声明 `conform` 至少一个 `verify.*` 命令在 `.orly/orly.json`。 。 。 . Orly 运行您的寄存器命令; 校验名称不需要特定语言或测试跑取符 . Makefile提供的文件存储器 `test` 财务报告和审定财务报表 `lint`数字 :

```json
"commands": {
  "conform": [["make", "test"]],
  "verify.docs": [["make", "lint"]]
}
```

给 `test` 检查工作期间的文件,以及 `lint` 在拉请求前验证站点和链接. Markdown和Markdown JSX(MDX)寄存器不需要应用单元或集成套件. `orly doctor` 检查配置和已安装的文件; 运行门以验证命令本身.

每次援引都有30分钟的最后期限和64米比特综合产出预算. 超过任意一个限制都会失败检查,停止其子进程并打印出一个私有输出接收路径. 设定每个命令的覆盖 `.orly/orly.json`,例如:

```json
"limits": {
  "verify.unit": { "timeout_ms": 1800000, "output_bytes": 67108864 }
}
```

该收件保留了全部被捕获的输出,直到您删除其打印目录为止 . 拒绝未知的设置和错误的值; `schemas/profile.schema.json` 描述仓库配置.

* * *

## 更新

首先提交,然后从消费者仓库运行更新。 如果寄存器拥有其钩子,则明确保存:

```bash
bunx --bun @agentsfleet/orly update --no-hooks
```

预期:管理的文件被替换,更改显示在 `git diff`。带有未承诺更改的管理文件会停止更新并命名路径. 使用已安装的候选执行文件进行未公布的发布试验;上面的命令获取已公布的版本.

在不选择更新之前先审查已有的钩子 `--no-hooks`。 。 。 .

```bash
bunx --bun @agentsfleet/orly doctor
```

预期: 已安装规则匹配 `.orly/orly.json` 并宣布工作与核查命令. 然后运行存储器的申报检查; `doctor` 单靠自己不能管理他们.

* * *

## 仓库里有什么

```text
your-repo/
│
├── AGENTS.md ─────────────── yours. untouched, except one delimited pointer block
├── .orly/AGENTS.md ────────── the always-on rules and the standards index
│
├── CLAUDE.md ─────────────── one import line; the only file Claude Code loads itself
├── opencode.json ─────────── names both rule files; opencode loads nothing by default
│
├── .orly/standards/ ──────── the rules, one page per language or domain
├── .orly/skills/ ─────────── full skill instructions
├── .claude/agents/ ───────── the standards reviewer
│
├── .claude/skills/ ───────── thin discovery entries per agent host
├── .agents/skills/
├── .opencode/skills/
│
├── .orly/hooks/ ──────────── pinned bunx pre-commit and pre-push calls
└── .orly/orly.json ─────── which packs, which commands, what orly installed
```

`orly init` 也包括种子 `.orly/orly.json` 在您身上找到任何门的命令 `Makefile` 或者说 `package.json`填满其余的, 承诺, 和每个克隆门都一样.

* * *

## 每次行动都会发生什么

```mermaid
flowchart TD
    edit["agent edits a file"] --> rule["the rule page for that file kind fires"]
    rule --> commit["git commit"]
    commit --> pre["pre-commit hook runs orly gate"]
    pre -->|red| back["blocked: back to EXECUTE"]
    back --> edit
    pre -->|green| push["git push runs pre-push hook"]
    push --> prgate["orly gate pr"]
    prgate -->|red| back
    prgate -->|green| open["Pull Request opens"]
```

三个检查站,所有运行你自己宣布的命令:

| 检查站 | 何时 | 效果 |
| --- | --- | --- |
| `pre-commit` | 每一个承诺 | 在第一次检查失败时停止 |
| `pre-push` | 每一次推动 | 和申报的非测试核查核查 |
| `orly gate pr` | 打开拉出请求 | 运行所有已宣布的核查命令并检查分支和光谱 |

* * *

## 你生活的循环

`orly init` 是设置。 这是一项任务,从迅速到拉请求.

光谱是磁盘上的文件,而且 **它的目录是状态**。只有规则中命名的阶段才能移动它.

```mermaid
flowchart TB
    you["🤠 you<br/>add webhook retries"]
    agent["🦉 agent<br/>writes the spec"]
    pending["📄 docs/v1/pending/<br/><small>spec committed on default branch</small>"]

    you --> agent
    agent --> pending
    pending -->|"CHORE(open)"| plan

    subgraph active["⚙️ docs/v1/active/"]
        direction TB

        plan["PLAN<br/><small>understand spec · resolve decisions</small>"]
        execute["EXECUTE<br/><small>make the change</small>"]
        conform["CONFORM<br/><small>apply matching rule pages</small>"]
        verify["VERIFY<br/><small>run deterministic gates</small>"]
        review["REVIEW<br/><small>review the resulting diff</small>"]
        document["DOCUMENT<br/><small>update docs / evidence</small>"]
        commit["COMMIT<br/><small>record the completed unit</small>"]

        plan --> execute
        execute --> conform
        conform --> verify
        verify --> review
        review --> document
        document --> commit

        conform -. "gate fails" .-> execute
        verify -. "gate fails" .-> execute
        review -. "changes required" .-> execute
    end

    commit -->|"CHORE(close)"| done["✅ docs/v1/done/<br/><small>all gates green</small>"]
    done --> pr["Pull Request"]
```

| 目录 | 含义 |
| --- | --- |
| `docs/v1/pending/` | 光谱被写入并输入到检测到的默认分支 |
| `docs/v1/active/` | 分支剪切, spec 移动到活动/ 并被执行; 执行前没有代码 |
| `docs/v1/done/` | 闸口为绿色, 拉请求打开 |

内部 `active/`,工作贯穿各个阶段: **计划/执行/协调/核查/审查/文件/承诺**。 。 。 .

阶段不是状态. `active/` 是状态。 阶段是坐在那里的光谱上的循环.

三件事做三个不同的工作, 把它们分开是使生命周期机械化的原因:

|  | 任务 |
| --- | --- |
| **目录** | 生命周期状态——谱系坐落于何处 |
| **阶段** | 执行机制——如何调动工作 |
| **盖茨** | 过渡当局——它能否推进 |

每次编辑都会激活该文件类型的规则页。 一个闸门可以证明工程能否推进,任何红色都会将代理返回EXECUTE. 任何舞台都不能悄悄跳过.

## 你的档案还是你的

| 文件 | 拥有者 | 打开 `orly update` |
| --- | --- | --- |
| `AGENTS.md` | **你们** | 除了一个已划定的指针区块之外,没有被分割 |
| `.orly/AGENTS.md` | 或者说 | 重写 |
| `CLAUDE.md` | **你们** | 创建缺少的加载器; 刷新自有的导入; 保存不相关的内容 |
| `opencode.json` | **你们** | 获取两个规则文件 `instructions`; 没有其他触摸 |

`AGENTS.md` 留在你身边。 或写它旁边的规则 从一个被划定的区块对着它们.

最后两个文件通过每次运行的加载器传递规则. 代码和 AMP 自动装入 `AGENTS.md`,它带有指针块继续前进.

Claude 代码装入 `CLAUDE.md` 没有别的了。 打开码只装入其内容 `instructions` 名称.

或者在装入器缺失时写入所需的导入,并刷新它自己划定的块或识别的生成的装入器. 无关所有者内容保持不变. 保存了寄存器内已解析的链接;未解析或出逃的链接拒绝更新.

> \[尖叫声\] 或者拒绝无自有冲突的内容和可执行的所有人钩. 明确审查 `--force` 或者说 `--no-hooks` 选择之前进行. 飞行前冲突保留所有者字节 。 写作过程中的中断可能会留下已完成的步骤和日记;在解决冲突后重新运行以恢复.

* * *

## 图标

| 命令 | 对 |
| --- | --- |
| `orly init` | 写规则、大门、技能和钩子 |
| `orly init --dry-run` | 显示要写的内容; 无更改 |
| `orly update` | 在较新的引擎版本进行再实际化 |
| `orly update --with <pack>` | 添加一个选入包, 记录每个克隆人 |
| `orly gate` | 运行您宣布的检查顺序, 在第一次失败时停止 |
| `orly override <criterion> --reason <why>` | 将闸门例外记录为空入"拉"请求 |
| `orly doctor` | 检查已安装的文件和所需的命令配置 |

* * *

## 哪个包你得到

### 由您的消息来源选择

或扫描四个目录深处。 它跳过 `node_modules`, (中文(简体) ), `target`, (中文(简体) ), `.venv`,而其他依赖树,因此一个偏差文件无法选择您不写的语言.

| 包装 | 当您的源已选中 |
| --- | --- |
| ![](https://raw.githubusercontent.com/agentsfleet/orly/main/branding/lang-typescript.svg) `language.typescript` | `.ts`, (中文(简体) ), `.tsx` |
| ![](https://raw.githubusercontent.com/agentsfleet/orly/main/branding/lang-javascript.svg) `language.javascript` | `.js`, (中文(简体) ), `.jsx` |
| ![](https://raw.githubusercontent.com/agentsfleet/orly/main/branding/lang-rust.svg) `language.rust` | `.rs` |
| ![](https://raw.githubusercontent.com/agentsfleet/orly/main/branding/lang-go.svg) `language.go` | `.go` |
| ![](https://raw.githubusercontent.com/agentsfleet/orly/main/branding/lang-python.svg) `language.python` | `.py` |
| ![](https://raw.githubusercontent.com/agentsfleet/orly/main/branding/lang-shell.svg) `language.shell` | `.sh` |
| ![](https://raw.githubusercontent.com/agentsfleet/orly/main/branding/lang-mdx.svg) `language.mdx` | `.mdx` |
| ![](https://raw.githubusercontent.com/agentsfleet/orly/main/branding/lang-sql.svg) `domain.sql` | `.sql` |

### 到处安装

| 包装 | 它携带着什么 |
| --- | --- |
| `universal.authoring` | 代码、测试、拉请求、记录和建筑标准 |
| `domain.http` | hTTP API 标准 |
| `domain.auth` | 认证标准 |
| `domain.documentation` | 已出版页面的文件标准 |
| `domain.changelog` | 更改日志标准 |
| `workflow.specifications` | 光谱标准和模板 |
| `workflow.skills` | 每个代理主机以及标准审查员的三种技能 |

### 选入,只有在 `.orly/orly.json` 给他们起名

| 包装 | 上面写的 | 为什么选入 |
| --- | --- | --- |
| 🦉 `workflow.governance` | orly 的架构页面 | 只有编辑或自行编辑时才有用 |
| `product.agentsfleet` | 没有文件; 它标记一个寄存器作为其中的一部分 `agentsfleet` 产品 | 产品表面,在另一个检查中毫无意义 |
| 🤠 `persona.indy` | 没有文件; 它重写生成规则中的地址处理和语气 | 一个维护者的名字和声音 |

* * *

## 需要格斯塔克和EGM

orly的技巧召唤 [点心](https://github.com/garrytan/gstack) 代码审查和 [大象-金鱼模型](https://github.com/google/elephant-goldfish-model) (EGM) 用于光谱审查. 任何版本都可行,因为两者都自我升级.

`orly doctor` 检查每个代理运行时间 机器有两种. 一个缺失的将它变为红色并打印安装命令;技能停止到绿色. 没有代理运行时间的机器,例如CI跑车,跳过检查.

> \[注\] 三种技能(`orly-spec`, (中文(简体) ), `orly-build`, (中文(简体) ), `orly-ship`)和审查员来自orly's `workflow.skills` 包,每个仓库。 每个代理主机安装gstack和EGM.

* * *

## 地方发展

因为工作本身。 欢迎拉动请求.

### 先决条件

| 惠璶 | 版本 |
| --- | --- |
| 包头 | ≥ 1.4.4 |
| gi | 任意 |
| 生产 | 任意 |

### 设置

```bash
git clone git@github.com:agentsfleet/orly.git && cd orly
git config core.hooksPath .githooks
bun install --frozen-lockfile
make audit
```

### 那个酒吧

`make audit` 这是酒吧。 如果通过,变化是可以审查的。 它的步道平行运行,大约为半分钟:

-   **`orly verify`数字 :** 标准目录、根渲染和每包复制件
-   **类型检查和单位测试**,包括确定性
-   **大门固定装置:** 每道门都证明有一条路过和一条故障

这里的每一个承诺都运行 `bin/orly gate work`,运行中 `orly verify`。 。 。 . 推车只跑出一圈 CI跑 `make audit` 每一个拉请求.

覆盖率为90%。 下方的工作流程失败 .

### 安装 evals

真正的安装到丢弃的仓库中。 价格是当地连锁店的两倍 所以他们按要求运行:

```bash
make install-evals
```

线人按每一次拉取请求进行操作并释放.

### 制定或修改自己的规则

或者用其他人使用的同一种动词来管理自己:

```bash
bin/orly update --no-hooks
```

`--no-hooks` 因为这个支票手写它 `.githooks/`,或拒绝替换它没有写的钩子.

### 释放

合并到 `main` 带有新的 `package.json` 版本。 出版 标记 剪掉GitHub版 没有第二个命令可以记住.

* * *

## 试试看

在您拥有的仓库中运行 。 在你降下国旗之前,它什么都不写.

```bash
bunx @agentsfleet/orly init --dry-run
```

它印出它将要安装的规则, 已经为您源代码中找到的语言 提供了规则 。 读取. 如果你不同意,这就是重点:你自己 `AGENTS.md` 超过它.

然后把你的经纪人交出来 即时或快速地为:

```text
Read .orly/AGENTS.md. Tell me which of my last ten commits would have tripped a
gate, and name the rule that caught each one.
```

* * *

## 许可证

[麻省理工学院](https://npmcn.com/package/%40agentsfleet/orly/LICENSE)

[![from agentsfleet](https://img.shields.io/badge/from-agentsfleet-5EEAD4?labelColor=0A0D0E)](https://github.com/agentsfleet/agentsfleet)

由 所造 [印地语](https://github.com/indykish) · 与QQ Orly共同写作

## 常见问题

### @agentsfleet/orly 是什么？

仓库范围工程的利用:使代理规则化,使执行这些规则的大门化为物质,并证明任何编码代理人的PR边界\.

### 如何安装 @agentsfleet/orly？

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

### @agentsfleet/orly 支持 TypeScript 吗？

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

### @agentsfleet/orly 支持 ESM 还是 CommonJS？

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

### @agentsfleet/orly 可以商用吗？

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

### @agentsfleet/orly 的下载量有多少？

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

### @agentsfleet/orly 还在维护吗？

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

