Codex技能管理 ms

本技能专为自动化管理Codex技能而设计,支持创建、更新和重构技能文档及配置文件,包含验证和SEO优化功能,适用于开发团队提高效率。关键词:Codex技能、自动化、开发工具、文档管理、验证、SEO、技能开发。

DevOps 0 次安装 0 次浏览 更新于 3/8/2026

name: ms description: 创建、更新或重构此仓库中的Codex技能,包括SKILL.md、frontmatter触发文本、agents/openai.yaml以及scripts/references/assets。当被要求创建或改进技能、根据使用证据(例如通过$seq)收紧触发描述、重新生成/验证agents/openai.yaml或调整技能元数据/工作流时使用。

ms

概述

以最小差异创建和更新Codex技能。直接在技能文件夹中工作(无外部注册表),保持技能简洁。

硬约束

  • 最小差异:仅更改满足新需求所需的内容。
  • 无额外文档:不添加README/INSTALL/CHANGELOG类型的文件。
  • Frontmatter:
    • 默认:仅namedescription
    • 更新系统技能时保留现有允许的键(例如metadatalicenseallowed-tools)。
    • name必须是连字符格式(<=64字符)并与文件夹名匹配。
    • description是触发表面:包含“何时使用”提示;无尖括号;<=1024字符。
  • SKILL.md正文:
    • 使用祈使语气。
    • 保持在500行以下;将详细细节放入references/
    • 不要在正文中放置触发指导;将其放在frontmatter description中。
  • agents/openai.yaml(如果存在/需要):
    • 优先通过generate_openai_yaml.py生成。
    • short_description必须在25-64字符之间。
    • default_prompt必须是一个短句并提及$skill-name
  • 完成证明(必需):
    • 记录agents/openai.yaml处理状态为:regeneratedverified unchangednot present
    • 在最终摘要中包含使用的确切quick_validate.py命令及其通过/失败结果。
  • 在宣布完成之前始终运行quick_validate.py
    • 推荐(无全局安装):
      • uv run --with pyyaml -- python3 codex/skills/.system/skill-creator/scripts/quick_validate.py <path/to/skill>
    • 注意:skill-creator脚本需要PyYAML(import yaml)。

工作流决策树

  • 如果匹配技能已存在:运行更新工作流。
  • 如果没有匹配技能:运行创建工作流。
  • 如果名称、位置或触发不明确:询问1-3个针对性问题,然后继续。
  • 如果改进ms本身:首先运行Seq反馈循环,并使用该证据选择最小的更新集。

创建工作流

  1. 去重:搜索已覆盖意图的现有技能;优先更新而非创建近重复项。
  2. 发现和定义:收集2-3个具体用户提示,然后编写:
    • 问题陈述(1行)
    • 成功标准(我们如何知道它工作)
  3. 规划可重用资产:决定是否需要scripts/references/assets/;仅创建必要的内容。
  4. 初始化(脚手架):
    • uv run --with pyyaml -- python3 codex/skills/.system/skill-creator/scripts/init_skill.py <skill-name> --path codex/skills
    • 仅在需要时添加--resources scripts,references,assets
    • 如果现在需要UI元数据,传递--interface key=value(可重复)。
  5. 编写SKILL.md
    • 更新frontmatter description以包含具体触发(文件类型、工具、任务、关键短语)。
    • 保持正文过程化和可组合(决策树 + 步骤 + 指向references/的指针)。
  6. 同步UI元数据(可选但推荐用于新技能):
    • 生成或重新生成:uv run --with pyyaml -- python3 codex/skills/.system/skill-creator/scripts/generate_openai_yaml.py codex/skills/<skill-name> --interface key=value
    • 如果技能已有default_prompt,在覆盖中再次包含它(生成器不推断它)。
    • 对于字段约束,阅读codex/skills/.system/skill-creator/references/openai_yaml.md
  7. 验证:
    • uv run --with pyyaml -- python3 codex/skills/.system/skill-creator/scripts/quick_validate.py codex/skills/<skill-name>
  8. 与用户迭代:收紧触发、移除冗余,并将可重复代码提升到scripts/

更新工作流(原地)

  1. codex/skills中定位目标技能文件夹(或codex/skills/.system用于系统技能)。
  2. 阅读当前SKILL.md和资源以识别所需的最小更改集。
  3. 原地编辑:
    • 如果触发更改,更新frontmatter description
    • 以最小差异调整工作流、任务或引用(无格式变动)。
    • 仅当创建真实重用时添加或移除资源文件夹。
  4. 同步UI元数据:
    • 如果agents/openai.yaml存在,保持其与技能一致并在过时时重新生成。
    • 如果缺失且需要UI元数据,使用uv run --with pyyaml -- python3 codex/skills/.system/skill-creator/scripts/generate_openai_yaml.py <path/to/skill> --interface key=value创建。
  5. 使用uv run --with pyyaml -- python3 codex/skills/.system/skill-creator/scripts/quick_validate.py <path/to/skill>验证。
  6. 总结更改和下一步。
    • 包括openai_yaml: regenerated|verified unchanged|not present
    • 包括quick_validate: <exact command> -> <result>

Seq反馈循环(用于改进ms

当目标技能是ms时,编辑前挖掘最近会话:

  1. 收集提到$ms的助手输出:
    • uv run codex/skills/seq/scripts/seq.py query --root ~/.codex/sessions --spec '{"dataset":"messages","where":[{"field":"role","op":"eq","value":"assistant"},{"field":"text","op":"contains","value":"$ms"}],"select":["path","timestamp","text"],"sort":["timestamp"],"format":"jsonl"}'
  2. 计算必需证明标记的遵守率:
    • quick_validate.py
    • uv run --with pyyaml -- python3 codex/skills/.system/skill-creator/scripts/quick_validate.py
    • agents/openai.yaml
    • generate_openai_yaml.py
  3. 将重复的失误提升为最小切口的SKILL.md约束/工作流编辑。

触发示例

  • “创建一个技能来管理OpenAPI规范并生成SDK。”
  • “更新技能X以包括新工作流并重新生成agents/openai.yaml。”
  • “重构此技能的SKILL.md并为模式添加references/。”
  • 重构此技能的SKILL.md,将详细细节移动到references/,并保持在500行以下。”