mirror of
https://github.com/lobehub/lobe-chat.git
synced 2026-06-14 03:30:19 +00:00
72ea0f94f7
* 🐛 fix(cli): preserve content/state for connect local file/shell tools Route file/shell tool calls in connect mode through LocalSystemExecutionRuntime so the result carries formatted prompt `content` plus structured `state`, and forward `state` over the gateway tool-call response — aligning the CLI with the desktop gateway path (PR #15114). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> * 🐛 fix(cli): preserve getCommandOutput timeout when polling running commands Routing getCommandOutput through the runtime dropped the per-call/gateway timeout: the CLI mapping didn't forward it and LocalSystemExecutionRuntime's denormalizeParams stripped it before ShellProcessManager.getOutput, so polling fell back to the 30s default and could block past the gateway budget. Carry timeout through the runtime param type, denormalize, and the CLI mapping. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> --------- Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>
@lobehub/cli
LobeHub command-line interface.
Local Development
| Task | Command |
|---|---|
| Run in dev mode | bun run dev -- <command> |
| Build the CLI | bun run build |
Link lh/lobe/lobehub into your shell |
bun run cli:link |
| Remove the global link | bun run cli:unlink |
bun run buildonly generatesdist/index.js.- To make
lhavailable in your shell, runbun run cli:link. - After linking, if your shell still cannot find
lh, runrehashinzsh.
Custom Server URL
By default the CLI connects to https://app.lobehub.com. To point it at a different server (e.g. a local instance):
| Method | Command | Persistence |
|---|---|---|
| Environment variable | LOBEHUB_SERVER=http://localhost:4000 bun run dev -- <command> |
Current command only |
| Login flag | lh login --server http://localhost:4000 |
Saved to ~/.lobehub/settings.json |
Priority: LOBEHUB_SERVER env var > settings.json > default official URL.
Shell Completion
Install completion for a linked CLI
| Shell | Command |
|---|---|
zsh |
source <(lh completion zsh) |
bash |
source <(lh completion bash) |
Use completion during local development
| Shell | Command |
|---|---|
zsh |
source <(bun src/index.ts completion zsh) |
bash |
source <(bun src/index.ts completion bash) |
- Completion is context-aware. For example,
lh agent <Tab>shows agent subcommands instead of top-level commands. - If you update completion logic locally, re-run the corresponding
source <(...)command to reload it in the current shell session. - Completion only registers shell functions. It does not install the
lhbinary by itself.
Quick Check
which lh
lh --help
lh agent <TAB>