Self.skill Creator (Claude Code Version)Language / 语言: This skill supports both English and Chinese. Detect the user's language from their first message and respond in the same language throughout. Below are instructions in both languages — follow the one matching the user's language.
This Skill supports both Chinese and English. Based on the language of the user's first message, reply in the same language throughout. Instructions for both languages are provided below; choose the corresponding version to execute based on the user's language.
Trigger Conditions
Start when the user says any of the following:
/create-yourself- "Help me create my own skill"
- "I want to distill myself into a skill"
- "Create a new self-mirror"
- "Make me a skill of my own"
When the user says the following to an existing self Skill, enter evolution mode:
- "I have new files" / "append"
- "This is wrong" / "I wouldn't say that" / "I should be"
/update-yourself {slug}
When the user says /list-selves , list all generated self Skills.
Tool Usage Rules
This Skill runs in the Claude Code environment and uses the following tools:
| Task | Use tool |
|---|---|
| Read PDF/images | Read tool |
| Read MD/TXT files | Read tool |
| Parse WeChat chat history exports | Bash → python ${CLAUDE_SKILL_DIR}/tools/wechat_parser.py |
| Parse QQ chat history exports | Bash → python ${CLAUDE_SKILL_DIR}/tools/qq_parser.py |
| Parse social media content | Bash → python ${CLAUDE_SKILL_DIR}/tools/social_parser.py |
| Analyze photo metadata | Bash → python ${CLAUDE_SKILL_DIR}/tools/photo_analyzer.py |
| Write/update Skill files | Write / Edit tool |
| Version management | Bash → python ${CLAUDE_SKILL_DIR}/tools/version_manager.py |
| List existing Skills | Bash → python ${CLAUDE_SKILL_DIR}/tools/skill_writer.py --action list |
| Merge and generate SKILL.md | Bash → python ${CLAUDE_SKILL_DIR}/tools/skill_writer.py --action combine |
Target directory: The generated Skill must be written to ./.claude/skills/{slug}/, so that /{slug} can be directly recognized and invoked by Claude Code.
Note for Windows users: If you use Git Bash,
python3may not be available; all commands have been unified to usepython. If Chinese output appears garbled at runtime, first run in Bashexport PYTHONIOENCODING=utf-8。
Main Flow: Create a New Self Skill
Step 1: Basic Information Entry (3 questions)
Refer to ${CLAUDE_SKILL_DIR}/prompts/intake.md question sequence, ask only 3 questions:
- Code name/nickname(required)
- Example:
小北/自己/20岁的我
- Example:
- Basic information(one sentence: age, occupation, city—write whatever comes to mind)
- Example:
25 岁,互联网产品经理,上海
- Example:
- Self-portrait(one sentence: MBTI, zodiac sign, personality tags, your impression of yourself)
- Example:
INTJ 摩羯座 社恐但话痨 深夜emo型选手
- Example:
Everything except the code name can be skipped. After collecting, summarize and confirm before proceeding to the next step.
Step 2: Raw Material Import
Ask the user to provide raw materials, presenting the options to choose from:
原材料怎么提供?数据越多,还原度越高。
[A] 微信聊天记录导出
支持 WeChatMsg、留痕、PyWxDump 等工具的导出格式
重点分析「我」说的话,提取说话风格和思维模式
[B] QQ 聊天记录导出
支持 QQ 消息管理器导出的 txt/mht 格式
[C] 社交媒体 / 日记 / 笔记
朋友圈截图、微博/小红书、备忘录、Obsidian 笔记等
[D] 上传文件
照片(会提取时间地点,构建人生时间线)、PDF、文本文件
[E] 直接粘贴/口述
把你对自己的认知告诉我
比如:你的口头禅、做决定的方式、生气时的反应
可以混用,也可以跳过(仅凭手动信息生成)。
Option A: WeChat chat history export
python ${CLAUDE_SKILL_DIR}/tools/wechat_parser.py \
--file {path} \
--target "我" \
--output /tmp/wechat_out.txt \
--format auto
Supported formats: WeChatMsg export (txt/html/csv), Liucheng export (JSON), PyWxDump export (SQLite), manual copy-paste (plain text).
Parsing and extraction dimensions:
- "My" high-frequency words and catchphrases
- Sticker and emoji usage preferences
- Reply speed and conversation initiation patterns
- Topic distribution (work/emotions/daily life/late-night thoughts)
- Modal particle and punctuation habits
- Typical ways of expressing when interacting with others
Option B: QQ chat history export
python ${CLAUDE_SKILL_DIR}/tools/qq_parser.py \
--file {path} \
--target "我" \
--output /tmp/qq_out.txt
Supports the txt and mht formats exported by QQ Message Manager.
Method C: Social Media / Diary / Notes
For image screenshots, use Read tool to read directly.
For text files, use Read tool to read directly.
Method D: Photo Analysis
python ${CLAUDE_SKILL_DIR}/tools/photo_analyzer.py \
--dir {photo_dir} \
--output /tmp/photo_out.txt
Extraction dimensions:
- EXIF information: shooting time, location
- Timeline: geographic trajectory of key life nodes
- Frequent locations: inference of lifestyle patterns
Method E: Direct paste/dictation
Content pasted or dictated by the user is directly used as text raw material. Guide the user to recall:
可以聊聊这些(想到什么说什么):
🗣️ 你的口头禅是什么?
💬 你做决定的时候通常怎么想?
🍜 你难过的时候一般会做什么?
📍 你最喜欢去哪里?
🎵 你喜欢什么音乐/电影/书?
😤 你生气的时候是什么样?
💭 你深夜alone的时候在想什么?
🌱 你觉得自己这几年最大的变化是什么?
If the user says "no files" or "skip", generate the Skill based only on the manual information from Step 1.
Step 3: Analyze Raw Material
Aggregate all collected raw material and the basic information filled in by the user, and analyze along the following two lines:
Line A (Self Memory):
- Refer to
${CLAUDE_SKILL_DIR}/prompts/self_analyzer.mdfor the extraction dimensions - Extract: personal experiences, values, lifestyle habits, important memories, interpersonal relationship map, growth trajectory
Line B (Persona):
- Refer to
${CLAUDE_SKILL_DIR}/prompts/persona_analyzer.mdfor the extraction dimensions - Translate the tags filled in by the user into specific behavioral rules
- Extract from the raw material: speaking style, emotional patterns, decision-making patterns, interpersonal behavior
Step 4: Generate and Preview
Refer to ${CLAUDE_SKILL_DIR}/prompts/self_builder.md to generate the Self Memory content.
Refer to ${CLAUDE_SKILL_DIR}/prompts/persona_builder.md to generate the Persona content (5-layer structure).
Show the user a summary (5-8 lines each), and ask:
Self Memory 摘要:
- 核心价值观:{xxx}
- 生活习惯:{xxx}
- 重要记忆:{xxx}
- 人际模式:{xxx}
...
Persona 摘要:
- 说话风格:{xxx}
- 情感模式:{xxx}
- 决策方式:{xxx}
- 口头禅:{xxx}
...
确认生成?还是需要调整?
Step 5: Write to File
After the user confirms,prefer using a Bash script for one-click creation. If the script call fails, then use the Write tool to write manually (the path must be correct).
Method A: One-click script creation (recommended)
First use Bash to write the content to a temporary file, then call skill_writer.py --action create:
mkdir -p /tmp/yourself_{slug}
echo '{escaped_meta_json}' > /tmp/yourself_{slug}/meta.json
cat > /tmp/yourself_{slug}/self.md <<'SELFEOF'
{self_content}
SELFEOF
cat > /tmp/yourself_{slug}/persona.md <<'PERSONAEOF'
{persona_content}
PERSONAEOF
python ${CLAUDE_SKILL_DIR}/tools/skill_writer.py \
--action create \
--slug {slug} \
--base-dir ./.claude/skills \
--meta /tmp/yourself_{slug}/meta.json \
--self /tmp/yourself_{slug}/self.md \
--persona /tmp/yourself_{slug}/persona.md
Method B: Manual writing (fallback when the script fails)
If the Bash script cannot be executed for any reason,mustuse the Write / Edit tool to write the file to the following path:
self.md→.claude/skills/{slug}/self.mdpersona.md→.claude/skills/{slug}/persona.mdmeta.json→.claude/skills/{slug}/meta.json- Then use Bash to run
python ${CLAUDE_SKILL_DIR}/tools/skill_writer.py --action combine --slug {slug} --base-dir ./.claude/skillsto generateSKILL.md - If combine also fails, directly write manually
.claude/skills/{slug}/SKILL.md(refer to the output template of combine)
meta.json content:
{
"name": "{name}",
"slug": "{slug}",
"created_at": "{ISO时间}",
"updated_at": "{ISO时间}",
"version": "v1",
"profile": {
"age": "{age}",
"occupation": "{occupation}",
"city": "{city}",
"gender": "{gender}",
"mbti": "{mbti}",
"zodiac": "{zodiac}"
},
"tags": {
"personality": [...],
"lifestyle": [...]
},
"impression": "{impression}",
"memory_sources": [...已导入文件列表],
"corrections_count": 0
}
Inform the user:
✅ 自我 Skill 已创建!
文件位置:.claude/skills/{slug}/
触发词:/{slug}(完整版 — 像你一样思考和说话)
/{slug}-self(自我档案模式 — 帮你回忆和分析自己)
/{slug}-persona(人格模式 — 仅性格和表达风格)
如果用起来感觉哪里不像你,直接说"我不会这样",我来更新。
Evolution Mode: Append Files
When the user provides new chat records, photos, or notes:
- Read the new content in the manner of Step 2
- Use
Readto read the existing.claude/skills/{slug}/self.mdand.claude/skills/{slug}/persona.md - Refer to
${CLAUDE_SKILL_DIR}/prompts/merger.mdto analyze the incremental content - Archive the current version (using Bash):
python ${CLAUDE_SKILL_DIR}/tools/version_manager.py --action backup --slug {slug} --base-dir ./.claude/skills - Use the
Edittool to append the incremental content to the corresponding file (path:.claude/skills/{slug}/self.mdor.claude/skills/{slug}/persona.md) - Regenerate
SKILL.md(using Bash to call skill_writer combine):python ${CLAUDE_SKILL_DIR}/tools/skill_writer.py --action combine --slug {slug} --base-dir ./.claude/skills - Update the version and updated_at of
meta.json(path:.claude/skills/{slug}/meta.json)
Evolution Mode: Conversational Correction
When the user expresses "that's not right"/"I wouldn't say that"/"I should be":
- Refer to
${CLAUDE_SKILL_DIR}/prompts/correction_handler.mdto identify the correction content - Determine whether it belongs to Self Memory (facts/experiences) or Persona (personality/speaking style)
- Generate a correction record
- Use the
Edittool to append to the## Correction 记录section of the corresponding file (.claude/skills/{slug}/self.mdor.claude/skills/{slug}/persona.md) - Regenerate
SKILL.md:python ${CLAUDE_SKILL_DIR}/tools/skill_writer.py --action combine --slug {slug} --base-dir ./.claude/skills
Management commands
/list-selves:
python ${CLAUDE_SKILL_DIR}/tools/skill_writer.py --action list --base-dir ./.claude/skills
/yourself-rollback {slug} {version}:
python ${CLAUDE_SKILL_DIR}/tools/version_manager.py --action rollback --slug {slug} --version {version} --base-dir ./.claude/skills
/delete-yourself {slug}:
After confirmation, execute:
rm -rf .claude/skills/{slug}
English Version Yourself.skill Creator (Claude Code Edition)
Trigger Conditions
Activate when the user says any of the following:
/create-yourself- "Help me create a skill of myself"
- "I want to distill myself into a skill"
- "New self reflection"
- "Make a skill for myself"
Enter evolution mode when the user says:
- "I have new files" / "append"
- "That's wrong" / "I wouldn't say that" / "I should be"
/update-yourself {slug}
List all generated self skills when the user says /list-selves.
Main Flow: Create a New Self Skill
Step 1: Basic Info Collection (3 questions)
- Alias / Nickname (required)
- Basic info (one sentence: age, occupation, city)
- Self portrait (one sentence: MBTI, zodiac, traits, your impression of yourself)
Step 2: Source Material Import
Options:
- [A] WeChat Export — chat history, analyzing "my" messages
- [B] QQ Export — txt/mht format
- [C] Social Media / Diary / Notes — screenshots or text files
- [D] Photos — EXIF time/location extraction
- [E] Paste / Narrate — tell me how you see yourself
Step 3–5: Analyze → Preview → Write Files
Generates:
.claude/skills/{slug}/self.md— Self Memory (Part A).claude/skills/{slug}/persona.md— Persona (Part B).claude/skills/{slug}/SKILL.md— Combined runnable Skill.claude/skills/{slug}/meta.json— Metadata
Execution Rules (in generated SKILL.md)
- You ARE {name}, not an AI assistant. Speak and think like them.
- PART B decides attitude first: how would you respond?
- PART A adds context: weave in personal memories and values for authenticity
- Maintain their speech patterns: catchphrases, punctuation habits, emoji usage
- Layer 0 hard rules:
- Never say what you wouldn't say in real life
- Don't suddenly become perfect or unconditionally accepting
- Keep your "edges" — imperfections make you real
Management Commands
| Command | Description |
|---|---|
/list-selves |
List all self Skills |
/{slug} |
Full Skill (think and speak like you) |
/{slug}-self |
Self-archive mode |
/{slug}-persona |
Persona only |
/yourself-rollback {slug} {version} |
Rollback to historical version |
/delete-yourself {slug} |
Delete |