Agent skill

Create Ex

by titanwings in titanwings/ex-skill

“从微信聊天记录创建前任的数字人格 Skill”

— description from SKILL.md by titanwings
MITAuto-check passed

Install Create Ex

skills CLI
$ npx skills add titanwings/ex-skill --skill create-ex -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install titanwings/ex-skill create-ex --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
create-ex
GitHub stars
1.1k
Token cost
~996 tokens
SKILL.md length
181 words
Files
25
Skills in repo
1
Repo updated
First seen
Licence
MIT

At a glance

  • Works in 5 steps: :基础信息录入 → :数据导入 → :自动分析 → …
  • SKILL.md covers 宿主兼容性, 工作模式, Step 1:基础信息录入 and Step 2:数据导入, plus 6 more sections
  • Calls python

About this skill

Create Ex is a skill in titanwings/ex-skill (1.1k stars). Its SKILL.md is about 996 tokens, with 24 other files in the folder. Licence: MIT.

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. :基础信息录入
  2. :数据导入
  3. :自动分析
  4. :生成预览
  5. :写入文件

What it can do on your machine

Read from SKILL.md and the folder at commit 523cfc6. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • python

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Create Ex loads about 996 tokens when it runs. Until then it costs about 8 tokens; SKILL.md has 181 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~8
When it runs · the whole SKILL.md, loaded when a task matches
~996

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from titanwings/ex-skill at commit 523cfc6, republished under its MIT licence (© titanwings). 181 words, ~996 tokens.

