news 2026/10/10 9:08:03

10 分制评分工作流:把作品逐轮打磨到目标分数的完整方法(Skills 仓库 workflow-score-to-target 实战指南)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
10 分制评分工作流:把作品逐轮打磨到目标分数的完整方法(Skills 仓库 workflow-score-to-target 实战指南)

【免费下载链接】Skills

Agent skills for designers and builders using Codex, Claude, Cursor, and other AI coding agents

项目地址:https://gitcode.com/gh_mirrors/skills48/Skills
点击查看免费下载

导读

当用户以数字设定质量门槛——"把它做到 8/10"、"把低于 6 的全都提到 6 分以上"——Agent 需要的不只是一个分数,而是一整套可重复的执行流程:锚定评分标准、逐项诚实打分、按轮次改进、用证据证明达标、并把分数沉淀为可回归的测试与记分卡。本文以 Skills 仓库中workflow-score-to-target技能文档为核心,结合其配套模板与仓库内的真实落地案例(3D 木材光照评分卡),完整讲解这套"评分到目标"工作流的每个环节。读完你可以直接复制这套方法,用于游戏、UI、3D 场景、动画等任何可被评分与迭代的工作。

一、技能定位:什么时候触发这套工作流

workflow-score-to-target的 frontmatter 将其适用场景定义得非常明确:只要用户要求对作品以 10 分制评分、评级、打分、判定,并且命名了目标分数,或提出"做到几分才算好(what would make this a 9?)",就应当启动它。典型的用户原话包括:

  • "score them out of 10. let's get them to 8 out of 10"(全部做到 8 分)
  • "anything less than 6 out of 10, get them to 6+"(低于 6 的全部提到 6 分以上)
  • "give it a score out of 10. get at least 8"
  • "make it 8 or 9 out of 10"

技能文档反复强调的核心立场是:任务不只是打出一个分数,而是达到门槛、证明达到门槛、并如实说明哪里还差(The job isn't just the score; it's reaching the bar, proving it, and saying plainly where it falls short)。这决定了后续所有步骤的设计。

该技能属于仓库agent-skills/workflow/README.md描述的"工作流技能"家族——它是用户在每个线程里反复强调的"家规"被固化成可执行流程的产物,与workflow-progress-screenshots(进度截图)、workflow-ship-change(变更发布)、workflow-threads-manager(线程管理)协同使用:先用截图展示进展,用户命名门槛后用评分工作流逐轮逼近,达标后再走发布流程。

二、第一步:锁定目标与待评分条目

正式打分前,必须先消除歧义:

  1. 复述门槛:明确目标是 6、8 还是 9,并且确认它是作用于每一个条目还是平均值。文档特别强调:"Get them to 8" 意味着每一个条目都要达到 8 分,而不是平均分到 8。
  2. 列出所有待评分条目:每个技能、每把武器、每个屏幕元素、每个对象,都必须逐一分列,逐一打分,绝不能当成一个整体打一个分数(never as one blob)。
  3. 命名基准(benchmark):用户拿什么作为参照——具体的游戏、网站、产品。文档明确说:"A 7 means nothing without one"——没有基准的 7 分毫无意义。基准必须在文档、记分卡中写明,它决定了"8 分"到底指什么水平。
  4. 把一次性门槛固化为常设规则:用户设置过一次的门槛,就是该类工作的长期标准(a standing rule)。应当把它记录在未来工作能看到的地方——项目说明(project instructions)、记忆(memory)或测试(a test)中。这为后面的"固化(Lock it in)"步骤埋下伏笔。

三、第二步:打分前先锚定评分标准(rubric)

评分标准必须先写下来,否则"分数每轮含义不同",改进就没有意义。技能文档给出了默认的 10 分制锚点表,这也是所有后续打分的语义基准:

