Files
benbrownandClaude Fable 5 477c5472dd skill: make the peltier skill consumable across agent harnesses
The SKILL.md Agent Skills standard (agentskills.io) is now read natively by
Codex, Copilot, VS Code, Cursor, Gemini CLI, opencode, Goose, Amp, Zed,
Factory, and ZeroClaw — so the portable move is not per-harness adapter
files (forked content that drifts) but one canonical skill placed where
each harness actually looks.

- Spec-compliant frontmatter: license, compatibility (the Linux-only
  measurement story, stated up front), version/author/tags top-level
  (ZeroClaw's runtime reads those; the spec ignores unknown fields).
  reference/ renamed to references/ per the spec's conventional layout.
- .agents/skills/peltier/ mirror: the cross-tool convergence path (Codex,
  Zed, Cursor, Gemini CLI, Copilot, opencode, Goose, Amp). Byte-identical
  to the .claude canonical, enforced by CI — drift between the two copies
  is a red build, not a footnote.
- AGENTS.md at the repo root for the ~20 harnesses that read it (Claude
  Code does not; CLAUDE.md remains its file). Deliberately thin: it points
  at CLAUDE.md and the skill instead of restating rules.
- scripts/install-skill.sh: stamps a consumer repo at both discovery paths
  (--layout claude|agents|both), or emits a script-less --zeroclaw-variant.
  ZeroClaw's skill security policy blocks script files by default
  (skills.allow_scripts off) — its audit rejected the full skill and passes
  the variant, verified against the real zeroclaw binary. The variant loses
  nothing: preflight.sh still exists exactly once, in the peltier checkout
  the skill already requires, and SKILL.md now documents running it from
  there. Re-implementing preflight inline is named as a refusal condition.
- CI (skill-preflight): frontmatter upgraded to a full Agent Skills spec
  conformance check on BOTH copies (name rules, dir match, description and
  body limits, metadata string-map), plus mirror equality and a functional
  installer test (both layouts identical to canonical, variant carries no
  scripts/, nonexistent target refused).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-15 11:59:26 -04:00

42 lines
1.6 KiB
TOML

# peltier accept thresholds — consumer template.
#
# Copy this next to the code you are measuring and pass it with
# `bench-runner --config <this-file>`. The defaults are peltier's own
# published bar; loosening them to make a result pass is not measurement,
# it is negotiation.
# The bootstrap CI *lower bound* of the speedup ratio must clear 1 + threshold.
# The median is not the claim. The lower bound is the claim.
threshold = 0.02
# Measured runs per side, interleaved ABAB (SPEC minimum: 30).
runs_per_side = 30
# Warm-up runs per side, discarded — they pay for cold caches and JIT.
warmup_runs = 3
# Bootstrap resamples for the ratio CI.
bootstrap_iters = 10000
# Confidence level for the ratio CI.
confidence = 0.95
# Fixed PRNG seed so a calibration run is reproducible by anyone.
bootstrap_seed = 1887343589
# CPU pinning. WARNING: this key is INERT for `compare`, `aa`, and `calibrate`
# — it is read only by the in-repo `verdict` pipeline. Setting it here and then
# reporting "pinned to core N" would be a claim about a run that never happened.
#
# To actually pin a compare/aa/calibrate run, wrap BOTH sides identically in
# the command itself: --baseline 'taskset -c 2 <cmd>' --candidate 'taskset -c 2 <cmd>'
#
# Pinning tightens the A/A confidence interval ~5x on peltier's calibration
# hardware. An unpinned host is not disqualified; a NOISY one is, and the A/A
# self-test decides that empirically. Leave this empty.
pin_prefix = ""
# Differential-fuzz iterations requested per gate run. Only used by the
# in-repo `verdict` pipeline, which requires a target to declare [gates].fuzz.
# fuzz_iters = 10000