欢迎光临
我们一直在努力

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小时 的空闲时间,创建主题为「项目复盘」的会议,并把会议链接发给他

系统生成执行计划:

  • 搜索联系人 刘鑫
  • 查询明天共同空闲时间
  • 创建「项目复盘」会议
  • 邀请参会人
  • 发送会议链接
    确认后才执行飞书写操作。
  • 二、功能亮点

    • ✅ 自然语言操作飞书:发消息、建会议、查日程、创建文档、多维表格等
    • ✅ 执行计划预览:先看要做什么,再决定是否执行
    • ✅ 场景模板:群通知、会议、文档、多维表格、会议纪要等
    • ✅ 多用户隔离:独立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

    访问地址:

    • Web:http://localhost:3000
    • API文档:http://localhost:8000/docs
    • 健康检查:curl http://127.0.0.1:8000/health

    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

    安全建议:

  • 新增管理员账号
  • 删除默认演示账号
  • 不要泄露.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

    九、飞书授权流程

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

    十、数据目录与备份

    运行数据默认在:

    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反向代理正常
    默认账号已删除/改密
    健康检查与登录正常

    十三、常见问题

  • python: command not found
    Windows用py -3,Linux/macOS安装Python3.10+
  • npm ci失败
    检查Node版本;lock丢失用npm install
  • lark-cli not found
    npm install -g @larksuite/cli,重启后端
  • SQLite只读/IO错误
    确认.feishu_cli_data目录权限
  • 前端可开但接口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

    赞(0)
    未经允许不得转载:171主机测评 » Feishu-CLI-Web:私有化部署飞书Web智能工作台,自然语言操控飞书全能力
    分享到: 更多 (0)

    评论 抢沙发

    • 昵称 (必填)
    • 邮箱 (必填)
    • 网址