#79 by GitHub stars

titanwings/distilly

Set up the owner profile so a personal agent knows who it works for (first-run setup, "get to know me"), or distill colleague, relationship, or celebrity source material into reusable Person Profiles for agents.

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

SKILL.md

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 0afc45c29c36

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 0afc45c29c360ba7bc8260f1bb0bf34e9155f4fa

26.4kGitHub stars
199stars in 7 days
1skill in this repository
14commits in 30 days

Heat

6.6
  • Star growth, last 7 daysAhead of 79% of tracked repositories
  • Star growth, last 24 hoursAhead of 69% of tracked repositories
  • Rank movement, last 7 daysAhead of 74% of tracked repositories
  • Commits, last 30 daysAhead of 80% of tracked repositories
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekAhead of 0% of tracked repositories

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Aug 2, 2026Nov 6, 202626,417

Individual skills in this repository

How it works

distilly

When your agent uses it

Set up the owner profile so a personal agent knows who it works for (first-run setup, "get to know me"), or distill colleague, relationship, or celebrity source material into reusable Person Profiles for agents.

What it loads into context

Frontmatter

91 tokens

Always available to the agent

SKILL.md

941 tokens

When the skill is activated

Reference documents

59,457 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

  1. Route the request
  2. Rules for every flow
  3. Compatible hosts

Scripts executed separately

  • bin/distilly.mjs
  • package.json
  • tests/_paths.py
  • tests/e2e/owner_discovery/mock_mcp.py
  • tests/e2e/owner_discovery/setup.sh
  • tests/e2e/owner_discovery/turn.sh
  • tests/test_cli_lifecycle.py
  • tests/test_config_migration.py
  • tests/test_credentials.py
  • tests/test_install_claude_generated_skill.py
  • tests/test_install_distilly.py
  • tests/test_install_generated_skill.py
  • tests/test_install_openclaw_and_codex.py
  • tests/test_owner_profile.py
  • tests/test_owner_sources.py
  • tests/test_research_tools.py
  • tests/test_skill_entrypoint_docs.py
  • tests/test_skill_writer.py
  • tests/test_translation_sync.py
  • tests/test_xquik_public_posts.py
  • tools/credentials.py
  • tools/dingtalk_auto_collector.py
  • tools/email_parser.py
  • tools/feishu_auto_collector.py
  • tools/feishu_browser.py
  • tools/feishu_mcp_client.py
  • tools/feishu_parser.py
  • tools/hosts.py
  • tools/install_claude_generated_skill.py
  • tools/install_distilly.py
  • tools/install_generated_skill.py
  • tools/install_generated_skill_common.py
  • tools/owner_profile.py
  • tools/owner_sources.py
  • tools/research/__init__.py
  • tools/research/download_subtitles.sh
  • tools/research/merge_research.py
  • tools/research/quality_check.py
  • tools/research/srt_to_transcript.py
  • tools/research/transcribe_audio.py
  • tools/research/xquik_public_posts.py
  • tools/skill_presets.py
  • tools/skill_schema.py
  • tools/skill_writer.py
  • tools/slack_auto_collector.py
  • tools/version_manager.py

Files

  • .github/ISSUE_TEMPLATE/bug_report.mddoc753 bytes
  • .github/ISSUE_TEMPLATE/config.ymlasset310 bytes
  • .github/ISSUE_TEMPLATE/feature_request.mddoc503 bytes
  • .github/ISSUE_TEMPLATE/question.mddoc418 bytes
  • .github/PULL_REQUEST_TEMPLATE.mddoc978 bytes
  • .github/workflows/ci.ymlasset1,425 bytes
  • .github/workflows/publish-package.ymlasset551 bytes
  • .gitignoreasset395 bytes
  • .npmrcasset48 bytes
  • CITATION.cffasset1,135 bytes
  • CONTRIBUTING.mddoc4,509 bytes
  • INSTALL.mddoc21,058 bytes
  • INSTALL_EN.mddoc6,656 bytes
  • LICENSEasset1,067 bytes
  • README.mddoc19,682 bytes
  • ROADMAP.mddoc5,137 bytes
  • SKILL.mdcore3,857 bytes
  • SKILL.mdcore3,857 bytes
  • SKILL.mdcore3,857 bytes
  • bin/distilly.mjsruns5,691 bytes
  • docs/assets/hosts/README.mddoc1,624 bytes
  • docs/assets/hosts/claude-code-wordmark-dark.svgasset8,336 bytes
  • docs/assets/hosts/claude-code-wordmark-light.svgasset7,001 bytes
  • docs/assets/hosts/codex-mark-dark.pngasset43,917 bytes
  • docs/assets/hosts/codex-mark-light.pngasset41,633 bytes
  • docs/assets/hosts/deepseek-wordmark-dark.svgasset10,031 bytes
  • docs/assets/hosts/deepseek-wordmark-light.svgasset10,008 bytes
  • docs/assets/hosts/grok-build-mark-dark.pngasset11,344 bytes
  • docs/assets/hosts/grok-build-mark-light.pngasset11,626 bytes
  • docs/assets/hosts/hermes-agent-wordmark.pngasset12,333 bytes
  • docs/assets/hosts/meta-mark.svgasset1,339 bytes
  • docs/assets/hosts/openai-mark-dark.svgasset1,585 bytes
  • docs/assets/hosts/openai-mark-light.svgasset1,585 bytes
  • docs/assets/hosts/openclaw-wordmark-dark.svgasset65,099 bytes
  • docs/assets/hosts/openclaw-wordmark-light.svgasset65,160 bytes
  • docs/assets/hosts/opencode-wordmark-dark.svgasset1,077 bytes
  • docs/assets/hosts/opencode-wordmark-light.svgasset1,077 bytes
  • docs/assets/hosts/pi-mark.svgasset618 bytes
  • docs/assets/sources/README.mddoc602 bytes
  • docs/assets/sources/dingtalk-mark.jpgasset1,574 bytes
  • docs/assets/sources/lark-mark.pngasset3,875 bytes
  • docs/assets/sources/slack-mark.pngasset2,885 bytes
  • docs/assets/sources/wechat-mark.jpgasset4,193 bytes
  • docs/assets/sources/x-mark-dark.svgasset292 bytes
  • docs/assets/sources/x-mark-light.svgasset292 bytes
  • docs/lang/README_DE.mddoc2,009 bytes
  • docs/lang/README_ES.mddoc1,982 bytes
  • docs/lang/README_JA.mddoc2,299 bytes
  • docs/lang/README_KO.mddoc2,010 bytes
  • docs/lang/README_PT.mddoc1,975 bytes
  • docs/lang/README_RU.mddoc2,734 bytes
  • docs/lang/README_ZH.mddoc18,734 bytes
  • docs/social-preview.pngasset859,971 bytes
  • package.jsonruns1,029 bytes
  • prompts/celebrity/budget_unfriendly/audit.mddoc3,991 bytes
  • prompts/celebrity/budget_unfriendly/framework.mddoc7,544 bytes
  • prompts/celebrity/budget_unfriendly/persona_analyzer.mddoc3,395 bytes
  • prompts/celebrity/budget_unfriendly/persona_builder.mddoc3,375 bytes
  • prompts/celebrity/budget_unfriendly/synthesis.mddoc1,177 bytes
  • prompts/celebrity/budget_unfriendly/template.mddoc3,792 bytes
  • prompts/celebrity/budget_unfriendly/validation.mddoc1,293 bytes
  • prompts/celebrity/intake.mddoc5,316 bytes
  • prompts/celebrity/merger.mddoc6,995 bytes
  • prompts/celebrity/persona_analyzer.mddoc5,605 bytes
  • prompts/celebrity/persona_builder.mddoc6,253 bytes
  • prompts/celebrity/research.mddoc20,561 bytes
  • prompts/colleague/intake.mddoc5,425 bytes
  • prompts/colleague/merger.mddoc2,502 bytes
  • prompts/colleague/persona_analyzer.mddoc8,879 bytes
  • prompts/colleague/persona_builder.mddoc5,231 bytes
  • prompts/flows/celebrity_research.mddoc10,271 bytes
  • prompts/flows/create.mddoc7,923 bytes
  • prompts/flows/evolve.mddoc2,506 bytes
  • prompts/flows/manage.mddoc680 bytes
  • prompts/flows/owner.mddoc2,199 bytes
  • prompts/flows/sources.mddoc11,886 bytes
  • prompts/owner/intake.mddoc5,565 bytes
  • prompts/owner/profile_builder.mddoc2,514 bytes
  • prompts/relationship/intake.mddoc2,237 bytes
  • prompts/relationship/merger.mddoc1,087 bytes
  • prompts/relationship/persona_analyzer.mddoc1,974 bytes
  • prompts/relationship/persona_builder.mddoc1,777 bytes
  • prompts/shared/correction_handler.mddoc3,334 bytes
  • prompts/shared/work_analyzer.mddoc5,471 bytes
  • prompts/shared/work_builder.mddoc2,661 bytes
  • requirements-optional.txtdoc518 bytes
  • requirements.txtdoc118 bytes
  • ruff.tomlasset130 bytes
  • tests/_paths.pyruns302 bytes
  • tests/e2e/owner_discovery/.gitignoreasset54 bytes
  • tests/e2e/owner_discovery/README.mddoc1,245 bytes
  • tests/e2e/owner_discovery/mock_mcp.pyruns5,047 bytes
  • tests/e2e/owner_discovery/setup.shruns545 bytes
  • tests/e2e/owner_discovery/turn.shruns1,028 bytes
  • tests/test_cli_lifecycle.pyruns22,964 bytes
  • tests/test_config_migration.pyruns1,588 bytes
  • tests/test_credentials.pyruns5,153 bytes
  • tests/test_install_claude_generated_skill.pyruns3,292 bytes
  • tests/test_install_distilly.pyruns7,755 bytes
  • tests/test_install_generated_skill.pyruns4,391 bytes
  • tests/test_install_openclaw_and_codex.pyruns5,279 bytes
  • tests/test_owner_profile.pyruns9,922 bytes
  • tests/test_owner_sources.pyruns5,990 bytes
  • tests/test_research_tools.pyruns8,730 bytes
  • tests/test_skill_entrypoint_docs.pyruns16,621 bytes
  • tests/test_skill_writer.pyruns32,745 bytes
  • tests/test_translation_sync.pyruns3,757 bytes
  • tests/test_xquik_public_posts.pyruns8,789 bytes
  • tools/credentials.pyruns7,464 bytes
  • tools/dingtalk_auto_collector.pyruns28,711 bytes
  • tools/email_parser.pyruns10,054 bytes
  • tools/feishu_auto_collector.pyruns39,979 bytes
  • tools/feishu_browser.pyruns12,837 bytes
  • tools/feishu_mcp_client.pyruns11,794 bytes
  • tools/feishu_parser.pyruns7,593 bytes
  • tools/hosts.jsonasset1,027 bytes
  • tools/hosts.pyruns1,431 bytes
  • tools/install_claude_generated_skill.pyruns3,724 bytes
  • tools/install_distilly.pyruns3,422 bytes
  • tools/install_generated_skill.pyruns1,539 bytes
  • tools/install_generated_skill_common.pyruns4,022 bytes
  • tools/owner_profile.pyruns11,589 bytes
  • tools/owner_sources.pyruns13,268 bytes
  • tools/research/__init__.pyruns72 bytes
  • tools/research/download_subtitles.shruns887 bytes
  • tools/research/merge_research.pyruns10,247 bytes
  • tools/research/quality_check.pyruns10,481 bytes
  • tools/research/srt_to_transcript.pyruns2,805 bytes
  • tools/research/transcribe_audio.pyruns10,161 bytes
  • tools/research/xquik_public_posts.pyruns14,690 bytes
  • tools/skill_presets.pyruns12,630 bytes
  • tools/skill_schema.pyruns16,064 bytes
  • tools/skill_writer.pyruns25,709 bytes
  • tools/slack_auto_collector.pyruns26,220 bytes
  • tools/version_manager.pyruns7,985 bytes
