whoami
Skill2 starsChanged 5 months agoMITView on GitHub
A short, conversational interview that builds a portable profile of the user — who they are and how they want to be collaborated with — so the agent can tailor its responses. Triggers on `/whoami`, "get to know me", "set up my profile", "personalize how you work with me", "calibrate how you respond", the user mentioning they are new to AI or switching agent vendors, or a request for their collaboration "character sheet" or player profile. Produces six collaboration dials, an RPG-style class + subclass with a character portrait, a memory profile, and a self-contained HTML character sheet. When a profile exists, bare `/whoami` reviews it and offers to correct or re-run; `/whoami rerun` restarts the interview. Does NOT trigger for project- or task-specific work calibration (use `handshake`), routine memory edits or CRUD (use memory-management), or brand-voice work. `whoami` is person-level and broad; `handshake` is project-level and feeds from it.
4 other projects use a version of this.
Adopted by
Most recently taken up by
- MorvanZhou/whoamitheir own version, first seen Nov 8, 2026
- hosembafer/skillstheir own version, first seen Oct 3, 2026
- crisandrews/ClawCodetheir own version, first seen Sep 12, 2026
- swinton/skillstheir own version, first seen Jul 16, 2026
Other versions4 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 4
- crisandrews/ClawCode★ 64same name
- MorvanZhou/whoami★ 8same name
- hosembafer/skills★ 1same name
- swinton/skills★ 1same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository26 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- ai-eval-reviewSkill
- ai-ux-reviewSkill
- brand-workshopSkill
- defineSkill
- gamification-fitSkill
- ghostwriterSkill
- gtmSkill
- handshakeSkill
- i18nSkill
- pitch-deckSkill
- pixel-artSkill
- plain-englishSkill
- riskiest-assumption-testSkill
- screenwrightSkill
- skill-evaluatorSkill
- startup-auditSkill
- startup-grillSkill
- startup-launch-kitSkill
- stormSkill
- sub-agent-coordinatorSkill
- team-composerSkill
- tech-stack-recommendationsSkill
- validation-canvasSkill
- wear-the-hatSkill
The file
We split this skill into the rules it gives an agent
8 rules. 0 are common, 3 are distinctive, and 5 are very specific to this project.
0
Common
Most of the 3 edited versions we read keep these.
3
Distinctive
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 37
Nothing is stored without explicit confirmation: Every inferred value is shown before it lands.
- Distinctive: line 39
Skip what you already know: Only ask a scenario question for a dial you cannot fill confidently.
- Very specific: line 79
Step 2 — Review what you know: Read runtime memory. Prior whoami profile → Re-run.
- Very specific: line 89
Step 4 — Background: Ask the background questions (references/background-questions.md), one at a time, conversational, every item opt-out.
- Very specific: line 130
Write the portable whoami-profile.md first (templates/profile-template.md) — it is the source of truth and must carry the summary, the …
- Distinctive: line 136
Write runtime memory (capability-gated) + a dated snapshot.
- Very specific: line 146
When bare /whoami finds an existing profile, present the prose summary + class/subclass (offer to open the HTML sheet), then offer:
- Very specific: line 169
Volunteered sensitive info: keep only with explicit per-item confirmation.
“Common” is measured: kept by at least 6 in 10 of the 3 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
whoami
whoami builds a profile of the user — who they are and how they want to be
collaborated with — and stores it so every future response can be tailored. The
profile is a revisable prior, not a verdict: a snapshot the user owns and can
correct any time.
Sibling skill: handshake calibrates one project; whoami is the broad,
person-level profile and feeds handshake.
Core principles
- Everything converges on the six dials (Initiative, Depth, Breadth, Rationale, Warmth, Challenge). Memory, background, MBTI, prior profile, and scenario questions are all inputs to those six numbers.
- Nothing is stored without explicit confirmation. Every inferred value is shown before it lands.
- Skip what you already know. Only ask a scenario question for a dial you cannot fill confidently.
- Hold the profile lightly — surface drift, don't absorb it. It calibrates the starting point; it never overrides what the user does now. When live behavior contradicts a dial or trait, follow the live behavior, say so ("that runs against your profile — update it?"), and revise on confirmation. A profile silently deferred to is worse than no profile.
- The knowing is the point; the character sheet is the delight. Calibrate behavior from the six dial values, never from the class label.
Invocation
| Invocation | Profile exists? | Behavior |
/whoami | No | Run the full flow (Steps 1–9). |
/whoami | Yes | Show mode — present the summary + class, offer: correct / re-run / looks good. |
/whoami rerun | Yes | Re-run — show the profile, ask "start from current and confirm/adjust, or fresh?", then run the flow. |
/whoami rerun | No | Same as /whoami with no profile. |
/whoami is the primary entry point. Suggest whoami unprompted only when user
memory is sparse and tailored help would clearly benefit — never mid-task.
The flow itself adapts: no prior data → runs cold (Fresh); existing user memory → pre-fills and confirms (Review-and-correct); the user offers an MBTI type or prior profile → pre-fills from it (Import); a re-run → the existing profile pre-fills everything (Re-run).
Three flows, kept distinct. Fresh and Rerun both run the interview and
write the profile — and a rerun resets: it re-derives everything (dials,
class, specializations, anti-patterns, summary) and overwrites the profile
with the new results. Regenerate runs no interview — it re-renders the artifacts from
the saved whoami-profile.md, mirroring the stored values exactly. See
references/persistence.md → "Regeneration vs. rerun" for the contract.
The flow
Step 1 — Open. Briefly say what this is: a short conversational setup so you can tailor how you work together; it ends in a character sheet they keep; any question is skippable, everything changeable later.
Step 2 — Review what you know. Read runtime memory. Prior whoami profile →
Re-run. Other user memory, no profile → summarize what you already know in plain
language. Nothing in memory → before going cold, offer to import an existing
profile (Step 5's fast-input shortcut): the user may have run whoami in
another runtime or workspace and can hand over the result. A full
whoami-profile.md import skips Steps 4 and 6 — go straight to Step 7. If the
user has nothing to import, say "We're starting fresh" and go to Step 4.
Step 3 — Correct. Let the user fix anything stale or wrong before continuing.
Step 4 — Background. Ask the background questions
(references/background-questions.md), one at a time, conversational, every item
opt-out. Follow the data-handling rules below. Answers set the domain bucket and
tone for adaptive phrasing; the anti-patterns question captures 2–3 named agent
failure modes to avoid.
Step 5 — Optional fast input. Offer the shortcuts: an MBTI type, or an
existing whoami profile to import — pasted in, or handed over as a file in a
reachable folder. Two profile formats are accepted: a full whoami-profile.md
(full fidelity) or the condensed <!-- whoami:start -->…<!-- whoami:end -->
block from a ~/.claude/CLAUDE.md (the prose summary is re-authored from the
dials, since the block omits it). The skill cannot autonomously reach another
runtime's memory store or ~/.claude/CLAUDE.md — cross-runtime transfer is
always user-mediated. Map MBTI per references/mbti-mapping.md; parse a profile
per references/persistence.md → "Importing an existing profile". Treat results
as estimates, never final.
Step 6 — Infer dial estimates. From memory + background + MBTI/profile, estimate each of the six dials; tag each high / medium / low confidence.
Step 7 — Confirm and fill gaps. Per dial: high-confidence → state it
conversationally, ask the user to confirm or nudge; medium/low → ask that dial's
scenario question(s) from references/question-bank.md, one at a time, in your
own voice, with adaptive phrasing (references/adaptive-phrasing.md). Every dial
ends explicitly user-confirmed.
Step 8 — Finalize. Score per references/question-bank.md; derive class +
subclass from references/class-map.md. Then derive the user's
specializations (flexible traits — up to five, each a short name + 0–10
strength) from the background, runtime memory, and the working preferences
surfaced during the interview; confirm them with the user. If nothing
distinctive surfaced, leave specializations empty rather than invent. A rerun
re-derives and re-confirms specializations; it does not silently carry old
traits forward.
Step 9 — Persist and report. Per references/persistence.md:
- Optionally offer a cosmetic color-theme pick (or use the class default).
- Generate the character portrait — capability-gated: if
pixel-art+ an image generator are available, generate a class-anchored pixel character and base64-embed it; otherwise base64-embed the bundled hi-density class PNG fromassets/characters/<class>.png. - Write the portable
whoami-profile.mdfirst (templates/profile-template.md) — it is the source of truth and must carry the summary, the specializations, and the anti-patterns. Then render the self-contained HTML character sheet (templates/character-sheet.html) from those persisted values — for the values it displays, the sheet never shows data the profile lacks nor drops data it holds. - Write runtime memory (capability-gated) + a dated snapshot.
- Offer global persistence — a confirmed, condensed whoami block in
~/.claude/CLAUDE.mdso the profile calibrates every session, not just this workspace (written directly where reachable, otherwise handed to the user to paste). Opt-in, one confirmation; seereferences/persistence.md→ "Global persistence". A decline ends it. - Show the user the result and where it lives.
Show mode & the correction path
When bare /whoami finds an existing profile, present the prose summary +
class/subclass (offer to open the HTML sheet), then offer:
- Correct something → the user describes the change in free text. Interpret
it → map to the affected dial(s), background, or trait → show the proposed
change → confirm → persist (new dated snapshot; canonical, memory, and any
~/.claude/CLAUDE.mdblock updated in place). If the correction is ambiguous, ask one targeted question rather than guessing. This does not re-run the interview. - Re-run → enter Re-run mode.
- Regenerate the sheet → the Regenerate flow: re-render the HTML
character sheet from the saved
whoami-profile.mdwith no interview — a pure render of the stored summary, dials, class, and specializations. Useful after a template update. Precondition: ifwhoami-profile.mddoes not exist, Regenerate stops and directs the user to/whoamior/whoami rerun— it never renders from the memory entry or a partial source (seereferences/persistence.md→ "Regeneration vs. rerun"). - Looks good → done; nothing written.
Data-handling rules
- Never solicit protected attributes. Background questions stay scoped to collaboration-relevant facts; the free-text field is the only entry point for volunteered sensitive info.
- Volunteered sensitive info: keep only with explicit per-item confirmation;
store as a separate standard
user-type memory — never in the whoami profile, never scored, never on shareable artifacts. - Secrets (SSNs, bank/account numbers, passwords, government IDs): never store; if volunteered, drop them and say so once.
- Defer to the host runtime's data policy; never override it.
handshake integration
handshake reads whoami-profile.md to pre-fill its core questions. whoami
is upstream and one-directional — it never reads or depends on handshake.
References & assets
references/dials.md— the six dial definitions (canonical pole labels)references/question-bank.md— 9 scenario questions, domain variants, scoringreferences/class-map.md— 12-class taxonomy, Wildcard, derivationreferences/subclass-blurbs.md— the 120 class/subclass combination blurbsreferences/background-questions.md— background set + data-handling policyreferences/adaptive-phrasing.md— tone + domain-skinning rulesreferences/mbti-mapping.md— MBTI → dial priorsreferences/persistence.md— profile schema, memory contract, import, snapshotstemplates/profile-template.md,templates/character-sheet.htmlassets/characters/*.png— 13 hi-density pixel-art class portraits (512×512), one per classcommands/whoami.md— slash-command entry point (/whoami,/whoami rerun)
When to use this skill
Load when the user wants to set up, view, or update a personal collaboration
profile. Primary entry point is /whoami; /whoami rerun forces a
re-interview. Auto-triggering is conservative — only suggest whoami when user
memory is sparse and tailored help would clearly benefit, never mid-task.
Out of scope — route elsewhere. whoami is a person-level, portable, point-in-time profile. It deliberately does not absorb:
- Project- or task-level calibration, including per-task modes (greenfield vs.
debugging) →
handshake. - A code "definition of done" — what clears the bar, commit-vs-propose →
handshakefor project defaults,cerby(external, if installed) for coding discipline. - Accruing corrections over time → the runtime's
feedback-type memory; whoami only seeds the first few anti-patterns. - Routine memory edits or CRUD → memory-management. Content generation → a content skill.
Tags: personalization, onboarding, user-profile, memory, gamification
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