分数含义
10一流水平(Best-in-class),值得被当作研究对象
9优秀:训练有素的眼睛几乎挑不出毛病
8打磨到位且意图明确,只有微小的瑕疵
7良好,但存在明显缺陷
6可接受:能工作、能读清楚,但有肉眼可见的粗糙边缘
5平庸:想法在,但执行让人分心
3–4明显坏了,或有多处错误
1–2几乎不能用,或看起来完全是另一回事

3.1 把每个条目拆成 3–5 个"0–2 分"的标准

锚点表只定义了"整体分数"的语义,但整体分缺乏可操作性。文档要求把每个条目拆成3–5 个标准(criteria),每个标准 0–2 分,这样总分天然是 10 分制,而且每一个点都有理由。0–2 分制的好处是每个标准只有三档(坏了 / 能用但有明显缺陷 / 打磨到位),判定边界清晰。

文档给出了三个领域的具体拆分示例:

  • 动画(Animation):重量感与节奏(weight and timing)、身体力学(body mechanics)、最终姿态(final pose)、道具(props)、背景与变化(context and variety)。
  • 技能或法术(A skill or spell):规则(有自己清晰的职责)、悬停提示(hover,展示落点与数值)、施放表现(cast,自己的姿态、特效和音效)、以及留下的可见痕迹。
  • 对象(An object):在游玩距离上的剪影可读性(silhouette at play distance)、材质与细节(material and detail)、是否契合场景设定(fitting its setting)、可读性(readability)。

3.2 能测的必须测:用数字阻止分数漂移

文档的核心原则是:凡是能量化的标准,就必须测量。示例包括:

  • 脚步滑动不超过移动速度的 10%(foot slide under 10% of travel speed);
  • 武器穿模用毫米计(weapon clipping in millimetres);
  • 40 个随机种子上的胜率达到 48%(a 48% win rate over 40 seeds);
  • 下载包体 28 MB。

理由一句话:数字能阻止分数随情绪漂移(Numbers stop the score drifting with mood)。测量值(0–2 或 0–10 的分档锚点)应当在写 rubric 时一并确定,之后每轮用同一套标准、同样的测量方式复测。

四、第三步:基于真实证据诚实打分

这一节决定了整个工作流的可信度:

  1. 只从真实产物评分:分数必须来自对实际作品的渲染(renders)、录屏(recordings)或测量(measurements),绝不能凭代码或记忆打分。要先捕获状态,这正对应仓库中workflow-progress-screenshots技能的职责——用真实截图(headless 捕获或浏览器视口)把作品状态固定下来作为证据。
  2. 改动前先测基线:任何修改之前,先对现状打分。"前后对比(before→after)"本身就是达标证明(The before→after is the proof)。基线缺失,改进就无从谈起。
  3. 关键场景要独立评审(independent judging):把捕获的素材交给一个没有参与制作的全新子 Agent,给它 rubric 和基准,但不给它你的期望和之前的分数(not your hopes or the previous scores)。每个条目尽量安排两位盲评(blind judges),取较低分或对差异进行调和。这是对抗"自评漂移"最有效的手段。
  4. 绝不四舍五入凑达标线:文档明确写道:"Never round up to reach the bar. A 7.5 on an 8 bar is below the bar."——目标是 8,7.5 就是未达标,不能因为"差一点"就进位。

五、第四步:逐轮改进(Improve in rounds)

评分不是终点,改进循环才是。文档给出了标准轮次流程:

  1. 先修最低分条目,且在每个条目内先修扣分最多的那个标准(Fix the lowest items first, and the criterion costing the most points in each)。
  2. 重新捕获、重新评分,而且只能用同一套 rubric 和同一套评审设置,否则前后分数不可比。
  3. 每轮发一张图(起点与结果),并带上分数变化,例如:"Hollow Keeper 3 → 6 → 8"。这再次与进度截图技能衔接——每轮发图既是证据也是汇报。
  4. 停止条件:当每个条目都达标,或某个条目因为任务之外的原因(模型能力上限、美术资产缺失、性能预算)而陷入平台期时停止。对未达标条目要如实报告:原因是什么、要达到它需要什么条件。
  5. 爬升时保持护栏(guardrails):不能为了抬高一个数字而牺牲性能预算、测试或其他条目的分数。任何做出的权衡(trade-off)都必须记录。

