Feishu-CLI-Web:私有化部署飞书Web智能工作台,自然语言操控飞书全能力

文章摘要

Feishu-CLI-Web基于官方lark-cli封装,将飞书CLI转为可私有化部署的Web智能工作台,支持自然语言交互、执行计划预览、写操作确认、多用户隔离与SQLite本地存储,适合团队快速将飞书自动化接入Agent、内部工具与运维平台。本文完整介绍项目功能、部署、配置、维护与常见问题,可直接照着部署使用。

项目地址: https://github.com/jingsongliujing/Feishu-CLI-Web

一、项目介绍

1.1 项目是什么

Feishu-CLI-Web把飞书/Lark CLI变成私有化Web智能工作台,在官方CLI基础上提供友好Web工作流,零命令记忆、可视化操作、多人独立使用、数据本地留存。

1.2 解决的痛点

  • 不用记CLI命令与参数
  • 执行前预览计划,避免误操作
  • 写操作必须二次确认,更安全
  • 多用户独立授权、数据隔离
  • 聊天/执行/账号信息统一存SQLite
  • 内置场景模板,沉淀团队流程
  • 一次部署,多人使用

1.3 典型场景示例

帮我和 刘鑫 在 明天 找一个 1小时 的空闲时间,创建主题为「项目复盘」的会议,并把会议链接发给他

系统生成执行计划:

  1. 搜索联系人 刘鑫
  2. 查询明天共同空闲时间
  3. 创建「项目复盘」会议
  4. 邀请参会人
  5. 发送会议链接
    确认后才执行飞书写操作。

二、功能亮点

  • ✅ 自然语言操作飞书:发消息、建会议、查日程、创建文档、多维表格等
  • ✅ 执行计划预览:先看要做什么,再决定是否执行
  • ✅ 场景模板:群通知、会议、文档、多维表格、会议纪要等
  • ✅ 多用户隔离:独立CLI HOME、授权、会话数据
  • ✅ SQLite存储:单文件数据库,无需额外服务
  • ✅ 兼容多模型:Qwen、OpenAI、GLM、豆包等OpenAI兼容接口
  • ✅ Docker一键部署:docker compose快速上线
  • ✅ 响应超快:专注飞书CLI能力的轻量Agent

三、支持的飞书能力清单

模块 支持能力

IM 用户/群搜索、发消息、群消息读取

Calendar 日程查询、忙闲推荐、会议创建、邀请

Contact 联系人搜索、用户信息查询

Doc/Wiki 文档创建、检索、更新

Drive 文件上传、导入、下载、评论

Base 多维表格、字段、记录、仪表盘、工作流

Sheets 电子表格读写、样式、过滤、导出

Task 任务、清单、提醒、评论

More Mail、Minutes、VC、白板、审批、考勤等

四、技术栈

  • 后端:FastAPI、Pydantic、SQLite、OpenAI/Anthropic SDK、PyYAML
  • 前端:Vue 3、TypeScript、Vite、SSE
  • 运行时:官方 @larksuite/cli

五、快速部署(手动方式)

5.1 环境要求

  • Python 3.10+
  • Node.js 16+
  • npm / npx
  • OpenAI兼容模型API Key

5.2 克隆项目

bash

git clone https://github.com/jingsongliujing/Feishu-CLI-Web.git

cd Feishu-CLI-Web

5.3 后端配置与启动

bash

进入后端

cd backend

创建虚拟环境(Linux/macOS)

python -m venv .venv

source .venv/bin/activate

Windows PowerShell

py -3 -m venv .venv

..venv\Scripts\Activate.ps1

安装依赖

python -m pip install --upgrade pip

python -m pip install -r requirements.txt

复制并编辑.env

cd ...

cp .env.example .env # Windows用 Copy-Item

编辑**.env**关键配置:

env

LLM_PROVIDER=openai

OPENAI_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1

LLM_MODEL=qwen-plus

OPENAI_API_KEY=your_api_key

API_PREFIX=/api/v1

LARK_CLI_COMMAND_TIMEOUT=120

启动后端:

bash

cd backend

python -m uvicorn app.main:app --reload --host 0.0.0.0 --port 8000

5.4 前端启动

bash

cd frontend

npm ci

npm run dev

访问地址:

5.5 生产构建

bash

cd frontend

npm ci

npm run build

将frontend/dist/用Nginx/Caddy托管,反向代理/api到后端8000端口。

六、Docker一键部署

6.1 配置.env

bash

cp .env.example .env

编辑填入模型配置

6.2 启动服务

bash

docker compose up -d --build

