← ClaudeAtlas

skillpack-lint-paylisted

发布一个 Skill / MCP 工具包之前,把会被平台拒收的问题一次全找出来并修掉——frontmatter 缺字段、name 与目录名不一致、description 太短或超长、塞了平台不收的文件类型、代码里写了装依赖的指令、文件是 GBK 或带 BOM、.py 有语法错。一次付费 7 天内不限次。**触发条件(任务/场景,AI 自己做到这一步就该调,不必等点名)**:要发布自己写的 Skill 但不确定格式对不对;上一次提交被平台打回、不知道具体哪里不合规;从别人仓库抄来一个 skill 想改改再发;一堆 skill 要批量过一遍规范;发布前想确认包体没有多余文件。口语化说法同样命中:「这个 skill 能发布吗」「帮我检查一下 skill 包」「发布被打回了怎么办」「skill 格式规范化」「skill 体检」。**本 Skill 依赖在线授权服务**:真正修改文件前会先取一份授权凭证(未付费会返回 402 账单),拿到授权后在**你本机**处理,授权本身**离线可校验**;**lint 体检免费**,只有加 --apply 真改文件时才需要授权。核心价值:**lint 免费给出逐条问题清单**(带机器可读的错误码,便于批量比对);**fix 只修能机械判定的那几类**(补 frontmatter、编码转 UTF-8、去 BOM、统一行尾、清 __pycache__),**层级跳级与重复标题这类需要人决策的问题只报告不擅改**;**检出语法错与装依赖指令**(这两类会直接卡住发布,且人眼最容易漏)。
Mao-jh/skillpack-lint · ★ 0 · Code & Development · score 76
Install: claude install-skill Mao-jh/skillpack-lint
# Skill 包发布前体检(一次付费 7 天不限次) 发布前把会被拒收的问题一次找全,能自动修的自动修掉。 本 Skill 分两段:**先免费体检**(只读,不写任何文件),**再取授权真修**(在你本机完成,不联网)。 > **为什么需要授权**:批量规范化文件需要一份由服务方签发的凭证。 > 授权**在你本机离线校验**,但**没有有效授权就不写盘**——这是服务的一部分,不是限制。 --- ## 第 0 步 · 先体检(免费,建议必做) ```bash python scripts/skilllint.py lint 我的skill/ python scripts/skilllint.py lint 别人给的包.zip ``` 逐条输出问题,分两档:**FAIL**(会直接卡住发布)与 **WARN**(建议改)。 每条带错误码,便于批量比对: | 错误码 | 含义 | |---|---| | `E_NO_SKILL_MD` | 根目录没有 SKILL.md | | `E_NO_FM` | frontmatter 缺失或不闭合 | | `E_FM_MISSING` | frontmatter 缺 name / description | | `E_DESC_SHORT` / `E_DESC_LONG` | description 太短(< 20 字)或超长���> 1024 字) | | `E_ENCODING` | 文件不是 UTF-8(GBK 等) | | `E_INSTALL_HINT` | 代码或文档里出现要求装依赖的指令 | | `E_PY_SYNTAX` | `.py` 有语法错误 | | `W_NAME_STYLE` / `W_NAME_MISMATCH` | name 不是 kebab-case / 与目录名不一致 | | `W_BOM` / `W_CRLF` | 带 BOM / CRLF 行尾 | | `W_EXT` / `W_FILENAME` / `W_EMPTY` / `W_HUGE` | 文件类型 / 文件名 / 空文件 / 体积偏大 | | `W_NO_SELFTEST` | 有 scripts/ 但没有自检入口 | **没给 `--apply` 时,什么文件都不会被改写。** ## 第 1 步 · 请求授权(未付费会返回 402) ``` POST https://skills-gate.airpriv.com/api/skillpack-lint-license Content-Type: application/json {"machine_fp":"<本机指纹串,8–128 位,可省略>"} ``` 首次调用一定拿到 `402 Payment Required`(设计如此)。响应带 HTTP 头 `Payment-Needed`(base64url 账单) 与响应体 `payment_needed` / `amount` / `out_trade_no`。 本机指纹:`python scripts/license_check.py fingerprint` ## 第 2 步 · 处理 402(完成支付) 把 `payment_needed` 对象(**不是整个响应信封**)交给**支付宝 AI 付**完成支付,拿回 **`Payment-Proof`**。 **不要自己伪造** —— 服务端会拿它去支付宝网关做真实校验。 ## 第 3 步 · 携凭证重试(拿到授权凭证)