Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

mirror

Who Am I

Personality tests ask 60 questions. Your machine already heard 8,000 answers.

License Last Commit Stars

Works in Claude Code · Codex · Cursor · OpenCode · Gemini CLI · and any agent that speaks the open Agent Skills standard

Sample OutputInstallWhat It ReadsDesign RulesPrivacy中文


An Agent Skill (one folder, the open SKILL.md standard, runs in 30+ AI agents) that reads the AI conversations already sitting on your machine — coding agents, editor assistants, voice dictation — extracts only your own words, and writes who you actually are: your core qualities, what you really want, what you can't see about yourself, and who you're becoming.

Quizzes measure your self-image. This measures you — thousands of sentences you said when nobody was scoring you.

Everything runs locally. Nothing leaves your machine. No dependencies — Python standard library only.

Sample output

(fictional user — your report is built from your data, in your language)

The short version

You're a defensive perfectionist: you rewrite everything seven times, then ship draft one. Your politeness is real — 312 thank-yous to a machine that doesn't keep score. You only become yourself after midnight, and you've never missed a deadline in three years.

Your sharpest paradox:

Revision appetite, 9/10. Sign-off courage, 2/10.

You never lacked the strength to edit. You lacked permission to stop.

3 tools scanned · 4,990 of your own sentences · 31% said after midnight

Then five more sections: your core qualities (each praised only in evidence the data can fund, each with its honest price) · numbers that are unmistakably you · what you actually want vs. where your time really goes · things you probably haven't noticed about yourself · and who you're becoming on the current trajectory.

What you get

~/.who-am-i/run-<timestamp>/   (0700, auto-pruned, yours to delete)
├── metrics.json     pre-computed, vetted numbers — no improvised stats
├── stats.json       which tools were scanned / read / honestly skipped
├── corpus.jsonl     every message, with source + timestamp
├── user_text.txt    one clean line per message, for your own grepping
└── sample.md        the readable corpus

~/who-am-i-报告.md    the report (or wherever you ask)

Install

One command — auto-detects the agents on your machine:

npx skills add Pointa-Labs/who-am-i-skill

Target a specific agent:

npx skills add Pointa-Labs/who-am-i-skill -a codex     # or: cursor, windsurf, cline,
                                                       #     goose, qwen-code, trae, …

