Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add shimo4228/claude-harness --skill skill-creatorgit clone --depth 1 https://github.com/shimo4228/claude-harnessWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/shimo4228/claude-harness/skill-creator)<a href="https://agentmods.dev/skills/shimo4228/claude-harness/skill-creator"><img src="https://agentmods.dev/badge/skills/shimo4228/claude-harness/skill-creator.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00251 | $0.03138 |
| Opus 5 | $0.00125 | $0.01569 |
| Sonnet 5 | $0.00050 | $0.00628 |
| Haiku 4.5 | $0.00025 | $0.00314 |
Grade A, and why
skill-creator scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 126 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Skill Creator
skill は agent が実行する制御プログラムで、書いた瞬間から常駐コスト(description は毎 セッション載る)と drift コスト(隣接 skill との二重定義)を払い始める。この skill は 「作るか」を決めない — それは著者(明示指示)か learn-eval が持つ。決めるのは形 (新規 / 既存へ統合 / 既存改修)と境界で、書いた後に fresh context で判定する。
1. 入口 — intent を 1 packet に固定する ⏸ 著者確認
会話に素材があれば先に抽出してから埋める(使ったツール、手順、著者の訂正、入出力):
- 何をできるようにするか(1 文)
- いつ使うか — 著者の発話例を 3 つ(description にそのまま入れる。自発発火を
狙う skill のみ — 狙わないなら §3 の
disable-model-invocation) - NOT for — 隣接 skill / agent を名指しで
- 置き場 —
skills/<name>/SKILL.md(commands/は使わない)かagents/<name>.md - 検証可能な出力か(file 変換・固定手順なら with/without を見る価値がある。文体系は不要)
隣接 skill を library 全体で grep する(name / description / NOT for 行)。重なりが 見つかったら、新規でなく既存への統合か改修に倒す判断をここでする。batch 内限定の skill-stocktake Uniqueness と違い、作成時は対象が 1 件なので全体を見られる。
2. 作成時の判断(実測から昇格した 4 つ)
| 判断 | 問い | 出所 |
|---|---|---|
| Abstraction trap | 一般化しても次回の行動が変わるか。具体的な Before/After が書けないなら抽象化しすぎ | 2026-03-15 ai-tool-design: 議論を経て「当たり前」に劣化 |
| Trigger ceiling | 自発発火は description を磨いても伸びない(1 件の実測。天井の数値は未確定)。user-invocable: true を既定にし、確実性が要る場面は rule の命令形か hook で配線する |
2026-04-11 search-first: text 編集で 27%→8%、revert |
| Redundant channel | 既存チャネル(CLI 出力・他 skill・rule)が運ぶ情報を複製しない。複製は観測性でなく視線分散を増やす | 2026-04-12 Zed 追従 hook の棄却 |
| Recommender 不適合 | 「推奨する」型の skill は成熟 harness で空振り → 暴走(新規作成を提案)する。空の出力を出せる設計か | 2026-04-07 workspace-surface-audit |
3. 書き方 — Fable 向け
- 判断基準と罠を書く。手順の羅列・反復強調・トリビアルな禁止列挙は書かない — 禁止は原理原則へ畳む。ただし grep 可能な検出語・自己執行力のある禁止・数値閾値は 畳まない(抽象化すると機能を失う — ADR-0058)。迷ったら generation-audit の 4 観点(意図 / 根拠 / 鮮度 / 失効条件)で各行を見る
- 現行規則として書く — 前版との差分を書かない。 「(日付 追加 / 追記 / 移設 / 移管 /
再編 / 明文化)」「Y から降格」「旧 X は廃止、no longer」「日付 に復活」は edit 履歴で、
git と ADR が持つ。本文は現在の規則 + 理由 1 句 + ADR/RFC 番号。as-of 日付は claim に
だけ付ける(knowledge-staleness — 外部事実の検索時点、実測の観測日)。edit の日付は
付けない。改修時に入る型で、新規作成ゲートを通らない —
harness_lint.pyが同一括弧内の 日付 + edit 動詞を止める(実測: 2026-09-02 prompt-audit で 88 件中 55 件。ADR-0061) - 存在しないものを「やらない」と書かない(tombstone)。 退役した step / store / 機構は 消し、禁止の実体があれば正の形で書く(「Wikidata 連邦 — RETIRED、この step は実行しない」 → 「sameAs は self-sovereign な解決先のみ」)。モデルは見たことのない選択肢を幻の代替 として読む
- 経緯は ADR、本文は規則。 「初見では X と推定しかけたが…」「第一波 / 第二波で移行」型の 物語は残さない。理由が 1 句で言えるなら 1 句(「正本の改名時にコピーが取り残された前例あり」)
- 改修は置換であって追記ではない。 規則を変えたら旧記述を grep して消す — 同一ファイル内に 2 版が残ると Fable は両方を文字通り読んで毎回どちらかを選ぶ(config-gc の削除手順、 authorship-strategy の型 (b) 配置で実例)
- 条件を列挙したら tie-breaker を置かない。 「判断に迷ったら Y」は条件付きに降格した gate を Y 側へ戻す(implementation-chain feat×TDD で実例)
- 例は出力の register を固定する。 例の文体・長さ・言語がそのまま出力に写る。GitHub コメント調の小文字例 9 本(thermo-nuclear)のような register 例は置かない。format を pin する例だけ、illustrative と明記して置く
- 重なる内容は参照で済ませる(正本は 1 か所。複製した版は誰も刈らず drift する)
- frontmatter:
name(dir と一致)/description(発話例 + NOT for)/user-invocable/origin(rules/common/skills.md の表)。agent はtools/modelも(判定系は opus、 read-only + Bash は evidence script がある時だけ) - description は trigger surface で、毎セッション listing に常駐する — 字数コスト
だけでなく、載っているだけで挙動に干渉しうる未監査の常駐指示層(RFC-0018)。自発発火を
狙わない skill(slash / rule の命令形 / 他 skill の参照で届くもの)は
disable-model-invocation: trueを既定に検討(RFC-0017)— listing から降り、 description は人間用 slash メニューにだけ残る。その場合 §1 の発話例 3 つは不要 - 上限 500 行(Anthropic 公式 best practices、as-of 2026-08-29)。超える分は
references/に 逃がす。script を持つならpyproject.toml+ tests - 名指しする path / agent / CLI flag は書いた時点で存在させる(scan_refs が後で拾うが、 書く側で潰す方が安い)
What ships with it
1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 3d ago Changed · +18 lines 45b19abf42e2
- 8d ago First seen · 108 lines · 251 tokens per session scan A e685989fba65
skill-creator is a skill published in the GitHub repository shimo4228/claude-harness (2 stars, last pushed 2d ago), licensed MIT. It adds 251 tokens to every session and 3,138 once invoked, about $0.0013 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
agent-adoption-triage
Five-question triage for routing AI work to the right architecture — script, algorithmic search, LLM workflow, or autonomous agentic loop — before any agent is built. Use when someone says "let's build an agent for X", when deciding whether a use case actually needs an autonomous agent, when reviewing an agent…
job-description-skill
A job-description analysis skill that turns a vacancy listing and a candidate’s background into an HTML report about fit, gaps, interview topics, and application strategy.
offer-compare-skill
A decision assistant for comparing two or more job offers across pay, growth, company strength, team risk, promotion, AI exposure, and lifestyle. Total compensation means the combined value of salary, bonuses, shares, and sign-on payments.
offer-toolkit-skill
A set of job-search tools covering the path from finding a vacancy to accepting an offer. It includes separate tools for job searches, job-description analysis, tailored resumes, behavioral interviews, offer comparisons, and salary negotiation.
bq-skill
A coaching workflow for building a reusable library of truthful stories for behavioral job interviews. It uses structures such as STAR—Situation, Task, Action, Result—and can connect stories to a job description and résumé.
linkedin-job-search-skill
A job-search assistant that uses a sample job description and your resume to find and rank similar public LinkedIn Jobs listings. LinkedIn Jobs is LinkedIn’s section for advertised employment positions.