六、第五步:固化(Lock it in)

达标之后,成果必须被固化,防止悄悄回退:

  1. 凡是机器可校验的门槛,就加测试:例如"七种姿态下武器都不穿出身体"、"技能有自己的姿态和卡片"、"胜率至少 90%"。测试让门槛成为常设规则,与第一步"standing rule"呼应。
  2. 把记分卡存档到项目中:例如qa/<area>/README.md,内容包括 rubric、每个条目的前后分数、证据和日期。文档特别说明:未来每一轮都从这张记分卡出发(Future rounds start from it)。仓库提供了现成的记分卡模板agent-skills/workflow/workflow-score-to-target/templates/scorecard.md。

七、汇报(Report):以结果为纲,诚实收尾

最终汇报的结构在文档中有明确规定,且有配套模板:

  • 先给结论数字:"All 49 now score 8 or better; 38 started below 8; the average rose from 6.7 to 8.1."(49 个条目全部 8 分以上;其中 38 个起点低于 8;平均分从 6.7 提升到 8.1)。结论前置,不用用户翻到最后。
  • 一张表:条目、before → after、修复的主要缺陷(或仍未达标的原因),见templates/scorecard.md。
  • 说明评分方式:用了什么 rubric、什么基准、谁评的(自己 / 独立子 Agent / 双盲评审)、基于什么证据。
  • 说明不完美之处:正好达标或刚过线但仍有已知瑕疵(nits)的条目,以及任何仍在门槛之下的条目。
  • 放图:每个条目的前后对比图,或每轮的对比图。
  • 诚实标注:说明分数是判断(judgements)、哪些标准是测量的、对截图证据做如实标注(例如 headless 捕获还是浏览器视口)。

7.1 记分卡模板详解

templates/scorecard.md提供了可直接填充的存档结构,字段包括:

  • 头部元信息:日期、基准(Benchmark)、评审者(self / independent subagent / 2 blind judges)、证据存放位置。
  • Rubric 表(0–2 分 × 3–5 个标准):每个标准的三档描述——0(broken)、1(works, visible flaws)、2(polished)。
  • Measured checks:量化检查清单,如"foot slide < 10% of travel speed; clip < 5 mm; win rate ≥ 90% over 40 seeds"。
  • Scores 表:条目、Before、After(达标项加粗)、修复的主要缺陷、测量值、证据路径;未达标条目在 After 列写明 "still short: <原因、所需条件>"。
  • Result 行:<k> of <n> at or above <N>,平均分 before → after。
  • Rounds 表:每轮改了什么、该轮后最低分条目。
  • Known nits at the bar:达标但仍有小瑕疵的清单。

7.2 独立评审提示词模板详解

templates/critic-prompt.md是可粘贴给新子 Agent 的评审提示词,完整实现了文档的"独立/盲评"要求:

  • 声明评审者身份:"你没有参与制作,只根据你看到的来评判"(judge only what you see)。
  • 给定基准(Benchmark)、目标分数(every item must reach N/10)、10 分锚点(含 10 / 8 / 7 / 6 / 5 及以下五档精简版)。
  • 列出 0–2 分 rubric 的 5 个标准。
  • 明确证据清单(每个条目的图片/视频/测量文件路径),并要求"先打开每个文件再打分"。
  • 要求每个条目返回:每个标准的分数与总分、扣分最重的单一缺陷及修复建议、以及哪些点无法从证据判断。
  • 硬性规则:"Do not round up. Do not assume anything the evidence doesn't show. Keep each item to five lines or fewer."(不四舍五入、不臆测证据之外的东西、每个条目五行使内)。