Manual (Claude Code shown; any Agent-Skills host works the same way — drop the folder into that agent's skills directory):

git clone https://github.com/Pointa-Labs/who-am-i-skill
cp -r who-am-i-skill ~/.claude/skills/who-am-i

Then just ask your agent:

who am I, based on my AI chats?  /  分析我本地所有 AI 对话,告诉我我是个什么样的人

The collector also runs standalone (Python 3.9+, zero dependencies):

python3 scripts/collect_conversations.py            # auto-detect → ~/.who-am-i/run-*
python3 scripts/collect_conversations.py --out DIR  # custom output dir

The report language follows your corpus: Chinese in, Chinese out; English in, English out.

What it reads

Auto-detected, zero config — if it's installed, it's found:

Terminal agents · Claude Code · Codex · Gemini CLI · Qwen Code · Hermes Agent · OpenCode · OpenClaw / AutoClaw · Goose · Crush · Aider Editor assistants · Cursor · VS Code Copilot chat · Cline · Roo Code · Windsurf · Trae · VSCodium Voice dictation · Typeless Unknown tools · a discovery net scans for AI-shaped conversation stores the registry doesn't know yet — parseable ones get ingested, the rest get honestly reported instead of silently missed.

Tools whose chats are encrypted or server-side (ChatGPT Desktop, Claude Desktop, CodeBuddy/WorkBuddy, Tongyi Lingma, Comate …) are detected and disclosed, never decrypted, never silently skipped — the report always tells you what it could and couldn't see. Full map with on-disk formats: references/data-sources.md.

Design rules

The failure mode of every personality analysis is the horoscope. Three layers guard against it:

Layer Rule
Claims Every judgment is located in your real messages before it's written — then stated in the report's own words, never by quoting your sentences back at you
Numbers Only pre-computed, vetted metrics — a sentence that sounds measured must actually have been measured
Metrics Every number must pass the swap-person test: words the talking-to-AI genre forces out of everyone ("help me", "continue") are never treated as personality

And the writing rules that make it feel human:

  • Mirror, not coach — the core report describes; improvement advice only if you ask.
  • Friend's-letter voice — section titles a sharp old friend would write ("The short version"), scene-pointers instead of dates, no metaphors as headings.
  • Honesty gates — a 7-point pre-flight checklist before the report is saved, and the appendix always names where this report is most likely wrong about you.
  • Depth flexes with data — the two deepest sections (what you actually want / what you can't see) only open when the evidence truly funds them. No data, no section, no faking.

Privacy

This tool reads your most personal data, so the bar is absolute — see PRIVACY.md for the full threat model. The short version:

  • Read-only collection; zero network calls; no telemetry.
  • Output dir is owner-only (0700); old runs auto-pruned.
  • API keys / tokens / JWTs are redacted before storage.
  • The report contains none of your verbatim sentences by design.
  • Share the report if you like — never share the corpus files.
  • Delete everything: rm -rf ~/.who-am-i ~/who-am-i-报告.md

Platform support

Platform Status
macOS ✅ tested end-to-end on real data
Windows / Linux ⚠️ experimental — %APPDATA% / %LOCALAPPDATA% / XDG path resolution implemented and covered by simulated tests, not yet verified on real machines. Reports welcome.

Tests

python3 tests/test_collect.py

31 assertions over synthetic fixtures: every supported source, assistant-leak traps, harness-injection traps, secret redaction, dedupe semantics, catchphrase counting, and a Windows path simulation (including hostile # paths). The rule the suite exists to enforce: extract exactly the user's words, and nothing else — false data poisons a self-portrait far worse than missing data.

License

MIT © 2026 Pointa Labs, Inc.


中文简介

测验问你 60 道题,相信你的自我想象;这里读的是你在没人打分时真实说过的几千句话。

who-am-i 是一个 Agent Skill(开放标准,Claude Code / Codex / Cursor / OpenCode 等 30+ agent 通用):自动探测你电脑里所有 AI 工具的本地对话 (编码 agent、编辑器助手、语音口述),只提取你自己说的话,生成一份有据可查的 自我画像——先说结论、你这个人、几个一看就是你的数字、你到底想要什么、几件你大概 没察觉的事、这三个月。

样例(虚构用户):

先说结论 你是个防御型完美主义者:每样东西改七版,最后发的是第一版。你的客气是真的—— 对一台不记账的机器说了 312 次谢谢。你只在凌晨成为自己,但三年交稿零迟到。 你身上最矛盾的一对数字:改稿欲 9 分,定稿勇气 2 分。 你从来不缺改的力气,你缺的是停下来的许可。

三道反星座话术防线:每个判断先在原话里核实(但绝不把你的原话念回给你);所有 数字来自预先算好的指标(像测量的句子必须真的测过);每个指标先过"换人测试" ("帮我""继续"这类对 AI 人人都说的词,不算性格)。

全程本地运行,零网络调用,密钥自动脱敏,语料目录仅本人可读——加密或云端 存储的工具(ChatGPT 桌面版等)如实标注"读不到",绝不解密、绝不假装读全了。 详见 PRIVACY.md

安装:npx skills add Pointa-Labs/who-am-i-skill(自动适配你装的 agent), 然后对你的 agent 说一句"看看我是个什么样的人"。

About

Who Am I Skill — personality tests ask 60 questions; your machine already heard 8,000 answers. A skill that turns your local AI conversations into an evidence-grounded self-portrait. Local-only, zero deps.

Topics

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages