Skill Portability Compiler 是一个技能移植类工具,目标是把一个已经存在的智能体 Skill 从一个宿主环境迁移到另一个宿主环境(如 ChatGPT、Codex、Claude、API 智能体或其他兼容宿主),并在迁移过程中不丢失原有的决策逻辑、证据门控和激活条件。资料给出的核心理念是:把行为与宿主机制分开,只改编真正不同的部分。
用途:资料指出,Skill 常常与特定厂商的运行时细节紧密耦合,例如 Claude Code 的工具名、Cursor 的规则语法、Codex 的插件 schema。作者在移植到另一个智能体时,往往需要手工重写整个 Skill,从而引入行为差异并丢失核心证据门控。该技能面向这一类问题,希望通过分离可移植核心与宿主适配器来保持行为一致(零语义损失)。
主要能力(按资料中的步骤):
- 提取可移植核心:读取源 Skill,把每个元素归类为激活元数据、行为规则、领域知识、决策策略、证据门控、确定性机制、参考资料、宿主专用语法、环境假设、打包元数据;除不安全或过时的部分外,保留前七类进入可移植核心。
- 查找宿主耦合:检索必需指令中的厂商名称、硬编码工具函数名、固定安装路径、环境变量、必需 API 密钥、钩子语法、子智能体语法、模型家族假设、包/清单字段、假定单一运行时的 shell 命令等;判断该耦合是任务本身需要还是仅是一种实现路径,把仅属实现的耦合移入适配器。
- 建立能力矩阵:参考 ../skill-conductor/references/host-adapters.md,为每个目标宿主记录技能所需能力、已知存在的能力、证据来源、是否需要适配器、回退行为、测试状态;未知视为不支持。
- 编译适配器:适配器保持小型,可定义安装布局、清单元数据、调用或生命周期约定、抽象能力到真实宿主工具的映射、脚本运行时差异、资源加载差异;不把整个核心复制进每个适配器。
- 去除伪依赖:可移植 Skill 不应仅因某次历史评估使用 Anthropic 就要求 Anthropic 密钥,不应在任务不需要时要求 uv、Node、Bun 或 Python,不应仅因某宿主提供文件系统或 shell 权限就要求它们,也不应在指令与宿主原生工具足够时要求 MCP;若确定性辅助工具确实需要运行时,应声明为能力需求并给出诚实回退或不支持状态。
- 重新测试激活与行为:结构翻译不够;对每个声称已测试的目标宿主,重跑正向激活、负向激活、关键行为断言、失败路径以及相关压力用例,并记录宿主与模型细节(若可获取)。
- 分配宿主状态:只能使用 SUPPORTED_TESTED、SUPPORTED_STRUCTURAL_ONLY、ADAPTER_REQUIRED、UNSUPPORTED、UNKNOWN 之一;若只做了静态翻译,应使用 SUPPORTED_STRUCTURAL_ONLY。
使用方式:资料仅描述了工作流程与输出契约,未提供安装命令、CLI 用法、代码示例或配置文件格式。输出契约要求返回:可移植核心摘要、已移除的宿主假设、能力矩阵、适配器文件或补丁计划、行为保留清单、逐宿主测试证据、每个宿主的可移植状态、未解决的缺口。
适用场景:跨宿主复用已有 Skill;把与特定厂商运行时耦合的 Skill 重构为厂商中立核心;需要保留证据门控与决策策略的迁移;需要按宿主给出支持状态与回退方案的项目。
限制:资料未提供实际命令、安装方式、依赖版本、收费信息、平台清单或性能数据;能力矩阵依赖外部文件 ../skill-conductor/references/host-adapters.md,该文件内容未在本资料中给出;若未做真实宿主测试,只能标记为结构翻译状态;未知能力不得假定为支持。