Lemon 常驻编码代理
在自托管的 Elixir/OTP 守护进程中持续运行编码任务,并从终端、浏览器或手机接续工作。
- 源仓库
- z80dev/lemon
- Star 数
- ★ 132
- 最近更新
- 2 天前
- License
- NOASSERTION
- 主语言
- Elixir
- FA 评分
- 58/100 · 缺口较多
30 秒速览
- 运行形态
- 可在哪里用
- 通用 · 跨平台OpenAI API · Claude APIChatGPT · Codex · Claude.ai(部分支持)
- 费用
- 软件免费,模型调用费用自付
- 上手难度
- 中 · 需要几步配置
- 开始前需要
- 典型场景
- 需要让编码任务在关闭终端后继续运行的独立开发者,可在本机启动 Lemon 守护进程并稍后从手机接续。
- 不适合
- 需要稳定 1.0 产品的团队
- 不能让配置的模型服务接收请求数据的团队
- 源码审查
- 58/100 · 缺口较多
这个 Agent 能做什么,适合哪些场景?
Lemon 是面向软件开发的自托管编码代理,核心运行于 Elixir/OTP 守护进程。每个会话、运行和工具调用都是独立的受监督 BEAM 进程,TUI、Web 工作区、CLI、Telegram 和 Discord 连接到同一运行时。它能读取和修改代码、执行 shell 命令、搜索网页并检查诊断,也支持计划、审批、检查点和差异审阅。可通过 OpenAI、Anthropic 及其他列出的模型服务或兼容端点配置引擎;也可使用本地模型。项目处于 pre-1.0 阶段,TUI、Web UI、CLI、控制平面及 Telegram/Discord 文本功能标为稳定,部分自动化和高级功能仍属预览。
在仓库目录运行 lemon 后,Lemon 启动或复用守护进程并打开 TUI;用户可让它读取文件、搜索代码(包括 ast_grep)、编辑和打补丁、运行 shell、搜索网页及检查诊断。/plan 可先只读规划,审批后再执行;/rewind 和检查点支持审阅或恢复变更。会话可从 lemon web、lemon -p、Telegram 或 Discord 接续;task 可分派子会话,Kanban 任务可在独立 git worktree 中执行。结果包括代码差异、工具输出、机器可读的一次性运行结果,以及可持续的会话、记忆和自动化任务记录。
- 需要让编码任务在关闭终端后继续运行的独立开发者,可在本机启动 Lemon 守护进程并稍后从手机接续。
- 需要跨终端和浏览器审阅代码改动的工程师,可在 TUI 开始会话,再通过 Web 工作区查看差异和工具卡片。
- 需要把探索与边界检查并行处理的维护者,可用
task派出内置 scout 和 reviewer 子会话。 - 需要从 CI 或脚本发起单次编码任务的团队,可运行
lemon -p并请求 JSON 输出。 - 需要定期检查 CI 或自动推进目标的个人用户,可配置 heartbeat、cron 或 goal;这些能力目前属于预览。
如何安装或部署这个 Agent?
macOS(Apple Silicon)或 Linux 可使用预构建版本;安装包包含运行时和 TUI,无需自行安装 Elixir。安装后把 Lemon 加入 PATH 并运行设置命令。设置时可登录 ChatGPT 或 Claude Pro/Max、导入现有 Codex CLI 登录,或填写模型服务 API 密钥。若从源码构建,需要 Erlang/OTP 28.5+、Elixir 1.19.5+;TUI 需要 Bun 1.3.14+,文档和浏览器客户端使用 Node.js 24+。
curl -fsSL https://raw.githubusercontent.com/z80dev/lemon/main/install.sh | sh -s -- --skip-setup
export PATH="$HOME/.lemon/bin:$PATH"
lemon setup如何使用这个 Agent?
在目标代码仓库目录启动 Lemon。首次运行可按提示选择模型,然后提交任务;也可用 -p 执行一次性任务并输出 JSON。配置 Telegram 或 Discord 网关后,可从对应聊天入口继续同一会话。
cd /path/to/repository
lemonlemon -p "Summarize the failing tests" --output json在设置中选择受支持的登录方式或填写相应服务的 API 密钥。README 还列出 Gemini/Vertex、Bedrock、Azure、Mistral、OpenRouter、Groq、DeepSeek、xAI、Kimi、Qwen 及 OpenAI-compatible 端点。
这个 Agent 有哪些优点和局限?
- OTP 守护进程让会话在 TUI 关闭后继续运行,并让多个界面连接同一状态。
- 支持多家模型服务、兼容端点和本地模型,降低对单一模型供应商的依赖。
- 提供审批、计划、检查点、差异查看和
/rewind文件恢复等代码审阅控制。 - 内置子代理、独立 worktree 任务、持久记忆和自动化入口,适合长时间任务。
- 项目标为 pre-1.0,Goals、Kanban dispatch 和 cron 等功能仍是预览。
- 源码开发需要较新的 Erlang/OTP 与 Elixir;TUI 和浏览器相关开发还需 Bun 或 Node.js。
- 实际模型调用需要配置受支持的登录或密钥;README 没有说明模型服务的费用。
- 本地优先不等于完全离线:配置的模型服务会收到其请求所需的数据。
这个 Agent 与同类方案有什么区别?
README 将 Lemon 的灵感来源列为 pi、oh-my-pi、takopi、OpenClaw 和 Ironclaw,并提供 Hermes Agent 迁移指南;未给出这些项目的功能对比。
与相关度最高的同类 agent 并排比较关键指标。
| Agent | 源码审查 | 形态 / 费用 | Star | 最近更新 | 主语言 | 完整支持的平台 |
|---|---|---|---|---|---|---|
| Lemon 常驻编码代理 当前 | 58 · 缺口较多 | 命令行工具免费 + 模型费 | ★ 132 | 2 天前 | Elixir | OpenAI API · Claude API |
| Pi Dynamic Workflows | 88 · 表现良好 | Agent 插件 / 技能免费 + 模型费 | ★ 555 | 12 天前 | TypeScript | — |
| MetaHarness | 86 · 表现良好 | 命令行工具免费 + 模型费 | ★ 707 | 9 天前 | TypeScript | Codex · Claude Code |
| Pi Jev 语义路由器 | 80 · 表现良好 | Agent 插件 / 技能免费 + 模型费 | ★ 66 | 16 天前 | TypeScript | — |
FollowAgents 如何评估这个 Agent?
查看各维度的扣分理由
文档描述审批门、路径限制、密钥加密、未信任内容隔离、备份与回滚;测试辅助代码还声称验证路径逃逸、进程取消及有界输出。但未提供完整策略实现,且 API 与密钥会发送给所配置的外部服务,因此最小权限与外部影响证据有限。
README 描述监督进程、熔断器和幂等重试,CI 文件列出格式、测试、静态分析、安装及模拟基准任务,辅助测试覆盖若干失败情形;但静态材料不能证明这些任务实际通过,且所需运行时版本较新。
文档明确面向终端编码、浏览器、脚本、消息渠道、并行和自动化工作流,并标出预览功能及支持边界。能力范围很广,但不同渠道的触发条件和适用环境细节并不完整。
README 提供安装、快速开始、命令参考入口和示例;另有许可证、安全政策、支持边界和变更日志入口。预发布状态及维护者、漏洞报告路径有说明;预编译安装依赖远程脚本,部分细节需进一步查阅链接文档。
产品描述覆盖持久会话、多渠道、审批、恢复和并行任务,JSON 输出与差异审阅有助于后续使用。维护常驻运行时并配置多种模型或渠道会增加操作成本,材料未量化成本收益。
README 的主要声明可在安全政策、CI 工作流和辅助测试中找到相互支持的描述;CI 配置和测试代码是静态证据,不代表已执行或通过。文档将预览功能、外部提供商数据传输及支持状态明确标出,限制了推断范围。
- 此静态审查未运行代码、测试或安装流程;CI 配置不能证明该修订已通过。
- 使用外部模型提供商时,请按文档所述考虑请求数据会发送给所配置的服务;预览中的自动化功能不宜在未核对支持边界前无人值守使用。
最近版本
来自该项目 GitHub Releases 的最新发布记录,说明为上游原文摘录,未经本站改写或测试。
-
发布说明摘录
Security - Upgrade locked Mint from 1.10.1 to 1.10.2 to fix HTTP/1 response smuggling (EEF-CVE-2026-94194), HTTP/2 decoded-header memory exhaustion (CVE-2026-91043 / GHSA-9x8p-qrf4-jq7g), and oversized HTTP/2 frame buffering (EEF-CVE-2026-92103), without changing dependency constraints or other locks. Changed - Setup finishes with a first coding prompt, a success check, optional Telegram and Web UI commands, and an offer to open Lemon immediately after verification. - Add short, availability-gated system prompt guidance for questions, conversation …在 GitHub 查看 ↗ -
v2026.10.6 Lemon 2026.10.6 (stable)
发布说明摘录
Added - Custom providers and models. A [providers.<id>] table with api, base_url, api_key_env/api_key/api_key_secret, optional auth = "none", headers, discovery = "openai" | "ollama" and [[providers.<id>.models]] defines an OpenAI-, Anthropic- or Google-compatible endpoint (omp models.yml parity). Its models resolve as <id>:<model> / <id>/<model> for the default model, /model, model roles, task/compaction selectors and fallback providers, appear in the /model picker and lemon providers status, and are checked by …在 GitHub 查看 ↗ -
v2026.10.5 Lemon 2026.10.5 (stable)