SuperAPI AI 工具集

token-mapping

设计与创作

查看项目

更新于 10-17 16:13

技能介绍

Token Mapping 是一个只读的映射报告技能,用来回答“这里有没有用上我们的令牌”“这个值对应哪个令牌”之类的问题。它把页面、文件或 diff 中的原始样式值(hex、px、阴影等)对应到由他人维护的令牌清单上。匹配类别、归一化方式与容差规则见 references/mapping-rules.md。

用途 用于检查硬编码样式值与项目既有设计令牌的对应关系,输出结构化报告,供团队判断令牌使用情况。

主要能力

  1. 查找令牌清单:从令牌文件、主题条目、:root 自定义属性、组件库的变量对中定位清单,并记录名称、位置与读取方式;若读取失败则停止并说明。不使用记忆填充清单。
  2. 查找待检查的值:按用户指定范围、分支 diff 或产品代码定位,记录文件、行、属性与用途。
  3. 解析别名:在每个模式下追踪每个别名到最终值,记录两个来源之间的所有不一致。
  4. 归一化:用代码而非肉眼把长度转为 px、颜色转为 OKLCH 并按 delta E OK 比较。
  5. 分类:每个模式对每一行分类一次,先看用途再看值——精确(用途覆盖且值匹配)、语义(用途覆盖且值在容差内,并给出数值差异)、歧义(多个令牌都符合且无法选定,列出所有候选)、缺口(无令牌用途覆盖,或唯一符合的令牌超出容差;缺口不另起新名)。
  6. 计数与收尾:当缺口超过行数 30% 且数量达到 12 个或以上时,提示清单可能选错,仍交付表格,并以 Status: not actionable (gap threshold) 开头。

使用方式 只需提出类似“检查设置页上的令牌”这样的请求即可,技能会自行查找值与清单。报告包含 Summary、Mapping、Do not use(值匹配但用途不同的令牌)、Ambiguous、Gaps、For a person to decide、Source,最后一行是 Coverage:,说明扫描了什么、未扫描什么。单独运行时,聊天回复会给出带数字的答案,并提供一条可直接粘贴以推进下一步的提示。

规则要点 先值后用途的匹配是错误的;语义令牌优先于其别名指向的原始令牌;调色板类名(如 text-gray-500)只有值没有用途,单独成行并单独计数;推断而非读取的内容(如从类名推断用途)需标注 inferred;计数需带单位(出现次数、行数或映射行)。

停止条件 仅在以下情况停止并报告:不存在清单;同一名称在同一模式下有两个值;两个来源冲突且无项目规则判定谁优先(两者都报告)。停止时返回原因、已完成的基础工作以及解除阻塞的最短消息(如“粘贴 tokens.json 或给出其路径”)。

完成标准 每行都有用途、分类和理由;每个歧义行列出两个或以上候选;仓库未发生改动(前后 git status 一致);最后一行是 Coverage:。

限制 该技能只读、不修改代码;无法在缺少令牌清单时工作;容差与分类规则依赖 references/mapping-rules.md;不负责创建新令牌名称。