跳到正文
cccskills
免费在 GitHub 公开中文介绍

Calibrate

在本地页面查看评测中的真实图片或文本输出并打分,记录个人偏好。评估判定者与您的评分有多一致,生成带依据的偏好档案,并可据此重新评分。

原文查看原文说明

Calibrates any eval against the principal's own taste: takes a task in plain words, finds the eval suites and targets that cover it and offers them as options, then shows N real outputs (images or text, default 16, any count like 4, 24 or 64) on a local review page, collects a 0–10 score per output plus optional typed notes, measures how well the judge agrees, distills a taste profile the judge reads from then on, and rescores to prove the change. USE WHEN calibrate, calibrate 16, calibrate 64, calibrate social posts, calibrate the art judge, calibrate this eval, show me outputs to rate, rate these images, teach the eval what I like, tune the eval to my taste, what does the judge get wrong about my taste, calibration session. NOT FOR measuring a suite's judge against existing labels without a session (Assay Calibrate), recording one verdict on one delivered artifact (ArtDirection Calibrate), or producing the artifacts themselves (Art).

danielmiessler/LifeOS星标 19,635(GitHub 19,635 + cccskills 0)

实测评分 未实测

查看安装方法

适用场景

  • 按个人偏好给生成图片打分
  • 将个人偏好用于帖子评估
  • 比较个人评分与判定者的结果
  • 查看应用偏好档案后的评分

中文介绍

功能

用日常语言说明要评估的任务后,本技能会查找相关的评测套件或已配置目标,并列出可选项。选定目标后,它会在本地评审页面展示实际生成的图片或文本输出,供您逐项打0到10分,也可以补充文字说明。对于文本,还能查看生成它时使用的提示词。随后,本技能会衡量现有判定者与您评分的一致程度,并将您的偏好整理成带有依据的Taste.json档案。判定者可在后续评估中参考该档案,您也可以重新评分以查看变化。

适用场景

当您希望图片、帖子或其他输出的评估能体现个人偏好时,可以使用本技能。它可以帮助您查看判定者更喜欢哪些输出、哪些评分与您的判断不同,以及应用偏好档案后结果有何变化。

使用示例

  • “给我看这个评测中的20张图片,我来打分。”
  • “检查艺术判定者的评分与我的看法有多一致。”
  • “把缩略图加入可按我的偏好评分的目标。”

注意事项

首次设置需要配置文件,例如Config.md。只有您通过评审页面提交的评分才会记录为评估标签。重新评分时,每张图片可能会触发多次视觉判定。本技能不负责制作被评估的内容,也不用于在没有校准会话的情况下仅凭现有标签测量判定者的准确度。

本介绍由 AI(OpenAI Codex)根据公开的 SKILL.md 撰写。准确的规格请查看下方原文。

文档检查

AI 根据 SKILL.md 的内容检查了需要注意的操作和使用前提。评分只依据实际运行的结果(实测对比)。

安全性发送数据、删除文件、执行命令等是否有说明
B部分不足会记录评分、写入Taste.json,并可重新进行图片判定。
安装难易度所需工具和 API 密钥是否少且有说明
B部分不足需要Config.md等初始设置,但资料未给出完整设置步骤。

不计入评分。 由 AI(OpenAI Codex)于 2026年10月28日 评估。仅供参考,安装前请同时查看原文。

如果您认为评估有误,请申请复核

请写明哪一项有误以及原因。无需登录。我们会对照 SKILL.md 重新评估,并在此处更新结果。

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

包含的文件(9)

  • SKILL.md10.5 KB
  • Intents/AddTarget.md2.4 KB
  • Intents/Distill.md1.9 KB
  • Intents/Report.md1.6 KB
  • Intents/Run.md5.2 KB
  • Setup.md1.9 KB
  • Tools/Calibrate.help.md3.7 KB
  • Tools/Calibrate.ts57.2 KB
  • Tools/ReviewPage.ts11.5 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Calibrate

Contents: Ideal State · Intent Routing · Tool · How taste reaches the judge · Data & Config · Gotchas · Examples

A judge that disagrees with the principal is grading against someone else's taste. Calibrate closes that gap for anything that has an eval. Every Assay suite is a target with no setup: its stored run outputs are the pool and its judged asserts are the judge. Image intents join through a configured target. The principal names a task in plain words, discover ranks the targets and suites that cover it, and the principal picks one.

Outputs are shown blind (no judge scores on the page), and text outputs show the prompt that produced them. The principal scores each one 0–10 on a slider, with a note when it matters; a score at or above the target's likeAt (default 7) counts as a like for pass/fail agreement, and the raw score is kept. The labels answer three things: how often the current judge agrees, where its cut-off should sit to match the principal, and what the principal actually values. The last becomes Taste.json, which the judge reads on every later run.

