news 2026/10/2 6:55:21

OpenRig context pack上下文包完整指南:打包、安装与ref安全校验

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
OpenRig context pack上下文包完整指南:打包、安装与ref安全校验

OpenRig context pack上下文包完整指南:打包、安装与ref安全校验

【免费下载链接】openrigMulti-agent harness that runs Claude Code and Codex together as one system项目地址: https://gitcode.com/GitHub_Trending/op/openrig

OpenRig 是一个让 Claude Code 与 Codex 协同工作的多智能体运行框架(multi-agent harness)。它的context pack(上下文包)机制允许你把参考文档、世界设定、操作约定等打包成一个带manifest.yaml的目录,通过rig context命令打包、安装到本地库,并支持按段落地址按需加载。本文带你走完「打包 → 安装 → ref 安全校验」的完整流程,帮你在多 Agent 团队中安全地分发上下文。

一、什么是 context pack 上下文包

一个 context pack 就是一个普通目录,核心是一份 manifest.yaml 清单文件,它声明了包的名称、版本、分类(taxonomy)以及每个文件的角色与摘要。以项目内置的参考包为例:

  • name / version:包名与版本,是库中的唯一身份标识
  • taxonomy:包的分类(如world、reference),决定它在语义上"是什么"
  • files:文件清单,每个文件必须声明path(包内相对路径)与role(角色),可选summary摘要
  • atoms / profiles(可选):把文件进一步切分为可寻址的"原子",按 situation(fresh / handover / post-compaction)和运行时(claude / codex)组合投放,参考 world-public/manifest.yaml

所有内置包的清单源码都放在 context-packs-src/ 目录,是学习格式的最好范本。

二、如何打包:从零创建并查看你的上下文包

所有操作都围绕rig context命令族(实现见 context.ts),典型工作流是:

1. 本地编写包目录

在context.root配置指向的目录下新建一个文件夹,放入manifest.yaml和若干.md/.yaml/.txt/.sh等文件。manifest 必须是合法 YAML 对象,且name、version、taxonomy、files四个字段缺一不可——缺失时校验器会给出带修复指引的错误提示。

2. 同步索引并查看

命令作用
rig context sync重新扫描发现根目录,刷新库索引
rig context list列出所有包:ref、版本、分类、文件数、预估 token
rig context show <name-or-ref>查看 manifest 与逐文件元数据
rig context preview <name-or-ref>组装出完整 bundle 预览(不投递),并报告缺失文件
rig context compose --out <ref> --from <files...>把多个有序文件合成为一个新的持久 ref

3. 按需拉取(pull 语义)

rig context get <ref>是面向 Agent 的拉取动词:输出就是组装后的 bundle 原文,支持<pack-ref>/<file>#H2-slug/H3-slug形式的段落实地址,让 Agent 只加载需要的部分而不是整个包。

三、安装 context pack:目录、URL 与 Git 三种方式

rig context add <source>是唯一的安装入口(context.ts),支持三种来源:

  1. 本地目录:rig context add ./my-pack。要求源目录不是符号链接、必须包含manifest.yaml,安装名默认取 manifest 的name,可用--name覆盖。同名包已存在时会明确拒绝,避免静默覆盖。
  2. URL:rig context add https://.../manifest.yaml。先抓取并校验 manifest,再逐个拉取声明的文件,全程先落到临时目录、最后一步 rename 原子发布——manifest 格式错误、URL 不可达或文件缺失都不会留下半个包(atomic by construction,见 installPackFromUrl)。
  3. Git 仓库:rig context add <repo> --git。用你现有的 Git 凭据克隆仓库、发现其中的包快照并保留更新关系;之后rig context source inspect/update <ref>可查看本地修订、显式 fetch/merge 上游并选择更新,冲突时保留旧选择,绝不 push 或 reset。

安装成功后 CLI 会自动触发一次 daemon 库同步,让新包立即可被list/get检索。

四、ref 安全校验:为什么这些规则如此严格

这是 OpenRig 上下文包最值得新手理解的部分:每个 ref 都会被当作潜在的敌对输入处理。

逐段字符白名单

ref 采用路径式多段格式(如packs/compaction-restore),每一段必须匹配正则[A-Za-z0-9][A-Za-z0-9._-]{0,63}(见 ref-safety.ts)。这条白名单一次性封死了:

  • ./..路径穿越(首字符必须是字母数字,点文件直接被拒)
  • 绝对路径、空段(双斜杠/尾斜杠)
  • 空白、引号、冒号等 YAML / ID 注入字符