访问:

  • Web:http://localhost:8000
  • 日志:docker compose logs -f
  • 停止:docker compose down
  • 删数据卷:docker compose down -v

6.3 单Dockerfile运行

bash

docker build -t feishu-cli-web .

docker run -d

--name feishu-cli-web

--env-file .env

-p 8000:8000

-v feishu_cli_data:/app/backend/.feishu_cli_data

feishu-cli-web

七、默认账号与安全

首次启动自动创建默认账号(正式部署务必修改/删除):

账号 密码

admin123 000000

admin 000000

local 000000

安全建议:

  1. 新增管理员账号
  2. 删除默认演示账号
  3. 不要泄露.env与数据目录

八、用户管理(批量增删改)

8.1 新增/更新用户

编辑:backend/data/users_upsert.json

json

{

"users": [

{

"account": "demo",

"name": "Demo User",

"password": "000000"

}

]

}

执行:

bash

cd backend

python data/manage_users.py --add-file data/users_upsert.json

8.2 删除用户

编辑:backend/data/users_delete.json

json

{

"accounts": ["demo"]

}

执行:

bash

python data/manage_users.py --delete-file data/users_delete.json --purge-cli-data

8.3 常用维护命令

bash

列出账号

python data/manage_users.py --list

预览不写入

--dry-run

指定数据库

--db .../.feishu_cli_data/feishu_cli_web.sqlite3

九、飞书授权流程

  1. 登录Web,点击「连接飞书账号」
  2. 检查lark-cli,为当前用户准备独立环境
  3. 打开授权链接完成飞书授权
  4. 保存独立授权状态
  • 重新授权:侧边栏「重新授权飞书」,清除旧状态并重走流程

十、数据目录与备份

运行数据默认在:

plaintext

.feishu_cli_data/

feishu_cli_web.sqlite3 # 核心数据库

lark_cli_profiles/ # Profile状态

lark_cli_users/ # 用户独立CLI HOME

备份重点:feishu_cli_web.sqlite3 + lark_cli_users/

十一、API概览

常用接口(需登录token):

  • GET /health:健康检查
  • POST /api/v1/auth/login:登录
  • POST /api/v1/chat/plan:生成计划(不执行)
  • POST /api/v1/chat:执行聊天(SSE)
  • GET /api/v1/sessions:会话列表
  • GET /api/v1/scenarios:场景模板

十二、部署检查清单

Python 3.10+,依赖已装

Node.js 16+,npm ci成功

.env配置模型Key与地址

.feishu_cli_data可写

服务器可执行npm、npx、lark-cli

生产环境/api反向代理正常

默认账号已删除/改密

健康检查与登录正常

十三、常见问题

  1. python: command not found
    Windows用py -3,Linux/macOS安装Python3.10+
  2. npm ci失败
    检查Node版本;lock丢失用npm install
  3. lark-cli not found
    npm install -g @larksuite/cli,重启后端
  4. SQLite只读/IO错误
    确认.feishu_cli_data目录权限
  5. 前端可开但接口404/跨域
    开发检查vite.config.ts的VITE_API_TARGET;生产检查Nginx转发

十四、扩展开发

  • 新增场景模板:backend/app/core/scenario_templates.py
  • 新增飞书Skill:backend/app/skills/lark_cli/skills/,用SKILL.md描述
  • 运行时:storage.py、local_sessions.py、plan_preview.py等

十五、协议与贡献

  • 许可证:MIT
  • 欢迎提交Issue与PR

文章标签:飞书、Lark、CLI、Web工作台、私有化部署、FastAPI、Vue3、Docker、自动化、AI Agent

相关推荐
人工智能AI技术1 小时前
多模态基础:文字、图像、语音统一理解原理
人工智能
一马平川的大草原1 小时前
Hermes Agent连接飞书群聊中不用@无响应问题
飞书·多agent·hermes
佳xuan1 小时前
wsl(linux)安装miniconda及虚拟环境
linux·人工智能·conda
脑极体1 小时前
工业Agent的新芽,生长在飞书的旷野上
人工智能·飞书
zhangfeng11331 小时前
LLaMA-Factory 在训练模型时检查点(Checkpoint)文件说明
人工智能·深度学习·llama
烛之武1 小时前
《深度学习基础与概念》笔记(1)
人工智能·笔记·深度学习
华盛AI2 小时前
小米 MiMo 大模型:版本历史、核心特性与行业地位
人工智能
互联网志2 小时前
推动高校科技成果转化 赋能产业高质量发展
人工智能
sunneo2 小时前
专栏A-AI原生产品设计-02-Agent设计范式
人工智能·产品运营·产品经理·ai编程·ai-native