Read SKILL.md

> **Language**: These instructions are written in English. Detect the user's language from their first message and reply to the user in that language throughout.

> **Skill Root**: Before reading a bundled prompt or running a bundled script, resolve the absolute directory of the `SKILL.md` that the host actually loaded. In the instructions below, `{distilly_skill_root}` means that exact directory. Claude Code exposes it as `${CLAUDE_SKILL_DIR}`; on every other host, use the loaded-skill path supplied by that host's discovery context. Do not assume the shell's current working directory is the Skill root, and do not guess or hard-code an install path. If the host does not expose the loaded path or more than one Distilly installation is ambiguous, ask the user to identify the active installation before running code.
>
> Keep the shell in the user's current workspace so relative output paths such as `./skills/...` remain project-local. Resolve every `tools/...` and `prompts/...` resource against `{distilly_skill_root}`. For example, run `tools/owner_profile.py` as `python3 "{distilly_skill_root}/tools/owner_profile.py"`; replace the placeholder with the resolved absolute path in the actual tool call.

# Distilly Creator

> Distilly was formerly **Colleague Skill / colleague-skill**. The current Skill frontmatter name and creator entrypoint are both `distilly`.

## Route the request

Read only the flow file the request needs, then follow it.
View the complete source on GitHub

Skills included

  • distilly

Repository facts

License
MIT
Created
Mar 30, 2026
Last pushed
Oct 13, 2026
Forks
2,248
Open issues
21
Project activity
Active

Rank over the last 12 weeks

Now #79 · best #70 · same as 30 days ago

  1. #79 from Oct 23 to Oct 24
  2. #80 on Oct 25
  3. #78 from Oct 28 to Oct 29
  4. #79 from Oct 30 to Oct 31
  5. #78 from Nov 1 to Nov 3
  6. #79 since Nov 4
18 earlier periods
  1. #72 on Aug 2
  2. #72 on Aug 7
  3. #73 on Aug 8
  4. #74 from Aug 9 to Aug 11
  5. #75 on Aug 12
  6. #72 from Aug 13 to Aug 15
  7. #71 on Aug 16
  8. #70 from Aug 17 to Aug 19
  9. #71 from Aug 20 to Aug 21
  10. #72 from Aug 22 to Aug 24
  11. #73 from Aug 25 to Aug 26
  12. #74 from Aug 27 to Sep 2
  13. #75 from Sep 3 to Sep 10
  14. #76 from Sep 11 to Sep 13
  15. #77 from Sep 14 to Oct 3
  16. #78 from Oct 4 to Oct 5
  17. #79 from Oct 6 to Oct 8
  18. #78 from Oct 9 to Oct 22

Before you install

Network or broad shell

Automated signals, not a guarantee

Checked Nov 2, 2026

Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.

Show 14 notes
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • SKILL.md:1 Analysis incomplete: Referenced executable target unavailable; not analyzed
  • docs/assets/hosts/openclaw-wordmark-dark.svg:107 Analysis incomplete: physical or joined line exceeds character limit
  • docs/assets/hosts/openclaw-wordmark-dark.svg:105 Analysis incomplete: physical or joined line exceeds character limit
  • docs/assets/hosts/openclaw-wordmark-dark.svg:106 Analysis incomplete: physical or joined line exceeds character limit
  • docs/assets/hosts/openclaw-wordmark-dark.svg:115 Analysis incomplete: physical or joined line exceeds character limit
  • docs/assets/hosts/openclaw-wordmark-dark.svg:113 Analysis incomplete: physical or joined line exceeds character limit
  • docs/assets/hosts/openclaw-wordmark-dark.svg:114 Analysis incomplete: physical or joined line exceeds character limit
  • docs/assets/hosts/openclaw-wordmark-light.svg:107 Analysis incomplete: physical or joined line exceeds character limit
  • docs/assets/hosts/openclaw-wordmark-light.svg:105 Analysis incomplete: physical or joined line exceeds character limit
  • docs/assets/hosts/openclaw-wordmark-light.svg:106 Analysis incomplete: physical or joined line exceeds character limit
  • docs/assets/hosts/openclaw-wordmark-light.svg:115 Analysis incomplete: physical or joined line exceeds character limit
  • docs/assets/hosts/openclaw-wordmark-light.svg:113 Analysis incomplete: physical or joined line exceeds character limit
  • docs/assets/hosts/openclaw-wordmark-light.svg:114 Analysis incomplete: physical or joined line exceeds character limit
Show all 530 signals by file

.github/ISSUE_TEMPLATE/config.yml

  • Network accessline 2
    contact_links:   - name: 💬 Discord community     url: https://discord.gg/NVX66RxWZv
  • Network accessline 3
    - name: 💬 Discord community     url: https://discord.gg/NVX66RxWZv     about: Chat, ask quick questions, and share skills.
  • Network accessline 4
    url: https://discord.gg/NVX66RxWZv
  • Network accessline 5
    about: Chat, ask quick questions, and share skills.   - name: 🖼<U+FE0F> Skill gallery     url: https://titanwings.github.io/colleague-skill-site/
  • Network accessline 6
    - name: 🖼<U+FE0F> Skill gallery     url: https://titanwings.github.io/colleague-skill-site/     about: Browse or submit a community skill.
  • Network accessline 7
    url: https://titanwings.github.io/colleague-skill-site/

.github/ISSUE_TEMPLATE/question.md

  • Network accessline 12
    - README.md / INSTALL.md / SKILL.md - Existing issues and discussions - Discord: https://discord.gg/NVX66RxWZv
  • Network accessline 13
    - Existing issues and discussions - Discord: https://discord.gg/NVX66RxWZv -->
  • Network accessline 14
    - Discord: https://discord.gg/NVX66RxWZv

.github/workflows/publish-package.yml

  • Network accessline 17
    with:           node-version: "20"           registry-url: https://npm.pkg.github.com
  • Network accessline 18
    node-version: "20"           registry-url: https://npm.pkg.github.com           scope: "@titanwings"
  • Network accessline 19
    registry-url: https://npm.pkg.github.com
  • Access to secretsline 28
    [Credential-related source omitted]

.npmrc

  • Network accessline 1
    @titanwings:registry=https://npm.pkg.github.com

CITATION.cff

  • Network accessline 14
    given-names: Xia license: MIT repository-code: "https://github.com/titanwings/distilly"
  • Network accessline 15
    license: MIT repository-code: "https://github.com/titanwings/distilly" url: "https://github.com/titanwings/distilly"
  • Network accessline 16
    repository-code: "https://github.com/titanwings/distilly"
  • Network accessline 17
    url: "https://github.com/titanwings/distilly"
  • Network accessline 32
    year: 2026   date-released: "2026-05-29"   url: "https://arxiv.org/abs/2605.31264"
  • Network accessline 33
    date-released: "2026-05-29"   url: "https://arxiv.org/abs/2605.31264"   identifiers:
  • Network accessline 34
    url: "https://arxiv.org/abs/2605.31264"

