Lark Coding Agent Bridge is a bot that connects the Feishu / Lark messenger to a local Claude Code or Codex CLI. One command starts it, a terminal QR code binds a Feishu PersonalAgent app, and from then on a direct message or an @bot mention in a group is forwarded to the coding agent running on your own machine.
Replies stream onto a single Lark card that updates with text and tool calls as the run proceeds, with an optional chain-of-thought process message carrying progress text and tool summaries before the final answer arrives separately. Each chat, topic, or document comment thread keeps its own session; messages sent in quick succession are batched, messages sent mid-run are queued for the next turn, and commands such as /new, /cd, /ws use, and /stop interrupt the current task. Images and files sent in chat are downloaded locally for the agent to read.
State is organised into profiles, each with its own app credentials, sessions, working directories, logs, and encrypted secrets, so a Claude bot and a Codex bot can run side by side. The bridge registers an OS-managed background service — a launchd user agent on macOS, a systemd user unit on Linux, or a Task Scheduler task on Windows — and /cd and /ws switch or save project directories at runtime, with a check that rejects overly broad locations such as /, the home root, or a temp root.
Access is private by default: only the Feishu app's owner can use the bot until users, groups, or admins are added through /invite, and unrecognised senders get no reply at all rather than a message confirming the bot exists. Changes take effect on the next message. A permission setting maps a bridge access level onto each agent's own mode, and the working directory is not a sandbox — real file access still depends on the local agent process.
| Bridge access | Claude permission mode | Codex mode |
|---|---|---|
| full | bypassPermissions | danger-full-access |
| workspace | acceptEdits | workspace-write |
| read-only | plan | read-only |
Features
- Chat-to-CLI bridge: direct messages and group mentions in Feishu / Lark reach a local Claude Code or Codex CLI
- Streaming cards: one interactive card updates with reply text, tool calls, and a stop button as the run proceeds
- Process messages: optional brief or detailed chain-of-thought output sent separately from the final answer
- Session continuity: per-chat, per-topic, and per-document-thread sessions, with /new and /resume
- Workspaces: /cd switches the working directory and /ws saves and reuses named project directories
- Profiles: separate credentials, sessions, and logs per profile, so Claude and Codex bots run in parallel
- Background service: launchd, systemd user units, and Task Scheduler wrappers with start, stop, restart, and status commands
- Attachments: images and files sent in chat are downloaded locally for the agent
- Access control: owner-only by default, with allowed users, allowed chats, and admins managed by /invite and /remove
- Permission mapping: full, workspace, and read-only map onto each agent's own permission mode
- Cloud-doc comments: mentioning the bot in a supported document comment replies in the same thread
- Idle watchdog: /timeout kills a silent agent process and annotates the card with the reason
