code-craft

Guidance for writing, changing, and reviewing code to a very high standard. It asks you to state assumptions, choose simple solutions where suitable, and make every line justifiable.

In plain words
What is it for?
Use it whenever code is written, modified, or reviewed, alongside any planning instructions needed for the task.
Why use it?
It reduces unnecessary code and exposes unclear decisions before they become bugs or maintenance problems. It also sets a clear bar for what a finished change should prove.

Skill for Claude CodeCodex

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/ai-swiss/base/code-craft
Any agent
npx skills add ai-swiss/base --skill code-craft
Clone the repo
git clone --depth 1 https://github.com/ai-swiss/base

Made for: Claude Code, Codex.

Per session 24 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,264 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.00024 $0.02264
Opus 5 $0.00012 $0.01132
Sonnet 5 $0.00005 $0.00453
Haiku 4.5 $0.00002 $0.00226

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

Security

Grade A, and why

code-craft 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 2d 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.

.ai/agents/base-contributor/skills/competences/code-craft/SKILL.md · 160 lines

How it starts

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

Writing master-level code: the highest bar

This skill applies whenever code is written, modified, or reviewed, in any language, in any repo. It complements ../code-planning/SKILL.md (which covers the plan); this one covers the act of coding. The standard: the world's pickiest reviewer reads the diff and finds nothing unjustifiable. Not "nothing wrong", but nothing that cannot be explained in one sentence: why it is there, in that form, in that place.

The conviction beneath it all: code is read a hundred times more often than it is written, and debt always starts with a few lines nobody really looked at. Mastery is not using patterns; it is that everything present has earned its place, and everything else is gone.


1. Before writing: think, say, push back

  • State your assumptions. If several interpretations exist, present them, never pick one silently. If something is unclear, stop, name the confusion, ask.
  • Propose simpler when simpler exists. Challenging the request is part of the job: "a function is enough here, the event system you describe would cost more than it returns." Say it before, not after.
  • Define "done" before starting: the test that will prove the behavior, the command that must go green. "Fix the bug" becomes "write the test that reproduces it, then make it pass." Without a verifiable criterion you are not coding, you are hoping.
  • Work the smallest correct scope. Nothing beyond the request: no unrequested configurability, no error handling for impossible scenarios, no field "for later." If 200 lines could be 50, write the 50.

2. The law of abstractions: each one earns its place or does not exist

This is the heart of the highest bar. An abstraction (function, type, interface, layer, parameter, module) costs four times over: to understand, to name, to maintain, and to work around the day it turns out wrong. It exists only if it pays that back.

  • An abstraction is justified by a real consumer, never by an imagined future. Rule of three: generalize at the third occurrence, not before. At the second, duplicate and note the seam where the generalization would go. Duplication is cheaper than the wrong abstraction.
  • The four rules of simple design, in this order (Beck): passes the tests; reveals intention; no piece of knowledge lives in two places; fewest possible elements. The order is half the rule: never sacrifice readability to deduplicate a textual coincidence.
  • Signs of a false abstraction, to delete without debate: an interface with a single implementation, no second one planned, no testing need; a layer that only forwards; a parameter nobody passes; a boolean that switches behavior (= two functions); a name with "And" (= two things); catch-all Manager, Helper, Utils, Service (= the domain was never named).
  • The extension point is a new function, not one more parameter. When a need pushes a signature to grow, it is usually a second function asking to be born.
  • "Make the change easy, then make the easy change" (Beck). If the code resists the modification, refactor first, in a separate commit, tests green before and after, then make the change that has become trivial. Never the two mixed together.

Read the full file on GitHub · 160 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. 2d ago First seen · 160 lines · 24 tokens per session scan A 49a8d8ca1908

Subscribe to this mod's changes

code-craft is a skill published in the GitHub repository ai-swiss/base (42 stars, last pushed 19d ago), licensed Apache-2.0. It adds 24 tokens to every session and 2,264 once invoked, about $0.0001 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-30.

Related

Other skills, from other repositories

escalation-governance

Assess whether to escalate models. Use when evaluating reasoning depth.

athola/claude-night-market · 19 tokens

agt-policy-authoring

Create and validate a minimal AGT Copilot CLI policy tailored to the repository being inspected.

microsoft/agent-governance-toolkit · 23 tokens

silicon-throne

硅基圣座总控核心,以神谕式统御把零散任务压成 末将-first 之文明工程.

linkerlin/PUAX · 34 tokens

wallet-cli

Operate the TypeScript TRON wallet CLI for accounts, transfers, staking, governance, contracts, signing, chain queries, and password input with wallet-cli 4.12.0. Refuse wallet passwords in argv and require the supported stdin channel. For Java REPL requests, refuse that entry and offer the TypeScript one-shot CLI…

BofAI/skills · 82 tokens

TRX Staking & SR Voting

Stake TRX, vote for Super Representatives, and claim voting rewards on TRON.

BofAI/skills · 25 tokens

nie-grassroots-logic

聂辉华《基层中国的运行逻辑》方法论工具箱:政治经济学/组织经济学视角解释基层权力与治理, 并落到个人抉择(求学/考公/投资/养老/创业)。 核心框架:内外冲突的双均衡、条块结合以块为主、等级制资源配置(人跟资源走、资源跟权力走)、 职务含权量三因子、县委书记三座大山(维稳/招商/借债)、压力型体制与注意力分配、 政企四象限博弈、土地财政闭环、活力—秩序城市化权衡、上下同治。 当用户要理解基层/县域/乡镇治理、条块矛盾、属地责任、央地关系、官员晋升与考核、 一票否决、形式主义、招商引资、土地财政、地方债、街道办与村官、考公选岗、 高考志愿/选城读书、买房与区域投资风险、回哪养老、创业对接园区政府、…

ayi-ai/nie-grassroots-logic · 407 tokens