WeClone-Skill uses a lightweight persona pack to turn "reply like a specific person" into a maintainable, reviewable workflow.
Define the persona and boundaries first, inject the live reply context second, and keep a human review step at the end. The repository centers on two skills:
- 🧩
weclone-init-twin: initialize a persona pack template - ✍️
weclone-twin-reply: combine persona files with the current scene into an isolated prompt for reply drafting
- 💬 Companion-style chats for close friends or family on WhatsApp / QQ and similar apps
- 🌐 Creator or social DM replies that preserve a familiar tone when thanking or encouraging followers
- 📧 Workplace email drafting and review, including current constraints and next steps
- 🤝 Sales follow-up and quoting workflows across HubSpot leads or WeCom conversations
- 🕊️ Digital legacy persona preservation for memorial and companionship-style conversations based on a deceased person's historical data
npx skills add xming521/WeClone-SkillsPlease help me install the skills from github.com/xming521/WeClone-SkillsUse weclone-init-twin to generate a set of markdown files:
profile.md: identity, personality, conversation style, values, worldview, decision stylepersona_examples.md: real reply examples from the person being clonedstate.md: recent status, current goals, short-term constraintsguardrails.md: hard boundaries, promises the twin must not make, privacy limits
The template is only the skeleton. Reply quality depends heavily on whether these files are concrete, real, and information-dense.
Before each generation, add two kinds of runtime information:
scene.md: a concise description of the current scene and backgrounddialogue.md: the active conversation window that needs a reply
Use weclone-twin-reply to combine persona files and runtime context into a single prompt package for a downstream model to draft from in isolation.
This repository keeps the review gate by default. It drafts replies; it does not silently send them.
Generate the default English ai_twin/ directory from the repository root:
python3 skills/weclone-init-twin/scripts/init_twin_profile.py --user-name "Alex"Generate a Chinese persona pack in a custom directory:
python3 skills/weclone-init-twin/scripts/init_twin_profile.py \
--user-name "张三" \
--language zh \
./my_twinIf the target files already exist, the script refuses to overwrite them unless you pass --force.
python3 skills/weclone-twin-reply/scripts/render_clone_prompt.py \
--persona-dir ./ai_twin \
--scene ./scene.md \
--dialogue ./dialogue.mdWrite the rendered prompt to a file:
python3 skills/weclone-twin-reply/scripts/render_clone_prompt.py \
--persona-dir ./ai_twin \
--scene ./scene.md \
--dialogue ./dialogue.md \
--output ./rendered_prompt.mdAdd extra context only when it will materially affect the reply:
python3 skills/weclone-twin-reply/scripts/render_clone_prompt.py \
--persona-dir ./ai_twin \
--scene ./scene.md \
--dialogue ./dialogue.md \
--extra-context ./constraints.mdThe repository includes Chinese and English examples. See examples/README.md:
examples/zh/social-content-twitter-fan-dmexamples/zh/workplace-email-draftexamples/zh/sales-copy-hubspot-wecomexamples/zh/companion-chat-whatsapp-qqexamples/zh/digital-legacy-memorial-replyexamples/en/social-content-twitter-fan-dmexamples/en/workplace-email-draft
Example command:
python3 skills/weclone-twin-reply/scripts/render_clone_prompt.py \
--persona-dir examples/zh/social-content-twitter-fan-dm \
--scene examples/zh/social-content-twitter-fan-dm/scene.md \
--dialogue examples/zh/social-content-twitter-fan-dm/dialogue.md- Separate long-term persona information from live conversation context
- Use
guardrails.mdto make behavioral boundaries explicit - Keep runtime context short, but high-signal
- Preserve human review before anything is sent externally
