{"id":51215863,"url":"https://github.com/tuchg/Lucarne","last_synced_at":"2026-07-16T14:01:18.640Z","repository":{"id":358910035,"uuid":"1241219539","full_name":"tuchg/Lucarne","owner":"tuchg","description":"Stop babysitting local AI agents. Just notifications, approve, and resume your Codex,Pi, or Claude code sessions anywhere. 0-Intrusion mobile control bridge via Telegram/微信/飞书.   No hooks, no skills, no MCP.","archived":false,"fork":false,"pushed_at":"2026-06-03T08:51:46.000Z","size":4485,"stargazers_count":307,"open_issues_count":16,"forks_count":14,"subscribers_count":1,"default_branch":"main","last_synced_at":"2026-07-07T16:30:23.281Z","etag":null,"topics":["agent-bridge","agent-im","agent-management","agent-sessions","ai-agents","claude-code","codex","gemini","managed-agents","notification","pi","remote-agents","remote-control","telegram-bot","zero-intrusion"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/tuchg.png","metadata":{"files":{"readme":"README.cn.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":"AGENTS.md","dco":null,"cla":null}},"created_at":"2026-05-17T05:23:22.000Z","updated_at":"2026-07-07T09:50:25.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/tuchg/Lucarne","commit_stats":null,"previous_names":["tuchg/lucarne"],"tags_count":15,"template":false,"template_full_name":null,"purl":"pkg:github/tuchg/Lucarne","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tuchg%2FLucarne","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tuchg%2FLucarne/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tuchg%2FLucarne/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tuchg%2FLucarne/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/tuchg","download_url":"https://codeload.github.com/tuchg/Lucarne/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/tuchg%2FLucarne/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":35546267,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-07-16T02:00:06.687Z","response_time":83,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["agent-bridge","agent-im","agent-management","agent-sessions","ai-agents","claude-code","codex","gemini","managed-agents","notification","pi","remote-agents","remote-control","telegram-bot","zero-intrusion"],"created_at":"2026-06-28T04:01:00.196Z","updated_at":"2026-07-16T14:01:18.627Z","avatar_url":"https://github.com/tuchg.png","language":"Rust","funding_links":[],"categories":["⭐ 精选第三方技能"],"sub_categories":["🤖 AI Agent"],"readme":"\n![Lucarne AI Poster](docs/assets/lucarne-ai-poster.png)\n\n[![Release](https://github.com/tuchg/Lucarne/actions/workflows/release.yml/badge.svg)](https://github.com/tuchg/Lucarne/actions/workflows/release.yml)\n![Coverage](https://img.shields.io/badge/coverage-67%2F67%20journeys-blue)\n![License: MIT](https://img.shields.io/badge/license-MIT-blue)\n![Telegram](https://img.shields.io/badge/channel-Telegram-26A5E4?logo=telegram)\n![WeChat](https://img.shields.io/badge/channel-WeChat-07C160?logo=wechat)\n\n[English](README.md) | 中文\n\n**Agents 完成、卡住、需要你时，Lucarne 会在手机上叫你。**\n\n- Agents 在本地电脑上跑，人可以放下电脑；微信 / Telegram 随时同步关键进展\n- 0 侵入使用，无 hook、无 skills、无MCP，不动agent；扫码即可一键使用\n- 权限审批、问题确认、失败通知，都变成手机上的可处理事件\n- 微信扫码接收agents消息，引用消息即可自动接续对应上下文\n- Telegram 控制台查看所有 Agent、工作区、历史会话\n- 查看本机agents历史会话、本机当下正在运行的agent\n- 高性能低内存的轻量常驻进程，闲置agent自动释放\n- 无需在手机安装新的app，安全接收最及时的消息通知\n\n---\n\n## 快速启动\n\n### 1. 安装\n\nmacOS / Linux：\n\n```bash\ncurl -LsSf https://github.com/tuchg/Lucarne/releases/latest/download/lucarned-installer.sh | sh\n```\n\nWindows PowerShell：\n\n```powershell\npowershell -c \"irm https://github.com/tuchg/Lucarne/releases/latest/download/lucarned-installer.ps1 | iex\"\n```\n\n\u003cdetails\u003e\n\u003csummary\u003eHomebrew（推荐）与发布包\u003c/summary\u003e\n\nHomebrew：\n\n```bash\nbrew tap tuchg/Lucarne https://github.com/tuchg/Lucarne\nbrew install lucarned\n```\n\n也可以在 GitHub Releases 下载 macOS、Linux、Windows 的 x86_64 / aarch64 发布包。\n\n\u003c/details\u003e\n\n### 2. 初始化\n\n```bash\nlucarned init\n```\n\n初始化会引导你：\n\n- 选择启用的 Agent：`claude`、`codex`、`copilot`、`gemini`、`pi`、`grok`（Grok Build）\n- 配置 Telegram Bot Token 和已开启 Topics/Thread mode 的入口 chat（可选）\n- 扫码登录微信（可选）\n- 生成配置文件：`~/.lucarned/lucarned.yaml`\n\n### 3. 启动后台服务\n\n```bash\nlucarned autostart install --start\n```\n\n\u003cdetails\u003e\n\u003csummary\u003eHomebrew service 命令（推荐）\u003c/summary\u003e\n\n```bash\nbrew services start lucarned\nbrew services restart lucarned\nbrew services stop lucarned\n```\n\n\u003c/details\u003e\n\n\u003cdetails\u003e\n\u003csummary\u003e平台说明\u003c/summary\u003e\n\n`lucarned autostart` 使用各系统的用户级服务管理器：\n\n- macOS：LaunchAgent\n- Windows：Task Scheduler 登录任务\n- Linux：systemd user service\n\nLinux autostart 需要 systemd user service。非 systemd Linux 可以手动运行 `lucarned`。\n\n\u003c/details\u003e\n\n### 4. 打开 Telegram 面板 （可选）\n\n```text\n/panel\n```\n\n看到 Lucarne 面板后，即可新建 workspace、绑定 Agent、恢复历史 session、审批命令。\n\n### 常用命令\n\n```bash\nlucarned doctor\nlucarned paths\nlucarned autostart status\nlucarned autostart start\nlucarned autostart stop\nlucarned update\n```\n\n\u003cdetails\u003e\n\u003csummary\u003eHomebrew service 命令\u003c/summary\u003e\n\n```bash\nbrew update\nbrew upgrade lucarned\nbrew services start lucarned\nbrew services restart lucarned\nbrew services stop lucarned\n```\n\n\u003c/details\u003e\n\n```text\nmacOS/Linux 配置: ~/.lucarned/lucarned.yaml\nWindows 配置:     %LOCALAPPDATA%\\lucarned\\lucarned.yaml\n日志:             lucarned paths\n```\n\n---\n\n## 配置示例\n\n完整示例见 [`examples/lucarned.yaml`](examples/lucarned.yaml)。\n\n初始化后，实际配置位于：`~/.lucarned/lucarned.yaml`。\n\n也可用环境变量覆盖：\n\n```bash\nexport TELEGRAM_BOT_TOKEN=\"123456:...\"\nexport TELEGRAM_CHAT_ID=\"123456789\"\nexport LUCARNE_AUTHORIZED_USER_IDS=\"111111,222222\"\n```\n\n---\n\n## 使用方式\n\n完整命令参考见 [`docs/commands.md`](docs/commands.md)。README 只保留核心路径。\n\n### WeChat：引用即路由\n\n1. Lucarne 把 Agent 进展推送到微信。\n2. 引用通知并回复，Lucarne 自动恢复对应 agent session。\n3. 继续追问，自动接续原上下文。\n4. 若官方限流导致消息积压，发送 `/latest` 或快捷指令 `/l` 可清除积压并只推送各工作区最新一轮通知（不回复帮助菜单；不会全量刷出历史积压）。\n\n微信引用路由支持双策略：优先 `message_id`，失败后用引用文本哈希兜底。\n\n### Telegram：移动端多 Agent 控制台\n\nTelegram 入口 chat 需要开启 Topics/Thread mode。可以直接使用 Bot 私聊里的 Bot 自带话题模式（Bot API 9.4+ 的 `getMe` 会返回 `has_topics_enabled`）；`entry_chat_id` 填这个私聊 ID。Forum supergroup 也可用，但不是必须。\n\n1. 在入口 chat 发送 `/panel`。\n2. 点 `New` 或发送 `/aN` 新建 Agent workspace。\n3. 进入 workspace topic，像聊天一样给 Agent 派任务。\n4. Agent 请求权限时，点 `[Approve]` / `[Deny]`。\n5. 需要查看状态时发 `/status`；需要中断时发 `/interrupt`；需要分支时发 `/fork`。\n\nTelegram workspace 映射为 Forum Topic。一个项目一个 topic；一个 topic 可绑定一个 live Agent session。\n- Telegram支持WeChat所有功能\n\n---\n\n## 架构概览\n\n```\n┌─────────────┐  ┌─────────────┐\n│  Telegram   │  │   WeChat    │  ← 用户接触面\n└──────┬──────┘  └──────┬──────┘\n       │                │\n   lucarne-         lucarne-\n   telegram         wechat          ← Channel adapter（命令、通知、队列、重试）\n       │                │\n       └───────┬────────┘\n          lucarne-adapter           ← Plugin registry\n               │\n           lucarne                  ← Core: runtime bus, control plane, history, daemon\n               │\n         agent-sessions             ← Provider parse / discovery / watch\n               │\n    ┌──────┬──────┬──────┬──────┬──────┐\n  Claude Codex Gemini Copilot  Pi   Grok  ← Agent CLI 进程\n```\n---\n\n## Agent 能力矩阵\n\n| 能力 | Claude | Codex | Gemini | Copilot | Pi | Grok Build |\n|---|---:|---:|---:|---:|---:|---:|\n| 推理 / Thinking | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |\n| 工具调用 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |\n| 结构化审批 | ✅ | ✅ | ✅ | — | ✅ | ✅ |\n| AskUserQuestion | ✅ | ✅ | ✅ | — | — | ✅ |\n| 使用量追踪 | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |\n| 中断 | ✅ | ✅ | ✅ | — | ✅ | ✅ |\n| Resume | ✅ | ✅ | ✅ | — | ✅ | ✅ |\n| 子 Agent | ✅ | ✅ | — | — | — | — |\n| 原生命令 | ✅ | ✅ | ✅ | — | ✅ | ✅ |\n| Fork（创建分支会话） | ✅ | ✅ | — | — | ✅ | ✅ |\n\n---\n\n## 开发\n\n```bash\ngit clone https://github.com/tuchg/Lucarne.git\ncd agents\ncargo +nightly check -Zbuild-dir-new-layout\ncargo +nightly test -Zbuild-dir-new-layout\n```\n\n---\n\n## Roadmap\n- [x] Linux 支持：补齐安装说明、服务管理、发布包与 smoke test\n- [x] Windows 支持：补齐安装说明、后台运行、路径 / 进程兼容与发布包\n- [ ] 消息模式 steer/queue\n- [ ] agent-sessions 整理为独立crate\n- [ ] 支持远程 agent 环境\n- [ ] 更多 Agent Provider：Cursor、opencode 等\n- [ ] More channels：Discord、Slack、飞书、钉钉、Matrix、QQ 等更多入口\n- [ ] ....\n\n---\n\n## License\n\nMIT\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftuchg%2FLucarne","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ftuchg%2FLucarne","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ftuchg%2FLucarne/lists"}