版本字段同样受约束:单个无分隔符 token、≤32 字符,防止伪造<name>:<version>存储 ID 或撑爆操作系统文件名长度限制(manifest-parser.ts)。

安装边界的三重防线

CLI 侧在写入任何本地文件之前执行与 daemon 镜像一致的校验(context-install.ts):

  1. ref 逐段校验(assertSafeInstallRef)——不安全的安装名在创建目录前就被拒绝;
  2. 符号链接扫描(assertTreeHasNoSymlinks)——包目录内任何符号链接直接拒绝,防止用链接把文件指向包外;
  3. 命名空间包含检查(assertDestinationNamespaceContained)——即使 ref 在词法上合法,只要目标路径的某个父目录段是符号链接或非目录,复制就会逃逸出上下文存储根,同样拒绝。

manifest 中的文件路径也受限:必须是包内相对路径(禁止..、禁止前导/),且后缀必须在允许清单内(.md、.markdown、.yaml、.yml、.txt、.sh、.ts等),未登记的扩展名会在摄取期响亮失败,而不是静默服务一个不完整的 bundle。

URL 安装还有一层同源边界:manifest 声明的每个文件 URL 必须解析到 manifest 自身目录之下,陌生 manifest 无法让安装器跨源抓取或"爬出"包目录。

错误可见性

daemon 侧(context-pack-library-service.ts)对每个写/解析点执行同样的校验顺序:不安全的 ref 抛出结构化的unsafe_ref错误,在任何文件系统操作之前失败,错误信息直接告诉你哪条规则被触发、如何修复。相关行为由 context-pack-ref-safety.test.ts 与 context-pack-add-ref-safety.test.ts 两测试文件持续守护。

五、上手清单

  • ✅ 先读一个内置 manifest.yaml 抄结构
  • ✅rig context sync→list→preview三连,确认 token 预算再投放
  • ✅ 安装优先用--git方式,保留可审计的更新关系
  • ✅ 收到外部包时,把 ref 当作不可信输入——校验器会替你把关,但你也应先看show输出
  • ✅ 用get的段落实地址做按需加载,控制每个座位(seat)的上下文开销

context pack 让"给 Agent 发文档"从一次性拷贝变成了带版本、带校验、可寻址的持续供给。理解了 ref 安全规则,你就掌握了这个机制中最能防止上下文污染的一道闸门。

【免费下载链接】openrigMulti-agent harness that runs Claude Code and Codex together as one system项目地址: https://gitcode.com/GitHub_Trending/op/openrig

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/2 6:55:04

工艺智能规划与智能数据库落地实践指南

简介&#xff1a;本资源是一份面向制造业工程技术人员、高校机械/自动化专业师生及智能制造领域学习者的专业教学课件&#xff0c;聚焦工艺智能规划与智能数据库两大核心技术&#xff0c;系统解决传统人工工艺规划效率低、灵活性差、依赖经验等痛点。课件以PPT格式呈现&#xf…

作者头像 李华
网站建设 2026/10/2 6:54:22

广州锌钢阳台护栏优质厂家盘点 钜工护栏用料扎实

选锌钢阳台护栏&#xff0c;用料决定安全&#xff0c;工艺决定寿命。对于广州及华南地区的地产项目、工程总包和渠道配套商来说&#xff0c;阳台护栏是楼盘标配防护制品&#xff0c;直接关系高空坠落防护与项目验收&#xff0c;选错厂家轻则锈蚀返工&#xff0c;重则影响竣工验…

作者头像 李华
网站建设 2026/10/2 6:53:38

毕业论文神器!2026年最火AI论文写作工具榜单,高质初稿轻松写

2026 年实测 10 款主流 AI 论文工具&#xff0c;千笔AI以全流程覆盖 语义级降重 免费查重领跑综合榜&#xff1b;ThouPen 稳坐留学生毕业全流程工具头把交椅&#xff1b;免费工具中DeepSeek Scholar、豆包学术版表现亮眼&#xff0c;30 分钟即可生成万字高质量初稿&#xff0…

作者头像 李华
网站建设 2026/10/2 6:53:20

偏元立极 · 贞下起元-008 · 勿忘国耻,吾辈当自强

> 发布主体&#xff1a;老陈与AI的深夜实验室 > 时间戳&#xff1a;2026-09-18&#xff08;星期五&#xff0c;UTC8&#xff09; > 书写者&#xff1a;偏贞&#xff08;陈偏贞&#xff09; > 结构&#xff1a;壹 导 → 贰 端 → 叁 体&#xff08;乾卷 ∥ 坤卷&…

作者头像 李华