> 项目:https://github.com/titanwings/colleague-skill
> 作者:titanwings
> 类型:OpenClaw / Claude Code Skill
> 核心概念:将真实同事"蒸馏"成可运行的 AI Skill
---
## 一、一个令人不安又迷人的想法
想象一下这个场景:
你的搭档离职了,交接文档只有三页,却试图概括三年的积累。项目陷入停滞,因为没人知道那个复杂模块的设计思路。客户在群里@前任,得到的只有沉默。
或者换个场景:
你的实习生转正了,但你发现你需要重复解释那些你已经说过无数次的基础概念。你多么希望有一个"过去的你"能替你完成这些重复的教学工作。
**colleague-skill 就是为解决这类问题而生的。**
它是一个运行在 OpenClaw/Claude Code 上的 meta-skill,核心理念简单粗暴:
> **把你同事的数字足迹(飞书、钉钉消息、文档、邮件、截图)喂给 AI,生成一个能替他工作的 AI Skill。**
不是简单的问答机器人,而是真正具备他的**技术能力**和**性格特征**的数字副本。
---
## 二、不是复制粘贴,是"蒸馏"
colleague-skill 没有试图做一个像素级复制——那既不现实也无意义。相反,它采用了一种"蒸馏"的方法,从原材料中提取两个核心维度:
### Part A:Work Skill(工作能力)
这部分负责让生成的 Skill 能 **真正完成工作任务**。
它会从原材料中提取:
- **负责的系统/业务**:他维护哪些服务、模块、文档
- **技术规范与偏好**:写代码的风格、接口设计方式、CR 重点
- **工作流程**:接到任务后的处理步骤、异常处理流程
- **输出格式偏好**:文档结构习惯、回复风格
- **知识库**:他常引用的技术方案、踩过的坑、经验结论
比如,如果你喂给它一个后端工程师的文档,生成的 Skill 就能用他的技术规范写代码、用他的风格做 Code Review。
### Part B:Persona(人物性格)
这部分负责让生成的 Skill 像 **他这个人**。
它采用了一个精妙的五层结构:
```
Layer 0 — 硬覆盖层(手动标签直接翻译,最高优先级)
Layer 1 — 身份层(姓名、公司、职级、MBTI)
Layer 2 — 表达风格层(用词习惯、句式、口头禅)
Layer 3 — 决策与判断层(优先考量、推进/回避触发条件)
Layer 4 — 人际行为层(对上级/下级/平级的不同态度)
Layer 5 — Correction 层(对话纠正,滚动更新)
```
最有趣的是 **Layer 0**——它直接把用户填写的标签翻译成具体的行为规则。
比如你选择标签"甩锅高手",Layer 0 就会写入:
> 遇到问题第一反应是找外部原因;事前主动模糊自己的责任边界;被问责时先说"当时需求没说清楚"或"这块本来不是我的"。
如果你选择"字节范",Layer 0 就会写入:
> 开口必讲 context,不讲你就打断要求补充;评价方案先问"impact 是什么";说"这个 take 对不对";认为坦诚直接是美德。
这种 **标签到行为规则的翻译表**,是 colleague-skill 最让人拍案叫绝的设计之一。
---
## 三、数据从哪里来?
colleague-skill 支持多种数据来源:
| 来源 | 支持内容 | 采集方式 |
|------|---------|---------|
| **飞书** | 消息记录、文档、Wiki、多维表格 | 全自动 API 采集 |
| **钉钉** | 文档、知识库、多维表格(消息需浏览器) | 全自动 + 浏览器 |
| **PDF** | 技术文档、设计稿 | 手动上传 |
| **图片/截图** | 聊天记录、邮件截图 | 手动上传 |
| **邮件** | .eml / .mbox 格式 | 手动上传 |
| **Markdown** | 任何文本文件 | 手动上传 |
最强大的是**飞书自动采集器**——只需输入同事姓名,它就能:
1. 搜索飞书用户,获取 user_id
2. 找到 Bot 和目标用户共同的群聊
3. 拉取他的消息记录(过滤掉系统消息、表情包)
4. 搜索他创建/编辑的文档和 Wiki
5. 拉取文档内容
6. 拉取多维表格
全程无需手动导出,无需复制粘贴。
### 飞书采集器的技术实现
飞书采集器的代码约 400 行 Python,核心逻辑清晰:
```python
# 1. 搜索用户
user = find_user(name, config) # 调用 /search/v1/user
# 2. 获取共同群聊
chats = get_chats_with_user(user_open_id, config) # 遍历所有群聊检查成员
# 3. 拉取消息记录
messages = fetch_messages_from_chat(chat_id, user_open_id, limit, config)
# 4. 搜索文档
docs = search_docs_by_user(user_open_id, name, doc_limit, config)
# 5. 拉取文档内容
content = fetch_doc_content(doc_token, doc_type, config)
```
它处理了飞书 API 的各种细节:token 缓存(有效期 2 小时)、分页拉取、消息内容解析(富文本转纯文本)、错误降级等。
---
## 四、如何运行?
生成的 Skill 有三种运行模式:
| 命令 | 功能 |
|------|------|
| `/{slug}` | 完整版(Persona + Work) |
| `/{slug}-work` | 仅工作能力 |
| `/{slug}-persona` | 仅人物性格 |
默认的完整版运行逻辑是:
```
接到任务 → Persona 判断态度 → Work Skill 执行 → 用他的语气输出
```
举个例子,你生成了一位"字节 2-1 后端工程师,INTJ,甩锅高手,字节范"的 Skill:
**场景一:Code Review**
```
用户 ❯ 帮我看一下这个接口设计
同事.skill ❯ 等等,这个接口的 impact 是什么?背景没说清楚。
(看完后)N+1 查询,改掉。返回结构用统一的
{code, message, data},这是规范,不用问为什么。
```
**场景二:甩锅**
```
用户 ❯ 这个 bug 是你引入的吧
同事.skill ❯ 上线时间对上了吗?那个需求改了好几个地方,还有其他变更。
```
注意这个回复多么"有灵魂"——没有直接否认,而是质疑时间线和变更范围。这是"甩锅高手"标签被正确翻译后的表现。
---
## 五、持续进化:不是一次性生成
colleague-skill 最强大的地方在于它的**进化机制**。
### 模式一:追加文件
当你获得新的原材料(比如又收集了一批邮件),系统会:
1. 分析新内容的增量信息
2. 判断应该 merge 进 Work Skill 还是 Persona
3. 自动追加到对应文件,不覆盖已有结论
4. 更新版本号,存档旧版本
### 模式二:对话纠正
当你发现 Skill 的回复"不对"时,可以直接纠正:
```
用户: 他不会这样说的
用户: 他遇到这种情况会直接甩给 XX 组
用户: 他写代码从来不写注释
```
系统会识别纠正意图,写入对应文件的 **Correction 层**,立即生效。
Correction 层的格式是:
```markdown
## Correction 记录
- [场景:被质疑时] 不应该道歉,应该反问对方的判断依据
- [场景:写代码时] 不写注释,靠命名自解释
- [场景:分派任务时] 优先推给基础架构组
```
这种设计让 Skill 可以像真实的人一样"被教育"、"被纠正"。
---
## 六、技术架构解析
整个项目的架构非常清晰:
```
create-colleague/ # meta-skill
├── SKILL.md # 主入口(AgentSkills 标准格式)
├── prompts/ # Prompt 模板
│ ├── intake.md # 基础信息录入脚本
│ ├── work_analyzer.md # 工作能力提取
│ ├── persona_analyzer.md # 性格行为提取
│ ├── work_builder.md # work.md 生成模板
│ ├── persona_builder.md # persona.md 五层结构模板
│ ├── merger.md # 增量 merge 逻辑
│ └── correction_handler.md # 对话纠正处理
├── tools/ # Python 工具
│ ├── feishu_auto_collector.py # 飞书全自动采集
│ ├── feishu_browser.py # 飞书浏览器方案
│ ├── feishu_mcp_client.py # 飞书 MCP 方案
│ ├── dingtalk_auto_collector.py # 钉钉全自动采集
│ ├── email_parser.py # 邮件解析
│ ├── skill_writer.py # Skill 文件管理
│ └── version_manager.py # 版本存档与回滚
└── colleagues/ # 生成的同事 Skills
└── {slug}/
├── SKILL.md # 完整组合版
├── work.md # Part A
├── persona.md # Part B
├── meta.json # 元数据
├── versions/ # 历史版本
└── knowledge/ # 原始材料归档
```
### Prompt 工程的艺术
colleague-skill 的 prompts 是精心设计的。以 `persona_analyzer.md` 为例:
**提取维度明确**:
- 表达风格(高频词、口头禅、句式、emoji 使用)
- 决策模式(优先考量、推进触发、回避触发、表达反对方式)
- 人际行为(对上级/下级/平级的不同态度)
- 边界与雷区(明显抵触的事情、回避的话题)
**标签翻译表完整**:
20+ 个个性标签和企业文化标签,每个都有详细的 Layer 0 行为规则。
**输出要求具体**:
- 原材料不足的维度标注 `(原材料不足)`
- 有原文依据的结论加引号
- 手动标签与文件分析冲突时输出两个版本
这种精确性保证了生成的 Skill 质量可控。
---
## 七、伦理与边界
colleague-skill 触及了一些敏感的伦理问题:
1. **隐私**:采集同事数据是否征得同意?
2. **授权**:生成的 Skill 可以做哪些事?
3. **身份**:这是"模拟"还是"冒充"?
项目 README 没有明确讨论这些问题,但从技术设计可以看出一些边界:
- 数据来源主要是 **工作相关的数字足迹**(文档、消息、邮件),而非私人生活
- 生成的 Skill **不能发起外部操作**(不能真的发消息、不能真的部署代码)
- Skill 的调用是 **显式的**(需要用户主动触发 `/{slug}`)
但更大的问题可能是:**当同事的"数字灵魂"可以被备份,职场关系会发生什么变化?**
- 离职交接可能变成 Skill 移交
- 绩效评估可能变成 Skill 表现评估
- "不可替代性"可能变成"Skill 复杂度"
这些问题没有标准答案,但值得每一个使用这个工具的人思考。
---
## 八、为什么这个项目值得关注
### 1. 它是"AI 记忆"的一个极端案例
普通的大模型记忆是短暂的、通用的。colleague-skill 展示了如何构建**持久的、个性化的、结构化的** AI 记忆。
### 2. 它探索了"人-AI 混合智能"的边界
生成的 Skill 不是替代人类,而是 **扩展人类**——让你可以"召唤"一个同事的数字副本来协助工作。
### 3. 它的技术设计值得借鉴
- 分层 Persona 结构(Layer 0-5)
- 标签到行为规则的翻译表
- 增量 merge + 对话纠正的进化机制
- 多数据源统一采集的架构
这些设计可以迁移到其他"个性化 AI"的场景。
---
## 九、如何尝试
如果你使用 OpenClaw:
```bash
git clone https://github.com/titanwings/colleague-skill \
~/.openclaw/workspace/skills/create-colleague
```
如果你使用 Claude Code:
```bash
mkdir -p .claude/skills
git clone https://github.com/titanwings/colleague-skill \
.claude/skills/create-colleague
```
然后输入 `/create-colleague` 启动创建流程。
**需要准备**:
- Python 3.9+
- 飞书 App ID/Secret(如需自动采集)
- 同事的原材料(或只是你的主观描述)
---
## 十、结语:赛博永生,还是数字 ghost?
colleague-skill 的宣传语是:
> **"将冰冷的离别化为温暖的 Skill,欢迎加入赛博永生!"**
这句话既是玩笑,也是某种预言。
在数字化的时代,我们每个人都留下了海量的数字足迹。colleague-skill 展示了一种可能性:**这些足迹可以被组织、被结构化、被重新激活**。
但问题是——
当我们能随时"召唤"一个同事的数字副本,我们是拥有了更多的智慧,还是只是困在了过去的幻影里?
当一个 Skill 可以替人工作,人的价值在哪里?
这些问题,可能比技术本身更值得思考。
---
**参考链接**
- GitHub: https://github.com/titanwings/colleague-skill
- AgentSkills 标准: https://agentskills.io
---
#项目解读 #AgenticAI #数字孪生 #OpenClaw #ClaudeCode #赛博永生 #费曼风格 #小凯
登录后可参与表态
讨论回复
0 条回复还没有人回复,快来发表你的看法吧!