八、仓库实战:3D 木材光照评分卡如何完整落地这套工作流

workflow-score-to-target不只是纸面流程,仓库中的3d-wood-lighting-scorecard示例就是这套工作流的完整工程化实现:一个暗室中打光的木材场景,被拆成 8 个评分条目(Materials & grain、Key/fill contrast、Shadows & contact、Volumetric shafts & dust、Background rays、Colour & tone mapping、Texture resolution & texel density、Specular & roughness realism),目标是每个条目达到 8/10。

8.1 锚定 rubric:每个条目都由可测量的子指标构成

references/rubric.md实现了文档"能测的必须测"原则:每个条目由 2–4 个可测量子指标构成,每个子指标通过三个锚点[v@3, v@6, v@9]映射到 0–10 分,锚点之间线性插值、超出后截断。例如:

  • Materials & grain条目:grainContrast(1–8 px 带通标准差/均值,锚点 0.006/0.022/0.05)、grainAniso(跨纹/顺纹梯度能量比,1.1/1.9/3.2)、toneVar(29 px 模糊标准差/均值,0.008/0.035/0.08);
  • Shadows & contact条目:shadowRatio(受光/阴影线性比,1.6/3.5/7)、contactDark(接触带/开放台面比,越低越好)、penumbraMono(从接触点单调上升的半影占比)、contactGap(底部亮缝,越低越好)。

rubric 文档还明确了"锚点改一处必须两处同步改并重跑基线与消融,否则分数失去意义",这正是文档"同一套 rubric 才能前后比较"的工程化约束。

8.2 可复用的评分引擎:metrics.js

references/metrics.js是一个可在页面(window.KiboriMetrics)和 Node(require)双端运行的无依赖评分模块,输入是一帧 RGBA 字节 + 以帧宽高分数表示的区域,输出每个子指标、每个条目的得分和总分。它的核心anchor()函数实现三锚点线性映射:

// a = [v3, v6, v9],锚点之间线性、之外截断到 0..10 let s = (v - a3) / (a6 - a3) <= 1 ? 3 + 3 * (v - a3) / (a6 - a3) // 3..6 区间 : 6 + 3 * (v - a6) / (a9 - a6); // 6..9 区间 s = clamp(s, 0, 10);

它同时支持"过高也不对"的封顶(cap)机制——例如shaftDelta超过 35 说明光束把房间洗白了,分数会随过曝而下降。评分区域通过KiboriScore.regions()从世界点经实时相机投影得到,换场景只需重写区域函数,而不是改指标。

8.3 机器可回归的测试:scorecard.mjs

references/scorecard.mjs把整套流程脚本化,直接对应文档"Lock it in"和"加测试"的要求:

  • 用 Playwright headless Chromium 打开 demo 页,单帧渲染 + 单任务读回 RGBA;
  • 依次评分"全层开启"、"平面基线(所有质量层关闭)",并对每个质量层做消融(ablation)——关闭该层重测,量化每层对总分的贡献;
  • 计算 shimmer 指标(半像素平移前后差异比,检测预过滤是否到位)与渲染成本(60 帧的 median/p90 毫秒);
  • 汇总short列表(低于--target的条目及扣分最重的两个子指标);
  • 以退出码表达测试结果:任一条目低于目标即exit 1,全部达标才exit 0,输出PASS/SHORT与逐条分数。

运行方式(需npm i playwright-core与一个 Chromium):

node scorecard.mjs --url URL --target 8 --size 1440x900 --dpr 1 --out scorecard.json

8.4 真实记分卡:before → after、消融与诚实报告

