LobsterGraph:企业级飞书桌面智能体设计方案
最近不是moltbot项目大火吗,业务部门也跟风,给我们提了一个类似的需求,我们结合目前公司的实际情况写了一个方案。

1. 项目愿景 (Executive Summary)
本项目旨在构建一个驻留在办公电脑里的数字员工。即使你身处异地(Machine A),只需通过飞书发送自然语言指令,办公室内网电脑(Machine B)上的智能体就会自动唤醒,代替人工完成操作(如查数据、跑代码、发文件),并将结果实时回传到你的手机或电脑上。
核心价值:
- 零内网穿透: 利用飞书官方长连接技术,无需申请公网 IP,无需配置防火墙,内网机器即插即用。
- 安全可控: 只有授权员工(白名单)可指挥,敏感操作需飞书卡片二次确认。
- 能力无限: 基于“技能插件”架构,今天学会重启服务,明天就能学会自动报税,开发成本极低。
2. 业务场景演练 (User Stories)
场景一:远程运维与调试
现状: 开发人员小王在家办公,需要查看公司内网测试机(Machine B)的报错日志。通常需要 VPN + 远程桌面,卡顿且繁琐。
Lobster 方案:
- 小王在飞书对机器人说:“查一下 B 机服务为什么挂了,把最后 50 行 Error Log 发给我。”
- Machine B 上的智能体自动执行 tail -n 50 error.log。
- 智能体分析日志,回复:“发现数据库连接超时”,并将日志文件发送到飞书聊天窗。
场景二:自动化业务报表
现状: 财务需要在内网 ERP 系统导出数据,手动整理 Excel 发给老板。
Lobster 方案:
- 财务在飞书说:“生成本周销售报表。”
- 智能体调用 Python 脚本从数据库拉取数据,生成 Excel,生成图表。
- 智能体通过飞书发送 Excel 文件,并附带一张“销售趋势图”的图片。

3. 系统技术架构 (System Architecture)
我们要构建的是一个 “单机自治 (Standalone)” 架构。机器 B 既是执行者(Hand),也是思考者(Brain)。
3.1 拓扑结构图

3.2 关键技术栈
通信层: lark-oapi (WebSocket Mode) – 解决内网穿透问题。
大脑层: LangGraph + LangChain – 负责任务拆解、工具路由。
模型层: OpenAI / Claude / DeepSeek (通过 API 调用)。
定义层: Markdown + YAML – 定义技能契约。

4. 详细设计与实现 (Implementation Details)
4.1 项目目录结构 (Standard Structure)
为了支持业务人员和开发人员协作,采用“文档即代码”的结构。
Lobster/
├── core/
│ ├── bot.py # 飞书 WS 监听入口 (Main Loop)
│ ├── graph.py # LangGraph 状态机 (The Brain)
│ ├── registry.py # 技能索引构建 (The Librarian)
│ └── loader.py # 技能动态加载器 (The Builder)
│
├── skills/ # 技能插件目录 (可无限扩展)
│ ├── system_ops/
│ │ ├── screen_capture/
│ │ │ ├── skill.md # 技能说明书 (给LLM看)
│ │ │ └── implementation.py # Python代码 (给机器跑)
│ │ └── …
│ └── office_ops/
│ └── …
│
└── main.py # 启动脚本
4.2 技能定义协议 (Skill Protocol)
每个技能由 skill.md 定义,包含 元数据 (YAML) 和 使用说明 (Markdown)。
**文件: skills/system_ops/screen_capture/skill.md**
—
name: “screen_capture” # 函数名
description: “截取当前电脑屏幕” # 简短描述 (用于路由)
os: [“windows”, “linux”] # 兼容性白名单
permissions: [“admin”] # 权限等级
—
# Screen Capture
## 用途
当用户询问“电脑现在在运行什么”或“截个图”时调用。
## 参数
| 参数名 | 类型 | 必填 | 默认值 | 描述 |
| :–
– | :–
– | :–
– | :–
– | :–
– |
| `save_
path` | string | No | `tmp.png` | 图片保存路径 |
## 示例
User: “看看屏幕”
Call: {“save_path”: “desktop.png”}

4.3 核心工作流 (Workflow Logic)
- 初始化 (Startup):
registry.py 扫描 skills/ 文件夹,只读取 .md 头部信息,建立轻量级索引。
监听 (Listening):
bot.py 通过 WebSocket 收到 Machine A 发来的消息:”把 D 盘日志发我”。
路由 (Routing):
LangGraph 根据用户指令,在索引中检索,发现 file_transfer 技能最匹配。
加载 (Hydration):
loader.py 此时才去读取该技能的完整 Markdown 和 Python 代码,动态注入 LLM 上下文。
执行 (Execution):
智能体执行 Python 函数,读取文件。
响应 (Response):
调用飞书 API 将文件上传并发送给 User。
5. 安全与权限设计 (Security)
由于智能体运行在内网核心机器上,安全是第一要素。
5.1 身份白名单 (Identity Allowlist)
在 core/bot.py 中强制校验发送者的 OpenID。
ALLOWED_USERS = [“ou_287318…”, “ou_99812…”]
def on_message(data):
if data.sender_id not in ALLOWED_USERS:
return send_reply(” 非法入侵:您的身份未授权!”)
5.2 敏感操作二次确认 (Human-in-the-loop)
对于删除文件、重启系统、发送邮件等高危操作,智能体禁止直接执行。必须发送飞书交互卡片,等待用户点击“批准”。
交互流程:
- 用户: “重启服务器”
- Bot: 发送卡片 [⚠️ 危险操作确认: 重启] [ 确认重启] [⚪ 取消]
- 用户: 点击 [ 确认重启]
- Bot: 收到回调事件 -> 执行 reboot。

6. 项目路线图 (Roadmap)
阶段一 (MVP):
完成飞书 WebSocket 对接。
实现基础技能:CMD 命令执行、文件读取、屏幕截图。
交付物: 能通过飞书聊天的内网机器人。
阶段二 (Office 增强):
接入飞书日历、多维表格 API。
实现“Lazy Loading”按需加载架构,支持 50+ 技能。
交付物: 具备办公能力的数字员工。
阶段三 (生态化):
开放 skills 目录规范,允许业务部门自行编写 .md 和 .py 扩展能力。
交付物: 企业内部的智能体应用商店。
本文由 @天涯轩 原创发布于人人都是产品经理。未经作者许可,禁止转载
题图来自Unsplash,基于CC0协议
- 目前还没评论,等你发挥!

起点课堂会员权益




