Named after Camera Lucida — a 19th-century optical instrument for portrait drawing.
Personality profiling from your AI conversation data. Reads your chat history with AI coding assistants and generates shareable visual profile cards.
Wuxia-themed profiling across 7 martial dimensions — Inner Power, Lightness, Technique, Killing Intent, Comprehension, Ambition, World Experience. Matches you to one of 27 sects (Shaolin, Huashan Sword, Xiaoyao, Tang Clan, etc.) with a rank — Disciple, Elder, or Sect Leader. If no sect fits, generates a custom freelancer identity from 6 archetypes.
Scores you across 7 dimensions — Sloth, Pride, Lust, Gluttony, Greed, Envy, Wrath — based on how you interact with AI. Matches you to one of 32 personality archetypes and renders a shareable HTML card.
Requires Claude Code.
git clone https://github.com/vimo-ai/lucida.git
cd lucida
claude
# then type: /jianghu or /seven-sinsSkills live under .claude/skills/ — Claude Code auto-detects them when you run it inside the project directory.
| Priority | Path | Description |
|---|---|---|
| 1 | ~/.vimo/db/ai-cli-session.db |
Memex session database |
| 2 | ~/.claude/projects/ |
Claude Code native JSONL |
| 3 | ~/.codex/ |
Codex CLI history |
Memex — Session history for AI coding assistants. One database for Claude Code, Codex, OpenCode, Gemini — never compacted, never lost. Full-text + semantic search via MCP.
The profiling pipeline has a shared foundation and swappable "lenses":
shared/data-extraction.md → common: data source detection + behavioral metric extraction
.claude/skills/seven-sins/ → lens: sin scoring + 32 archetype matching + HTML card
.claude/skills/jianghu/ → lens: martial dimension scoring + 27 sect matching + HTML card
- Scan — detect and read available data sources
- Extract — compute behavioral metrics (message patterns, activity rhythms, communication style, etc.)
- Score — map metrics to the chosen profiling system's dimensions
- Match — find the closest archetype via weighted Euclidean distance
- Render — fill a data-driven HTML template into a shareable card
The Jianghu card's ink-wash rendering is powered by:
- shuimo-core — procedural Chinese ink-wash painting engine (xuan paper texture, seal stamps, brush strokes)
- shuimo-ui — ink-wash style Vue component library (shuimo.design)
lucida/
├── .claude/skills/
│ ├── seven-sins/
│ │ ├── SKILL.md # Seven Sins profiling skill
│ │ └── personality-types.md # 32 archetype definitions
│ └── jianghu/
│ ├── SKILL.md # Jianghu profiling skill
│ └── sects.md # 27 sect anchor definitions
├── shared/
│ └── data-extraction.md # Common data pipeline
├── scripts/
│ └── extract-metrics.py # Behavioral metric extraction
├── templates/
│ ├── seven-sins.html # Seven Sins report template
│ └── jianghu-dev/ # Jianghu card (Vue3 + Vite + shuimo)
├── output/ # Generated reports (gitignored)
└── README.md
MIT

