Skip to main content

Lumi

Python 3.12+ License: MIT Version LangGraph Electron

简体中文 | English

一个开源的 AI 同事。 在桌面应用里跟它聊,或者直接在飞书里 @ 它——把日常事务真正交出去、做完。

不只是聊天:它有记忆、会用工具、能定时干活、能读你的文件、能开完会自动把纪要发给你。面向所有人,不只是程序员。

Lumi 项目主页


它能帮你做什么

不用写代码,把事情说给它听就行:

  • 📝 「把这周的会议纪要整理一下,发我一版周报初稿」
  • 📄 「这份 PDF 合同,帮我把关键条款和风险点列出来」
  • 💰 「这张打车发票录进报销 Excel,金额和日期对一下」
  • 📚 「读完这篇论文,给我一份带要点的读书笔记」
  • ✈️ 「规划下个月去日本 7 天的行程,按天列」
  • ⏰ 「每周五下班前提醒我交周报,顺便把本周的进展汇总给我」

它会记住你的偏好和项目背景(持久记忆),能把复杂任务拆给子 Agent 并行处理,也能定时在后台自己跑。

在飞书里就能用

不用切工具——把 Lumi 拉进飞书,它就是群里一位随叫随到的同事。私聊发消息,或群里 @ 它;文字、图片、文件都能发。详见 飞书接入指南。

✨ 开完会,纪要自动就到了

打开「妙记纪要」开关后,你录个音、或开个会(开启云录制)——飞书生成妙记,Lumi 就自动取回带说话人和时间戳的逐字稿,整理成一份纪要,推到你和它的私聊里。实测录完约 20 秒送达,你什么都不用点。

会议结束、走出会议室,纪要已经躺在飞书里了。

还有

  • 群里 @ 它协作 — 默认「@我才回」,也可设为响应全部;发图直接读、发文件(PDF/代码/文本)自动下载并阅读。
  • 斜杠命令 — /help /stop /clear /compact 等,加上项目自带的技能命令(如 /commit)。
  • 每日记忆整理 — 到点自动为有新消息的会话沉淀记忆、压缩历史,常驻群聊不会无限膨胀。
  • 一站式接入体检 — 桌面端填完 App ID / Secret,一键查出凭证、权限、事件订阅、版本发布哪一步没通,并给出预填好的开放平台直达链接。

🚧 更多渠道,陆续接入。 飞书是 Lumi 的第一个 IM 渠道,渠道层设计为可插拔——Telegram、微信、Slack 等已在规划中。想优先支持哪个?欢迎来 Issues 提。

为什么选择 Lumi

  • 面向所有人 — 读书笔记、旅行计划、周报、报销、家庭开支……不写代码也能用;需要写代码时切到 code 风格,就配好了完整编程提示词与探索/规划子 Agent。
  • 两种用法,一套大脑 — 桌面应用专注深度工作,飞书随手交办;同一个后端、同一份记忆与配置。
  • 你的数据在你自己机器上 — 开源、MIT 协议、本地运行,模型 Key 和会话都存在你自己的机器;也支持自建服务器远程部署。
  • 可扩展 — 技能、子 Agent、MCP 协议、定时任务、多 Agent Workflow,多数改配置即扩展,无需改代码。
  • 多模型自由 — OpenAI / Anthropic / Bedrock / 任意 OpenAI 兼容 API,思考档位按模型可配,随时热切换。

Lumi MCP 面板

通过 MCP(Model Context Protocol)接入外部工具:按机器、按「全局 / 项目」层配置,STDIO / HTTP 均支持,开关即用。

快速开始

前置要求:uv、Node.js(含 npm)、Python 3.12+(uv 会自动装)。

git clone https://github.com/deku0818/Lumi.git
cd Lumi
./dev.sh            # 一键:装后端/前端依赖 → 起 vite + Electron + 后端 sidecar

./dev.sh 会自己 uv sync 装后端、npm install 装前端,并由 Electron 主进程拉起后端,无需单独启动。

配置模型:首次启动在应用内「设置 → 模型」里填 API Key 即可;也可预置 ~/.lumi/config.json:

{
  "style": "default",
  "env": {
    "LLM_MODEL_NAME": "gpt-4o",
    "OPENAI_API_KEY": "sk-xxx",
    "OPENAI_API_BASE": "https://api.openai.com/v1"
  }
}

完整配置见 docs/guides/config.md;接飞书见 docs/guides/feishu.md。

核心概念

项目与三层配置

聊天必须绑定一个项目(工作目录)。每个项目一套配置(提示词 / 记忆 / 定时 / 技能 / 子 Agent),按三层叠加、逐层同名覆盖:

风格内置  <  全局层 ~/.lumi/  <  项目层 <项目>/.lumi/

点进一个项目就是它的主页:左边输入岛直接在这个项目里开聊,右边五张卡(提示词 / 记忆 / 定时 / 技能 / 子 Agent)所见即会话所加载,项目层可增删改。详见 风格系统。

权限与审批

