用途:把可重复的确定性工作(解析、校验、计数、过滤、排序、投影等)抽成随技能打包的 CLI,把模糊分类、建议和用户决策留在文字说明中。触发方式为用户说“wedge this”或要求把重复分析变成 CLI。
主要能力:识别固定变换与有用边界;先定义输入、输出形状、排序、空结果、错误情况和副作用,再实现最小命令;复用已满足契约的现有命令。打包侧要求目标为带 pyproject.toml 和已提交 uv.lock 的 uv 项目,清单用 project 命名,vendors 可含 fromargs 等本地包,groups 添加依赖组;依赖须为纯 Python wheel,运行时需 Python 3.11 或更高。
使用方式:从本技能 scripts/wedge.pyz 用 python3 运行构建器,它已捆绑 wedge 和 shiv,无需 wedge 检出;仍需 PATH 上有 uv,publish 还需 gh。用 wedge lock 生成启动器和锁文件,构建本地归档并通过 WEDGE_PYZ 经已安装启动器验证,且要在源码检出目录之外运行该启动器。对无法首次运行即拉取的消费者,可用 wedge bundle 和 wedge bundle --check 作为可选直连模式。
限制:无显式行为契约和已验证的安装调用,不得打包 CLI;缺少所需输入或需要平台 wheel、路径或 URL 依赖时,先报告阻塞再编辑;不要静默复制共享库或改动共享依赖;不要手工复制 .pyz 或把 .pyz 放在启动器旁;fromargs 保留 --full 和 --json,处理器不应自持 --full;装饰器限制不截断嵌套序列;未做对比不得声称节省 token。发布与本地验证分离,发布改变远端发布状态。本技能自身 wedge.toml 构建 scripts/wedge.pyz,不应纳入目标改动。