← ClaudeAtlas

setup-userlisted

One-time (and re-runnable) personal setup for Daikenja. Checks that the session is Claude Code, creates ~/.claude/daikenja/daikenja.yaml from the template, captures the user's profile, copies the blank persona and writing-style files if they are not already there (or creates them in Google Drive if you ask), and reports which connected tools the other skills can use. It is also the only place an upgrade is applied -- when the version recorded in your configuration is behind the installed one, it proposes the edits docs/upgrading.md lists for the versions in between and writes them on approval, which is what the one-line version notice in every other skill points at. It does not register a project -- /daikenja:setup-project does that, and this skill hands off to it at the end, so a first-ever run is still one continuous flow. Run explicitly with /daikenja:setup-user -- it never fires on its own.
by-carlos/daikenja · ★ 0 · Data & Documents · score 69
Install: claude install-skill by-carlos/daikenja
# Setup user The skill every other Daikenja skill assumes has already run. It writes `daikenja.yaml`, nothing else -- `personas.md` and `writing-style.md` get a blank starting copy if the user has none, and this skill never writes a word of their content afterwards. **This is the once-per-person half of setup, and only that.** Everything with a per-project lifetime -- registering a directory under `projects:`, that project's own settings, seeding its ledger -- belongs to `/daikenja:setup-project`, which Step 7 hands off to. Running this skill again to add a second repository is exactly the shape that split the two apart. **Migration is a third lifetime again, and it belongs here.** Step 2 runs once per upgrade -- not once per person, not once per project. It sits in this skill because this is already where `daikenja.yaml`'s non-project keys are written, so it needs no new writer and no exception to `${CLAUDE_PLUGIN_ROOT}/docs/config-contract.md` § Who writes what. The `disable-model-invocation: true` above works in its favour for the same reason: editing stored user data should be something the user triggers deliberately, not something a model chains into mid-task because it noticed a version gap. **Slash-only on purpose.** This skill asks personal questions and writes files outside the project. Nothing about "help me get started" or "set up my config" should make it fire on its own -- the user runs `/daikenja:setup-user` when they mean to. `disable-model-invocation: true