⚠️ 无沙箱:Lumi 不做隔离,agent 的工具(bash、文件读写等)直接作用于你本地真实环境。权限规则 + 审批模式 + 工作区边界是唯一的安全边界——建议保持默认审批,谨慎使用 Privileged(一律放行)。

  • 权限规则(permissions.md):用户级 / 项目共享 / 项目本地三处加载,Deny → Allow → Unmatched 求值 + 工作区边界检查。
  • 审批模式:Default(权限引擎判定)· Accept Edits(工作区内编辑自动放行)· Privileged(一律放行,危险操作仍拦)· Auto(交 AI 分类器裁决 approve / ask / reject)。

多机 / 远程

打包后的桌面 app 是多机 client:启动连本地后端,也可在「设置 → 连接」加远程机器(wss://…/ws + token)。会话列表按「机器 → 项目 → 会话」组织。

分发 / 部署

Lumi 分两个产物:后端 lumi(lumi serve,本地或服务器)+ 桌面 client(Electron,连本地/远程)。

服务器一行装完(Linux + systemd,详见 部署指南):

curl -fsSL https://raw.githubusercontent.com/deku0818/Lumi/main/scripts/install.sh | sudo sh

装包 → 生成 lumi.service → 起服务 → 真握手验证(错误令牌必须被拒,否则那是台谁都能连的机器)→ 打印连接串。服务以调用者本人的身份运行、数据落在他的 ~/.lumi,不另造系统用户;--user 可改身份。重跑即升级,沿用原令牌。

桌面端「设置 → 连接」填打印出来的 ws://<本机IP>:8765/ws?token=…;模型 API Key 在桌面端配,服务器上不用管。日常运维:lumi update 升级、lumi status 体检、lumi logs -f 看日志。

# 本机跑一个
lumi serve --port 8765 --token <口令>

# 后端(Docker)
docker run -p 8765:8765 -v ~/.lumi:/root/.lumi -v "$PWD":"$PWD" \
  -e LUMI_TOKEN=<口令> ycw0818/lumi-harness

# 桌面 client 安装包(dmg / exe / AppImage)
cd desktop && npm install && npm run dist

数据目录默认 ~/.lumi,用 LUMI_CONFIG_DIR 可整体改道(密钥 / 会话 / 记忆 / 日志 / 工具箱一起搬)。公网部署务必前置 Caddy/nginx 终止 TLS(wss://)并设置令牌,切勿裸暴露明文 ws。

内置工具

工具 功能
read / write / edit 读取(支持行号范围)/ 写入 / 基于字符串替换的精确编辑
glob / grep 文件模式匹配 / 文本内容搜索(基于 ripgrep,可降级)
bash 执行 Shell 命令(持久化会话)
ask 向用户提问并等待回答
todos 任务列表管理(桌面右栏实时显示进度)
cron 定时任务(创建 / 删除 / 暂停 / 执行)
skill 调用自定义技能
agent 委托任务给子 Agent
workflow 多 Agent 编排(一段确定性 Python 脚本调度一群子代理)
background_task 管理后台运行的任务(Bash 命令 / 子 Agent)
artifacts 把产出文件作为制品呈现到界面供查看 / 预览(含 Office 窗口内预览)
vision 图像识别(tool 模式)

工具描述写在各工具函数 docstring 里;外部工具经 MCP 接入。

文档

主题 链接 · 主题 链接
完整配置 config.md · 飞书渠道 feishu.md
权限控制 permissions.md · 定时任务 cron.md
子 Agent agents.md · 斜杠命令 / 技能 slash-commands.md
风格系统 styles.md · 持久记忆 memory.md
桌面架构 desktop.md · 多 Agent Workflow workflow.md
思考管理 thinking.md · 对话摘要 summary.md

开发

uv sync --all              # 安装开发依赖
uv run pytest              # 运行测试
uv run ruff format .       # 代码格式化
uv run ruff check --fix .  # Lint 检查

技术栈

Metadata

Release files for lumi-harness 0.2.122

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for lumi-harness 0.2.122
File Size Uploaded
lumi_harness-0.2.122.tar.gz 2.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for lumi-harness 0.2.122
File Interpreter ABI Platform
lumi_harness-0.2.122-py3-none-any.whl Python 3 none any Details

Total release size: 2.6 MB

Release files / lumi_harness-0.2.122.tar.gz

Download URL lumi_harness-0.2.122.tar.gz
Size 2.0 MB
Tags Source
SHA-256 checksum
How to use checksums
c815c55ee15fe2269bd1ebc14d8359682fce27d00677cf9546b41c0012bd9d61
BLAKE2b-256 checksum
How to use checksums
e91a0902a1f09a4130805009e9d59d9e12ac4729fd580888d0a30b889d6cbe47
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / lumi_harness-0.2.122-py3-none-any.whl

Download URL lumi_harness-0.2.122-py3-none-any.whl
Size 594.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
631214470dd5d7ef25388b0809d54b571c0b830f5a7e6fcad6fcacf82119a977
BLAKE2b-256 checksum
How to use checksums
258e2668a4e9bf520eeef7f8ac733d71b31c4fba2a523b62274111ccc7c83fc8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.6 {"installer":{"name":"uv","version":"0.12.6","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

0.3.6

2 release files

0.3.4

2 release files

This release

0.2.122 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page