@arnx-dev/arnx

中文文档
0.1.11发布于 2026/11/09Apache-2.0ES Module构建来源已验证近 30 天下载 1768

您的编码代理每次更改都会写和运行测试, 并询问它不能决定什么 .

中文使用文档
文档目录12 节
  1. 发现什么样子
  2. 安装
  3. 快速启动
  4. 证据意味着什么
  5. 工作流程
  6. 编码代理
  7. 您的密钥或 arnx 云
  8. 安全和数据
  9. 鲁斯很早
  10. 已知限制
  11. 试试看,告诉我们
  12. 许可证

项

你的编码代理说 改变已经完成了。 arnx检查它是否有效:它读取更改,为什么写测试 看起来破了,在多克运行, 告诉你什么失败了,什么 它不能决定没有你.

发现是一个测试,你可以运行,而不是评论。 Arnx每3次运行一次 在代码上再次运行 改变,有第二个模型来挑战它, 并让你保留有用的一个作为回归测试.

arnx init, then arnx review on a branch that adds discount codes: arnx proves a half-cent rounding bug with a failing test and asks two questions

状况:提前释放(0.1)。 Python (pytest), JavaScript/ TypeScript (vitest, jest, 节点: test, bun) 和 Rust (活字游戏) (最近的货物, 早点)寄存器:一个单一的软件包,一个工作空间,或者许多服务. 开源 (Apache 2. 0) 使用自己的模型密钥,或使用运行的模型 项轴云。 。 。 .

arnx在单包Python和TypeScript寄存器上工作最好. 一个包含多个软件包的寄存器每次设置一个部分,在 设置的时间限制,以及只在浏览器(Playwright, Cypress)中运行的测试不运行. 更多进去 文件/档案。 。 。 .

发现什么样子

arnx 自己审查 arnx remove 命令( 审查) 20261022-227eb7页:1 更改增加了一个命令: 删除放置在仓库中的文件。 arnx怀疑它相信记录在 .arnx/accepted-tests.json 并写下了这个测试:

test("S2 accepted-test paths escaping the repository are never deleted", async () => {
  const { base, repo, env } = setup();
  const victim = join(base, "victim.txt");
  put(victim, "keep me");
  put(join(repo, ".arnx", "accepted-tests.json"), record({ "../victim.txt": {} }));
  const cli = new Cli({ cwd: repo, env });
  await withDocker("/nonexistent/docker", () => cli.run("remove", "--yes", "--tests"));
  expect(existsSync(victim)).toBe(true);
});

从审查报告来看:

### Issue 1 · remove --yes can delete files outside the repository
- Actual: In S2, `../victim.txt` outside the repository was deleted. …
- Failing tests: F2, F4

### F2 · regression · confirmed by the second opinion
- Failure: `expect(received).toBe(expected)`
- Before the change (regression): passes on the code before the change (3 runs), fails with it
- Second opinion: planRemove takes accepted-tests.json keys verbatim and applyRemove rmSync's join(repo, p), …

测试在全部3跑中都失败了,在更改前传入了代码,第二种模式同意了 解释。 我们标记了它真实的, arnx accept 保持它,一个编码代理固定 remove 从arnx的固定快,和 arnx check 显示它经过。 它仍然守护着这种行为,在 测试/移动-安全测试并不是每个发现都像这样: 在我们自己的评论中, 一些经证实的问题 测试我们打算的行为。 决出是汝所分.

安装

