mcpField
P
path-types

path-types

github.com/openai开发131.4k210 次安装今天更新
代码仓库

关于 path-types

为 Codex 服务协议和内部代码规定路径类型规范,供新增或迁移路径类型的开发者使用,涵盖 URI 边界、兼容性与错误处理。

主要功能

  1. 01规定 app-server 和 exec-server 的路径类型
  2. 02定义协议边界处的 URI 转换
  3. 03保留 app-server 旧版路径字符串
  4. 04明确迁移及转换错误要求

适用场景

  1. 01为新的协议字段选择路径类型
  2. 02将服务端路径从字符串迁移到 URI

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/openai/codex --skill path-types

安装后在 Claude Code 中输入/path-types确认已加载。

详细介绍

路径类型

定义新类型时,请遵循此指南。仅在明确要求时更改现有代码,并确保修改尽可能精简且适度。将这些规则视为持续迁移的目标状态;如果难以遵守,请询问用户如何继续。

  • 在 app-server 协议类型中,使用 LegacyAppPathString 在 URI 迁移期间保持向后兼容。在协议边界处,将其转换为 PathUri,并在内部使用 PathUri。对于主机本地逻辑(例如某些配置值),则使用 AbsolutePathBuf 或 PathBuf。
  • 在 exec-server 协议类型中,使用 PathUri。在内部根据情况使用 PathUri 或 AbsolutePathBuf。
  • 在两个服务共用的依赖中,使用 PathUri,或采用彼此解耦其使用场景的独立 API。
  • 对于预期由模型生成的工具调用参数,应将其反序列化为常规 String,并使用特定于功能的路径处理代码。

迁移要求

迁移代码以符合上述指南时,请牢记以下要求:

  • 现有 app-server 客户端继续发送和接收旧版原生路径字符串
  • app-server 可以保留并操作外来平台的路径 URI
  • exec-server API 使用 file:// URI
  • 仅本地操作不得更改模型可见文本
  • 模型工具参数可以包含任意操作系统的原始相对路径或绝对路径
  • 相关环境启动前,路径推理也必须能够正常工作
  • URI 无法明确编码执行器的路径约定或操作系统
  • 用户不得显式配置环境的操作系统/路径约定
  • URI 暂不应存储在 rollout、数据库或其他持久化存储中
  • 路径转换错误:安全相关路径采用失败即关闭策略,UI/诊断则采用失败即开放策略
  • 优先在 PathUri 或 LegacyAppPathString 上定义小而专注的方法,而不是使用本地辅助函数
  • 在诊断信息中将 PathUri 值表示为 URI

只要能为真实用户正确处理,路径与 URI 之间的转换有一定信息损失也可以接受。

迁移到 URI 不应显著增加新的故障模式。某些先前不会失败的地方需要显示错误,但应尽可能减少此类情况。

评论

支持 Markdown