Distilly (formerly Colleague Skill): turning messages and documents into a Person Profile Skill
将冰冷的离别化为温暖的 Skill,欢迎加入数字生命1.0!Transforming cold farewells into warm skills? It's giving rebirth era. Welcome to Digital Life 1.0.
At a glance
- What is it?
- Distilly, the project formerly named Colleague Skill, distills source material into a Person Profile packaged as an Agent Skill. Here is what the repository actually documents, where the workflow is thin, and who should install it.
- Who is it for?
- Adopt Distilly if you already run a Skill-capable agent host such as Claude Code, Codex, OpenClaw, Hermes, DeepSeek Harness, Pi, Grok Build or OpenCode, and you have a concrete pile of material (exported Lark or Slack history, transcripts, documents) you want organized into a reusable profile.
- Can I use it commercially?
- Yes. MIT is a permissive licence: you can use, modify and sell software built on it, as long as you keep its copyright and licence notices.
- Is it still maintained?
- Yes. The repository last received commits 8 days ago.
- What is it written in?
- Mainly Python, according to GitHub's language statistics.
Answers come from the project's GitHub data, last synced on September 29, 2026, and from our analysis. They are not legal advice.
Editorial analysis
The problem Distilly addresses: context leaves when a person does
When a colleague resigns, a mentor graduates or a teammate transfers, the artifacts they leave behind (tickets, documents, chat threads) survive, but the reasoning that connected those artifacts does not. Distilly targets that gap. The README frames the project around three situations: a coworker or mentor who has moved on, a relationship you want to preserve the texture of, and a public figure or author you will never meet but whose position on a question you want represented.
The audience is narrower than the slogan suggests. Distilly is not a general summarization tool. It produces a Person Profile, which the README describes as a portable, source-grounded artifact built from observable experience, decision patterns, expression and ways of working. The current release packages each profile as an Agent Skill, so the practical prerequisite is that you already run an agent host that discovers Skills. If you do not, the output has nowhere to live.
How the distilly creator turns material into a Person Profile
The pipeline visible in the repository is linear and file-oriented. You supply source material plus a description of the person; the canonical creator Skill, named distilly and installed in a distilly directory, processes that input into a Person Profile; the profile is then packaged as an Agent Skill that a compatible host can install and invoke.
The repository splits the work into three character families with different collection strategies and analysis dimensions. The colleague family builds a Work Skill plus a Persona from technical standards, workflows, expression and workplace behavior, and the README lists Lark, DingTalk and Slack collection as supported. The relationship family organizes expression patterns, emotional triggers, conflict patterns and repair patterns into a Persona Skill. The celebrity family ships a six-dimension research toolchain that runs subtitles through transcript cleanup, a research merge step and a quality check.
That family split is the most interesting design decision here. A single extraction prompt would flatten the differences between a workplace decision record and a conflict pattern, so the project keeps separate analysis dimensions per family. The cost is that the material you must gather differs by family, and the README does not present a shared schema across the three.
Installing Distilly and running a first real distillation
The repository ships INSTALL.md and INSTALL_EN.md at the top level, and the README links an Install section. The package manifest declares a Node entry point, so the CLI is invoked through Node 18 or newer. The package is published to the GitHub npm registry rather than the public npm registry, which the publishConfig block in package.json confirms.
npm install -g @titanwings/distillyAfter install, the binary exposed by package.json is distilly. The manifest also defines a prepack check, which means the package runs its own validation before it is packed.
node bin/distilly.mjs --check-packageThe Python side is separate. requirements.txt lists requests as required, with pypinyin, playwright, slack-sdk, python-docx and openpyxl as optional extras for name-to-slug conversion, Lark-compatible browser login, DingTalk scraping, Slack collection and Word or Excel parsing.
pip install -r requirements.txtThe README's usage flow is: source material plus your description goes in, a source-grounded Person Profile comes out, and the profile lands in your agent host. Install the creator Skill into a directory named distilly, then invoke it from the host. What you should see is a generated Skill directory your host can discover locally. The README does not document the exact prompt sequence for each family, so expect to read SKILL.md and the prompts directory before your first run.
Where Distilly is the wrong tool
The README is unusually direct about the central limitation: the profile is built from observable material and, in the project's own wording, does not claim to clone the person behind it. That is a meaningful boundary. If the material contains no instance of a person making a particular kind of decision, the resulting Skill has nothing to ground a response in, and a confident answer on that topic would be unsupported rather than distilled.
The second limitation is host-dependent. The README states that native local Skill discovery is documented for Claude Code, Hermes, OpenClaw, Codex, DeepSeek Harness, Pi, Grok Build and OpenCode. Grok Bot is listed separately as a saved-Skill workflow preview, and the README notes that Grok Bot's official documentation does not describe direct local SKILL.md imports. If your host is not on that list, or if you depend on Grok Bot specifically, the packaging step is not a solved path.
Third, the collectors assume access. Lark, DingTalk and Slack collection depend on the optional packages in requirements.txt, including Playwright for browser login and scraping. That is a heavier dependency than a pure text pipeline, and it means the quality of a colleague profile is bounded by what you can actually export from those platforms.
Distilly compared with a plain prompt or a generic summarizer
The obvious alternative is to paste the same material into a long context window and ask the model to role-play the person. The difference is in what persists. A prompt is per-conversation; Distilly's output is a Person Profile packaged as an Agent Skill, which the README describes as the reusable output and which supported hosts can install and invoke repeatedly. Reuse across sessions and across hosts is the actual product.
The second alternative is a generic document summarizer. Summarization compresses what the material says. Distilly's stated dimensions are experience, decision patterns, expression and ways of working, which means it is trying to extract how a person decides, not just what they wrote. Whether that extraction is better than a careful summary is not something the README quantifies; the project points instead to a technical report on arXiv, cited as 2605.31264, and to a community gallery the README says grew to 215 skills contributed by 165 people.
A third point of comparison is scope. A summarizer handles one document well. Distilly's celebrity family explicitly runs a multi-stage toolchain (subtitles, transcript cleanup, research merge, quality check), which suggests the project expects messy, long-form input and is willing to spend extra steps cleaning it. That is more machinery than most one-off questions justify.
Maintenance, upgrade cost and the MIT licence
The repository is not archived, and the last push was on 2026-03-30. The only release listed is v0.01 (demo), dated the same day. Treat the version number as a signal: this is early, and the README records two naming and scope changes after that release, including the rename from Colleague Skill to Distilly on 2026-08-24 and a roadmap published on 2026-04-13. A rename of the creator Skill means any instructions or scripts that reference the old name need updating; the README says the former name remains for search continuity and project history, so the repository itself still answers to colleague-skill.
Upgrade cost is concentrated in the optional dependencies. requirements.txt pins lower bounds rather than exact versions (requests>=2.28.0, playwright>=1.40.0, slack-sdk>=3.27.0, python-docx>=1.1.0, openpyxl>=3.1.0, pypinyin>=0.48.0), so a fresh install can pull newer releases than the author tested. Playwright in particular needs browser binaries beyond the Python package, and the README does not describe that step.
The licence is MIT, declared in both the LICENSE file and the license field of package.json. MIT is permissive, but it grants rights in the code, not in the source material you feed the pipeline. If you distill a colleague's Slack history or a family member's messages, the consent and privacy question sits entirely with you, and the repository does not address it. Nothing here is legal advice; if the material belongs to an employer or another person, that is worth resolving before you run the collector.
Editorial conclusion
Adopt Distilly if you already run a Skill-capable agent host such as Claude Code, Codex, OpenClaw, Hermes, DeepSeek Harness, Pi, Grok Build or OpenCode, and you have a concrete pile of material (exported Lark or Slack history, transcripts, documents) you want organized into a reusable profile. Do not adopt it if you expect the Skill to reproduce a person's judgment on questions their material never touched, or if you need a documented accuracy guarantee; the README frames the output as source-grounded and explicitly says it does not claim to clone the person behind the material. Before committing, check the install path in INSTALL.md and INSTALL_EN.md, confirm which host you are targeting, and verify that your host actually performs local SKILL.md discovery, since the README notes Grok Bot does not document direct local SKILL.md imports.
Frequently asked questions
What are some important coworker skills?
The README describes the colleague family as building a Work Skill plus a Persona from material-derived technical standards, workflows, expression and workplace behavior, with Lark, DingTalk and Slack collection supported. It does not publish a fixed list of individual skills.
What are the 7 types of skills?
The repository does not define seven skill types. It groups profiles into three character families (colleague, relationship and celebrity), and the README says the celebrity family ships a six-dimension research toolchain for organizing observable decisions, expression and mental models.
What are 5 skills people have?
The README does not enumerate five skills. Its closest equivalent is the set of dimensions it extracts per family: for colleagues, technical standards, workflows, expression and workplace behavior; for relationships, expression patterns, emotional triggers, conflict patterns and repair patterns.
Is helping people considered a skill?
The README does not treat helping as a named skill category. The closest supported case is the colleague family, which models workplace behavior from source material, so cooperative behavior would only appear if the material you supply shows it.
Official sources
Add this badge to your README
If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.
[](https://hysenlabs.com/projects/titanwings-colleague-skill)