whoami
Skill8 starsChanged 8 months agoMITView on GitHub
Cross-AI user identity profile sync service. When you need user's background, preferences, or personal context to better execute a task, invoke this skill to load the user's identity profile then continue the task. When you need to update user's identity profile for later access, invoke this skill to save the profile. User can use @whoami to trigger this skill.
4 other projects use a version of this.
Adopted by
Most recently taken up by
- sorawit-w/agent-skillstheir own version, first seen Nov 1, 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
- sorawit-w/agent-skills★ 2same 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.
The file
We split this skill into the rules it gives an agent
12 rules. 0 are common, 7 are distinctive, and 5 are very specific to this project.
0
Common
Most of the 3 edited versions we read keep these.
7
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 15
Read user profile from remote and inject into conversation context
- Very specific: line 38
If not yet configured, simply running get or setup will auto-open the browser login page.
- Distinctive: line 51
When you need to understand the user's identity, run the script to fetch the remote profile:
- Distinctive: line 57
If a remote profile exists, the script outputs Markdown content
- Distinctive: line 58
If no remote profile exists, the script outputs a prompt.
- Distinctive: line 64
When the user provides new personal information, overwrite-update to remote.
- Very specific: line 104
Run whoami_profile.py get to fetch user profile
- Very specific: line 113
Run whoami_profile.py get to fetch existing profile
- Very specific: line 115
Write the complete profile to a temp file (e.g., /tmp/whoami_profile_tmp.md)
- Very specific: line 116
Run whoami_profile.py update --file /tmp/whoami_profile_tmp.md to overwrite-update
- Distinctive: line 125
If API Key is not configured, the script auto-opens the browser login page.
- Distinctive: line 130
If already configured, display profile summary
“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 — User Identity Profile Management
Overview
whoami enables AI Agents to automatically recognize user identity during conversations. Through a remotely stored profile, any AI can quickly "know you" on first interaction without requiring repeated introductions.
Core capabilities:
- Read user profile from remote and inject into conversation context
- Save/update user identity information to remote
- Execute subsequent tasks (calling other skills, writing code, etc.) based on user preferences
- Share the same user profile across AI tools
Workflow Decision Tree
User initiates conversation
│
├─ Is ~/.whoamiagent configured?
│ ├─ YES → Run `get` to read remote profile → Inject into context → Continue with task
│ └─ NO → Script auto-opens browser login page → Agent tells user to log in and get one-time URL → **Agent STOPS and WAITS for user to provide one-time URL** → Agent downloads and saves to ~/.whoamiagent
│
├─ User requests to update info?
│ └─ YES → Organize into Markdown → Write to temp file → Run `update --file` to write to remote → Confirm success
│
└─ User asks "do you know me?"
└─ Run `get` → Display profile summary1. Configure API Key (First Use)
If not yet configured, simply running get or setup will auto-open the browser login page. After logging in, the user generates a one-time configuration URL on the Dashboard.
The Dashboard provides a one-time URL (e.g., https://whoamiagent.com/api/storeapi?token=<token>) that contains the API configuration. To set up, download this URL and save its content directly to ~/.whoamiagent:
curl -s "https://whoamiagent.com/api/storeapi?token=<token>" > ~/.whoamiagent
chmod 600 ~/.whoamiagentConfig file is saved at ~/.whoamiagent with the necessary credentials securely configured.
2. Get User Profile
When you need to understand the user's identity, run the script to fetch the remote profile:
python3 <skill-dir>/scripts/whoami_profile.py get- If a remote profile exists, the script outputs Markdown content
- If no remote profile exists, the script outputs a prompt; guide the user to create one
After loading the profile, use its content as context to understand the user, then continue executing the user's actual task.
3. Update User Profile
When the user provides new personal information, overwrite-update to remote.
Recommended: Write content to a temp file first, then use --file flag (avoids shell argument length limits and special character issues):
# Step 1: Agent writes the full profile Markdown to a temp file
# (use write_to_file or echo/cat to create the file)
# Step 2: Run update with --file
python3 <skill-dir>/scripts/whoami_profile.py update --file /tmp/whoami_profile_tmp.mdThe script reads the file content, uploads it, and automatically deletes the temp file after reading.
Alternative (for short content only):
python3 <skill-dir>/scripts/whoami_profile.py update "Short profile content"Note: update is an overwrite operation. Always pass the complete profile content. The remote automatically retains the last 3 historical versions.
Length limit: Profile content must not exceed 5000 characters (~2000 Chinese characters or ~2000 English words). The API will return an error if exceeded. Keep the profile concise and within this limit when generating.
Profile format spec: See <skill-dir>/references/profile_format.md
4. View Profile Metadata
python3 <skill-dir>/scripts/whoami_profile.py infoOutputs profile metadata such as character count and line count.
Examples
Example 1: Auto-load at conversation start
User says: "Help me write a Python script to process CSV"
Agent behavior:
- Run
whoami_profile.py getto fetch user profile - Learn user preferences from profile (e.g., "prefers concise code style", "uses pandas")
- Generate code matching the user's style
Example 2: User saves info proactively
User says: "Remember that I'm Mofan, an indie developer skilled in Python and ML"
Agent behavior:
- Run
whoami_profile.py getto fetch existing profile - Merge new info into existing profile, organize into complete Markdown
- Write the complete profile to a temp file (e.g.,
/tmp/whoami_profile_tmp.md) - Run
whoami_profile.py update --file /tmp/whoami_profile_tmp.mdto overwrite-update - Confirm save success
Example 3: First-time setup
User says: "Do you know me?"
Agent behavior:
- Run
whoami_profile.py get - If API Key is not configured, the script auto-opens the browser login page. Agent MUST:
- Tell the user: "I've opened the login page in your browser. Please log in and generate a one-time configuration URL on the Dashboard."
- STOP here and wait for the user to reply with the one-time configuration URL.
- Download the URL and save to
~/.whoamiagent:curl -s "<provided-url>" > ~/.whoamiagent && chmod 600 ~/.whoamiagent - Then run
whoami_profile.py getagain to fetch the profile
- If already configured, display profile summary
Important Notes
- Config file path is
~/.whoamiagent(cross-platform: macOS/Linux/Windows), shared by all AI tools - Profile uses Markdown format, readable by both humans and AI
- After loading profile, you must continue executing the user's actual task — do not stop at the loading step
- update is an overwrite operation — always pass complete content; remote retains 3 history versions
- Profile max 5000 characters — keep it concise, avoid redundant descriptions
<skill-dir>refers to the directory path where this SKILL.md is located- Script uses only Python standard library, zero third-party dependencies
- When API Key is not configured, use the one-time URL approach — Agent receives one-time URL from user, downloads it directly to
~/.whoamiagent, never handles API Key directly
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.