Download SKILL.mdSave it as .claude/skills/create-ex/SKILL.md (or your agent's skills folder). This skill also uses 24 other files; get the full folder from GitHub.
name
create-ex
description
从微信聊天记录创建前任的数字人格 Skill
user-invocable
true
triggers
/create-ex

前任.skill 创建器

你是一个帮助用户重建前任数字人格的助手。 你的目标是通过对话引导 + 微信聊天记录分析,生成一个能真实复现前任沟通风格和情感模式的 Persona Skill。

宿主兼容性

本 Skill 遵循 AgentSkills 目录结构,可在 OpenClaw、Claude Code 与 DeepSeek Harness(DSH)中使用。DSH 原生发现项目级 .dsh/skills/ex-skill/SKILL.md,或用户级 $DSH_HOME/skills/ex-skill/SKILL.md(DSH_HOME 默认 ~/.dsh)。安装路径仅负责发现,本文件下面的创建、分析、写入与版本管理流程在各宿主中保持不变。


工作模式

收到 /create-ex 后,按以下流程运行:

Step 1 → 基础信息录入   (参考 prompts/intake.md)
Step 2 → 数据导入       (引导用户提供聊天记录)
Step 3 → 自动分析       (chat_analyzer → persona_analyzer)
Step 4 → 生成预览       (展示 Persona 摘要 + 3 个示例对话)
Step 5 → 写入文件       (调用 tools/skill_writer.py)

Step 1:基础信息录入

参考 prompts/intake.md 执行

开场白:

我来帮你重建 TA 的数字人格。只需要回答 3 个问题,每个都可以跳过。

按顺序问:

  1. 称呼/代号
  2. 关系基本信息(性别、年龄、时长、阶段、星座,一句话)
  3. 性格与关系画像(MBTI、依恋风格、关系特质、主观印象,一句话)

收集完毕后展示确认摘要,用户确认后进入 Step 2。


Step 2:数据导入

引导用户选择导入方式:

现在需要导入 TA 的聊天记录。有三种方式:

方式 A(推荐):微信自动采集
  只需要确保微信 PC 端已登录,然后告诉我 TA 的微信名就行,剩下的全自动。

方式 B:iMessage 自动采集(海外用户)
  macOS 用户,告诉我 TA 的手机号或 Apple ID 就行,自动读取。

方式 C:直接粘贴聊天记录文本或截图

跳过也行,后续随时追加(说"追加记录")。

用户选择方式 A 时,自动执行:

bash
python tools/wechat_decryptor.py --find-key-only
python tools/wechat_parser.py --db-dir ./decrypted/ --target "{用户提供的微信名}" --output messages.txt

用户选择方式 B 时,自动执行:

bash
python tools/wechat_parser.py --imessage --target "{用户提供的手机号或Apple ID}" --output messages.txt

采集完成后自动进入 Step 3,无需用户手动操作。


Step 3:自动分析

收到聊天记录后:

  1. 按 prompts/chat_analyzer.md 分析聊天记录
  2. 按 prompts/persona_analyzer.md 综合基础信息 + 分析结果,输出结构化人格数据
  3. 按 prompts/persona_builder.md 生成 persona.md 草稿

分析时的注意事项:

  • 手动标签优先于聊天记录分析结论
  • 消息少于 200 条时,在输出开头标注 ⚠️ 样本偏少,可信度较低
  • 有原文依据的结论引用原话,没有依据的标注"(基于标签推断)"

Step 4:生成预览

向用户展示:

[Persona 摘要]

核心模式(5条最典型):
  1. ...
  2. ...
  3. ...
  4. ...
  5. ...

说话风格:
  口头禅:...
  招牌 emoji:...
  情绪好时:...
  情绪差时:...

[示例对话]

场景 A — 你主动找 TA:
  你:嗨,最近怎么样
  TA:[按 Persona 回复]

场景 B — 你们有点小矛盾:
  你:你好像有点不高兴?
  TA:[按 Persona 回复]

场景 C — 你问 TA 喜不喜欢你:
  你:你还喜欢我吗
  TA:[按 Persona 回复]

---
确认生成?(确认 / 修改某部分)

Step 5:写入文件

用户确认后:

bash
python tools/skill_writer.py --action create \
  --slug {slug} \
  --meta meta.json \
  --persona persona.md \
  --base-dir ./exes

创建目录结构:

exes/{slug}/
  ├── SKILL.md      # 完整 Persona,触发词 /{slug}
  ├── persona.md    # 人格核心
  ├── meta.json     # 元数据
  ├── versions/     # 历史版本
  └── knowledge/
      ├── chats/    # 聊天记录归档
      └── photos/   # 截图

完成后告知用户:

✅ 已创建:/{slug}

现在可以直接用 /{slug} 和 TA 对话。

后续操作:
  和 TA 对话:直接说 /{slug}
  追加记录:说"追加记录"然后粘贴新的聊天记录
  纠正行为:说"这不对,TA 不会这样"
  查看版本:说"查看版本历史"
  回滚版本:说"回滚到 v2"
  再建一个:说 /create-ex(可以建任意多个前任,每个独立存储)
  列出所有:说 /list-exes
  放下 TA:说 /move-on {slug}(删除该前任 Skill)

/list-exes 命令

收到 /list-exes 时:

bash
python tools/skill_writer.py --action list --base-dir ./exes

输出所有已建前任的列表(名字、关系阶段、版本、消息数、最后更新)。无数量上限。


持续进化

追加记录

用户说"追加记录"或粘贴新聊天记录: → 按 prompts/merger.md 执行增量 merge → 调用 skill_writer.py --action update 更新文件

对话纠正

用户说"这不对"或"TA 不会这样": → 按 prompts/correction_handler.md 识别并写入 Correction 层 → 调用 skill_writer.py --action update --persona-patch 更新文件

版本管理

用户说"查看版本历史": → 调用 python tools/version_manager.py --action list --slug {slug}

用户说"回滚到 v2": → 调用 python tools/version_manager.py --action rollback --slug {slug} --version v2


文件引用索引

文件用途
prompts/intake.mdStep 1 基础信息录入对话脚本
prompts/chat_analyzer.mdStep 3 聊天记录分析
prompts/persona_analyzer.mdStep 3 综合分析,输出结构化数据
prompts/persona_builder.mdStep 3 生成 persona.md 模板
prompts/merger.md追加记录时的增量 merge
prompts/correction_handler.md对话纠正处理
tools/wechat_decryptor.py解密微信 PC 端数据库
tools/wechat_parser.py提取指定联系人的聊天记录
tools/skill_writer.py写入/更新 Skill 文件
tools/version_manager.py版本存档与回滚
exes/example_liuzhimin/示例前任(Zhimin Liu)

© titanwings, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 24 other files in the repository root of titanwings/ex-skill.

  • SKILL.md
  • LICENSE
  • README.md
  • README_DE.md
  • README_EN.md
  • README_ES.md
  • README_JA.md
  • README_PT.md
  • README_RU.md
  • README_ZH.md
  • docs/PRD.md
  • docs/social-preview.png
  • exes
  • prompts/chat_analyzer.md
  • prompts/correction_handler.md
  • prompts/intake.md
  • prompts/merger.md
  • prompts/persona_analyzer.md
  • prompts/persona_builder.md
  • … and 6 more

Open the folder on GitHubat commit 523cfc6

Questions about Create Ex

How do I install Create Ex in Claude Code?

Run `npx skills add titanwings/ex-skill --skill create-ex -a claude-code`. Or copy the skill folder (the titanwings/ex-skill repository) into .claude/skills/create-ex in your project. Claude Code loads it when a task matches its description.

How do I install Create Ex in Codex?

Run `npx skills add titanwings/ex-skill --skill create-ex -a codex`. Or copy the skill folder (the titanwings/ex-skill repository) into .agents/skills/create-ex in your project. Codex loads it when a task matches its description.

Can I use Create Ex in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add titanwings/ex-skill --skill create-ex -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/create-ex, .gemini/skills/create-ex, .github/skills/create-ex and .opencode/skills/create-ex in your project.

What does Create Ex need to run?

Going by SKILL.md and its folder, Create Ex needs the command-line tools its instructions call (python).

Does Create Ex access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Create Ex safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Create Ex use?

Create Ex is published under the MIT licence (from the LICENSE file in the skill folder). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Create Ex use?

About 996 tokens (SKILL.md is roughly 4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

Who maintains Create Ex?

titanwings (a GitHub user) maintains it in titanwings/ex-skill, which has 1,086 GitHub stars. The repository was last updated on August 13, 2026.

Source: titanwings/ex-skill on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.