SuperAPI AI 工具集

skd-decompile

编程与开发

查看项目

更新于 10-15 21:49

技能介绍

用途:读取 1C 数据布局方案(СКД)的 Template.xml,生成 skd-compile 格式的 JSON 草稿。适合按现有 СКД 作为样板搭建新报表,或进行结构性重构(重写变体、重画模板、调整字段集合)。不适用于对成品报表做点状修改(加字段、过滤、重命名等),那类操作应使用 /skd-edit,因为“反编译→改 JSON→编译”会整体重写模板,可能丢失未覆盖结构并产生大量 diff。

主要能力:大部分 СКД(字段、参数、模板、带 structure/filter/order/conditionalAppearance 的变体等)会作为普通 DSL 节点落入 JSON。遇到无法用 DSL 表达的构造时生成 sentinel 节点(标记 unsupported),JSON 仍合法,但编译器会拒绝编译,直到 sentinel 被手动实现替换或按需删除。同时在 OutputPath 旁生成 <basename>.warnings.md,列出所有 sentinel 节点及原文件坐标。遇到 Picture cells、ХранилищеЗначения、嵌套方案、非 СКД root 等关键构造时,脚本以非零码退出并在 stderr 输出信息,此类 Template 不宜作样板。

用法:参数 TemplatePath(Template.xml 路径,必填)、OutputPath(输出 JSON 路径,未设置则输出到 stdout)。命令: powershell.exe -NoProfile -File "${CLAUDE_SKILL_DIR}/scripts/skd-decompile.ps1" -TemplatePath "<Template.xml>" -OutputPath "<out.json>"

工作流:/skd-decompile <Template.xml> -OutputPath draft.json 得到草稿;查看 draft.warnings.md 了解未覆盖内容;按任务修改 JSON,替换或删除 sentinel;用 /skd-compile -DefinitionFile draft.json -OutputPath new-Template.xml 重新编译;再用 /skd-validate 和 /skd-info 检查。

限制:输出是草稿而非完整可逆表示,可能无法直接送入编译器;具体依赖环境与版本未提供,未提供收费或平台信息。