Project

personal-config

A terminal wizard on npm that writes an agent-driven working standard into your repos: a ledger, a board, code conventions and the rules a coding agent reads before it touches anything. Save your answers as a profile, apply it to many folders at once, and see every file before any is written.

  • TypeScript
  • Node
  • Bun
~/code · personal-config profile~/code · personal-config profile apply~/code/notes · personal-config setup --yes --dry-run~/code/api · personal-config undo~/code/api · personal-config doctor
$ personal-config profile new light light
This run would write:

~/.config/personal-config/profiles
  light.json  — profile "light"  [new]

1 file(s) to write, 0 to remove, 0 already current.

Wrote 1 file(s).
$ personal-config profile list
light                light — up to sonnet, 0 folders
$ personal-config profile apply light ~/code/api --dry-run
  api: remote owner unknown ≠ you — untracked mode.
light → ~/code/api

This run would write:

~/.config/personal-config/profiles
  light.json  — profile "light"  [+3 −1]
~/code/api
  CLAUDE.local.md  — personal router (untracked)  [new]
  HANDOFF.md  — the ledger — what is true  [new]
  .personal-config.json  — per-repo config  [new]
  AGENT-PRACTICES.local.md  — the working standard, short form  [new]
~/code/api/.git/info
  exclude  — ignore entries  [+5 −0]
~/code/api/.claude
  settings.local.json  — settings.local.json — tier ceiling merged in  [new]

7 file(s) to write, 0 to remove, 0 already current.

--dry-run: nothing was written.
$ personal-config setup --yes --dry-run
personal-config — setup (non-interactive)

Found 2 repo(s) under ~/code:

  repo                   languages          pm          existing
  api                    typescript         bun         —
  site                   go                 —           —
Configuring 2 of 2 found.

This run would write:

~/.claude/rules
  commits.md  — global rule — commit policy  [new]
  model-routing.md  — global rule — model routing  [new]
  language-style.md  — global rule — chat style  [new]

24 file(s) to write, 0 already current.

--dry-run: nothing was written.
$ personal-config profile apply light ~/code/api --yes
7 file(s) to write, 0 to remove, 0 already current.

Wrote 7 file(s).
Backed up 2 overwritten file(s) — `personal-config undo` restores them.
$ personal-config undo
The backup taken at 2026-10-20T19-59-08 holds 2 file(s):
  ~/.config/personal-config/profiles/light.json
  ~/code/api/.git/info/exclude

No terminal to ask in, so nothing was restored. The list above is what `--yes` would put
back: run `personal-config undo --yes` to restore it.
$ personal-config doctor
~/code/api — 3 markdown file(s) checked

doctor: no findings.
$ personal-config -v
0.9.0
$ personal-config update --dry-run
personal-config 0.9.0 is up to date.
On npm ↗

Profiles

Answer once, apply to many folders.

A profile is a named set of folder answers, started from Light, Medium, Heavy or Writing. Each preset sets the folder model ceiling first: Light allows Sonnet at most, and Haiku is allowed under all three.

The preview

Every file, before any is written.

profile apply plans every folder and the profile record into one preview and asks once for the batch. With --dry-run it writes nothing at all.

No terminal

The same run, with no one at the keyboard.

setup --yes and profile apply --yes ask nothing, for an agent or a script. Setup lists the repos one level under your projects folder, with the languages and package manager it found, and sets up every one.

Undo

Backed up first, undone once.

Anything a run overwrites is copied aside first. personal-config undo lists what it would put back, asks, then restores it. With no terminal to ask in, it restores nothing and says how to.

Checks and updates

It checks its own work and knows when it is behind.

doctor checks what was written against the rules it follows. update asks the npm registry for the latest release and, on a yes, installs it. A profile that lands work through wk also gets a check that its gate list matches wk.

PERSONAL-CONFIG

Let's set up how you work

A short survey about how you like to work, and a configured project back in one click.

No account, and nothing is stored until you reach the end. Your answers become a link that only you have.

PART 1 OF 3 · How you work

1 / 36

Is this for code, or for other kinds of work?