Ideal State

  • The judge's agreement with the principal is measured on labels held out from the taste being tested and reported against the shared floors in LIFEOS/TOOLS/lib/Calibration.ts.
  • Every label came from the principal's own submit on the review page, scoring their real published outputs blind on 0–10.
  • Every principle in a taste profile cites the labels behind it, and a suite or brief without a profile gets exactly the judge prompt it had before.
  • No bar changes and no judge is promoted on calibration numbers without the principal's yes.

Intent Routing

IntentTriggerFile
Run"calibrate", "calibrate 24 social posts", "show me outputs to rate"Intents/Run.md
Report"how well does the judge match me", "calibration report"Intents/Report.md
Distill"update the taste profile", "what have I told you I like"Intents/Distill.md
AddTarget"calibrate a new image intent", "add a calibration target"Intents/AddTarget.md
FileRead when
Tools/Calibrate.help.mdthe full CLI contract behind the command table below
Setup.mdfirst-time setup: the optional Config.md and PREFERENCES.md keys and a proof it works

Tool

bun skills/Calibrate/Tools/Calibrate.ts <command> from the config root. Full contract: Tools/Calibrate.help.md.

CommandWhat it does
discover "<task>"Rank configured targets and every eval suite against a plain-words task; unusable ones (no stored outputs) rank last
targetsList configured targets
pool --target <t>Pool size, scored share, labeled share, score bands
session --target <t> --count N --openServe the review page on loopback, block until submit (exit 0) or timeout (exit 3)
report --target <t> [--session <id>] [--rescored] [--json]Judge-vs-principal agreement
taste-input --target <t>Every current label with notes, for Distill
taste --target <t> --write <draft.json>Validate citations, stamp provenance, write Taste.json
rescore --target <t> [--session <id>] [--repeats 1] [--dry-run]Re-run the target's judge with the current taste

--target takes a configured target or any eval suite name.

How taste reaches the judge

  • Text: EvalRunner appends the rendered profile to every judged assert of a suite whose name (or calibration: field) matches a target with a Taste.json. calibration: none opts a suite out. A new profile changes the rubric text, so that suite's Assay calibration record goes stale until re-measured, which is intended.
  • Images: ArtDirection's Critique.ts adds the profile to its rubric prompt whenever the brief carries "calibration": "<target>".
  • Taste lives in LIFEOS/TOOLS/lib/CalibrateTaste.ts because both skills read it.

Data & Config

Targets, labels, sessions and taste profiles live at <configRoot>/LIFEOS/USER/CUSTOMIZATIONS/SKILLS/Calibrate/ (configRoot is $CLAUDE_CONFIG_DIR when set, else ~/.claude). If the directory does not exist, the AddTarget intent creates it.