references/last-scorecard.json是一次真实运行产物,完美展示了文档要求的"前后对比 + 诚实报告":

  • 基线 vs 全开:全层关闭时总分仅3.73(最低条目 0.75);全层开启后总分8.81(最低 6.52),目标 8;
  • 未达标如实列出:short数组标记spec(高光与粗糙度真实感)为 6.52 未达标,并给出扣分最重的两个子指标(hlBreakup=0.01 → 4.29、sheenSpread=1.3228 → 6.11);
  • 整体pass: false:这正是文档"7.5 在 8 的门槛下就是未达标"的工程体现——总分 8.81 很高,但有一个条目 6.52,所以测试不通过,改进轮次继续;
  • 消融结果被如实报告而非掩盖:env(环境反射)层的消融 drop 为-0.14,即关掉它总分反而上升 0.14。rubric 文档明确说明这类结果"要报告而不是调掉"(reported, not tuned away)——它说明该层提升了阴影但指标衡量的是别的东西,或者该层没挣回成本。这正对应文档"Note any trade-off you made"与"报告不完美之处"的要求。

值得一提的是,rubric 文档还给出一个与主文档"平台期停止"呼应的结论:spec 条目的两个提升杠杆(clearcoat 与各向异性)会遮盖木纹或弄糊雕刻,在 2 倍裁剪下被当场否决,因此该条目平台在 6.5–7.4——这是"因任务外原因(美术权衡)停止并对未达标条目给出原因与所需条件"的实例。

九、与其他工作流技能的协同

根据agent-skills/workflow/README.md的说明,这套流程嵌入在更大的工作流链条中:

  1. 从第一个可用版本起,用progress screenshots持续展示真实截图;
  2. 用户命名门槛后,用score to target逐轮评分改进,每轮带图;
  3. 达标后走ship change发布;
  4. 最后由threads manager审计每个线程是否都按此方式闭环(上 main、变更日志带图、已上线、已归档)。

这意味着workflow-score-to-target的输出(记分卡、前后截图、未达标清单)不只是报告,更是下游"发布"与"审计"环节的输入证据。

结语

从锁定门槛、锚定 rubric、真实证据打分、独立盲评、逐轮改进,到测试固化与存档记分卡,workflow-score-to-target提供了一套完整且可复制的"评分到目标"方法论。它最值得借鉴的三点:基准先行(没有基准的分数没有意义)、能测必测(用数字阻止分数随情绪漂移)、诚实到底(不四舍五入、不掩盖平台期、如实报告权衡)。仓库中 3D 木材评分卡示例证明:这套流程完全可以工程化为"指标 → 锚点 → 自动化评分 → 退出码测试 → JSON 记分卡",在 Codex、Claude、Cursor 等各类 Agent 的工作流中反复复用。

【免费下载链接】Skills

Agent skills for designers and builders using Codex, Claude, Cursor, and other AI coding agents

项目地址:https://gitcode.com/gh_mirrors/skills48/Skills
点击查看免费下载

相关推荐

上一篇:hibase32-cj单元测试实战:仓颉@Test、@Expect与@AssertThrows测试宏完整教程
下一篇:眼动模块进阶开发:如何扩展新Blockly积木块与自定义图片ID

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/10/10 9:07:22

SpringBoot报刊厅书刊订购系统:从数据库设计到答辩的全流程解析

做计算机毕业设计&#xff0c;最怕的不是技术难&#xff0c;而是方向太虚。这个SpringBoot报刊厅实体书刊订购系统&#xff0c;表面上是把线下报刊亭“搬上线”&#xff0c;实际里面牵扯到期刊多期订阅、现货库存扣减、配送单据生成、用户权限分配一整套业务闭环&#xff0c;复…

作者头像 李华
网站建设 2026/10/10 9:05:11

手机投屏到电脑还能听声音?scrcpy 音频转发配置实战

手机投屏到电脑还能听声音&#xff1f;scrcpy 音频转发配置实战 【免费下载链接】scrcpy Display and control your Android device 项目地址: https://gitcode.com/GitHub_Trending/sc/scrcpy 开会时想把手机里的 App 演示给同事看&#xff0c;还希望对方能听到 App 内…

作者头像 李华