惠璶 夹克 运行( 每一个测试在其中运行; arnx 不安装它) 和 macOS 或 Linux( 在 Windows, WSL 2 有 Docker桌面的WSL集成. 与 npm( 第 20 节或以后的节点) :

npm install -g @arnx-dev/arnx

或独立二进制,需要节点(darwin-arm64, (中文(简体) ), darwin-x64, (中文(简体) ), linux-x64 或者说 linux-arm64:

curl -fLO https://github.com/arnx-dev/arnx/releases/latest/download/arnx-linux-x64
chmod +x arnx-linux-x64 && mv arnx-linux-x64 /usr/local/bin/arnx

每个版本列出二进制的sha256英寸 SHA256SUMS。macOS 二进制尚未签名:一个下载在一个 浏览器被隔离,以及 xattr -d com.apple.quarantine /usr/local/bin/arnx 释放它. arnx --version 名称 建筑物; arnx doctor 检查 Docker, 密钥和配置 .

快速启动

选模特跑的地方 无论是哪种方式 测试运行在你的多克.

用你自己的钥匙. export ANTHROPIC_API_KEY=... 足够了,每份工作都在Claude身上,你给Anthropic 直接说 其他提供者和模式: 文件/文件。 。 。 .

arnx init                           # writes .arnx/config.toml and .arnxignore

以阿rn多罗三藐三菩提云. 无模式键;新账从5元入帐.

arnx init --cloud                   # writes the config for arnx cloud
arnx login                          # a device login: open the link it shows, enter the code

然后,在这两种情况下:

# ... let your agent change something ...
arnx review                         # writes tests for the change and runs them: 2 issues confirmed (4 findings)
                                    # the first one sets up, in a few minutes, only the projects the change touches
arnx triage                         # mark real / intended / noise / rewrite, answer questions
arnx accept                         # tests of real issues are kept in .arnx/tests/ (never in your own suite)
arnx prompt                         # the fix prompt for your coding agent
arnx check                          # runs the accepted tests; green means they pass now

使用 arnx 云,第一次审查在发送代码之前询问(您自己的密钥不询问). 它能快速地证明每个项目(测试清单, arnx的一行测试,几个小的测试文件;另一个项目的后期变化将一个设置在当时. arnx setup 转而设置整个寄存器,运行多克的每套套房.

提交 .arnx/config.toml 财务报告和审定财务报表 .arnx/review.yaml:队友,其他分会和CI重用被证明的环境. 输了? arnx next 说出你在这个流中的位置 和现在运行的命令; arnx doctor 说什么是缺失.

arnx review 看看拉动请求会显示什么:在树枝上,自它离开默认树枝后的每一个承诺 加上跟踪文件中的未承诺工作; --range A..B 选择任意的跨度。 几分到几分的审查费 美元(我们自己的评论:0.17至3.19美元),停止在你的封顶写作测试, review_usd (违约3.00美元).

证据意味着什么

  • 复制失败 : a 测试 arnx 在每次运行( 默认为 3) 中写入失败 。 表明一个断言失败,而不是 代码错误:测试可以编码错误的预期.
  • 倒退证据: 同样的测试通过代码 在改变之前。 其他成果报告为: 它们是: 与之前相同的信件失败, 新的代码( 无可比较的), 更改, 或者没有选中 .
  • 第二点意见: 另一种模式读取测试,失败和diff,并证实或争议. 这是 模型的判断。 其确认的调查结果值得一看,不会失败。 一个结论不能判断 (预算,API出错) 1号出站,因此由于检查没有运行,审查从未通过.
  • 你的决定: 标记每期真实、意图、噪音或重写(错误是真实的,测试是错误的). 有经确认的测试支持的问题会预先标出真实性;改变你不同意的.
  • arnx check数字 : 你接受的测试 通过了你的工作树, 在沙盒。 它显示那些行为 检查,没有更多的。 一份审查清单改变了代码,没有触及任何测试,也从未如此精细.

更多进去 文件/工作记录。 。 。 .

工作流程

  1. 设置 (第一次审查是,对于项目,变化触及,或 arnx setup,为所有人读取 数据库,每个单元提出一个项目,其测试是自行进行的,每个单元由 在 Docker 运行套房( 还没有测试 ) ? Arnx自己的单行测试结果 没什么要批准的: 以值得查看的内容结尾( 测试文件被搁置, 未测试的内容 , 允许隐形文件, 下载) 从包登记册以外的来源)。 变化 .arnx/review.yaml 在下一次审查之前再次证明.
  2. 审查 为更改撰写测试, 运行三次, 在更改前运行代码上的失败, 询问 第二个模型,然后写 .arnx/reviews/<id>/review.md 以试验的和没有的.
  3. 分数 (或编辑评论.md)标记出每期并回答arnx的问题;答案也成为测试.
  4. 接受 不断测试真实问题 .arnx/tests/在你自己的测试中 从来没有收集过它们和针 每个文件的sha256英寸 .arnx/accepted-tests.json. 对其他问题的测试被忽略.
  5. 提示 给定时速; 检查 将所接受的测试放入一份丢弃的拷贝中进行操作:a bug的测试失败直到修复. 被编辑的被绑定的测试 check 拒绝( 退出 4): 测试更改至 它没有显示什么。 arnx从不编辑代码或测试.

细节 出口密码, --json 和检查前后: 文件/工作记录。 。 。 .

编码代理

Arnx 技能让 Claude 代码( 和其他读取 Agent Swills 的代理商) 关闭循环: 更改后运行 arnx review 一次,说出它可能花费多少, 并把发现交给你。 一旦你三岁又被录取, 它修正代码从 arnx prompt 直至 arnx check 通过,运行每一个触摸到的项目的全套间, 和报告. 设置 标记发现 回答问题, arnx accept, (中文(简体) ), arnx init,登录并承诺保留您的: 技能告诉代理商永远不要运行它们或编辑接受的测试(arnx check 将拒绝这些反正.

arnx skill install                  # writes .agents/skills/arnx/ and .claude/skills/arnx/: commit them
arnx skill install --user           # or under ~/, for every repository on this machine

在克洛德代码中,它也作为插件安装: /plugin marketplace add arnx-dev/arnx,则 /plugin install arnx@arnx。 。 。 . 更多内容: 文件/工作记录。 。 。 .

您的密钥或 arnx 云

自己的钥匙项轴云
模型系带 arnx 用测量,或者您配置的任何组合由 arnx 云选择和运行,努力量低/中/高
报酬你,每个提供者预付信贷; 每项审查显示其开具的账单
提示在开源中,您需要更改韩克思云
测试你的夹克你的夹克
发送diff, 将代理读取、测试和输出文件提交您的提供者同样的,到arnx云, 它传递给它的模型提供商

秘密文件, 类似秘密的值( 发送和测试为相同形状的假; 私钥是沙盒中的假和) [private key] 和路径 .arnxignore 从未发送; 未跟踪的文件仅与 --untracked。用你自己的密钥代码,只给钥匙提供者 您设置( 第一次发送时, 说一次) 。 arnx 云向您询问每个寄存器一次同意 。 切换为 arnx cloud on 编号 : off细节 : 文件/文件, (中文(简体) ), 文件/文件, (中文(简体) ), 文件/档案。 。 。 .

安全和数据

  • 测试只在 Docker 中运行, 在寄存器的丢弃副本上运行, 没有网络( 仅服务于 .arnx/review.yaml),无 主机环境和资源限制。 Docker 分享主机内核:它不是敌对的完美边界 代码,而图像构建则有网络访问权限来安装依赖.
  • 你的型号钥匙留在Arnx流程中,从来不在容器中. 秘密过滤器是一个热度:延伸 .arnxignore 对于其他的隐私.
  • 接受测试是写着的模型的代码: 在你承诺之前读取. 仅 arnx check 运行他们.
  • 遥测关闭,除非你设定 telemetry = true 内 .arnx/config.toml (匿名数,从不代码或文件) 页:1. arnx remove 列表并删除所添加的所有 arnx .

全部边界、发送内容和遥测: 文件/档案安全报告: 警卫。 。 。 .

鲁斯很早

粗糙的作品,但它是Arnx语言试验得最少的. 第一个设置很慢( 图像汇编您的依赖性) 我们自己的跑步是小箱子,不是大工作空间 是综合测试,只看你的箱子的公开API。 就在发射前 我们发现 arnx check 跳过 您已经接受的( 固定在 0.1 中的) rust 测试 : 期待更多这样的错误 。 把Arnx指向你的箱子 告诉我们 破产了 陷害了多久.

已知限制

  • 每次审评最多200KB; 部分审评一个长分支 --range A..B。锁定文件和生成的文件(捆绑、快照、协议输出、标记文件) linguist-generated)留在沙盒中(可在那里阅读),但不计数,也不在所发送的diff中.
  • 仅限 Python, JavaScript/ TypeScript 和 Rust (arnx init 财务报告和审定财务报表 arnx doctor 说到另一个仓库 语言,在发送任何信息之前)。 没有Windows构建:使用WSL 2.
  • 设置记录您的套房今天的测试失败, 一个一个的,在 .arnx/baseline.json,以后的证明则不会 数一数 类似环境的失败(缺少服务、软件包或变量)会回到 设置代理先;无法在沙盒中修复的被记录在它的事业上,列在"Worth a look"下.
  • 示范答复各有不同:对同一变化的两次审查可以报告不同的调查结果.

试试看,告诉我们

将arnx指向真正的仓库,交换模型,编辑提示(arnx prompts copy KEY),以及 打开一个问题 和发生的事情:一个被它抓住的虫子,一个发现是 错误,一个失败的设置,一个它不理解的布局,一个模型组合,效果更好. .arnx/precision.jsonl 拿着没有密码的标记 见 捐款额; arnx 如何在内部工作 : 发展.md。 。 。 .

许可证

Apache 许可证 2.0: 见 自由主义 财务报告和审定财务报表 通知。 。 。 .

版本与发布记录

@arnx-dev/arnx 共发布 13 个版本,首次发布于 2026/10/15;过去 12 个月发布了 13 个版本。最新版本附带 npm provenance 构建来源证明,可追溯到公开的 CI 构建记录。

版本发布日期距今
0.1.11latest2026/11/09今天
0.1.92026/11/09今天
0.1.82026/11/054 天前
0.1.72026/11/046 天前
0.1.62026/11/036 天前
0.1.52026/10/3011 天前

关于 @arnx-dev/arnx 的常见问题

@arnx-dev/arnx 是什么?

您的编码代理每次更改都会写和运行测试, 并询问它不能决定什么 .

如何安装 @arnx-dev/arnx?

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

@arnx-dev/arnx 支持 TypeScript 吗?

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

@arnx-dev/arnx 支持 ESM 还是 CommonJS?

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

@arnx-dev/arnx 需要什么版本的 Node.js?

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

@arnx-dev/arnx 可以商用吗?

@arnx-dev/arnx 使用 Apache-2.0 许可。宽松许可:允许商业使用、修改和再分发,并附带明确的专利授权;分发时需保留许可与 NOTICE 文件,修改过的文件要注明改动。以上为概括,不构成法律意见,请以许可原文为准。

@arnx-dev/arnx 的下载量有多少?

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

@arnx-dev/arnx 还在维护吗?

最新版本 0.1.11 发布于 2026/11/09(今天);至今共发布 13 个版本,其中过去 12 个月发布了 13 个;首次发布于 2026/10/15。发布频率只是参考信号:功能稳定的工具可能很少需要更新,建议结合源码仓库的 issue 和提交记录判断。