@atlanticus-ai/relay

中文文档
2.58.1发布于 2026/11/07SEE LICENSE IN LICENSEES Module零依赖近 30 天下载 1809

会话操作系统的所有者门控,代理执行的开发。失败关闭的会话门,仅可附加的书面记录,以及跨多个项目的一个协议。

中文使用文档
文档目录14 节
  1. 为什么
  2. 图标
  3. 版式
  4. 运行测试
  5. 浏览器套件
  6. 定型——两个目录,区别是负载
  7. 中情局
  8. 发布检查( 部署门)
  9. 此重播是中继管理
  10. 项目供应商
  11. 中继站(静态站台发电机)
  12. 依赖关系
  13. 分发和许可证
  14. 如果一个坏版本的船

中继

面向自有,代理执行开发的会话操作系统. 闭会门故障, a 只有附件的纸迹, 和一个协议贯穿许多项目.

npm install --save-dev @atlanticus-ai/relay
npx relay init                        # scaffold: slash commands, config, session docs (never overwrites)
npx relay verify-open                 # every open — the first one detects itself, no flag
npx relay selftest                    # did the install work? one line per check, exit 0/1

然后每场会议: npx relay verify-open 工作 • 工作 • 工作 npx relay verify-close。 。 。 .

为什么

能够犯罪、推倒和释放的特工需要失败的门 关闭 和无法追踪的纸 悄悄跳过。 中继是:会话会按机器检查的交接方式打开,会按秒关闭 门,以及记录实际发生的情况——逐字记录门输出,得分目标,象征性费用——在文件中 住在你的回购, 不是在聊天记录.

所有者大门是绝对的. 代理人可以执行、承诺和 提议· ; git push, (中文(简体) ), git tag编辑 撞出一张罚单 每次都是人类的.

图标

relay verify-open      session-start gate (fail-closed)      relay site         build the static site
relay verify-close     session-close gate                    relay compile      compile paper-trail fragments
relay tokens           token accounting for the handoff      relay doctor --container   container probe
relay session-log      append a session lifecycle record     relay docs-check   documentation debt
relay log              append a dispatch/footer record       relay init         scaffold into a repo
relay cp               copy the handoff block to the clipboard

万事俱备 relay.config.json 在目标重播. relay --help 列出其余部分.

版式

  • RELAY-CORE.md ——协议(15-min读;新收养人从这里开始). 船舶 软件包,所以消费者总是有 版本的协议,它的工具工具.
  • kit/ - 工具学 零项目特定字符串; 每个项目事实来自 relay.config.json。 。 。 . 18号节点,一次性依赖micromatch) (中文(简体) ).
  • db/ • 妇女 query/ • 妇女 ui/ ——可选的中继指数:纸轨的后置投影和a 本地只读仪表板. 未包装 —— 说 npm install 帮你拿大门 不是数据库.
  • attic/sync-relay.sh <target> - 遗留的文件复制销售路径, 移动到 attic/ 在RL-D014飞机上 并保持为INERT RackUP(如果迁移失败则为回转),直到现有消费者使用 迁移到软件包中。 它翻译 npx relay … 回到出道时销售的脚本路径.

运行测试

npm test              the full suite — relay-site fixtures, gate smoke, kit fixtures, d13
npm run test:fast     the per-commit subset (never writes or clears the pass stamp)
npm run test:e2e      the browser suite — Playwright, Chromium, two viewports

⛔ test:fast 财务报告和审定财务报表 npm test 不可互换,差额是印花. 只有满 运行写入 test/LAST-PASS.json,哪个 verify-close是因为 tests_fresh 声明全文如下: fast 单是说一个没有运行的套房 运行 fast 在每一次派遣之后 npm test 一次,在组织交接之前.

浏览器套件

