- CLI
- 开发工具
- AI Agent
- 人工智能
- 包管理器
【免费下载链接】x-cmd
Posix Shell 工具库
导读
x-cmd的skill0/score(核心文档位于 SKILL.md)是一套面向 AI Agent 的加权维度评分决策框架,核心理念是"Don't guess. Score."——不要靠猜,要打分。它用一份可复用的评分标准(*.score.yml)与一份带证据的打分记录(*.score.tsv),把"从多个候选中选最优"这类主观决策,变成可校验、可复盘、可迭代的规则化流程。读完本文,你将掌握:如何用两文件模型定义决策标准、如何用x score compute/iter/refine/init/ls完成从打分到迭代的完整闭环,以及compute.py底层是如何校验与计算排名的。
一、核心哲学:三句话理解这个框架
SKILL.md开篇即给出三条使用铁律,决定了整个框架的行为方式:
- 先问够,再定标准(Understand first, score second):在定义维度之前必须问够问题。维度搞错了,分数再精确也没用——"Wrong dimensions → wrong scores, no matter the precision."
- 抛砖引玉,迭代优于空想(Draft then iterate):需求不清楚时,先做一版标准、打一版分、给出排名。用户对具体排名有天然反应——"这个权重不对"、"你漏了 X"。这些反馈就是信号,据此 refine 后重新打分。一轮迭代胜过十轮空想。
- Agent 是分析师,不是计算器(The agent is the analyst):
compute之后要读 TSV,解释为什么 A 赢了 B、指出意外、建议调整。排名是对话的开始,不是结束。
二、核心流程与两文件模型
SKILL.md给出了五步核心流程:
① 了解需求 → ② 定义 score.yml → ③ 打分 score.tsv → ④ x score compute → ⑤ 汇报与迭代配套的是两文件模型:
| 文件 | 角色 | 内容 |
|---|---|---|
*.score.yml | 可复用的评分标准 | 维度(dimensions)、因子(factors)、评分描述(desc) |
**.score.tsv | 目标 + 分数 +证据 | 第一列为目标名(target),每个维度一列分数与一列证据 |
输出 TSV 的固定列顺序为target, total, rank, block, reason,随后是带权重百分比标注的维度列(如成本 (35%)),最后是evidence。总分 0–100,按total降序排列,rank = 1为最高分。
三、实战示例:协助用户做宣传口号决策
SKILL.md以"宣传口号方案决策"为例完整演示了工作流,本文补充了 CLI 细节:
Step 1:定义评价维度与标准,生成宣传口号.score.yml(维度 + 因子 + 0–10 的锚点描述)。
Step 2:打分。有两种路径:
- 若已安装 x-cmd,可用
x score assess -f "<宣传口号>.score.yml" [...targets-to-assess],自动生成带时间戳的<宣传口号>.<datetime>.score.tsv(如宣传口号.260605-194400.score.tsv); - 或手工执行等价步骤:把所有候选口号放进 TSV 第一列,让 AI 在每个维度上打分(0–10,并附
evidence),此时total与rank留白,等待计算。
Step 3:计算排名。执行:
x score compute 宣传口号.score.yml 宣传口号.260605-194900.score.tsv该命令自动填上total与rank。
Step 4:汇报与迭代。读取结果与用户讨论,调整分数或增删候选后重复 Step 2;也可以直接让 AI 根据反馈重打分:
x score iter -f 宣传口号.score.yml 宣传口号.260605-194900.score.tsv "<调整意见,或者增加候选>"文件名仅为示意,实际可自行命名。更多场景示例参见 EXAMPLE.md(内含 Feature Priority、Vendor Selection 两个完整可运行示例)。
四、计算公式:因子是相对放大器
SKILL.md给出的公式如下:
total = Σ(factor × score) ÷ Σ(factor) × 10 → 0–100三个核心量:
- factor(因子):整数 1–10,基线 = 2。1 = 次要;4 = 2×;6 = 3×;8 = 4×;10 = 5× 重要度。因子是相对放大器,不需要求和——公式自动归一化。每个维度在输出 TSV 的列头会标注权重占比:
factor ÷ Σ(factor) × 100。 - score(分数):每个维度 0–10,必须由证据锚定(evidence-anchored)。
- total(总分):加权总分,0–100。
从 compute.py 的实现可以看到对应逻辑:total = sum(f * s for f, s in zip(factors, scores)) / factor_sum * 10,权重百分比dim_pcts = [f / factor_sum * 100 for f in factors](compute.py),列头形如clarity (35%)。若factor_sum == 0会直接报错退出(退出码 64)。
五、输出列详解
| 列 | 来源 | 说明 |
|---|---|---|
target | 输入 | 候选名称 |
total | 计算 | 加权总分(0–100) |
rank | 计算 | 排名(1 = 最高)。X= 被 block 淘汰 |
block | 输入 | 可选的硬过滤列。非空 = 该候选被淘汰,排到最后,rank 显示X |
reason | 输入/输出 | 可选:AI 标注评分的 nuance,用于 agent 之间传递备注 |
<维度> (X%) | 计算 | 各维度分数,列头显示权重占比 |
evidence | 输入 | 支撑每个分数的事实依据 |
block列是框架的"一票否决"机制:它处理的是非协商性条件(deal-breaker),而非偏好权重。例如"这种植物对猫有毒"应填block,而"这种植物难养"应作为低分维度处理。score-template-writer.md 对二者边界有明确区分。
六、评分刻度与五条规则
分数刻度
| 分数 | 标签 | 含义 |
|---|---|---|
| 9–10 | 优秀 | 完全符合维度标准 |
| 7–8 | 良好 | 符合标准,有微小差距 |
| 5–6 | 及格 | 方向正确,有明显不足 |
| 3–4 | 差 | 差距显著 |
| 1–2 | 失败 | 几乎没有达到 |
| 0 | 不适用 | 不适用 |
五条评分规则
- 证据锚定:每个分数必须有证据——事实,而非感觉。字母数、用户百分比、基准测试结果都是证据;"感觉不错"、"看起来对"不是。
- 用全范围:5 是中间点,不是默认分。0 分和 10 分少见但可以给。
- 因子是相对放大器:基线 = 2,因子 4 的影响力是因子 2 的两倍,因子不需要求和。
- 目标唯一且非空:
*.score.tsv第一列每行必须有目标名,不可重复、不可为空。 - Agent 读结果、汇报、决策:compute 后读取排序 TSV 并向用户汇报;发现问题可重新打分、调整因子或增减候选。
七、x score 命令族:从模板到迭代的完整闭环
x score子命令由 mod/score/lib/ 实现,入口 main 分发到ls、compute、init、iter、refine五个操作,无参数时默认执行ls。
1.x score ls— 浏览模板库
列出skill0/score/template/下全部模板,支持--yml、--json、--tsv、--csv四种输出格式(默认 tsv)。实现见 ls:从每个*.score.yml的首行注释(# <name>.score.yml — <desc>)提取 desc,从title:提取标题。
2.x score init— 从模板或 AI 生成评分标准
- 静态复制:
x score init -t <name>将模板复制为<name>.score.yml;模板名解析规则见 init:score→score.score.yml,foo.yml→foo.score.yml,bar.score.yml原样使用。 - AI 生成:
x score init --prompt "<goal>" -o file.yml会调用x agent,依据用户目标设计 2–7 个维度、1–10 因子并写出描述(见 init)。
3.x score compute <score.yml> <score.tsv>— 核算校验
与python compute.py完全等价(SKILL.md)。x score compute实际就是定位skill0/score/compute.py后调用python3执行(compute)。
4.x score iter -f <score.yml> <score.tsv> "<feedback>"— 按反馈重打分
把评分标准、当前分数和用户反馈一起交给 AI,按完全相同的列结构重写 TSV(total/rank 留白,由 compute 再算),原文件自动备份为.bak(iter)。
5.x score refine <score.yml> --prompt "<feedback>"— 精调评分标准
按反馈增删维度、调整因子与描述,可-t指定参考模板;原文件同样备份.bak(refine)。
八、compute.py 的校验细节:从源码看严谨性
compute.py 是一个无第三方依赖的独立 Python 校验器,完整实现了SKILL.md的全部规则:
- 标准解析:只解析
title与dimensions -> name/factor的最小 YAML 子集(compute.py),不依赖外部 YAML 库; - 输入校验:要求 TSV 首列必须是
target、TSV 必须包含标准中所有维度列、factor_sum不得为 0,否则均以退出码 64 拒绝(compute.py); - 目标唯一性:检测重复 target 立即报错退出(compute.py),落实"规则 4";
- block 语义:非空
block行被推到列表底部且 rank 记为X,但 total 仍照常计算——"即便必须选一个,也知道谁相对更好"(compute.py); - 输出保序:固定列 + 维度列(带权重% 表头)+ 其余输入列(如
*_evidence)按原顺序输出(compute.py)。
九、模板库:35+ 现成评分标准
template/目录下预置了 35+ 个可直接使用的模板,覆盖命名、消费、家居、职业、出行等场景。以三个典型为例:
- naming.score.yml:6 个维度(clarity=8、domain-fit=6、memorability=4、uniqueness=2、phonetic=2、brevity=1),每个 desc 都写明了 9-10 / 7-8 / 5-6 / 3-4 / 1-2 / 0 的完整锚点;
- tech-stack.score.yml:技术选型,6 维度(project-fit=8、team-capability=6、ecosystem-maturity=6、maintenance=6、performance-scale=4、integration-cost=4);
- travel.score.yml:出行目的地选择,文件头部注释直接给出了打分前应向用户提问的清单(季节/出行风格/预算/同行人/签证)。
模板不是死板的标准,而是引导 Agent 提问与调整的脚手架。撰写规范详见 score-template-writer.md:维度以 5–7 个为甜区、因子分配建议(最重要维度给 8 或 10,多数给 4 或 6)、desc 要"锚定 9-10 与 1-2 的可观察事实,控制在 200 字符内",并避免"所有因子都是 2"、"维度过多"、"描述模糊"等反模式。
十、Rule 与 Score:两个互补框架的边界
rule-vs-score.md 用一句话概括二者区别:Rule 回答"这个够不够好?",Score 回答"哪个最好?"。
| Rule | Score | |
|---|---|---|
| 目的 | 发现问题——保证最低质量 | 评价质量——选出最优项 |
| 类比 | 质量闸门 / 检查清单 | 排名 / 排行榜 |
| 输出 | 每条规则的通过 / 不通过 | 加权总分 + 排名 |
| 典型对象 | 单个对象(一个文件、一个仓库) | 多个候选(3+ 个备选) |
| 硬过滤 | level: error必须通过 | TSVblock列,rank = X |
推荐组合用法:先用 Rule 淘汰不可行候选(硬闸门),再用 Score 对幸存者排名——例如先用 rule 过滤"对猫有毒"的植物,再用 score 按养护难度与观赏性给安全植物排名。边界是软的,判断标准是意图而非对象数量:问题若为"是否通过"→ rule;"相对备选有多好"→ score。
十一、文件清单与延伸阅读
本框架的核心文件(均位于 mod/skill0/lib/skill0/core/score/):
SKILL.md/SKILL.cn.md— 英文版 / 中文版框架说明,AI 读取后即可运行完整工作流;compute.py— 独立 Python 校验与计算器(无第三方依赖);template/*.score.yml— 35+ 模板,x score ls列出、x score init -t <name>复制;EXAMPLE.md— 更多使用示例;rule-vs-score.md— Rule 与 Score 的场景选择;score-template-writer.md— 模板编写指南。
关联框架:rule(合规性检查的配对框架)、naming(候选命名在此评分)。
小结
x-cmd的 Score 框架把 AI Agent 的决策从"猜"变成"算":理解需求 → 定义加权标准 → 证据化打分 → compute 校验排名 → 汇报并迭代。标准文件与结果文件都是可存档、可复盘、可分享的普通文本,配合x score命令族与 35+ 模板,任何技能(skill)都能立刻拥有一套结构化的决策工作流。记住那句口号:Don't guess. Score.
- CLI
- 开发工具
- AI Agent
- 人工智能
- 包管理器
【免费下载链接】x-cmd
Posix Shell 工具库
相关推荐
x-cmd score:加权维度评分框架,给 AI Agent 装上可迭代的决策工作流
x cmd score:加权维度评分框架,给 AI Agent 装上可迭代的决策工作流 导读 x cmd 的 score 模块 https://link.git
CLI开发工具AI Agent人工智能包管理器x-cmd score 评分框架实战:从两个完整示例掌握加权维度评分工作流
x cmd score 评分框架实战:从两个完整示例掌握加权维度评分工作流 导读 本文以 x cmd 内置 skill0 评分技能中的 EXAMPLE.md h
CLI开发工具AI Agent人工智能包管理器x-cmd Rule 与 Score:质量门禁与加权排名的双框架选型指南
x cmd Rule 与 Score:质量门禁与加权排名的双框架选型指南 本文基于 rule vs score.md https://link.gitcode.
CLI开发工具AI Agent人工智能包管理器
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考