Under LIFEOS/USER/CUSTOMIZATIONS/SKILLS/Calibrate/Targets/<target>/ (override the root with LIFEOS_CALIBRATE_DIR; stored eval outputs are read from LIFEOS/MEMORY/STATE/Evals-Results/, override with LIFEOS_EVALS_RESULTS_DIR):

  • target.json: only for configured targets. Name, title, the question shown on the page, the owning skill and intent, pools, the judge brief and bar, plus optional selection (newest or spread), count (the session default, 16 when unset) and likeAt. Pool kinds are evals (suite: that suite's stored outputs with its judge's verdicts), frontmatter (published documents whose frontmatter names an image: the real published outputs; needs imageField and localRoot), evalround (EvalRound.json records, which carry the art panel's scores) and files (a glob of images or .txt/.md; groupPattern is a regex whose first capture names the source round). An eval suite used directly needs no target.json.
  • Brief.json: the ArtDirection brief used by rescore on image targets. A target with neither a brief nor "judge": "evals" is labels-only: rescore skips it with that reason, and report measures the labels against the judge snapshot its pool carried.
  • labels.jsonl: one principal label per line, append-only. Only the page's submit writes it.
  • sessions/<id>.json, Taste.json, rescore.jsonl: tracked. artifacts/ (content-addressed copies of labeled outputs), rescore/ and hash-cache.json are local-only.

Beside Targets/, two optional files hold the install's own values:

  • Config.md: frontmatter browser, the app session --open opens the page in (open -a <app>; default for the system default browser). With no Config.md the page opens in the system default browser and the tool warns, naming the file; a Config.md without the key stops the open with an error naming the file and key.
  • PREFERENCES.md: the principal's standing notes on what they score first, read by AddTarget when it writes a target's question and brief. Labels and Taste.json stay the evidence.

The installer puts a starter for both in LIFEOS/USER/CUSTOMIZATIONS/SKILLS/Calibrate/; if one is missing, bun ~/.claude/skills/LifeOS/Tools/ScaffoldUser.ts --apply copies any missing starter file into place and never overwrites one you have edited. First-time setup is in Setup.md.

Agreement floors come from LIFEOS/TOOLS/lib/Calibration.ts, the one definition the Assay skill uses too.

Gotchas

  • Never write a label on the principal's behalf, including from something they said in chat. Chat feedback goes in as a new session or stays out; label_source.kind is always principal and always came from the page.
  • Pools live in scratch and download folders that get cleaned. Submit keeps a hashed copy under artifacts/, and labels point at the copy, so rescoring still works after the source is gone.
  • Report bands and the threshold sweep are relative to the target's own scores. On 2026-09-27 a whole calibration pool had no image scored 8.0 or above, so fixed bands would have left one band empty (the run's detail is in the USER extension's History.md when present).
  • Rescoring the labels a taste was built from is in-sample and flatters the taste. The Run intent rescores a new session before distilling, so its agreement is held out; report --rescored prints which taste version judged each output and leaves out every label that version was distilled from.
  • Image rescore spends two vision calls per image per repeat; text rescore one judge call per judged assert. --dry-run prints the count first.
  • Rescore gives the judge the same caption the principal saw (the post title goes into that item's brief). On 2026-09-28 the first rescore used one generic brief, so the judge could not tell whether a header fit its post.
  • Discovery matches whole words. On 2026-09-27 substring matching ranked a coding-error suite for "blog header art" because "art" sits inside "start".

Examples

Example 1: Any task with an eval

User: "calibrate 20 story explanations"
→ discover ranks storyexplanation-cse first; one clear match, so it is used and named
→ page shows 20 stored outputs, each with the prompt that produced it
→ rescore, report, then Distill; the suite's judge reads the taste on its next run

Example 2: An ambiguous task

User: "calibrate the voice stuff"
→ discover returns several voice suites; AskUserQuestion offers the top four with output counts

Example 3: Checking the judge

User: "how well does the art judge match me now?"
→ Report: agreement, kappa, earned or not, best cut, per-vendor, disagreements with notes

Example 4: A new image intent

User: "calibrate the YouTube thumbnails too"
→ AddTarget: target.json with the thumbnail pools, question and brief; pool count; then Run

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

AnnualReports

免费有简介

按类别或厂商查找并获取网络安全报告,比较威胁、勒索软件、数据泄露、云安全和AI趋势。分析会注明每项数据的厂商、年份及报告,并分别呈现来源间的分歧。

  • 按类别查找威胁报告
  • 获取指定厂商的报告
  • 比较多家厂商的勒索软件趋势
danielmiessler/LifeOS2万2026年10月28日 更新

ApertureOscillation

免费有简介

通过三轮分析,对比单个功能或组件的设计需求与整个系统的目标,梳理两者的冲突、合适的实现范围,以及方案是否符合整体方向。

  • 判断服务或库是否应拆分
  • 比较功能需求与产品方向
  • 检查新组件是否符合现有系统
danielmiessler/LifeOS2万2026年10月28日 更新

Aphorisms

免费有简介

按文章主题寻找格言或引文,按相关程度排序,并附上作者和推荐理由。可添加带出处的引文、按主题研究思想家的言论、整理使用记录,帮助避免重复引用。

  • 为新闻简报寻找引文
  • 保存有出处且不重复的引文
  • 按主题研究思想家的言论
danielmiessler/LifeOS2万2026年10月28日 更新

Art

免费有简介

按用途选择制作流程,生成博客插图、技术图解、比较图、漫画和图标等视觉内容,并输出供预览的图像。

  • 制作博客标题图
  • 解释系统结构
  • 展示比较或时间线
danielmiessler/LifeOS2万2026年10月28日 更新

ArtDirection

免费有简介

依据简报和制作标准评估图片、影片、幻灯片及网站页面截图,由视觉评审给出评分和缺陷优先级,支持有限轮次的修改;通过评审后才能交付,并可记录人工评分供后续校准。

  • 按优先级整理图片修改项
  • 依标准评估影片或幻灯片
  • 发布前检查视觉效果
danielmiessler/LifeOS2万2026年10月28日 更新

ArXiv

免费有简介

按主题、研究领域或论文编号查找 arXiv 论文,并整理标题、作者、摘要和链接;查看新投稿,也可在有内容时获取 AlphaXiv 的人工智能生成概述。

  • 查看人工智能和机器学习新论文
  • 查找特定主题的论文
  • 按论文编号或 arXiv 网址查询
danielmiessler/LifeOS2万2026年10月28日 更新

查看 danielmiessler 的全部技能

报告此技能的问题