---
title: CLI 参考
description: 用于会话、工作区、标签页、窗格、通知、智能体、等待、集成和状态的 Herdr 命令。
---
Herdr 的 CLI 通过与集成和智能体相同的本地 socket API 与运行中的服务器通信。
大多数命令输出 JSON 响应。需要确定性自动化时,从脚本中使用它们。
## 启动与状态
```bash
herdr # 启动或连接默认会话
herdr --session work # 启动或连接命名会话
herdr --remote workbox # 通过 SSH 连接,使用本地按键绑定
herdr --remote workbox --remote-keybindings server
herdr --remote workbox --handoff
herdr --no-session # 单进程逃生舱
herdr --default-config # 打印默认配置
herdr update # 从配置的通道下载并安装
herdr update --handoff # 对受支持的运行中服务器启用实时交接
herdr completion zsh # 生成 zsh 补全脚本
herdr channel show # 打印 stable 或 preview
herdr channel set preview # 启用预览构建
herdr channel set stable # 把 Linux/macOS 直接安装切回稳定版
herdr --version # 打印版本
```
状态命令:
```bash
herdr status
herdr status server
herdr status client
```
API schema 命令:
```bash
herdr api schema
herdr api schema --json
herdr api schema --output herdr-api.schema.json
```
`herdr api schema` 会打印安装的二进制中包含的 socket 协议 schema 简短摘要。需要完整 JSON Schema 文档时使用 `--json`;要写入文件则使用 `--output PATH`。
## Shell 补全
```bash
herdr completion zsh
herdr completions zsh
herdr completion bash
herdr completion fish
herdr completion powershell
herdr completion elvish
```
`completion` 会把脚本打印到 stdout。`completions` 是别名。临时 zsh 会话可以直接加载脚本:
```bash
source <(herdr completion zsh)
```
持久 zsh 设置中,把生成的 `_herdr` 函数写到 `compinit` 运行前已经在 `fpath` 上的位置:
```bash
mkdir -p ~/.zfunc
herdr completion zsh > ~/.zfunc/_herdr
```
然后确认 `.zshrc` 包含:
```zsh
fpath=(~/.zfunc $fpath)
autoload -Uz compinit
compinit
```
## 服务器
```bash
herdr server
herdr server stop
herdr server reload-config
herdr server agent-manifests [--json]
herdr server update-agent-manifests [--json]
herdr server reload-agent-manifests
```
`herdr server` 显式运行无界面服务器,适合被监管或服务式的部署。`reload-config` 在不重启窗格的情况下应用可重载设置。`agent-manifests` 显示生效的智能体检测清单来源、缓存的远程版本和最近的远程更新结果。`update-agent-manifests` 立即拉取远程清单更新,重载到运行中的服务器,并打印更新后的清单状态;要原始状态响应就加 `--json`。`reload-agent-manifests` 在编辑本地覆盖后,把智能体检测清单重载到运行中的服务器。
## 通知
```bash
herdr notification show
[--body TEXT] [--position top-left|top-right|bottom-left|bottom-right] [--sound none|done|request]
```
`notification show` 使用配置的 `[ui.toast]` 投递方式。`--position` 只影响 Herdr 应用内的 toast。`--sound` 默认为 `none`;`done` 和 `request` 只在通知实际显示时播放已有的完成音和需要关注音。
## 会话
```bash
herdr session list [--json]
herdr session attach
herdr session stop [--json]
herdr session delete [--json]
```
需要显式停止默认会话时,把会话名写成 `default`。
## 工作区
```bash
herdr workspace list
herdr workspace create [--cwd PATH] [--label TEXT] [--env KEY=VALUE] [--focus] [--no-focus]
herdr workspace get
herdr workspace focus
herdr workspace rename