npm run test:e2e 正在建设 ui/,服务它,并驱动真正的铬. 没有打开数据库 ——每个 /api/* 响应从固定到 test/e2e/mock-api.ts,严格地比 仅仅避免 relay_live。 。 。 .

每个光谱都运行一次从 test/e2e/viewports.ts数字 :

项目大小排程抽屉
1280x8001280×800 (中文(简体) )yields ——表收缩 ( lg(中文(简体) )
768x800768×800 (中文(简体) )covers 抽屉坐在桌子上( < lg(中文(简体) )

⚠️ 这些不是"桌面和移动". 他们就是店主核实的景点 F1 财务报告和审定财务报表 F2 红色就是他们屏幕上的红色. 八百块是故意的 简称 有更高的窗户会藏起 F2 完全没有 添加宽度在此添加 ROW 而不是测试文件· ; 光谱从不命名一个数字, 它问 viewportOf()。 。 。 .

运行一个工程或一个规格 :

npx playwright test --project=1280x800
npx playwright test test/e2e/f3-raw-body-never-rendered.spec.ts

定型——两个目录,区别是负载

目录它所持有的
test/fixtures/api/实际能力 - 从现场数据库取出的尸体
test/e2e/fixtures/手脚 载荷,每个携带一个 _note 在自己的网站上这样说

⛔ 不要将发明的有效载荷放入 test/fixtures/api/。 。 。 . 它的名字是关于来源的说法: 其他依赖: test/no-mjs-references.test.ts 准确排除该目录 因为 捕获 合法引用已退休的路径,一个被发明的文件将继承它没有获得的豁免.

人工建造的生活 有两个原因之一 都记录在档案中:

  • 无法抓取终点 —— 说 /api/sessions 返回时 500 column "track" does not exist 时 034号迁移没有应用(所有者大门) /api/session-prompts 从未被俘虏;
  • 有效载荷是一个探测器 —— 说 test/e2e/fixtures/portfolio.json。 。 。 .

⚠️ 三个快速固定装置 故意携带 raw_body 下一个 text两人是故意的 不一样. 这就是我们的前提 f3-raw-body-never-rendered.spec.ts: 与无有效载荷对接 raw_body"尸体不在页面上" 无论是表面拒绝制造还是 有没有什么可以解释的 raw_body 源中的标识符—— a {...row} 分布, a 调试 <pre> 静态警卫看不见 test/ui-guardrails.test.ts 财务报告和审定财务报表 被这个抓住了 光谱这种差距是它存在的原因.

⛔ 一个未映射 /api/* 路径是一个 501 命名路由, 绝不为空 200。 。 。 . 一个空白的成功将 变成"没有数据", 表面看起来健康而空荡荡的 就是绳子的失败 来抓他.

中情局

.github/workflows/ci.yml 运行两个工作:

  • test suite (relay-site + verify-open + d13) —— 说 npm test 反对邮局服务 db/fixtures/d13.ts,然后覆盖鼠标,然后 verify-open 作为取笑的一步 (见 ADR 0014 (英语)) (中文(简体) ). CI的索赔 无法满足在 relay.config.json 下级 verifyOpen.ciSkipAsserts打印为 – skipped in CI: <reason>,并且已经 na —— 说 永远 pass。 。 。 .
  • e2e (chromium, 1280x800 + 768x800) - 浏览器套房,在自己的工作,和它 门: 无 || true。 。 。 .

发布检查( 部署门)

在建立脚本之前,每个存档的发送和返回都会被扫描以获取秘密,并击中 拒绝部署 它命名了文件 和规则和 从不匹配它探测并 拒绝;它从来不编辑文件。 门就在里面 query/build-corpus.ts,这是上半期 联 合 国 vercel.json是因为 buildCommand,因此一个非零出入口在UI建成前就停止了建设.

配置为 relay.config.json → publishCheck自己运行它 node query/build-corpus.ts --census。 。 。 .

⛔ 如果 Publish Check 拒绝部署, 则指令是 docs/PUBLISH-CHECK.md —— 说 拒绝输出结束于该路径, 因为一个控制器没有人记得如何操作 绕行( e)DN9-D104) (中文(简体) ).

此重播是中继管理

它带着自己的 relay.config.json, (中文(简体) ), ROADMAP.md, (中文(简体) ), WAYS-OF-WORKING.md 财务报告和审定财务报表 docs/sessions/ 纸张 自己开着货箱的门:

npx relay verify-open         # the same command a consumer runs — the bin resolves locally either way
npx relay verify-close
npm test

这里的会话编号是 RL-D<n>-P<seq>。 。 。 . 遗产 RELAY-D* 编号 : CF-D* 编号在 CHANGELOG.md 不一样, 历史系列 看到了吗 WAYS-OF-WORKING.md § 2.1. 从 WAYS-OF-WORKING.md 财务报告和审定财务报表 docs/sessions/SESSION-HANDOFF.md。 。 。 .

⚠️ 永远不要跑 attic/sync-relay.sh 对抗这回贷. 供应商 kit/ 改为 a 消费者; 此还原 这是 来源。指在这里它会覆盖 kit/ 给消费者盖上印章 relayVersion。 。 。 . 脚本 REFUSES 代码中的自目标 (单位:千美元)TD-RELAY-SYNC-SELF-GUARD,运出RL-D008——此 先前曾说没有警卫,RL-D008号已停止真实,后经更正 RL-D014 (英语). 拒绝请求的理由是: attic/ 路径在 test/distribution.test.mjs。 。 。 . 长期义务 (原始内容存档于2012-10-12). SO-KIT-IS-SOURCE 曾经 于RL-D015停用 一次两个消费者 日记 (HZ + CF,当时存在的唯一两个) npm - 时间 上面的禁令没有改变 密码内警卫会留下;结束的是 重新确认 每一个接近的仪式 一个机制 没有人再使用。 剧本本身已存档, 未删除.

项目供应商

./attic/sync-relay.sh --dry-run ~/path/to/project    # preview
./attic/sync-relay.sh ~/path/to/project              # apply (target must be clean)

那就确保目标 relay.config.json 有所需的密钥( 参见 kit/CLAUDE.md.skeleton 财务报告和审定财务报表 RELAY-CORE.md § Config: projectPrefix, (中文(简体) ), ownerName (必须), docsCheck等 (中文(简体) ).

中继站(静态站台发电机)

打开项目 ROADMAP.md + 键 docs/relay/ 会话文物进入静态站点. opt- in: 添加一个 site 块到目标 relay.config.json。 。 。 . 没有 site 块 – 脚本退出 0 与 "没有配置",没有写,因此在每一个没有要求的项目中都是惰性的.

npx relay site                        # or: make site
npx serve docs/site                   # generator does NOT serve — preview separately

设计简况、配置图和 ROADMAP.md 解析器期望的公约 : docs/relay-site.md。测试: ./test/run-tests.sh (合成固定;无) 真实的项目被触动).

依赖关系

该套装由 文件副本,而不是由软件包管理器安装——所以目标回波收到 脚本 无 得到他们进口的东西. kit-dependencies.json 声明空白 :

依赖性需要满足如果缺少
节点 >=18所有套件脚本无害环境管理+高层等待; fetch编号 :AbortController 内 verify-close.mjs
micromatch ^4.0.8 (单位:千美元)运行时间(中文(简体) )kit/docs-check.mjsdocs:check 完全无法运行——在检查执行前导入抛出

sync-relay.sh 读取此文件并检查目标 : 命令任何未实现的。 这个 只报告 ——它从不安装,也从不编辑目标 package.json。在目标repo中添加依赖是repo所有者的决定,而不是同步 剧本.

进口的装备是 node: 内建.

两个频道分类 micromatch 不同,两者都是正确的. A 类 供应商 消费者 收到可读文件 kit/docs-check.mjs输入 micromatch 在模块载荷时—— 用于该通道 这是真的 运行时间 要求,这是什么 kit-dependencies.json 声明 这个 已出版 npm 软件包 搭载的船 micromatch 内含,因此在 全部; 这里 micromatch 是一个构建时的工具,并坐在那里 devDependencies。所公布的柏油球 第三方依赖人数 零。 。 。 .

分发和许可证

中继器在 a 下分配 版权——所有保留的权利。见 LICENSE。 。 。 . 没错 没有 打开源和 ISC 显示在 package.json 在v1.6.11之前 (a) 从未与许可证文本相匹配的占位符.

当前 LICENSE 文本为 a 草案 有待律师对商标和许可证进行审查 (RL-D010) (英语). 一定要在第一次公测前清理 npm publish。 。 。 .

已发布的软件包是 捆绑和精密结构 生产 npm run build 从 kit/ 输入 dist/未分配来源 源地图从未被发布 —— 说 build.mjs 套装 sourcemap: false 和测试套房失败,如果 .map 文件或一个 sourceMappingURL 字符串到达输出 。 源图可以传送整个可读源, 并默默地撤销它 .

一些文件飞船 可设计读取,每个原因(见 VERBATIM 内 build.mjs: RELAY-CORE.md (议定书的用意是阅读) commands/*.md, (中文(简体) ), CLAUDE.md.skeleton, (中文(简体) ), Makefile.template 财务报告和审定财务报表 settings.presets.json ——全部内容 relay init 写入  储存库,可读之处是产品而不是泄漏.

软件包在安装时间——永远没有在您的机器上运行代码. 没有 postinstall,没有 preinstall, (中文(简体) ), install, (中文(简体) ), prepare 或者说 prepublish 也一样. relay init 写入 .claude/,则 代理商接受其指示,所以必须保持 输入命令: 软件包 作为副作用编辑代理指令 npm install 能够改变特工在 无关的依赖突起。 测试套房声称每个安装时间钩都不存在.

prepublishOnly 这是有意的例外,它不是同一类. 它运行 node build.mjs && npm test 编辑 出版社 机器期间 npm publish 从来没有 消费者的,甚至没有在公布的焦油丸的行刑路径中出现. 它的存在是因为 "记得在出版前运行建筑"是手动步骤 保护不同 运输当前代码和 stale dist/,这种形状的人工步骤已经 在此失败( 版本文件同步事件) 。 机械化,不能忘记 见 docs/npm-deprecation-policy.md § 完整的生命周期钩 安装时间/publisher- side 拆分.

如果一个坏版本的船

惩罚吧 转发,从不落后——看 docs/npm-deprecation-policy.md。 。 。 . npm 限制72小时后未出版, 未出版的每个已解决的安装中断 到那个版本。 不好的出版是用 补丁释放 加号 npm deprecate 坏事发生 版本,不是通过撤回.

版本与发布记录

@atlanticus-ai/relay 共发布 12 个版本,首次发布于 2026/10/30;过去 12 个月发布了 12 个版本。

版本发布日期距今
2.58.1latest2026/11/071 天前
2.51.02026/11/035 天前
2.50.02026/11/025 天前
2.49.02026/11/026 天前
2.48.02026/11/016 天前
2.47.02026/11/017 天前

关于 @atlanticus-ai/relay 的常见问题

@atlanticus-ai/relay 是什么?

会话操作系统的所有者门控,代理执行的开发。失败关闭的会话门,仅可附加的书面记录,以及跨多个项目的一个协议。

如何安装 @atlanticus-ai/relay?

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

@atlanticus-ai/relay 支持 TypeScript 吗?

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

@atlanticus-ai/relay 支持 ESM 还是 CommonJS?

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

@atlanticus-ai/relay 需要什么版本的 Node.js?

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

@atlanticus-ai/relay 可以商用吗?

@atlanticus-ai/relay 使用 SEE LICENSE IN LICENSE 许可。许可条款写在包内的独立文件中,请阅读该文件确认可否商用。以上为概括,不构成法律意见,请以许可原文为准。

@atlanticus-ai/relay 的下载量有多少?

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

@atlanticus-ai/relay 还在维护吗?

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