[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"project-78018":3},{"id":4,"name":5,"fullName":6,"owner":7,"repo":5,"description":8,"homepage":9,"htmlUrl":10,"language":11,"languages":10,"totalLinesOfCode":10,"stars":12,"forks":13,"watchers":14,"openIssues":15,"contributorsCount":16,"subscribersCount":16,"size":16,"stars1d":17,"stars7d":18,"stars30d":19,"stars90d":16,"forks30d":16,"starsTrendScore":20,"compositeScore":21,"rankGlobal":10,"rankLanguage":10,"license":22,"archived":23,"fork":23,"defaultBranch":24,"hasWiki":25,"hasPages":23,"topics":26,"createdAt":10,"pushedAt":10,"updatedAt":39,"readmeContent":40,"aiSummary":41,"trendingCount":16,"starSnapshotCount":16,"syncStatus":17,"lastSyncTime":42,"discoverSource":43},78018,"Lucarne","tuchg\u002FLucarne","tuchg","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\u002FWechat\u002F飞书.   No hooks, no skills, no MCP.","",null,"Rust",286,14,1,15,0,2,28,264,22,3.53,"MIT License",false,"main",true,[27,28,29,30,31,32,33,34,35,36,37,38],"agent-im","agent-management","agent-sessions","ai-agents","claude-code","codex","gemini","pi","remote-agents","remote-control","telegram-bot","zero-intrusion","2026-06-12 02:03:45","\n![Lucarne AI Poster](docs\u002Fassets\u002Flucarne-ai-poster.png)\n\n[![Release](https:\u002F\u002Fgithub.com\u002Ftuchg\u002FLucarne\u002Factions\u002Fworkflows\u002Frelease.yml\u002Fbadge.svg)](https:\u002F\u002Fgithub.com\u002Ftuchg\u002FLucarne\u002Factions\u002Fworkflows\u002Frelease.yml)\n![Coverage](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fcoverage-67%2F67%20journeys-blue)\n![License: MIT](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-MIT-blue)\n![Telegram](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fchannel-Telegram-26A5E4?logo=telegram)\n![WeChat](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fchannel-WeChat-07C160?logo=wechat)\n\nEnglish | [中文](README.cn.md)\n\n**Stop babysitting your local AI agents.**\n\n- No new mobile app required; receive timely, secure notifications through existing channels\n- Zero-intrusion setup: no hooks, no skills, no MCP, no project changes; scan a QR code and start using it in one step\n- Agents run on your local computer, so you can step away while WeChat \u002F Telegram keep you synced on key progress\n- Permission approvals, clarifying questions, and failure notifications become actionable mobile events\n- Scan a WeChat QR code to receive agent messages; quote a message to continue the matching context automatically\n- Use the Telegram console to view all agents, workspaces, and historical sessions\n- View local agent session history and agents currently running on this machine\n- Lightweight resident process with high performance and low memory use; idle agents are released automatically\n\n---\n\n## Quick Start\n\n### 1. Install\n\nmacOS \u002F Linux:\n\n```bash\ncurl -LsSf https:\u002F\u002Fgithub.com\u002Ftuchg\u002FLucarne\u002Freleases\u002Flatest\u002Fdownload\u002Flucarned-installer.sh | sh\n```\n\nWindows PowerShell:\n\n```powershell\npowershell -c \"irm https:\u002F\u002Fgithub.com\u002Ftuchg\u002FLucarne\u002Freleases\u002Flatest\u002Fdownload\u002Flucarned-installer.ps1 | iex\"\n```\n\n\u003Cdetails>\n\u003Csummary>Homebrew (recommended) and release archives\u003C\u002Fsummary>\n\nHomebrew:\n\n```bash\nbrew tap tuchg\u002FLucarne https:\u002F\u002Fgithub.com\u002Ftuchg\u002FLucarne\nbrew install lucarned\n```\n\nRelease archives are also available for macOS, Linux, and Windows on x86_64 and aarch64.\n\n\u003C\u002Fdetails>\n\n### 2. Initialize\n\n```bash\nlucarned init\n```\n\nInitialization guides you through:\n\n- Selecting enabled agents: `claude`, `codex`, `copilot`, `gemini`, `pi`\n- Configuring a Telegram Bot Token and an entry chat with Topics\u002Fthread mode enabled (optional)\n- Logging in to WeChat by QR code (optional)\n- Generating the config file: `~\u002F.lucarned\u002Flucarned.yaml`\n\n### 3. Start the background service\n\n```bash\nlucarned autostart install --start\n```\n\n\u003Cdetails>\n\u003Csummary>Homebrew service commands (recommended)\u003C\u002Fsummary>\n\n```bash\nbrew services start lucarned\nbrew services restart lucarned\nbrew services stop lucarned\n```\n\n\u003C\u002Fdetails>\n\n\u003Cdetails>\n\u003Csummary>Platform notes\u003C\u002Fsummary>\n\n`lucarned autostart` uses native user-level service managers:\n\n- macOS: LaunchAgent\n- Windows: Task Scheduler logon task\n- Linux: systemd user service\n\nLinux autostart requires systemd user services. Non-systemd Linux can run `lucarned` manually.\n\n\u003C\u002Fdetails>\n\n### 4. Open the Telegram panel (optional)\n\n```text\n\u002Fpanel\n```\n\nAfter the Lucarne panel appears, you can create workspaces, bind agents, resume historical sessions, and approve commands.\n\n### Common commands\n\n```bash\nlucarned doctor\nlucarned paths\nlucarned autostart status\nlucarned autostart start\nlucarned autostart stop\nlucarned update\n```\n\n\u003Cdetails>\n\u003Csummary>Homebrew service commands\u003C\u002Fsummary>\n\n```bash\nbrew update\nbrew upgrade lucarned\nbrew services start lucarned\nbrew services restart lucarned\nbrew services stop lucarned\n```\n\n\u003C\u002Fdetails>\n\n```text\nmacOS\u002FLinux config: ~\u002F.lucarned\u002Flucarned.yaml\nWindows config:     %LOCALAPPDATA%\\lucarned\\lucarned.yaml\nLogs:               lucarned paths\n```\n\n---\n\n## Configuration Example\n\nSee the full example at [`examples\u002Flucarned.yaml`](examples\u002Flucarned.yaml).\n\nAfter initialization, the active config lives at: `~\u002F.lucarned\u002Flucarned.yaml`.\n\nYou can also override settings with environment variables:\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## Usage\n\nSee the full command reference at [`docs\u002Fcommands.md`](docs\u002Fcommands.md). This README keeps only the core paths.\n\n### WeChat: quote-to-route\n\n1. Lucarne pushes agent progress to WeChat.\n2. Quote a notification and reply; Lucarne automatically restores the matching agent session.\n3. Continue the conversation with the original context attached.\n\nWeChat quote routing uses two strategies: it prefers `message_id`, then falls back to a quoted-text hash.\n\n### Telegram: mobile multi-agent console\n\nTelegram needs Topics\u002Fthread mode for the entry chat. A private chat with the bot can use the bot's own topic mode (Bot API 9.4+ reports this as `has_topics_enabled` from `getMe`); use that private chat ID as `entry_chat_id`. A forum supergroup also works, but is not required.\n\n1. Send `\u002Fpanel` in the entry chat.\n2. Tap `New` or send `\u002FaN` to create an agent workspace.\n3. Enter the workspace topic and assign tasks to agents like a normal chat.\n4. When an agent asks for permission, tap `[Approve]` \u002F `[Deny]`.\n5. Send `\u002Fstatus` to inspect state, `\u002Finterrupt` to stop work, or `\u002Ffork` to branch a session.\n\nTelegram workspaces map to Forum Topics. One project gets one topic; one topic can bind one live agent session.\n- Telegram supports every WeChat feature.\n\n---\n\n## Architecture Overview\n\n```\n┌─────────────┐  ┌─────────────┐\n│  Telegram   │  │   WeChat    │  ← User-facing channels\n└──────┬──────┘  └──────┬──────┘\n       │                │\n   lucarne-         lucarne-\n   telegram         wechat          ← Channel adapter (commands, notifications, queues, retries)\n       │                │\n       └───────┬────────┘\n          lucarne-adapter           ← Plugin registry\n               │\n           lucarne                  ← Core: runtime bus, control plane, history, daemon\n               │\n         agent-sessions             ← Provider parse \u002F discovery \u002F watch\n               │\n    ┌──────┬──────┬──────┬──────┐\n  Claude  Codex Gemini Copilot  Pi  ← Agent CLI processes\n```\n---\n\n## Agent Capability Matrix\n\n| Capability | Claude | Codex | Gemini | Copilot | Pi |\n|---|---:|---:|---:|---:|---:|\n| Reasoning \u002F Thinking | ✅ | ✅ | ✅ | ✅ | ✅ |\n| Tool calls | ✅ | ✅ | ✅ | ✅ | ✅ |\n| Structured approval | ✅ | ✅ | ✅ | — | ✅ |\n| AskUserQuestion | ✅ | ✅ | ✅ | — | — |\n| Usage tracking | ✅ | ✅ | ✅ | ✅ | ✅ |\n| Interrupt | ✅ | ✅ | ✅ | — | ✅ |\n| Resume | ✅ | ✅ | ✅ | — | ✅ |\n| Sub-agents | ✅ | ✅ | — | — | — |\n| Native commands | ✅ | ✅ | ✅ | — | ✅ |\n| Fork (create branched session) | ✅ | ✅ | — | — | ✅ |\n\n---\n\n## Development\n\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Ftuchg\u002FLucarne.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 support: installation docs, service management, release packages, and smoke tests\n- [x] Windows support: installation docs, background execution, path \u002F process compatibility, and release packages\n- [ ] Message modes: steer \u002F queue\n- [ ] Split `agent-sessions` into an independent crate\n- [ ] Support remote agent environments\n- [ ] More agent providers: Cursor, opencode, and more\n- [ ] More channels: Discord, Slack, Feishu, DingTalk, Matrix, QQ, and more\n- [ ] ....\n\n---\n\n## License\n\nMIT\n\n#\n> Friend link: [linux.do](https:\u002F\u002Flinux.do\u002F)\n","Lucarne 是一个通过 Telegram 或微信远程控制本地 AI 代理的工具。它支持用户在不安装新应用的情况下，通过现有的通讯渠道接收安全通知，并且无需对项目进行任何修改即可快速部署使用。该工具允许用户在离开电脑时也能通过手机同步和管理 Codex、Pi 或 Claude 等 AI 会话的状态，包括权限审批、问题澄清及失败通知等操作。适用于需要远程管理和监控本地运行的 AI 任务但又不想额外安装应用程序或进行复杂配置的场景。采用 Rust 语言开发，保证了轻量级高性能的特点。","2026-06-11 03:56:19","CREATED_QUERY"]