knack ← all docs

Docs · last updated

Customising a knack pack you've installed

A pack is markdown files on your disk. Edit, fork, and extend any of it to match your voice, your templates, and your edge cases. Plus the one thing to watch out for on updates.

Once a knack pack is installed, every file is yours to edit. There’s no encryption, no obfuscation, no remote feature flag turning bits on and off. Skills are markdown. Templates are markdown. Install scripts are bash and PowerShell. If you want a different tone, a different default rate, an additional worked example, or a brand-new skill that uses the pack’s templates, you have everything you need.

This page covers the three patterns that come up most.

Pattern 1: edit a skill in place

Open ~/.claude/skills/<skill-name>/SKILL.md in any editor. The body is plain markdown with a small YAML frontmatter at the top. Change the prose, change the example, change the rules the skill enforces. Save. Restart Claude Code. The new version is what runs.

What you can safely change:

  • The body prose, including section headings, examples, and rules
  • The default values the skill uses (rate ranges, working weeks, currency, voice)
  • The list of inputs the skill asks for
  • Anything in examples/ (these are reference fixtures, not load-bearing)

What you should not change unless you know what it does:

  • The name: field in the frontmatter (Claude Code uses this for invocation)
  • The file path (SKILL.md must be at the top of the skill directory)

If you want to keep the original around as a reference, copy the directory rather than overwrite. Naming convention: proposal-writer/ becomes proposal-writer-orig/. Claude Code will list both in /skills; rename the body’s name: field on the copy so they don’t collide.

Pattern 2: replace a template

Some skills reference templates in their own directory. The proposal-writer skill in Solo Consultant Ops, for example, reads from a templates folder for its boilerplate clauses. Edit those files directly. Replace the placeholder language with your own contractual phrasing, your own reading-time notes, your own pricing tables.

Three things to keep when you do this:

  • Section headings. Skills look up sections by heading text, so renaming ## Pricing to ## Fees will break the skill’s expectations.
  • Variable names. Templates use {{like-this}} for substitutions. Keep the names; change the surrounding prose freely.
  • A copy of the original. Stash it as template-orig.md in the same folder. Updates may overwrite your edited template; the original copy lets you re-merge.

Pattern 3: add your own skill that reuses the pack’s templates

This is the highest-leverage customisation. You write a new skill at ~/.claude/skills/<your-name>/SKILL.md that points at the pack’s templates and adds your own extra steps before the pack’s workflow runs.

Worked example: a Knack buyer who runs both fractional CTO engagements and CFO ones writes their own cfo-proposal-prep skill that asks two extra finance-shaped questions, then hands off to proposal-writer for the actual generation. The pack didn’t have to know about the CFO use case; the buyer’s own skill bridges the two.

Templates for writing new skills are in the free Knack Starter Pack — see first-skill-template. That pack is MIT-licensed, so you can copy its scaffolding into anything you build.

What breaks on updates

Updates are clean overwrites per file (see what files a knack pack puts on your machine). That means:

  • Edits you’ve made to files the pack ships will be overwritten.
  • Files you’ve added that the pack doesn’t ship are kept. If you wrote ~/.claude/skills/cfo-proposal-prep/SKILL.md yourself, an update to the SCO pack won’t touch it.
  • Files the pack used to ship but no longer does are not removed. If we drop a skill in a future major version, the old skill stays on your disk until you delete it.

If you’ve customised heavily, the simplest pattern is to keep ~/.claude/ under git, commit before each update, and resolve the conflicts as you would with any other dotfile repo. Most buyers don’t need to go that far.

What we’ll never do

We won’t ship an update that removes your customisations elsewhere in ~/.claude/. The installer only ever touches files that belong to the pack being installed. It doesn’t write to <config>/settings.json, doesn’t modify your other skills, and doesn’t delete anything outside the pack’s own directories.

If a future installer needs to change that pattern, it’ll prompt you first and we’ll document it on this page with a date stamp.

Sharing your customisations

If you build something useful on top of a Knack pack, we’d genuinely like to see it. The catalogue grows from real operator feedback, and “I changed your X to do Y and now it does Z” is the most useful kind. Email hello@knack.run.