命令行、终端界面与 ui-cli
在终端中运行智能体、以无界面方式驱动整个应用,并把全部设置集中在一棵可评审的配置树中。
mirasim 命令#
独立压缩包提供内置智能体、透明启动 Claude 与 Codex、控制服务端、管理账号和自检等功能。`claude` 与 `codex` 两条命令保留各自智能体的终端界面和登录状态,Mirasim 只改变一件事:它们的模型流量走哪条路径。
./mirasim doctor # check the install and its environment
./mirasim # Mirasim's built-in agent
./mirasim -p "inspect this repository" # built-in agent, one-shot
./mirasim claude # Claude Code, explicit
./mirasim codex # Codex, explicit
./mirasim agents # installed versions and updates
./mirasim ssh ubuntu@dev.example.com # drive a Linux machine over SSH
./mirasim ui-cli help # the whole control surface`mirasim help` 输出的是权威清单。其余命令按用途分组如下。
| 命令 | 作用 |
|---|---|
| login [github|email] | 登录,可选第三方授权或邮箱验证码,会保存令牌。 |
| logout | 清除已保存的登录令牌。 |
| agents | 已安装哪些智能体、各自版本,以及是否有新版本。 |
| update [agent] | 按各自安装时使用的渠道更新智能体。 |
| accounts [add|use|remove] | 列出订阅账号,并切换智能体以哪个账号启动。 |
| relay [on|off|threshold|always|key] | 额度兜底:查看状态与连通性、总开关、触发它的用量阈值、全量走兜底,以及填入密钥。 |
| statusline [set] | 查看正在运行的智能体的实时路径状态,也可以把你自己的文字写进那一行。 |
| doctor | 自检安装、配置与记录功能。 |
| recordings | 列出已记录的会话,以及各自的改动是保留了还是回退了。 |
| serve | 运行服务端:工作台、聊天渠道与配对。默认端口 4939;--host 127.0.0.1 只监听本机回环地址。 |
| web | 一个精简的网页对话界面,每条消息都会被记录。 |
| ssh <user@host> [list|stop|uninstall] | 通过 SSH 驱动远端 Linux 主机,并管理已保存的主机。 |
| checks [session] | 对某次已记录的会话执行确定性检查,属于评测环节。 |
| export [session] | 解算某次已记录的会话并上传。后台的自动上传可用 MIRASIM_EXPORT=0 关闭。 |
| collect [setup|record|selftest|doctor] | 评测用的屏幕轨迹采集,仅支持 macOS。按键内容与输入框文字不落盘,采集结果留在本机。 |
| version · help | 版本号,以及权威命令清单。 |
智能体的终端界面会重绘整个终端,因此启动时打印的提示在一秒内就会消失。为此 Mirasim 把实时状态写入智能体自身会渲染的位置,即 Claude 的状态行和 Codex 的终端标题。这样会话中途切换到额度兜底路径时,提示就出现在你本来关注的位置。你原有的状态行会被串接而不是替换,外部工具也可以添加自己的一段。
mirasim statusline set deploy "staging ✓"ui-cli:应用的可脚本版本#
`ui-cli` 是图形工作台的可脚本版本。它的每条命令使用与桌面端、移动端和编辑器端完全相同的协议帧,连接的也是某个窗口正在连接的那个服务。因此界面上能完成的任何操作,在这里都是一条命令,效果会实时反映在那个窗口中。每次调用只输出一个 JSON 对象,这使它可以被脚本和智能体使用。
`--port` 参数指定你要驱动的是哪个 Mirasim 实例。不提供该参数时,命令会为自身启动一个用后即弃的私有服务。
| 参数 | 对应实例 |
|---|---|
| --port 4970 | 已安装桌面应用的服务,通常选择这一项。 |
| --port 4950 | 开发版桌面实例的服务。 |
| (不提供 --port) | 为这一条命令启动的用后即弃的私有服务。 |
| --shell desktop | mobile | 由哪个客户端响应外壳类操作:桌面窗口,或已配对的手机。 |
# read-only facts, safe any time
mirasim ui-cli --port 4970 state
mirasim ui-cli --port 4970 sessions --limit 20
mirasim ui-cli --port 4970 workspaces
# start a real run — identical to typing it in the UI
mirasim ui-cli --port 4970 prompt --agent claude \
--cwd ~/code/proj --text "summarize this repository"
# drive and observe the actual window
mirasim ui-cli --port 4970 navigate --to settings
mirasim ui-cli --port 4970 ui settings.open --value traffic
mirasim ui-cli --port 4970 dom
mirasim ui-cli --port 4970 click --text "By model"
mirasim ui-cli --port 4970 screenshot --out shot.png把设置视为一棵声明式配置树#
所有会被保存的设置构成一棵 JSON 树,包括默认智能体、各智能体的模型、推理强度与访问方式、中转服务的行为与阈值、浏览器与屏幕自动化开关、屏幕休眠、智能体自动更新、工作目录、已登记的工作区,以及聊天渠道凭据。你可以整棵读取、按点分路径单独设置,也可以让一台机器收敛到指定的配置树。
mirasim ui-cli --port 4970 config get
mirasim ui-cli --port 4970 config set \
defaultAgent=codex relay.enabled=true relay.threshold=0.8
# see exactly what would change, then apply only that
mirasim ui-cli --port 4970 config apply --file desired.json --dry-run
mirasim ui-cli --port 4970 config apply --file desired.json`config apply` 会把你指定的配置树与当前实际值做比较,只应用存在差异的字段,且每个字段都走设置界面使用的同一个写入接口,热生效且可重复执行。返回结果会列出它改动过的每个字段及其前后值。凭据有意不在这棵树中:中转服务的密钥、账号令牌和供应商密钥各有专用命令。
命令尚未覆盖某项能力时#
`raw` 可以原样发送任意协议帧并输出返回结果,也就是说命令行的覆盖范围从不是上限,协议本身才是。它用于少数情形:应用能够完成某项操作,而命令清单尚未为它命名。
mirasim ui-cli --port 4970 raw '{"type":"…"}' --await someReplyType --seconds 5这一页有错或缺了什么? 告诉我们