CONTRIBUTING.md

  • Network accessline 13
    - **Translate docs** — see `docs/lang/` for existing languages - **Add a data source collector** — e.g. `tools/slack_auto_collector.py` is a reference implementation - **Submit a community skill** — submit to the [gallery](https://titanwing
  • Network accessline 14
    - **Add a data source collector** — e.g. `tools/slack_auto_collector.py` is a reference implementation - **Submit a community skill** — submit to the [gallery](https://titanwings.github.io/colleague-skill-site/) - **Improve prompts** — file
  • Network accessline 15
    - **Submit a community skill** — submit to the [gallery](https://titanwings.github.io/colleague-skill-site/)
  • Network accessline 23
    git clone https://github.com/titanwings/distilly.git distilly
  • Network accessline 52
    Follow [Conventional Commits](https://www.conventionalcommits.org/):
  • Network accessline 106
    - [💬 Discord](https://discord.gg/NVX66RxWZv) — main chat
  • Network accessline 107
    - [GitHub Discussions](https://github.com/titanwings/distilly/discussions) — long-form Q&A and design threads
  • Network accessline 108
    - [Skill gallery](https://titanwings.github.io/colleague-skill-site/) — browse and submit skills

INSTALL.md

  • Network accessline 32
    本项目遵循官方 [AgentSkills](https://agentskills.io) 标准,整个 repo 就是 skill 目录。克隆到 Claude skills 目录即可:
  • Network accessline 38
    # 方式 1:安装到当前项目 mkdir -p .claude/skills git clone https://github.com/titanwings/distilly .claude/skills/distilly
  • Network accessline 40
    git clone https://github.com/titanwings/distilly .claude/skills/distilly
  • Network accessline 42
    # 方式 2:安装到全局(所有项目都能用) git clone https://github.com/titanwings/distilly ~/.claude/skills/distilly
  • Network accessline 43
    git clone https://github.com/titanwings/distilly ~/.claude/skills/distilly
  • Network accessline 131
    git clone https://github.com/titanwings/distilly ~/.openclaw/workspace/skills/distilly
  • Network accessline 174
    git clone https://github.com/titanwings/distilly ~/.agents/skills/distilly
  • Network accessline 186
    # 方式 1:安装到当前项目 mkdir -p .dsh/skills git clone https://github.com/titanwings/distilly .dsh/skills/distilly
  • Network accessline 188
    git clone https://github.com/titanwings/distilly .dsh/skills/distilly
  • Network accessline 190
    # 方式 2:安装到全局(所有项目都能用) mkdir -p ~/.dsh/skills git clone https://github.com/titanwings/distilly ~/.dsh/skills/distilly
  • Network accessline 192
    git clone https://github.com/titanwings/distilly ~/.dsh/skills/distilly
  • Network accessline 203
    > 这里的 Pi 是 [pi.dev](https://pi.dev/docs/latest/skills) 的 coding agent。
  • Network accessline 206
    # Pi 专用的用户目录 mkdir -p ~/.pi/agent/skills git clone https://github.com/titanwings/distilly ~/.pi/agent/skills/distilly
  • Network accessline 208
    git clone https://github.com/titanwings/distilly ~/.pi/agent/skills/distilly
  • Network accessline 210
    # 或使用多宿主共享目录 mkdir -p ~/.agents/skills git clone https://github.com/titanwings/distilly ~/.agents/skills/distilly
  • Network accessline 212
    git clone https://github.com/titanwings/distilly ~/.agents/skills/distilly
  • Network accessline 224
    # Grok 专用的用户目录 mkdir -p ~/.grok/skills git clone https://github.com/titanwings/distilly ~/.grok/skills/distilly
  • Network accessline 226
    git clone https://github.com/titanwings/distilly ~/.grok/skills/distilly
  • Network accessline 228
    # 或使用多宿主共享目录 mkdir -p ~/.agents/skills git clone https://github.com/titanwings/distilly ~/.agents/skills/distilly
  • Network accessline 230
    git clone https://github.com/titanwings/distilly ~/.agents/skills/distilly
  • Network accessline 244
    # 用户级 git clone https://github.com/titanwings/distilly ~/.config/opencode/skills/distilly
  • Network accessline 245
    git clone https://github.com/titanwings/distilly ~/.config/opencode/skills/distilly
  • Network accessline 247
    # 项目级 mkdir -p .opencode/skills git clone https://github.com/titanwings/distilly .opencode/skills/distilly
  • Network accessline 249
    git clone https://github.com/titanwings/distilly .opencode/skills/distilly
  • Network accessline 252
    生成的人物 Skill 使用 `install_generated_skill.py --host opencode` 安装;项目级安装追加 `--skills-dir .opencode/skills`。目录规则见 [OpenCode Agent Skills](https://opencode.ai/docs/skills)。
  • Access to secretsline 294
    [Credential-related source omitted]
  • Access to secretsline 300
    [Credential-related source omitted]
  • Network accessline 319
    python3 tools/feishu_browser.py \   --url "https://xxx.feishu.cn/wiki/xxx" \
  • Network accessline 320
    --url "https://xxx.feishu.cn/wiki/xxx" \
  • Dangerous shell operationline 363
    rm "/tmp/distilly-x-public-posts.json"
  • Access to secretsline 366
    [Credential-related source omitted]
  • Network accessline 388
    1. 前往 [https://api.slack.com/apps](https://api.slack.com/apps) → **Create New App**

INSTALL_EN.md

  • Network accessline 12
    git clone https://github.com/titanwings/distilly <TARGET>
  • Access to secretsline 128
    [Credential-related source omitted]
  • Access to secretsline 130
    [Credential-related source omitted]
  • Dangerous shell operationline 163
    rm "/tmp/distilly-x-public-posts.json"
  • Access to secretsline 166
    [Credential-related source omitted]

README.md

  • Network accessline 15
    [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)
  • Network accessline 16
    [![Python 3.9+](https://img.shields.io/badge/Python-3.9%2B-blue.svg)](https://python.org)
  • Network accessline 17
    [![AgentSkills](https://img.shields.io/badge/AgentSkills-Standard-green)](https://agentskills.io)
  • Network accessline 18
    [![Stars](https://img.shields.io/github/stars/titanwings/colleague-skill?style=social)](https://github.com/titanwings/distilly/stargazers)
  • Network accessline 20
    [![Discord](https://img.shields.io/badge/Discord-Join%20Community-5865F2?logo=discord&logoColor=white)](https://discord.gg/NVX66RxWZv)
  • Network accessline 48
    [🆕 What Distilly does](#-what-distilly-does-today) · [📦 Data Sources](#-supported-data-sources) · [⚡ Install](#-install) · [🚀 Usage](#-usage) · [✨ Demo](#-demo) · [📝 Citation](#-citation) · [💬 Discord](https://discord.gg/NVX66RxWZv)
  • Network accessline 66
    > 📝 **2026.06.01 Update** — **[The COLLEAGUE.SKILL technical report](https://arxiv.org/pdf/2605.31264) is now available**. The most rewarding part was not simply publishing a paper, but seeing the community grow the gallery to 215 skills co
  • Network accessline 68
    > 🗺<U+FE0F> **2026.04.13** — **The Distilly Roadmap is live!** What began as Colleague Skill is growing beyond colleagues: distill people into Skills that Agents can reuse. 👉 **[Full Roadmap](ROADMAP.md)** · **[💬 Discord](https://discord.gg/NVX66R
  • Network accessline 70
    > 🌐 **2026.04.07** — Community gallery is live! Any skill / meta-skill can drive traffic directly to your own GitHub repo. No middleman. 👉 **[titanwings.github.io/colleague-skill-site](https://titanwings.github.io/colleague-skill-site/)**
  • Network accessline 74
    Created by [@titanwings](https://github.com/titanwings)
  • Network accessline 116
    <table> <tr> <td align="center" width="25%"><a href="https://claude.ai/code"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/assets/hosts/claude-code-wordmark-dark.svg"><img src="docs/assets/hosts/claude-code-wordmark-lig
  • Network accessline 117
    <tr> <td align="center" width="25%"><a href="https://claude.ai/code"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/assets/hosts/claude-code-wordmark-dark.svg"><img src="docs/assets/hosts/claude-code-wordmark-light.svg" 
  • Network accessline 118
    <td align="center" width="25%"><a href="https://claude.ai/code"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/assets/hosts/claude-code-wordmark-dark.svg"><img src="docs/assets/hosts/claude-code-wordmark-light.svg" alt="
  • Network accessline 119
    <td align="center" width="25%"><a href="https://github.com/NousResearch/hermes-agent"><img src="docs/assets/hosts/hermes-agent-wordmark.png" alt="Hermes Agent" height="32"></a></td>
  • Network accessline 120
    <td align="center" width="25%"><a href="https://github.com/openclaw/openclaw"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/assets/hosts/openclaw-wordmark-dark.svg"><img src="docs/assets/hosts/openclaw-wordmark-light.sv
  • Network accessline 121
    <td align="center" width="25%"><a href="https://github.com/openai/codex" title="Codex"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/assets/hosts/codex-mark-dark.png"><img src="docs/assets/hosts/codex-mark-light.png" al
  • Network accessline 122
    </tr> <tr> <td align="center" width="25%"><a href="https://github.com/deepseek-ai/deepseek-harness"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/assets/hosts/deepseek-wordmark-dark.svg"><img src="docs/assets/hosts/deep
  • Network accessline 123
    <tr> <td align="center" width="25%"><a href="https://github.com/deepseek-ai/deepseek-harness"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/assets/hosts/deepseek-wordmark-dark.svg"><img src="docs/assets/hosts/deepseek-w
  • Network accessline 124
    <td align="center" width="25%"><a href="https://github.com/deepseek-ai/deepseek-harness"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/assets/hosts/deepseek-wordmark-dark.svg"><img src="docs/assets/hosts/deepseek-wordma
  • Network accessline 125
    <td align="center" width="25%"><a href="https://pi.dev/docs/latest/skills"><img src="docs/assets/hosts/pi-mark.svg" alt="Pi coding agent" height="46"></a></td>
  • Network accessline 126
    <td align="center" width="25%"><a href="https://docs.x.ai/build/features/skills-plugins-marketplaces"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/assets/hosts/grok-build-mark-dark.png"><img src="docs/assets/hosts/grok
  • Network accessline 127
    <td align="center" width="25%"><a href="https://opencode.ai/docs/skills"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/assets/hosts/opencode-wordmark-dark.svg"><img src="docs/assets/hosts/opencode-wordmark-light.svg" al
  • Network accessline 141
    <table> <tr> <td align="center" width="20%"><a href="https://x.ai"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/assets/hosts/grok-build-mark-dark.png"><img src="docs/assets/hosts/grok-build-mark-light.png" alt="Grok Bo
  • Network accessline 142
    <tr> <td align="center" width="20%"><a href="https://x.ai"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/assets/hosts/grok-build-mark-dark.png"><img src="docs/assets/hosts/grok-build-mark-light.png" alt="Grok Bot" heigh
  • Network accessline 143
    <td align="center" width="20%"><a href="https://x.ai"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/assets/hosts/grok-build-mark-dark.png"><img src="docs/assets/hosts/grok-build-mark-light.png" alt="Grok Bot" height="46
  • Network accessline 144
    <td align="center" width="20%"><a href="https://www.meta.ai"><img src="docs/assets/hosts/meta-mark.svg" alt="Meta Muse" height="40"></a><br><b>Meta Muse</b><br><sub>profile handoff · planned</sub></td>
  • Network accessline 145
    <td align="center" width="20%"><a href="https://openai.com"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/assets/hosts/openai-mark-dark.svg"><img src="docs/assets/hosts/openai-mark-light.svg" alt="OpenAI Dots" height="4
  • Network accessline 146
    <td align="center" width="20%"><a href="https://github.com/openclaw/openclaw"><picture><source media="(prefers-color-scheme: dark)" srcset="docs/assets/hosts/openclaw-wordmark-dark.svg"><img src="docs/assets/hosts/openclaw-wordmark-light.sv
  • Network accessline 147
    <td align="center" width="20%"><a href="https://github.com/NousResearch/hermes-agent"><img src="docs/assets/hosts/hermes-agent-wordmark.png" alt="Hermes Agent" height="32"></a><br><sub>native Skill</sub></td>
  • Network accessline 175
    > Install Distilly from `https://github.com/titanwings/distilly`, then verify that this host can discover it.
  • Network accessline 184
    git clone https://github.com/titanwings/distilly <DISTILLY_SKILL_DIR>
  • Network accessline 219
    > Six-dimension research: works · interviews · decisions · expression DNA · external evaluations · timeline<br> > Case adapted from community work [alchaincyf/karpathy-skill](https://github.com/alchaincyf/karpathy-skill)
  • Network accessline 220
    > Case adapted from community work [alchaincyf/karpathy-skill](https://github.com/alchaincyf/karpathy-skill)
  • Network accessline 269
    📚 More real-world cases in the **[community gallery](https://titanwings.github.io/colleague-skill-site/)** — 100+ skills and counting
  • Network accessline 317
    > **[COLLEAGUE.SKILL: Automated AI Skill Generation via Expert Knowledge Distillation](https://arxiv.org/pdf/2605.31264)** ([arXiv](https://arxiv.org/abs/2605.31264) · [arXiv PDF](https://arxiv.org/pdf/2605.31264))
  • Network accessline 333
    archivePrefix = {arXiv},   primaryClass = {cs.AI},   url          = {https://arxiv.org/abs/2605.31264}
  • Network accessline 334
    primaryClass = {cs.AI},   url          = {https://arxiv.org/abs/2605.31264} }
  • Network accessline 335
    url          = {https://arxiv.org/abs/2605.31264}
  • Network accessline 345
    <a href="https://star-history.dera.page/#titanwings/colleague-skill&type=date&legend=top-left">
  • Network accessline 346
    <picture>    <source media="(prefers-color-scheme: dark)" srcset="https://star-history.dera.page/svg?repos=titanwings%2Fdistilly&type=date&theme=dark&legend=top-left" />    <source media="(prefers-color-scheme: light)" srcset="https://star-
  • Network accessline 347
    <source media="(prefers-color-scheme: dark)" srcset="https://star-history.dera.page/svg?repos=titanwings%2Fdistilly&type=date&theme=dark&legend=top-left" />
  • Network accessline 348
    <source media="(prefers-color-scheme: light)" srcset="https://star-history.dera.page/svg?repos=titanwings%2Fdistilly&type=date&legend=top-left" />
  • Network accessline 349
    <img alt="Star History Chart" src="https://star-history.dera.page/svg?repos=titanwings%2Fdistilly&type=date&legend=top-left" />
  • Network accessline 357
    **MIT License** © [titanwings](https://github.com/titanwings)

ROADMAP.md

  • Network accessline 39
    | Conversation corrections & incremental evolution | Done | | Version control & rollback | Done | | [Community Gallery](https://titanwings.github.io/colleague-skill-site/) with 99+ skills | Done |
  • Network accessline 41
    | [Community Gallery](https://titanwings.github.io/colleague-skill-site/) with 99+ skills | Done |
  • Network accessline 122
    | How | Where | |-----|-------| | Submit your .skill | [Gallery PR](https://titanwings.github.io/colleague-skill-site/) |
  • Network accessline 123
    |-----|-------| | Submit your .skill | [Gallery PR](https://titanwings.github.io/colleague-skill-site/) | | Discuss & propose | [GitHub Discussions](https://github.com/titanwings/distilly/discussions) (coming soon) |
  • Network accessline 124
    | Submit your .skill | [Gallery PR](https://titanwings.github.io/colleague-skill-site/) |
  • Network accessline 125
    | Discuss & propose | [GitHub Discussions](https://github.com/titanwings/distilly/discussions) (coming soon) |
  • Network accessline 126
    | Chat in real time | [Discord](https://discord.gg/NVX66RxWZv) |
  • Network accessline 127
    | Report bugs | [Issue](https://github.com/titanwings/distilly/issues/new) |
  • Network accessline 142
    Have ideas? Come to [Discord](https://discord.gg/NVX66RxWZv) or start a Discussion.

SKILL.md

  • Broad permissionsline 1
    Read, Write, Edit, Bash

bin/distilly.mjs

  • Executable scriptline 1
    #!/usr/bin/env node

docs/assets/hosts/README.md

  • Network accessline 7
    | Asset | Official source | |---|---| | Claude Code | [Anthropic press kit](https://www.anthropic.com/press-kit) |
  • Network accessline 8
    |---|---| | Claude Code | [Anthropic press kit](https://www.anthropic.com/press-kit) | | Hermes Agent | [NousResearch/hermes-agent](https://github.com/NousResearch/hermes-agent/blob/main/website/static/img/hermes-agent-banner.png) |
  • Network accessline 9
    | Claude Code | [Anthropic press kit](https://www.anthropic.com/press-kit) |
  • Network accessline 10
    | Hermes Agent | [NousResearch/hermes-agent](https://github.com/NousResearch/hermes-agent/blob/main/website/static/img/hermes-agent-banner.png) |
  • Network accessline 11
    | OpenClaw | [openclaw/openclaw](https://github.com/openclaw/openclaw/tree/d74a12264aa5fb0598605e8f04e1864b7239ddd5/docs/assets) |
  • Network accessline 12
    | Codex | Resized from the Codex product icons bundled with the official ChatGPT desktop app; see [OpenAI's Codex documentation](https://learn.chatgpt.com/docs/codex) |
  • Network accessline 13
    | DeepSeek Harness | [deepseek-ai/deepseek-harness](https://github.com/deepseek-ai/deepseek-harness/blob/master/website/public/wordmark.svg) |
  • Network accessline 14
    | Pi coding agent | [Pi press kit](https://pi.dev/press-kit) |
  • Network accessline 15
    | Grok Build / Grok Bot | [xai-org/grok-build](https://github.com/xai-org/grok-build) |
  • Network accessline 16
    | Meta (Meta Muse) | [Simple Icons](https://simpleicons.org/?q=meta) `meta.svg` (CC0), filled with Meta blue |
  • Network accessline 17
    | OpenAI (OpenAI Dots) | [Simple Icons](https://simpleicons.org/?q=openai) `openai.svg` (CC0), black for light mode and white for dark mode |
  • Network accessline 18
    | OpenCode | [anomalyco/opencode](https://github.com/anomalyco/opencode/tree/dev/packages/console/app/src/asset) |

docs/assets/hosts/claude-code-wordmark-dark.svg

  • Network accessline 1
    <?xml version="1.0" encoding="UTF-8"?> <svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 8192 2000">
  • Network accessline 2
    <svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 8192 2000">

docs/assets/hosts/claude-code-wordmark-light.svg

  • Network accessline 1
    <?xml version="1.0" encoding="UTF-8"?> <svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 14552 2000">
  • Network accessline 2
    <svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 14552 2000">

docs/assets/hosts/deepseek-wordmark-dark.svg

  • Network accessline 1
    <svg xmlns="http://www.w3.org/2000/svg" width="143" height="23" viewBox="0 0 143 23" fill="none" style="color: #ffffff">

docs/assets/hosts/deepseek-wordmark-light.svg

  • Network accessline 1
    <svg xmlns="http://www.w3.org/2000/svg" width="143" height="23" viewBox="0 0 143 23" fill="none">

docs/assets/hosts/meta-mark.svg

  • Network accessline 1
    <svg fill="#0467DF" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>Meta</title><path d="M6.915 4.03c-1.968 0-3.683 1.28-4.871 3.113C.704 9.208 0 11.883 0 14.449c0 .706.07 1.369.21 1.973a6.624 6.624 0 0 0 .265.86 5.

docs/assets/hosts/openai-mark-dark.svg

  • Network accessline 1
    <svg fill="#FFFFFF" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>OpenAI</title><path d="M22.2819 9.8211a5.9847 5.9847 0 0 0-.5157-4.9108 6.0462 6.0462 0 0 0-6.5098-2.9A6.0651 6.0651 0 0 0 4.9807 4.1818a5.9847 5.9

docs/assets/hosts/openai-mark-light.svg

  • Network accessline 1
    <svg fill="#000000" role="img" viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg"><title>OpenAI</title><path d="M22.2819 9.8211a5.9847 5.9847 0 0 0-.5157-4.9108 6.0462 6.0462 0 0 0-6.5098-2.9A6.0651 6.0651 0 0 0 4.9807 4.1818a5.9847 5.9

docs/assets/hosts/openclaw-wordmark-dark.svg

  • Network accessline 1
    <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!-- Created with Inkscape (http://www.inkscape.org/) -->
  • Network accessline 2
    <!-- Created with Inkscape (http://www.inkscape.org/) -->
  • Network accessline 13
    inkscape:export-xdpi="173.73264"    inkscape:export-ydpi="173.73264"    xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
  • Network accessline 14
    inkscape:export-ydpi="173.73264"    xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"    xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
  • Network accessline 15
    xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
  • Network accessline 16
    xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
  • Network accessline 17
    xmlns="http://www.w3.org/2000/svg"
  • Network accessline 18
    xmlns:svg="http://www.w3.org/2000/svg">

docs/assets/hosts/openclaw-wordmark-light.svg

  • Network accessline 1
    <?xml version="1.0" encoding="UTF-8" standalone="no"?> <!-- Created with Inkscape (http://www.inkscape.org/) -->
  • Network accessline 2
    <!-- Created with Inkscape (http://www.inkscape.org/) -->
  • Network accessline 13
    inkscape:export-xdpi="173.73264"    inkscape:export-ydpi="173.73264"    xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
  • Network accessline 14
    inkscape:export-ydpi="173.73264"    xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"    xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
  • Network accessline 15
    xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
  • Network accessline 16
    xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
  • Network accessline 17
    xmlns="http://www.w3.org/2000/svg"
  • Network accessline 18
    xmlns:svg="http://www.w3.org/2000/svg">

docs/assets/hosts/opencode-wordmark-dark.svg

  • Network accessline 1
    <svg width="234" height="42" viewBox="0 0 234 42" fill="none" xmlns="http://www.w3.org/2000/svg">

docs/assets/hosts/opencode-wordmark-light.svg

  • Network accessline 1
    <svg width="234" height="42" viewBox="0 0 234 42" fill="none" xmlns="http://www.w3.org/2000/svg">

docs/assets/hosts/pi-mark.svg

  • Network accessline 1
    <?xml version="1.0" encoding="UTF-8"?> <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 800">
  • Network accessline 2
    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 800">

docs/assets/sources/README.md

  • Network accessline 6
    | Asset | Source | |---|---| | Lark | [Lark Suite on GitHub](https://github.com/larksuite) |
  • Network accessline 7
    |---|---| | Lark | [Lark Suite on GitHub](https://github.com/larksuite) | | DingTalk | [Open DingTalk on GitHub](https://github.com/open-dingtalk) |
  • Network accessline 8
    | Lark | [Lark Suite on GitHub](https://github.com/larksuite) |
  • Network accessline 9
    | DingTalk | [Open DingTalk on GitHub](https://github.com/open-dingtalk) |
  • Network accessline 10
    | Slack | [Slack API on GitHub](https://github.com/slackapi) |
  • Network accessline 11
    | X | [Simple Icons: X](https://github.com/simple-icons/simple-icons/blob/develop/icons/x.svg) |
  • Network accessline 12
    | WeChat | [WeChat on the App Store](https://apps.apple.com/app/wechat/id414478124) |

docs/assets/sources/x-mark-dark.svg

  • Network accessline 1
    <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">

docs/assets/sources/x-mark-light.svg

  • Network accessline 1
    <svg viewBox="0 0 24 24" xmlns="http://www.w3.org/2000/svg">

docs/lang/README_DE.md

  • Network accessline 27
    > Installiere Distilly von `https://github.com/titanwings/distilly` und prüfe, ob dieser Host es findet.
  • Network accessline 32
    git clone https://github.com/titanwings/distilly <DISTILLY_SKILL_DIR>
  • Network accessline 41
    [README](../../README.md) · [Installationsanleitung](../../INSTALL_EN.md) · [Roadmap](../../ROADMAP.md) · [Discord](https://discord.gg/NVX66RxWZv)
  • Network accessline 47
    **MIT License** © [titanwings](https://github.com/titanwings)

docs/lang/README_ES.md

  • Network accessline 27
    > Instala Distilly desde `https://github.com/titanwings/distilly` y comprueba que este host lo detecta.
  • Network accessline 32
    git clone https://github.com/titanwings/distilly <DISTILLY_SKILL_DIR>
  • Network accessline 41
    [README](../../README.md) · [Guía de instalación](../../INSTALL_EN.md) · [Hoja de ruta](../../ROADMAP.md) · [Discord](https://discord.gg/NVX66RxWZv)
  • Network accessline 47
    **MIT License** © [titanwings](https://github.com/titanwings)

docs/lang/README_JA.md

  • Network accessline 27
    > `https://github.com/titanwings/distilly` から Distilly をインストールし、このホストで認識されるか確認して。
  • Network accessline 32
    git clone https://github.com/titanwings/distilly <DISTILLY_SKILL_DIR>
  • Network accessline 41
    [README](../../README.md) · [インストールガイド](../../INSTALL_EN.md) · [ロードマップ](../../ROADMAP.md) · [Discord](https://discord.gg/NVX66RxWZv)
  • Network accessline 47
    **MIT License** © [titanwings](https://github.com/titanwings)

docs/lang/README_KO.md

  • Network accessline 27
    > `https://github.com/titanwings/distilly`에서 Distilly를 설치하고 이 호스트가 인식하는지 확인해 줘.
  • Network accessline 32
    git clone https://github.com/titanwings/distilly <DISTILLY_SKILL_DIR>
  • Network accessline 41
    [README](../../README.md) · [설치 가이드](../../INSTALL_EN.md) · [로드맵](../../ROADMAP.md) · [Discord](https://discord.gg/NVX66RxWZv)
  • Network accessline 47
    **MIT License** © [titanwings](https://github.com/titanwings)

docs/lang/README_PT.md

  • Network accessline 27
    > Instale o Distilly a partir de `https://github.com/titanwings/distilly` e verifique se este host o encontra.
  • Network accessline 32
    git clone https://github.com/titanwings/distilly <DISTILLY_SKILL_DIR>
  • Network accessline 41
    [README](../../README.md) · [Guia de instalação](../../INSTALL_EN.md) · [Roadmap](../../ROADMAP.md) · [Discord](https://discord.gg/NVX66RxWZv)
  • Network accessline 47
    **MIT License** © [titanwings](https://github.com/titanwings)

docs/lang/README_RU.md

  • Network accessline 27
    > Установи Distilly из `https://github.com/titanwings/distilly` и проверь, что этот хост его видит.
  • Network accessline 32
    git clone https://github.com/titanwings/distilly <DISTILLY_SKILL_DIR>
  • Network accessline 41
    [README](../../README.md) · [Руководство по установке](../../INSTALL_EN.md) · [Дорожная карта](../../ROADMAP.md) · [Discord](https://discord.gg/NVX66RxWZv)
  • Network accessline 47
    **MIT License** © [titanwings](https://github.com/titanwings)

docs/lang/README_ZH.md

  • Network accessline 15
    [![Discord](https://img.shields.io/badge/Discord-加入社区-5865F2?logo=discord&logoColor=white)](https://discord.gg/NVX66RxWZv)
  • Network accessline 16
    [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](../../LICENSE)
  • Network accessline 17
    [![Python 3.9+](https://img.shields.io/badge/Python-3.9%2B-blue.svg)](https://python.org)
  • Network accessline 18
    [![AgentSkills](https://img.shields.io/badge/AgentSkills-Standard-green)](https://agentskills.io)
  • Network accessline 19
    [![Stars](https://img.shields.io/github/stars/titanwings/colleague-skill?style=social)](https://github.com/titanwings/distilly/stargazers)
  • Network accessline 47
    [🆕 Distilly 能做什么](#-distilly-现在能做什么) · [📦 数据来源](#-支持的数据来源) · [⚡ 安装](#-安装) · [🚀 使用](#-使用) · [✨ 效果示例](#-效果示例) · [📝 引用](#-引用) · [💬 Discord](https://discord.gg/NVX66RxWZv)
  • Network accessline 65
    > 📝 **2026.06.01 更新** — **[COLLEAGUE.SKILL 技术报告](https://arxiv.org/pdf/2605.31264) 已上线**;这次最开心的不只是发了篇 paper,而是社区一起把 gallery 推到 215 个 skills、165 位贡献者和 100k+ skill-card 累计 stars,论文 Acknowledgements 也专门收录并感谢了所有社区贡献者。
  • Network accessline 67
    > 🗺<U+FE0F> **2026.04.13** — **Distilly 路线图正式发布!** 项目从原 Colleague Skill 走向更通用的目标:把人物蒸馏成可供 Agent 复用的 Skill。 👉 **[完整路线图](../../ROADMAP.md)** · **[💬 Discord](https://discord.gg/NVX66RxWZv)**
  • Network accessline 69
    > 🌐 **2026.04.07** — 社区平台上线!任何 skill / meta-skill 可直接给自己的 GitHub repo 引流,没有中间商。 👉 **[titanwings.github.io/colleague-skill-site](https://titanwings.github.io/colleague-skill-site/)**
  • Network accessline 73
    Created by [@titanwings](https://github.com/titanwings)
  • Network accessline 115
    <table> <tr> <td align="center" width="25%"><a href="https://claude.ai/code"><picture><source media="(prefers-color-scheme: dark)" srcset="../assets/hosts/claude-code-wordmark-dark.svg"><img src="../assets/hosts/claude-code-wordmark-light.s
  • Network accessline 116
    <tr> <td align="center" width="25%"><a href="https://claude.ai/code"><picture><source media="(prefers-color-scheme: dark)" srcset="../assets/hosts/claude-code-wordmark-dark.svg"><img src="../assets/hosts/claude-code-wordmark-light.svg" alt=
  • Network accessline 117
    <td align="center" width="25%"><a href="https://claude.ai/code"><picture><source media="(prefers-color-scheme: dark)" srcset="../assets/hosts/claude-code-wordmark-dark.svg"><img src="../assets/hosts/claude-code-wordmark-light.svg" alt="Clau
  • Network accessline 118
    <td align="center" width="25%"><a href="https://github.com/NousResearch/hermes-agent"><img src="../assets/hosts/hermes-agent-wordmark.png" alt="Hermes Agent" height="32"></a></td>
  • Network accessline 119
    <td align="center" width="25%"><a href="https://github.com/openclaw/openclaw"><picture><source media="(prefers-color-scheme: dark)" srcset="../assets/hosts/openclaw-wordmark-dark.svg"><img src="../assets/hosts/openclaw-wordmark-light.svg" a
  • Network accessline 120
    <td align="center" width="25%"><a href="https://github.com/openai/codex" title="Codex"><picture><source media="(prefers-color-scheme: dark)" srcset="../assets/hosts/codex-mark-dark.png"><img src="../assets/hosts/codex-mark-light.png" alt="C
  • Network accessline 121
    </tr> <tr> <td align="center" width="25%"><a href="https://github.com/deepseek-ai/deepseek-harness"><picture><source media="(prefers-color-scheme: dark)" srcset="../assets/hosts/deepseek-wordmark-dark.svg"><img src="../assets/hosts/deepseek
  • Network accessline 122
    <tr> <td align="center" width="25%"><a href="https://github.com/deepseek-ai/deepseek-harness"><picture><source media="(prefers-color-scheme: dark)" srcset="../assets/hosts/deepseek-wordmark-dark.svg"><img src="../assets/hosts/deepseek-wordm
  • Network accessline 123
    <td align="center" width="25%"><a href="https://github.com/deepseek-ai/deepseek-harness"><picture><source media="(prefers-color-scheme: dark)" srcset="../assets/hosts/deepseek-wordmark-dark.svg"><img src="../assets/hosts/deepseek-wordmark-l
  • Network accessline 124
    <td align="center" width="25%"><a href="https://pi.dev/docs/latest/skills"><img src="../assets/hosts/pi-mark.svg" alt="Pi coding agent" height="46"></a></td>
  • Network accessline 125
    <td align="center" width="25%"><a href="https://docs.x.ai/build/features/skills-plugins-marketplaces"><picture><source media="(prefers-color-scheme: dark)" srcset="../assets/hosts/grok-build-mark-dark.png"><img src="../assets/hosts/grok-bui
  • Network accessline 126
    <td align="center" width="25%"><a href="https://opencode.ai/docs/skills"><picture><source media="(prefers-color-scheme: dark)" srcset="../assets/hosts/opencode-wordmark-dark.svg"><img src="../assets/hosts/opencode-wordmark-light.svg" alt="O
  • Network accessline 140
    <table> <tr> <td align="center" width="20%"><a href="https://x.ai"><picture><source media="(prefers-color-scheme: dark)" srcset="../assets/hosts/grok-build-mark-dark.png"><img src="../assets/hosts/grok-build-mark-light.png" alt="Grok Bot" h
  • Network accessline 141
    <tr> <td align="center" width="20%"><a href="https://x.ai"><picture><source media="(prefers-color-scheme: dark)" srcset="../assets/hosts/grok-build-mark-dark.png"><img src="../assets/hosts/grok-build-mark-light.png" alt="Grok Bot" height="4
  • Network accessline 142
    <td align="center" width="20%"><a href="https://x.ai"><picture><source media="(prefers-color-scheme: dark)" srcset="../assets/hosts/grok-build-mark-dark.png"><img src="../assets/hosts/grok-build-mark-light.png" alt="Grok Bot" height="46"></
  • Network accessline 143
    <td align="center" width="20%"><a href="https://www.meta.ai"><img src="../assets/hosts/meta-mark.svg" alt="Meta Muse" height="40"></a><br><b>Meta Muse</b><br><sub>画像交接 · 规划中</sub></td>
  • Network accessline 144
    <td align="center" width="20%"><a href="https://openai.com"><picture><source media="(prefers-color-scheme: dark)" srcset="../assets/hosts/openai-mark-dark.svg"><img src="../assets/hosts/openai-mark-light.svg" alt="OpenAI Dots" height="40"><
  • Network accessline 145
    <td align="center" width="20%"><a href="https://github.com/openclaw/openclaw"><picture><source media="(prefers-color-scheme: dark)" srcset="../assets/hosts/openclaw-wordmark-dark.svg"><img src="../assets/hosts/openclaw-wordmark-light.svg" a
  • Network accessline 146
    <td align="center" width="20%"><a href="https://github.com/NousResearch/hermes-agent"><img src="../assets/hosts/hermes-agent-wordmark.png" alt="Hermes Agent" height="32"></a><br><sub>原生 Skill</sub></td>
  • Network accessline 174
    > 从 `https://github.com/titanwings/distilly` 安装 Distilly,并确认当前宿主可以发现它。
  • Network accessline 183
    git clone https://github.com/titanwings/distilly <DISTILLY_SKILL_DIR>
  • Network accessline 216
    > 六维度 research:著作 · 访谈 · 决策 · 表达 DNA · 外部评价 · 时间线<br> > 案例出自社区作品 [alchaincyf/karpathy-skill](https://github.com/alchaincyf/karpathy-skill)
  • Network accessline 217
    > 案例出自社区作品 [alchaincyf/karpathy-skill](https://github.com/alchaincyf/karpathy-skill)
  • Network accessline 264
    📚 更多实战案例见 **[社区 Gallery](https://titanwings.github.io/colleague-skill-site/)**,已收录 100+ skill
  • Network accessline 312
    > **[COLLEAGUE.SKILL: Automated AI Skill Generation via Expert Knowledge Distillation](https://arxiv.org/pdf/2605.31264)** ([arXiv](https://arxiv.org/abs/2605.31264) · [arXiv PDF](https://arxiv.org/pdf/2605.31264))
  • Network accessline 328
    archivePrefix = {arXiv},   primaryClass = {cs.AI},   url          = {https://arxiv.org/abs/2605.31264}
  • Network accessline 329
    primaryClass = {cs.AI},   url          = {https://arxiv.org/abs/2605.31264} }
  • Network accessline 330
    url          = {https://arxiv.org/abs/2605.31264}
  • Network accessline 340
    <a href="https://star-history.dera.page/#titanwings/colleague-skill&type=date&legend=top-left">
  • Network accessline 341
    <picture>    <source media="(prefers-color-scheme: dark)" srcset="https://star-history.dera.page/svg?repos=titanwings%2Fdistilly&type=date&theme=dark&legend=top-left" />    <source media="(prefers-color-scheme: light)" srcset="https://star-
  • Network accessline 342
    <source media="(prefers-color-scheme: dark)" srcset="https://star-history.dera.page/svg?repos=titanwings%2Fdistilly&type=date&theme=dark&legend=top-left" />
  • Network accessline 343
    <source media="(prefers-color-scheme: light)" srcset="https://star-history.dera.page/svg?repos=titanwings%2Fdistilly&type=date&legend=top-left" />
  • Network accessline 344
    <img alt="Star History Chart" src="https://star-history.dera.page/svg?repos=titanwings%2Fdistilly&type=date&legend=top-left" />
  • Network accessline 352
    **MIT License** © [titanwings](https://github.com/titanwings)

package.json

  • Executable scriptline 1
    Executable file
  • Network accessline 35
    "repository": {     "type": "git",     "url": "git+https://github.com/titanwings/distilly.git"
  • Network accessline 36
    "type": "git",     "url": "git+https://github.com/titanwings/distilly.git"   },
  • Network accessline 37
    "url": "git+https://github.com/titanwings/distilly.git"
  • Network accessline 38
    },   "homepage": "https://github.com/titanwings/distilly#readme",   "bugs": {
  • Network accessline 39
    "homepage": "https://github.com/titanwings/distilly#readme",
  • Network accessline 40
    "bugs": {     "url": "https://github.com/titanwings/distilly/issues"   },
  • Network accessline 41
    "url": "https://github.com/titanwings/distilly/issues"
  • Network accessline 45
    },   "publishConfig": {     "registry": "https://npm.pkg.github.com"
  • Network accessline 46
    "publishConfig": {     "registry": "https://npm.pkg.github.com"   }
  • Network accessline 47
    "registry": "https://npm.pkg.github.com"

prompts/flows/celebrity_research.md

  • Access to secretsline 150
    [Credential-related source omitted]

prompts/flows/manage.md

  • Dangerous shell operationline 17
    rm -rf skills/{character}/{slug}

prompts/flows/sources.md

  • Access to secretsline 17
    [Credential-related source omitted]
  • Access to secretsline 19
    [Credential-related source omitted]
  • Access to secretsline 20
    [Credential-related source omitted]
  • Access to secretsline 65
    [Credential-related source omitted]
  • Access to secretsline 74
    [Credential-related source omitted]
  • Access to secretsline 76
    [Credential-related source omitted]
  • Network accessline 81
    - `im:message` — read/send messages as user    - `im:chat` — read chat list as user 3. **Redirect URL**: add `http://www.example.com` under the app's "Security Settings → Redirect URLs"
  • Network accessline 83
    3. **Redirect URL**: add `http://www.example.com` under the app's "Security Settings → Redirect URLs"
  • Access to secretsline 87
    [Credential-related source omitted]
  • Access to secretsline 91
    [Credential-related source omitted]
  • Network accessline 104
    POST https://open.feishu.cn/open-apis/im/v1/messages?receive_id_type=open_id
  • Access to secretsline 110
    [Credential-related source omitted]
  • Network accessline 112
    GET https://open.feishu.cn/open-apis/contact/v3/scopes
  • Access to secretsline 129
    [Credential-related source omitted]
  • Access to secretsline 147
    [Credential-related source omitted]

requirements-optional.txt

  • Access to secretsline 17
    [Credential-related source omitted]

tests/_paths.py

  • Executable scriptline 1
    Executable file

tests/e2e/owner_discovery/mock_mcp.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 9
    [Credential-related source omitted]

tests/e2e/owner_discovery/setup.sh

  • Executable scriptline 1
    #!/bin/bash
  • Dangerous shell operationline 5
    rm -rf "$T"; mkdir -p "$T/work" "$T/Downloads" "$T/.claude"
  • Dangerous shell operationline 14
    rm -f "$S/mcp_calls.log"

tests/e2e/owner_discovery/turn.sh

  • Executable scriptline 1
    #!/bin/bash

tests/test_cli_lifecycle.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 23
    [Credential-related source omitted]
  • Access to secretsline 106
    [Credential-related source omitted]
  • Network accessline 366
    "",                             "Sources:",                             "https://example.com/articles/long-form-profile",
  • Network accessline 367
    "Sources:",                             "https://example.com/articles/long-form-profile",                             "https://example.com/interviews/episode-42",
  • Network accessline 368
    "https://example.com/articles/long-form-profile",
  • Network accessline 369
    "https://example.com/interviews/episode-42",
  • Network accessline 517
    "- Strong focus on first-person essays\n"                         "- Repeats a skeptical framing\n"                         "https://example.com/essays/first-person-observation\n"
  • Network accessline 518
    "- Repeats a skeptical framing\n"                         "https://example.com/essays/first-person-observation\n"                         "primary source\n",
  • Network accessline 519
    "https://example.com/essays/first-person-observation\n"

tests/test_config_migration.py

  • Executable scriptline 1
    Executable file

tests/test_credentials.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 37
    [Credential-related source omitted]
  • Access to secretsline 45
    [Credential-related source omitted]
  • Access to secretsline 50
    [Credential-related source omitted]
  • Access to secretsline 76
    [Credential-related source omitted]
  • Access to secretsline 78
    [Credential-related source omitted]
  • Access to secretsline 82
    [Credential-related source omitted]
  • Access to secretsline 90
    [Credential-related source omitted]
  • Access to secretsline 91
    [Credential-related source omitted]
  • Network accessline 107
    def test_extract_oauth_code_accepts_callback_url(self) -> None:         self.assertEqual(             feishu_auto_collector.extract_oauth_code("http://www.example.com/?code=abc123&state=x"),
  • Network accessline 108
    self.assertEqual(             feishu_auto_collector.extract_oauth_code("http://www.example.com/?code=abc123&state=x"),             "abc123",
  • Network accessline 109
    feishu_auto_collector.extract_oauth_code("http://www.example.com/?code=abc123&state=x"),

tests/test_install_claude_generated_skill.py

  • Executable scriptline 1
    Executable file

tests/test_install_distilly.py

  • Executable scriptline 1
    Executable file

tests/test_install_generated_skill.py

  • Executable scriptline 1
    Executable file

tests/test_install_openclaw_and_codex.py

  • Executable scriptline 1
    Executable file

tests/test_owner_profile.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 138
    [Credential-related source omitted]
  • Access to secretsline 140
    [Credential-related source omitted]
  • Access to secretsline 141
    [Credential-related source omitted]
  • Access to secretsline 159
    [Credential-related source omitted]
  • Access to secretsline 175
    [Credential-related source omitted]

tests/test_owner_sources.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 51
    [Credential-related source omitted]
  • Access to secretsline 53
    [Credential-related source omitted]
  • Access to secretsline 54
    [Credential-related source omitted]
  • Access to secretsline 113
    [Credential-related source omitted]

tests/test_research_tools.py

  • Executable scriptline 1
    Executable file
  • Network accessline 50
    "# Note\n"                 "## Source Metadata\n"                 "- URL: https://example.com/a\n"
  • Network accessline 51
    "## Source Metadata\n"                 "- URL: https://example.com/a\n"                 "- Grounding level: primary\n"
  • Network accessline 52
    "- URL: https://example.com/a\n"
  • Network accessline 64
    "# Note\n"                 "## Source Metadata\n"                 "- URL: https://example.com/b\n"
  • Network accessline 65
    "## Source Metadata\n"                 "- URL: https://example.com/b\n"                 "- Grounding level: secondary\n"
  • Network accessline 66
    "- URL: https://example.com/b\n"
  • Network accessline 117
    Sources: https://example.com/articles/long-form-profile
  • Network accessline 118
    https://example.com/articles/long-form-profile
  • Network accessline 119
    https://example.com/interviews/episode-42
  • Network accessline 149
    Sources: https://www.iqiyi.com/
  • Network accessline 150
    https://www.iqiyi.com/
  • Network accessline 151
    https://space.bilibili.com/
  • Network accessline 152
    https://www.zhihu.com/topic/
  • Network accessline 178
    Sources: https://example.com/articles/long-form-profile
  • Network accessline 179
    https://example.com/articles/long-form-profile
  • Network accessline 180
    https://example.com/interviews/episode-42
  • Network accessline 181
    https://example.com/interviews/episode-43
  • Network accessline 182
    https://example.com/talks/keynote-2019
  • Network accessline 238
    Sources: https://example.com/articles/long-form-profile
  • Network accessline 239
    https://example.com/articles/long-form-profile
  • Network accessline 240
    https://example.com/interviews/episode-42
  • Network accessline 241
    https://example.com/interviews/episode-43
  • Network accessline 242
    https://example.com/talks/keynote-2019

tests/test_skill_entrypoint_docs.py

  • Executable scriptline 1
    Executable file
  • Network accessline 88
    self.assertIn("### 👤", quick_start, f"missing human path in {source}")         self.assertIn(             "git clone https://github.com/titanwings/distilly "
  • Network accessline 89
    self.assertIn(             "git clone https://github.com/titanwings/distilly "             "<DISTILLY_SKILL_DIR>",
  • Network accessline 90
    "git clone https://github.com/titanwings/distilly "
  • Network accessline 167
    self.assertNotIn("/dot-skill", readme)         self.assertNotIn("skills/dot-skill", readme)         self.assertIn("https://github.com/titanwings/distilly", readme)
  • Network accessline 168
    self.assertNotIn("skills/dot-skill", readme)         self.assertIn("https://github.com/titanwings/distilly", readme)         self.assertNotIn("https://github.com/titanwings/colleague-skill", readme)
  • Network accessline 169
    self.assertIn("https://github.com/titanwings/distilly", readme)
  • Network accessline 170
    self.assertNotIn("https://github.com/titanwings/colleague-skill", readme)
  • Network accessline 181
    self.assertNotIn("/dot-skill", install)         self.assertNotIn("skills/dot-skill", install)         self.assertIn("https://github.com/titanwings/distilly", install)
  • Network accessline 182
    self.assertNotIn("skills/dot-skill", install)         self.assertIn("https://github.com/titanwings/distilly", install)         self.assertNotIn("https://github.com/titanwings/colleague-skill", install)
  • Network accessline 183
    self.assertIn("https://github.com/titanwings/distilly", install)
  • Network accessline 184
    self.assertNotIn("https://github.com/titanwings/colleague-skill", install)
  • Network accessline 235
    self._assert_readme_quick_start(content, readme_path.name, "(../../INSTALL.md)")             self.assertIn(                 "https://github.com/titanwings/distilly",
  • Network accessline 236
    self.assertIn(                 "https://github.com/titanwings/distilly",                 content,
  • Network accessline 237
    "https://github.com/titanwings/distilly",
  • Network accessline 240
    )             self.assertNotIn(                 "https://github.com/titanwings/colleague-skill",
  • Network accessline 241
    self.assertNotIn(                 "https://github.com/titanwings/colleague-skill",                 content,
  • Network accessline 242
    "https://github.com/titanwings/colleague-skill",

tests/test_skill_writer.py

  • Executable scriptline 1
    Executable file

tests/test_translation_sync.py

  • Executable scriptline 1
    Executable file
  • Network accessline 84
    self.assertIn("(../../INSTALL_EN.md)", content)                 self.assertIn(                     "git clone https://github.com/titanwings/distilly <DISTILLY_SKILL_DIR>",
  • Network accessline 85
    self.assertIn(                     "git clone https://github.com/titanwings/distilly <DISTILLY_SKILL_DIR>",                     content,
  • Network accessline 86
    "git clone https://github.com/titanwings/distilly <DISTILLY_SKILL_DIR>",

tests/test_xquik_public_posts.py

  • Executable scriptline 1
    Executable file
  • Network accessline 70
    self.assertIsNotNone(post)         self.assertEqual(post["url"], "https://x.com/example_user/status/123")
  • Network accessline 71
    self.assertEqual(post["url"], "https://x.com/example_user/status/123")
  • Network accessline 105
    raw = sample_post()         raw["author"] = {}         raw["url"] = "https://example.com/example_user/status/123"
  • Network accessline 107
    raw["url"] = "https://example.com/example_user/status/123"
  • Access to secretsline 127
    [Credential-related source omitted]
  • Access to secretsline 150
    [Credential-related source omitted]
  • Access to secretsline 164
    [Credential-related source omitted]
  • Access to secretsline 174
    [Credential-related source omitted]
  • Access to secretsline 184
    [Credential-related source omitted]
  • Access to secretsline 197
    [Credential-related source omitted]

tools/credentials.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 5
    [Credential-related source omitted]
  • Access to secretsline 34
    [Credential-related source omitted]
  • Access to secretsline 40
    [Credential-related source omitted]
  • Access to secretsline 51
    [Credential-related source omitted]
  • Access to secretsline 99
    [Credential-related source omitted]

tools/dingtalk_auto_collector.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 52
    CONFIG_PATH = Path.home() / ".distilly" / "dingtalk_config.json" LEGACY_CONFIG_PATH = Path.home() / ".colleague-skill" / "dingtalk_config.json" API_BASE = "https://api.dingtalk.com"
  • Network accessline 54
    API_BASE = "https://api.dingtalk.com"
  • Network accessline 73
    def setup_config() -> None:     print("=== 钉钉自动采集配置 ===\n")     print("请前往 https://open-dev.dingtalk.com 创建企业内部应用,开通以下权限:\n")
  • Network accessline 74
    print("=== 钉钉自动采集配置 ===\n")     print("请前往 https://open-dev.dingtalk.com 创建企业内部应用,开通以下权限:\n")     print("  通讯录类:")
  • Network accessline 75
    print("请前往 https://open-dev.dingtalk.com 创建企业内部应用,开通以下权限:\n")
  • Access to secretsline 107
    [Credential-related source omitted]
  • Access to secretsline 108
    [Credential-related source omitted]
  • Network accessline 113
    resp = requests.post(
  • Network accessline 130
    [Credential-related source omitted]
  • Network accessline 131
    [Credential-related source omitted]
  • Access to secretsline 131
    [Credential-related source omitted]
  • Network accessline 132
    resp = requests.get(
  • Network accessline 141
    [Credential-related source omitted]
  • Network accessline 142
    [Credential-related source omitted]
  • Access to secretsline 142
    [Credential-related source omitted]
  • Network accessline 143
    resp = requests.post(
  • Network accessline 322
    if dl_url:         try:             resp = requests.get(dl_url, timeout=15)
  • Network accessline 323
    try:             resp = requests.get(dl_url, timeout=15)             return resp.text
  • Network accessline 324
    resp = requests.get(dl_url, timeout=15)
  • Access to secretsline 503
    [Credential-related source omitted]
  • Network accessline 544
    page.goto("https://im.dingtalk.com", wait_until="domcontentloaded", timeout=20000)

tools/email_parser.py

  • Executable scriptline 1
    #!/usr/bin/env python3

tools/feishu_auto_collector.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 8
    [Credential-related source omitted]
  • Access to secretsline 19
    [Credential-related source omitted]
  • Access to secretsline 41
    [Credential-related source omitted]
  • Network accessline 67
    CONFIG_PATH = Path.home() / ".distilly" / "feishu_config.json" LEGACY_CONFIG_PATH = Path.home() / ".colleague-skill" / "feishu_config.json" BASE_URL = "https://open.feishu.cn/open-apis"
  • Network accessline 69
    BASE_URL = "https://open.feishu.cn/open-apis"
  • Network accessline 88
    def setup_config() -> None:     print("=== 飞书自动采集配置 ===\n")     print("请前往 https://open.feishu.cn 创建企业自建应用,开通以下权限:")
  • Network accessline 89
    print("=== 飞书自动采集配置 ===\n")     print("请前往 https://open.feishu.cn 创建企业自建应用,开通以下权限:")     print()
  • Network accessline 90
    print("请前往 https://open.feishu.cn 创建企业自建应用,开通以下权限:")
  • Network accessline 114
    [Credential-related source omitted]
  • Access to secretsline 114
    [Credential-related source omitted]
  • Network accessline 115
    print("  获取方式:OAuth 授权,授权链接格式:")     print("    https://open.feishu.cn/open-apis/authen/v1/authorize?app_id={APP_ID}&redirect_uri={REDIRECT}&scope=im:message%20im:chat")     print("  配置完 App ID / Secret 后,在本终端运行 --login 完成授权。")
  • Network accessline 116
    print("    https://open.feishu.cn/open-apis/authen/v1/authorize?app_id={APP_ID}&redirect_uri={REDIRECT}&scope=im:message%20im:chat")
  • Access to secretsline 141
    [Credential-related source omitted]
  • Network accessline 146
    resp = requests.post(
  • Access to secretsline 147
    [Credential-related source omitted]
  • Access to secretsline 156
    [Credential-related source omitted]
  • Access to secretsline 163
    [Credential-related source omitted]
  • Access to secretsline 164
    [Credential-related source omitted]
  • Network accessline 165
    [Credential-related source omitted]
  • Network accessline 166
    [Credential-related source omitted]
  • Network accessline 167
    resp = requests.get(
  • Access to secretsline 177
    [Credential-related source omitted]
  • Access to secretsline 178
    [Credential-related source omitted]
  • Network accessline 179
    [Credential-related source omitted]
  • Network accessline 180
    [Credential-related source omitted]
  • Network accessline 181
    resp = requests.post(
  • Network accessline 190
    OAUTH_REDIRECT_URI = "http://www.example.com"
  • Access to secretsline 219
    [Credential-related source omitted]
  • Access to secretsline 245
    [Credential-related source omitted]
  • Access to secretsline 249
    [Credential-related source omitted]
  • Network accessline 253
    [Credential-related source omitted]
  • Network accessline 254
    [Credential-related source omitted]
  • Network accessline 255
    resp = requests.post(
  • Access to secretsline 256
    [Credential-related source omitted]
  • Access to secretsline 267
    [Credential-related source omitted]
  • Access to secretsline 273
    [Credential-related source omitted]
  • Network accessline 274
    [Credential-related source omitted]
  • Network accessline 275
    resp = requests.post(
  • Access to secretsline 276
    [Credential-related source omitted]
  • Access to secretsline 291
    [Credential-related source omitted]
  • Access to secretsline 329
    [Credential-related source omitted]
  • Access to secretsline 583
    [Credential-related source omitted]
  • Access to secretsline 669
    [Credential-related source omitted]
  • Access to secretsline 671
    [Credential-related source omitted]
  • Access to secretsline 682
    [Credential-related source omitted]
  • Access to secretsline 685
    [Credential-related source omitted]
  • Access to secretsline 707
    [Credential-related source omitted]
  • Access to secretsline 987
    [Credential-related source omitted]
  • Access to secretsline 988
    [Credential-related source omitted]
  • Access to secretsline 1000
    [Credential-related source omitted]
  • Access to secretsline 1024
    [Credential-related source omitted]

tools/feishu_browser.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 17
    用法:   python3 feishu_browser.py --url "https://xxx.feishu.cn/wiki/xxx" --output out.txt
  • Network accessline 18
    python3 feishu_browser.py --url "https://xxx.feishu.cn/wiki/xxx" --output out.txt
  • Network accessline 19
    python3 feishu_browser.py --url "https://xxx.feishu.cn/docx/xxx" --output out.txt
  • Network accessline 20
    python3 feishu_browser.py --chat "后端组" --target "张三" --limit 500 --output out.txt   python3 feishu_browser.py --url "https://xxx.feishu.cn/sheets/xxx" --output out.csv """
  • Network accessline 21
    python3 feishu_browser.py --url "https://xxx.feishu.cn/sheets/xxx" --output out.csv
  • Access to secretsline 43
    [Credential-related source omitted]
  • Network accessline 187
    page.goto("https://applink.feishu.cn/client/chat/open", wait_until="domcontentloaded", timeout=20000)
  • Network accessline 331
    page.goto("https://www.feishu.cn", wait_until="domcontentloaded", timeout=15000)

tools/feishu_mcp_client.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 25
    [Credential-related source omitted]
  • Network accessline 28
    # 读取文档   python3 feishu_mcp_client.py --url "https://xxx.feishu.cn/wiki/xxx" --output out.txt
  • Network accessline 29
    python3 feishu_mcp_client.py --url "https://xxx.feishu.cn/wiki/xxx" --output out.txt
  • Access to secretsline 109
    [Credential-related source omitted]
  • Access to secretsline 111
    [Credential-related source omitted]
  • Access to secretsline 113
    [Credential-related source omitted]
  • Access to secretsline 114
    [Credential-related source omitted]
  • Access to secretsline 116
    [Credential-related source omitted]

tools/feishu_parser.py

  • Executable scriptline 1
    #!/usr/bin/env python3

tools/hosts.py

  • Executable scriptline 1
    Executable file
  • Access to secretsline 26
    [Credential-related source omitted]

tools/install_claude_generated_skill.py

  • Executable scriptline 1
    #!/usr/bin/env python3

tools/install_distilly.py

  • Executable scriptline 1
    #!/usr/bin/env python3

tools/install_generated_skill.py

  • Executable scriptline 1
    #!/usr/bin/env python3

tools/install_generated_skill_common.py

  • Executable scriptline 1
    #!/usr/bin/env python3

tools/owner_profile.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 47
    [Credential-related source omitted]
  • Access to secretsline 52
    [Credential-related source omitted]
  • Access to secretsline 55
    [Credential-related source omitted]

tools/owner_sources.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 136
    [Credential-related source omitted]
  • Access to secretsline 140
    [Credential-related source omitted]
  • Access to secretsline 143
    [Credential-related source omitted]

tools/research/__init__.py

  • Executable scriptline 1
    Executable file

tools/research/download_subtitles.sh

  • Executable scriptline 1
    #!/usr/bin/env bash

tools/research/merge_research.py

  • Executable scriptline 1
    #!/usr/bin/env python3

tools/research/quality_check.py

  • Executable scriptline 1
    #!/usr/bin/env python3

tools/research/srt_to_transcript.py

  • Executable scriptline 1
    #!/usr/bin/env python3

tools/research/transcribe_audio.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 17
    [Credential-related source omitted]
  • Network accessline 19
    Usage:   # Transcribe a video/podcast URL (auto-downloads audio via yt-dlp)   python3 tools/research/transcribe_audio.py --url "https://..." --output /tmp/out.txt
  • Network accessline 21
    python3 tools/research/transcribe_audio.py --url "https://..." --output /tmp/out.txt
  • Access to secretsline 145
    [Credential-related source omitted]
  • Access to secretsline 146
    [Credential-related source omitted]
  • Access to secretsline 163
    [Credential-related source omitted]
  • Access to secretsline 223
    [Credential-related source omitted]

tools/research/xquik_public_posts.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 18
    API_URL = "https://xquik.com/api/v1/x/tweets/search"
  • Access to secretsline 20
    [Credential-related source omitted]
  • Network accessline 43
    try:         return requests.get(url, **kwargs)
  • Network accessline 44
    return requests.get(url, **kwargs)
  • Possible obfuscationline 78
    cleaned = re.sub(r"[\x00-\x08\x0b\x0c\x0e-\x1f\x7f]", "", value).strip()
  • Network accessline 91
    username = author.get("username") if isinstance(author, dict) else None     if isinstance(username, str) and USERNAME_PATTERN.fullmatch(username):         return f"https://x.com/{username}/status/{tweet_id}"
  • Network accessline 93
    return f"https://x.com/{username}/status/{tweet_id}"
  • Network accessline 103
    if match.group(2) != tweet_id:         return None     return f"https://x.com/{match.group(1)}/status/{tweet_id}"
  • Network accessline 105
    return f"https://x.com/{match.group(1)}/status/{tweet_id}"
  • Possible obfuscationline 140
    r"[\x00-\x08\x0b\x0c\x0e-\x1f\x7f]",
  • Access to secretsline 189
    [Credential-related source omitted]
  • Access to secretsline 202
    [Credential-related source omitted]
  • Access to secretsline 216
    [Credential-related source omitted]
  • Access to secretsline 239
    [Credential-related source omitted]
  • Access to secretsline 248
    [Credential-related source omitted]
  • Access to secretsline 249
    [Credential-related source omitted]
  • Access to secretsline 253
    [Credential-related source omitted]
  • Access to secretsline 388
    [Credential-related source omitted]

tools/skill_presets.py

  • Executable scriptline 1
    #!/usr/bin/env python3

tools/skill_schema.py

  • Executable scriptline 1
    #!/usr/bin/env python3

tools/skill_writer.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Access to secretsline 604
    [Credential-related source omitted]
  • Access to secretsline 606
    [Credential-related source omitted]

tools/slack_auto_collector.py

  • Executable scriptline 1
    #!/usr/bin/env python3
  • Network accessline 114
    def setup_config() -> None:     print("=== Slack 自动采集配置 ===\n")     print("步骤 1:前往 https://api.slack.com/apps 创建新 App")
  • Network accessline 115
    print("=== Slack 自动采集配置 ===\n")     print("步骤 1:前往 https://api.slack.com/apps 创建新 App")     print("        选择「From scratch」→ 填写 App Name → 选择目标 Workspace\n")
  • Network accessline 116
    print("步骤 1:前往 https://api.slack.com/apps 创建新 App")
  • Network accessline 198
    raise SlackScopeError(                         f"Bot Token 缺少权限 scope:{missing}\n"                         f"  请前往 https://api.slack.com/apps → OAuth & Permissions → Bot Token Scopes 添加"
  • Network accessline 199
    f"Bot Token 缺少权限 scope:{missing}\n"                         f"  请前往 https://api.slack.com/apps → OAuth & Permissions → Bot Token Scopes 添加"                     ) from e
  • Network accessline 200
    f"  请前往 https://api.slack.com/apps → OAuth & Permissions → Bot Token Scopes 添加"

tools/version_manager.py

  • Executable scriptline 1
    #!/usr/bin/env python3

How the signals fit together

Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

Some files could not be read; the facts below still hold.

Declared and executed: 9 facts
Signal confidence: 481 facts

and 431 more

Works with

Agent compatibility, from the files in this repository
AgentStatusEvidenceInstall to
Claude CodeNativeFrontmatter field user-invocable in SKILL.md.claude/skills/<skill-name>/
CodexCompatibleStandard SKILL.md SKILL.md.agents/skills/<skill-name>/
CursorCompatibleStandard SKILL.md SKILL.md.cursor/skills/<skill-name>/
Gemini CLICompatibleStandard SKILL.md SKILL.md.gemini/skills/<skill-name>/
GitHub CopilotCompatibleStandard SKILL.md SKILL.md.github/skills/<skill-name>/
OpenCodeCompatibleStandard SKILL.md SKILL.md.opencode/skills/<skill-name>/
  • Native The repository ships a manifest, folder or frontmatter field for this agent.
  • Compatible A standard SKILL.md that this agent can read.
  • Unknown No evidence either way.

Derived automatically from paths, manifests and frontmatter. Not tested on each agent.

Explore alternatives and comparisons

Add this badge to your README

It updates every night and links to this page.

titanwings/distilly: #79 on hotskills, 26.4k stars

[![titanwings/distilly on hotskills](https://hotskills.dev/badge/titanwings-distilly.svg)](https://hotskills.dev/skill/titanwings-distilly/)