# iterm-workspace-ctl 完全掌控 iTerm2:查询窗口/tab/session 结构与内容,并做分屏、焦点、输入、改名、几何操作 以 Pi package(技能形态)发布。技能本体在 `skills/iterm-workspace-ctl/`。 - 平台:macOS - 许可:GPL-3.0-or-later(全文见 [LICENSE](LICENSE)) ## 安装 ```sh pi install git:gitea.vhkd.top/pi-hub/iterm-workspace-ctl.git@v0.1.3 ``` 装完 `pi-skill list` 能看到 `iterm-workspace-ctl`,`pi-skill iterm-workspace-ctl check` 会告诉还缺什么。 ## 先准备什么 - 用系统已有的东西即可,没有额外依赖。 ## 常用命令 | 命令 | 说明 | |---|---| | `info` | 总览:窗口/tab/session 结构 | | `tree` | 树状结构 | | `ids` | 列出 id | | `where` | 当前焦点位置 | | `cur` | 当前 session | | `focus` | 切焦点 | | `split` | 分屏 | | `cols` | 多栏布局 | | `resize` | 调尺寸 | | `fullscreen` | 全屏/取消 | | `send` | 向 session 发送文本 | | `key` | 发送按键 | | `capture` | 读屏幕内容 | | `profiles` | 列出 profile | | `scrollback` | 读/改 iTerm2 各 profile 的回滚缓冲(unlimited 或行数) | | `tab-list` | 列出 tab | | `tab-new` | 新建 tab | | `tab-select` | 切 tab | | `tab-close` | 关 tab | | `win-list` | 列出窗口 | | `win-new` | 新建窗口 | | `title` | 改标题 | | `sleep` | 等待 | | `id` | 取窗格 session id(跨调用前先锚定) | | `split-id` | 按 session id 分屏 | | `focus-id` | 按 session id 聚焦 | | `send-id` | 按 session id 发送文本并回车 | | `send-raw-id` | 按 session id 发送文本(不回车) | | `key-id` | 按 session id 发送按键 | | `capture-id` | 按 session id 读屏幕内容 | | `wait` | 轮询窗格直到出现指定字样 | | `wait-id` | 按 session id 轮询直到出现指定字样 | | `close-id` | 按 session id 关闭窗格 | | `wait-idle` | 等目标空闲(命令回提示符 / TUI 屏幕静止),可选随后发送单行文本(前台阻塞) | | `idle-state` | 一次性读目标忙闲:job/prompt/屏幕指纹 | | `send-when-idle` | 后台守候:目标空闲后把它发进去并回车;start/status/logs/stop(台账与 liveness 在 status 的 as_of) | | `batch` | 从 stdin 一次连接顺序执行多条命令 | 用法与对外契约见技能内的 `SKILL.md` 与 `REFERENCE.md`。