From cairn
Use to maintain the global user profile at ~/.config/cairn/user-profile.md (or the project-local path if install configured one). Triggers when the user reveals durable preferences about how they think, decide, or collaborate — editor choices, decision patterns, architectural instincts, pushback to AI framing, etc. Observations go in with evidence; the file is periodically re-synthesised, not blindly appended. Distinct from build-project-profile which captures the project's stances.
How this skill is triggered — by the user, by Claude, or both
Slash command
/cairn:build-user-profileThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Maintain the **user profile** — a living synthesis of how the
Maintain the user profile — a living synthesis of how the user thinks, decides, and collaborates. Not what they prefer at a single-issue level (those are individual memory entries); how they reason at the meta level.
close-session skill) —
check for new signal worth synthesising in.build-project-profile).In order:
$CAIRN_USER_PROFILE env var → use that path.<project>/.cairn/config.json → if present and has
user_profile_path, use that.~/.config/cairn/user-profile.md → default (global).If none of the above exists and the user-profile feature is enabled, offer to bootstrap at the global default and prompt for the install-time location choice. If the user skipped the feature entirely (option 4 at install), don't silently create one — ask.
Observations with evidence, not judgments.
Every new entry needs:
Example:
## Communication style
- **Prefers terse openings.** Uses "btw", "actually", "oh
and" to jump straight to the point. Evidence: 2026-04-24
session (multiple turns), 2026-04-25 session (two turns).
Not:
## Communication style
- User is impatient. (No.)
- User likes short messages. (Too vague.)
Every ~5 new observations (or at session close if a meaningful pattern emerged), re-read the whole file:
last-synthesised: YYYY-MM-DD in the frontmatter.The file is synthesis, not history. If you want the history, the session journals have it.
Invoked from cairn-close-session:
The user profile is personal. Default location is private
(~/.config/cairn/, not tracked in any repo). If the user
chose a project-local tracked location at install time, they
accepted the tradeoff — but the skill should still err toward
private: don't save observations that would be embarrassing
in a PR review.
Guides creation, editing, and verification of skills for AI coding agents using test-driven development with subagent scenarios. Use when authoring or debugging skills.
npx claudepluginhub foobarto/cairn --plugin cairn