Skip to content

Claude Skill

Joël Deffner edited this page Jul 14, 2026 · 1 revision

Claude Skill

The repository ships a skill for CK3 modding aimed at AI agents, not at the editor. It lives under skills/ck3-modding/ and is not part of the extension runtime: the extension never loads it, and it works with any agent that reads SKILL.md files (Claude Code and others).

What it is

A skill that teaches an agent the full CK3 modding workflow the way an experienced modder actually works, rather than letting the model improvise from half-remembered token names. Its core discipline is ground truth first:

  • The base game files are the source of truth. The skill never guesses trigger, effect or scope names from memory; it reads them from a vanilla file, the game's own _*.info schema docs, or your script_docs logs.
  • Log-dump analysis: when it needs runtime truth (what errored, the exact effect / trigger / scope lists, the GUI data-binding API, which file won a contested override), it asks you to produce the dump by launching the game and running a console command, then reads the log itself instead of asking you to interpret it. It checks the log's timestamp so it does not reason from a stale dump.
  • Validation with ck3-tiger after writing code and before asking you to test in game.
  • Per-system reference recipes under references/ (setup, language, events, content, GUI, validation, debugging, compatibility, plus deep step-by-step recipes per system under references/patterns/).
  • Distilled pattern notes from two large Workshop mods in mods/agot.md (A Game of Thrones) and mods/pod.md (Princes of Darkness): real-world idioms for tiered meters, hidden societies, AI-driven drama, performance budgeting, and custom UI at scale.

It also carries the hard-won rules that keep a mod from failing silently: UTF-8 with BOM for localization, common/on_action is singular, never redefine a vanilla on_action's trigger/effect (append your own), script is LIOS / last-wins while GUI is FIOS / first-wins, and so on.

How to install it

The skill uses the placeholders <game>, <logs>, <mods>, <workshop> and <tiger> for the machine paths. You have two ways to install it.

Option A: copy the folder as-is

Copy the whole skills/ck3-modding/ folder into your agent's skills directory (for Claude Code, that is ~/.claude/skills/). No path editing needed: the skill resolves the placeholders itself at the start of each session, in its Step 0, by looking in the usual Steam / Documents locations (and asking you only if detection fails).

Option B: generate a personalized copy

If you would rather bake your machine's paths in ahead of time, generate a substituted copy:

  1. Create dev-paths.json in the repo (copy dev-paths.example.json) and fill in your gamePath, logsPath and optional tigerPath.

  2. Build and run the generator:

    npx esbuild scripts/gen-skill.ts --bundle --platform=node --outfile=dist/gen-skill.cjs
    node dist/gen-skill.cjs [destDir]
    

    destDir defaults to your ~/.claude/skills/ck3-modding. The <workshop> and <mods> paths are derived automatically (workshop from gamePath, the mod folder as the sibling of logsPath), and if you leave tigerPath unset the <tiger> slot is replaced with a clearly-marked "fill this in" marker.

Never hand-edit a generated copy. The template under skills/ck3-modding/ is the single source of truth; edit it and regenerate, or your changes are lost the next time you run the generator.

How to use it

Once installed, just talk to your agent about CK3 modding. The skill's description auto-triggers on CK3, Crusader Kings and Paradox-modding topics, so you do not have to invoke it by name. A few example prompts:

  • "Write me an event where my ruler's cat dies and everyone at court mourns."
  • "Why does my decision not show up in game?"
  • "Set up a new mod skeleton for me."
  • "Run ck3-tiger on my mod and fix what it finds."

What makes it different from a generic LLM answer

A plain model will confidently invent trigger and scope names that do not exist in your patch, and cannot see why your file is being ignored. This skill does neither: it reads your actual game files and logs, works from Paradox's own schema docs, validates with ck3-tiger, and walks the silent-failure checklist when you say "it does nothing". The answers are grounded in your install, not in the model's memory.

Clone this wiki locally