newskill

newskill is a skill for Claude Code, Codex from duthaho/skillhub. It costs 55 tokens per session (1,265 once invoked), scanned A, original, MIT.

A setup and repair workflow for adding skills to a skillhub project. It keeps the skill folder, documentation, marketplace listing, and trigger tests in agreement.

In plain words
What is it for?
Use it to scaffold a new skill or repair an existing one, then validate that all required project files and listings agree.
Why use it?
Manually adding a skill can leave some registration points missing or inconsistent. This workflow finds that drift and uses a validator to confirm the setup is complete.

Skill for Claude CodeCodex

Part of the coding-loop plugin — 8 skills shipped together

Install

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.

agentmods
npx agentmods add skills/duthaho/skillhub/newskill
Any agent
npx skills add duthaho/skillhub --skill newskill
Clone the repo
git clone --depth 1 https://github.com/duthaho/skillhub

Made for: Claude Code, Codex.

Or install coding-loop, the plugin that ships this one along with the rest of its 8 skills.

Wrote 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.

agentmods badge for newskill

README.md
[![agentmods](https://agentmods.dev/badge/skills/duthaho/skillhub/newskill.svg)](https://agentmods.dev/skills/duthaho/skillhub/newskill)
Your own site
<a href="https://agentmods.dev/skills/duthaho/skillhub/newskill"><img src="https://agentmods.dev/badge/skills/duthaho/skillhub/newskill.svg" alt="Measured on agentmods" height="20"></a>
Per session 55 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,265 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00055 $0.01265
Opus 5 $0.00028 $0.00633
Sonnet 5 $0.00011 $0.00253
Haiku 4.5 $0.00006 $0.00127

Measured 4d ago against content hash 437a5dc47673, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

newskill 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 4d 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.

.claude/skills/newskill/SKILL.md · 99 lines

How it starts

The opening of the file, as written. The whole thing — 99 lines — stays where its author put it; the contents beside it link to each section on GitHub.

newskill — add a skill without drift

/newskill scaffold <name> "<description>" <category> — create a new skill, registered /newskill fix [<name>] — complete a skill that exists in some surfaces but not others

A skillhub skill lives in four surfaces, and it is only really "added" when all four agree:

  1. Folder.claude/skills/<name>/SKILL.md with valid frontmatter.
  2. README table row — a row in the right category table (a prose mention does not count; the validator checks for a table row specifically).
  3. Marketplace<name> listed in one plugin's skills[] in .claude-plugin/marketplace.json.
  4. Trigger evals — cases in evals/triggers.json (model-invoked skills only; user-invoked skills are exempt).

Drift is these four disagreeing — the default failure of hand-adding a skill. The oracle for drift is python3 scripts/validate-skills.py: it already reports which surfaces are missing. This skill's whole job is to make the four agree and leave the validator green.

The loop (both modes end here)

Run python3 scripts/validate-skills.py → read each FAIL/WARN → fix that exact surface → re-run. Repeat until no FAIL. Never assert done from memory; the validator is cheap and authoritative.

Mode: scaffold

Adding a brand-new skill from a name + description + category.

  1. Guard. If .claude/skills/<name>/ already exists, stop — this is a fix, not a scaffold; never overwrite an existing SKILL.md. Also reject a <name> that collides with a harness built-in (the validator's BUILTINS set) or an existing skill.
  2. Folder. Write .claude/skills/<name>/SKILL.md with frontmatter (name = folder name) and a description. If out/tune/principles.md exists, read it before writing the body — each line is an authoring rule distilled from accepted past fixes. Keep the description ≤ 950 chars (soft limit; hard wall is 1024) — front-load the leading word, one trigger per branch. For a user-invoked tool add disable-model-invocation: true and write a human-facing one-line description (no trigger list).
  3. Category → plugin + table. <category> is one of coding-loop / research / daily. Add ./.claude/skills/<name> to that plugin's skills[] in marketplace.json, and add one row to the matching README category table.
  4. Trigger evals (model-invoked only). Add ≥2 cases to evals/triggers.json, including a routing pair against the nearest neighbour skill. Skip for user-invoked skills.
  5. Pre-flight the body's snippets. Every snippet the new SKILL.md embeds is tried once against real data before the skill ships, output quoted in-session: execute each bash line (placeholders filled with real values), fetch each API endpoint, read each referenced path. A snippet that fails as written is a bug in the skill, not a formatting nit. Two honest outs, both flagged unverified and never skipped silently: one that can't run here (external account, missing binary, a file that exists only mid-run), and one that would mutate real state — never run something destructive just to prove it. This is tune's prove-the-rules-bite extended from config to authoring. (Fix mode is exempt — it never writes a body.)
  6. Run the loop above until green.

Read the full file on GitHub · 99 lines

Changes

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.

  1. 4d ago First seen · 99 lines · 55 tokens per session scan A 437a5dc47673

Subscribe to this mod's changes

newskill is a skill published in the GitHub repository duthaho/skillhub (9 stars, last pushed 11d ago), licensed MIT. It adds 55 tokens to every session and 1,265 once invoked, about $0.0003 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.