1
0
Files

4.2 KiB
Raw Permalink Blame History

Context

当前项目中存在 lyxy-reader-docx skill仅支持 DOCX 格式的文档解析。skills/lyxy-reader-office/scripts/ 目录下已完成全部解析脚本的开发parser.py、common.py、docx_parser.py、pptx_parser.py、xlsx_parser.py、pdf_parser.py、README.md支持 DOCX、PPTX、XLSX、PDF 四种格式。现在需要创建 SKILL.md 作为 skill 的入口文件,并清理被替代的旧 skill。

已有资源:

  • skills/lyxy-reader-docx/SKILL.md:参考模板,已验证的 skill 结构
  • skills/lyxy-runner-python/SKILL.mdPython 执行 skill与本 skill 协作
  • skills/lyxy-reader-office/scripts/README.md:完整的脚本使用文档
  • document/specification.mdskill 格式规范

Goals / Non-Goals

Goals:

  • 创建 skills/lyxy-reader-office/SKILL.md,遵循 skill 格式规范
  • SKILL.md 的 description 能覆盖 .docx、.xlsx、.pptx、.pdf 四种文件扩展名关键词,确保大模型在发现阶段能正确匹配
  • 引导大模型优先使用该 skill 读取这四种格式的文件
  • 引导大模型阅读 scripts/README.md 获取详细的脚本使用说明
  • 引导大模型在 lyxy-runner-python skill 可用时必须使用该 skill 来运行 Python 脚本
  • 删除 skills/lyxy-reader-docx 目录

Non-Goals:

  • 不修改已有的解析脚本代码
  • 不修改 lyxy-runner-python skill
  • 不新增任何解析功能
  • 不创建单独的文档说明文件(如旧 skill 的 docx_parser.md),详细用法通过引导阅读 README.md 解决

Decisions

决策 1SKILL.md 结构参考 lyxy-reader-docx 但大幅精简

选择SKILL.md 专注于发现description、激活引导何时使用、触发条件和执行入口指向 README.md不在 SKILL.md 中重复 README.md 的内容。

理由

  • 规范建议 SKILL.md 保持在 500 行以下
  • README.md 已包含完整的命令行用法、参数说明、安装指南、错误处理等
  • 重复内容会导致维护负担,且增加不必要的 token 消耗
  • 渐进式披露SKILL.md 负责激活判断README.md 负责执行细节

替代方案:将 README.md 全部内容嵌入 SKILL.md — 拒绝,因为会超过 500 行限制且违反渐进式披露原则。

决策 2强制引导使用 lyxy-runner-python

选择:在 SKILL.md 中明确要求大模型在 lyxy-runner-python skill 可用时必须使用该 skill 来运行 parser.py不提供直接 Python 执行的选项。仅在 lyxy-runner-python 不可用时降级到直接 Python 执行。

理由

  • lyxy-runner-python 使用 uv 管理依赖,能自动安装解析器所需的第三方库
  • 环境隔离,不污染系统 Python
  • 与 lyxy-reader-docx 保持一致的执行策略

替代方案:将 lyxy-runner-python 作为可选推荐 — 拒绝,因为用户明确要求"必须使用"。

决策 3通过引导阅读 README.md 提供详细用法

选择SKILL.md 中仅给出基本的执行命令格式和常见示例,详细的参数说明、依赖安装、解析器对比等内容通过引导大模型阅读 scripts/README.md 获取。

理由

  • 符合渐进式披露原则SKILL.md 是指令层README.md 是资源层
  • README.md 已有完整且结构化的文档,无需重复
  • 减少 SKILL.md 的体积,提高激活阶段的效率

决策 4删除 lyxy-reader-docx 而非保留兼容

选择:直接删除整个 skills/lyxy-reader-docx/ 目录。

理由

  • lyxy-reader-office 完全覆盖了 lyxy-reader-docx 的功能
  • 保留旧 skill 会导致两个 skill 争抢 .docx 文件的处理权,造成歧义
  • 用户明确要求删除

Risks / Trade-offs

  • [旧 skill 引用残留] → 检查项目中是否有其他地方引用了 lyxy-reader-docx(如 .claude/settings 中的 skill 配置),删除时需同步清理
  • [description 覆盖度] → description 需要包含 docx、xlsx、pptx、pdf 等关键词,确保大模型在发现阶段能匹配到四种文件类型。但 description 有 1024 字符限制,需要精简表达
  • [SKILL.md 体积控制] → 需在"提供足够的执行引导"和"保持 500 行以内"之间平衡。通过引导阅读 README.md 解决详细信息的需求