titanwings/distilly
Distilly — Distill how they think into reusable Skills for any Agent or Bot. Formerly Colleague Skill(原同事 Skill).
🧬 Distilly – Person‑Profile Builder for AI Agents
What it is – An open‑source Python library (and set of Agent Skills) that turns a collection of messages, documents, interviews, or public content into a source‑grounded “Person Profile”. The profile is packaged as an Agent Skill that can be installed in a variety of AI‑agent platforms (Claude Code, Hermes, OpenClaw, Codex, DeepSeek Harness, Pi, Grok Build, OpenCode, etc.).
Why it matters – Modern conversational agents are starting to support personalities or knowledge bases that persist across sessions. Distilly provides a systematic way to capture the experience, judgment, voice, and work habits of a real or fictional person and reuse that model across agents, without claiming to clone the individual.
🎯 Core capabilities
| Capability | How it works |
|---|---|
| Three “person families” | colleague (work‑focused), relationship (personal‑tone), celebrity (public figure). Each family has its own data‑collection strategy, analysis dimensions, and profile schema. |
| Source‑grounded profiling | Ingests messages (Slack, Lark, DingTalk, X, WeChat, email, markdown, PDFs, etc.), extracts observable decisions, expression patterns, and workflow habits, then merges them into a structured profile. |
| Skill packaging | The generated profile is emitted as an Agent Skill (e.g., colleague‑byte‑dance‑backend.skill). Skills can be installed locally on any supported host. |
| Multi‑host support | Native discovery for eight agents: Claude Code, Hermes‑Agent, OpenClaw, OpenAI Codex, DeepSeek Harness, Pi, Grok Build, OpenCode. |
| Versioning & correction | Updates are appended, never overwrite; every change is archived and can be rolled back. Users can issue correction commands (e.g., “they wouldn’t say that”) that instantly edit the profile. |
| Celebrity research pipeline | For public figures, a six‑dimension pipeline (subtitles → transcript cleanup → merge → quality check) builds a research dossier covering works, interviews, decisions, expression DNA, external evaluations, and timeline. |
| Personal‑agent hand‑off | Profiles can be written to the personal‑agent’s “memory file” (e.g., ~/.claude/CLAUDE.md) so a new agent starts with the person’s model already loaded. |
📦 Supported data sources
| Source | Message access | Document access | Notes |
|---|---|---|---|
| Lark | ✅ API (auto) | ✅ API | Just give a name; the bot joins the chat automatically |
| DingTalk | ⚠️ Browser‑only | ✅ API | History not fully available via API |
| Slack | ✅ API | — | Requires admin‑installed bot; free plan limited to 90‑day history |
| X (Twitter) | ✅ API | — | Optional, via third‑party Xquik service |
| ✅ SQLite export | — | Export first with WeChatMsg or PyWxDump | |
Email (.eml, .mbox) |
✅ | — | Manual upload |
| PDF / Images / Screenshots | — | ✅ | Drag‑and‑drop upload |
| Markdown / direct paste | ✅ | ✅ | Inline entry |
⚡ Installation
- For agents – In the target agent’s UI, run:
The host will discover theInstall Distilly from https://github.com/titanwings/distillydistillyskill and place it in its skill directory. - For developers / humans – Clone the repo into the skill directory used by your host:
Detailed OS‑specific steps, credential setup, and migration notes are ingit clone https://github.com/titanwings/distilly <DISTILLY_SKILL_DIR>INSTALL_EN.md.
🚀 Typical workflow
- Start the creator – Tell your agent “Use Distilly to set up my profile.” The creator interviews you (
5 min) and stores the result at `/.distilly/owner/profile.md`. - Create a profile for someone else – In the agent, say:
Use Distilly to create a Person Profile for <person>- Choose a family (colleague / relationship / celebrity).
- Provide a short description and/or upload source material.
- Review the generated profile; approve or request corrections.
- Skill generation – Distilly outputs a skill folder named
{family}-{slug}(e.g.,celebrity-andrej-karpathy.skill). Install this folder into any supported host. - Agent usage – The agent can now answer questions or act “as” that person, using the profile’s rules, tone, and decision heuristics.
📚 Demo snippets (from the README)
Celebrity – Andrej Karpathy:
celebrity.skill ❯ Everyone's doing demos, nobody's doing eval.
The Agent bottleneck was never model intelligence — it's scaffolding…
Colleague – ByteDance backend engineer:
colleague.skill ❯ Hold on — what's the impact? … N+1 query, fix it.
Relationship – a crush:
relationship.skill ❯ ...I did, a little bit. Why are you asking?
📄 Technical background
- The original research paper COLLEAGUE.SKILL (arXiv 2605.31264) describes the two‑layer architecture (Persona + Work Skill) and the automated skill‑generation pipeline. Distilly extends that work to the relationship and celebrity families and adds multi‑host skill packaging.
- Profiles are version‑controlled; each update creates an archive entry, enabling rollback.
- All code is released under the MIT License.
🤝 Community & ecosystem
- Discord – active community for support, sharing skill cards, and roadmap discussion: https://discord.gg/NVX66RxWZv
- Gallery – a public showcase of >200 community‑contributed skills: https://titanwings.github.io/colleague-skill-site/
- Roadmap – future plans (expanded host support, deeper research pipelines, UI tools) are in
ROADMAP.md.
📦 Quick start (one‑liner for a local Claude Code host)
# From a terminal inside the Claude Code skill directory
git clone https://github.com/titanwings/distilly ~/.claude/skills/distilly && \
echo "Distilly installed – ask your Claude agent to create a profile!"
📜 Citation
If you use Distilly in research or a product, cite the accompanying arXiv paper:
@misc{zhou2026colleagueskill,
title = {COLLEAGUE.SKILL: Automated AI Skill Generation via Expert Knowledge Distillation},
author = {Tianyi Zhou and Dongrui Liu and Leitao Yuan and Jing Shao and Xia Hu},
year = {2026},
eprint = {2605.31264},
archivePrefix = {arXiv},
primaryClass = {cs.AI},
url = {https://arxiv.org/abs/2605.31264}
}
🛡️ License
MIT – free for commercial and non‑commercial use.
Written about in
Related
- Project
- Project
- Project
- Dispatch
- Project