进阶 onorca.dev 2026-10-18 18:52:09 · 17 阅读

第11章 Orca 终端功能详解

Terminal Orca 的终端与 VS Code 同源,基于 xterm.js,并针对 AI agent 工作流做了若干增强。 Ghostty 风格终端 — 首次启动时可导入 Ghostty 主题、字体和光标设置 窗格与标签页 终端本质上就是一个标签页 — 参见「标签页、窗格与分屏布局」。拆分终端窗格可以得到并排的两个 shell。即使某个终端窗格是标签页中唯一的窗格,它也有关闭按钮。 Agent 终端标签页会显示 agent 身份和实时状态:工作中、等待输入、已完成、已完成但未读。对于 Claude 和 Codex,当 Orca 能将窗格映射到对应会话时,标签页标题还可以显示 AI Vault 会话名(自定义标题 / 线程名)— 手动重命名仍然优先。被移到后台的终端在你返回时会重新挂回原来的标签页,而不是打开一个重复的终端。退出前关闭的窗格在重新启动后不会再出现,把窗格拖出成独立标签页后也不会再同时出现在两个标签页里。 Agent 启动命令 在 macOS 和 Linux 上,较长或多行的 agent 启动命令会完整送达 agent,不会被截断或逐行执行,启动命令也以真实的 Enter 提交。这些改动只对更新后打开的终端生效;已打开的终端保持原有行为,直到重新打开。 TUI 剪贴板(OSC 52) 许多终端 UI(Zellij、tmux、Neovim、fzf、Grok)通过 OSC 52 而非操作系统剪贴板 API 复制内容。Orca 默认允许这类写入,因此通过 SSH 从远程/TUI 复制与本地一样可用。 开关位置:Settings → Terminal → Allow TUI Clipboard Writes (OSC 52)。 搜索 Cmd-F 打开滚动缓冲区查找。查找栏会显示当前匹配项和总数,支持大小写、正则和匹配项导航。再次按 Cmd-F / Ctrl-F 可聚焦并选中查询内容;Escape 关闭查找栏。其焦点和关闭行为与编辑器查找栏一致。 链接操作 普通点击终端链接(HTTP/OSC 8 URL、文件路径、工作区、终端或任务句柄)会弹出一个紧凑的操作浮层,而不是立即跳转。本地 Web 链接以及由符合条件的 SSH 工作区或经能力验证的配对运行时拥有的链接,会提供 Orca Browser 和 System Browser 选项;较旧的运行时只有系统浏览器。Web 链接还有 Copy link 选项,可以复制解析后的 URL(包括隐藏的 OSC 8 目标)且不关闭浮层 — 文件和工作区目标保持不变。Cmd-点击(macOS)/ Ctrl-点击(Windows / Linux)仍然直接打开,Shift+Cmd / Shift+Ctrl-点击仍使用备用链接路由。 在 Settings → Browser → Terminal URL clicks 下,可以选择普通点击 URL 是打开操作菜单、直接打开,还是等待修饰键。中键点击 URL 的行为可单独设置。修饰键点击仍可用于临时切换路由。 可预览的 HTML 文件链接可以从本地、SSH 和配对运行时工作区在 Orca 中打开;远程文件条目还提供 Download & open with default app。如果链接的文件已在同工作区的另一个标签页中打开,Orca 会激活那个标签页而不是打开重复项。参见「HTML 查看器」。 可在 Settings → Browser → Show terminal link actions 下关闭操作浮层。关闭后,打开链接需要修饰键点击。 复制终端上下文 右键点击终端并选择 Copy Context,可以复制该窗格中的一段有界会话记录。当你想把最近的 agent 输出粘贴到其他工具、又不想发起一个 Orca fork 时很有用。 使用终端标签页右键菜单中的 Copy Session ID,可复制会话标识符,供脚本、支持请求或其他工具使用。 重置终端 如果某个崩溃的程序导致键盘或鼠标模式卡住,右键点击终端并选择 Reset Terminal。它会在宿主和窗格上清除残留的输入模式,但不重启 shell — 当 Shift+Enter 或修饰键无法传递到应用时很有用。 Orca 不再因为「合理猜测程序已死」就关闭这些模式,因此活跃程序在 Ctrl+C 之后仍保留其键盘模式。SSH 终端对崩溃程序的清理方式与本地终端一致。 拖放文件与截图 把文件拖到终端上会在提示符处粘贴其路径。macOS 截图缩略图可以拖入本地 Claude Code 终端或新工作区编辑器;Orca 会给 agent 一份可读取的临时图片副本,让它真正能打开。如果某个拖入的文件被跳过,通知会说明原因。 主题 终端配色主题可在 Settings → Terminal 下配置。Orca 内置了一套常用主题库,并允许你任意自定义。 如果导入了 Ghostty 配色,在 Orca 中选择终端主题时会应用该主题的颜色。切换主题无需删除 Ghostty 配置。 颜色对比度 在 Settings → Terminal → Rendering → Color Contrast 下,选择 Automatic 让 Orca 自动保证终端文本可读,Off 保留主题的暗色和 Powerline 颜色,或 Custom 自行设置 1 到 21 的对比度目标。 Ghostty 导入 如果你使用 Ghostty,Orca 可以在首次启动时导入其主题、字体和光标配置。之后可在 Settings → Terminal → Import from Ghostty 重新执行导入。 Warp 主题导入 如果你在 Warp 里积累了不少主题,可以在 Settings → Terminal 的终端主题选择器中点击 Import themes from Warp,将它们导入为 Orca 终端主题。Orca 会在当前操作系统的 Warp 主题目录中扫描(macOS 为 ~/.warp/themes,Linux 为 $XDG_DATA_HOME/warp-terminal/themes,Windows 为 %APPDATA%\warp\Warp\data\themes),并让你选择要导入哪些 YAML 主题。旁边的 Import from YAML 按钮使用相同的选择器,但指向任意存放 Warp 格式 .yaml/.yml 文件的文件夹 — 当你把主题存放在默认位置之外时很有用。 导入的主题会与 Orca 内置主题一起出现在主题下拉列表中。 默认 shell 在 Settings → Terminal 下选择新本地终端标签页的默认 shell。留空则使用系统默认。Windows 上可选 PowerShell、Command Prompt 和 WSL;当 wsl.exe --status 成功时会自动提供 WSL 选项。该设置只影响新的本地窗格;已有窗格和 SSH shell 保持现有行为。标签页栏上的 + 下拉菜单还提供子菜单,可在不更改默认 shell 的情况下用任意 shell 打开一次性标签页。 要自定义 Unix 默认 shell,打开 Advanced → Shell arguments。保留 -l(默认)以登录 shell 启动,或选择 Custom args 并每行输入一个参数(例如 --rcfile 和它的路径分两行输入)。将自定义列表留空则以无参数方式启动 shell。参见「终端设置」。 macOS 和 Linux 的 shell 启动 默认情况下,macOS 和 Linux 上的本地终端窗格以登录 shell(-l)方式打开系统 shell($SHELL)。使用默认参数时:

zsh 依次从 $ZDOTDIR(未设置时为主目录)读取 .zshenv、.zprofile、.zshrc 和 .zlogin。 bash 先读取 /etc/profile,然后读取 ~/.bash_profile、~/.bash_login 或 ~/.profile 中第一个存在的文件。它不会自行读取 ~/.bashrc。如果你的 PATH 或版本管理器配置(nvm、asdf、mise)放在 ~/.bashrc 里,请从 bash 会读取的登录文件中 source 它 — 多数发行版的默认 ~/.profile 已经这样做了。

当 Orca 使用其 bash 集成包装器时,会以 --rcfile 而非 -l 启动 bash;包装器会 source 相同的登录文件,而不会单独 source ~/.bashrc。 使用自定义 shell 时,你输入的参数会替换普通本地窗格的默认 -l。空列表表示不传参数:此时未包装的交互式 bash 会读取 ~/.bashrc 而非登录文件。当终端守护进程不可用时,Orca 的 bash 或 zsh 集成可以覆盖自定义参数并保持登录启动。Agent 启动、启动命令和一次性 shell 选择不使用此参数设置。 对于位于 WSL 文件系统上的仓库(\\wsl.localhost\...),Orca 通过 wsl.exe -d 启动。对于在 WSL 中打开的 Windows 路径仓库,Orca 会把 cwd 转换为 /mnt//...,并让你进入登录 bash。 Orca 会在受管理的 WSL 终端中自动提供 Orca CLI。 快捷键

Cmd-T — 在当前 worktree 中新建终端标签页。 Cmd-Alt-T(macOS)— 使用默认 agent 新建 agent 标签页。在 Linux 和 Windows 上此组合键默认未绑定;可在 Settings → Shortcuts 中分配(搜索 "New agent tab")。每个受支持的 agent 还有各自的 "New agent tab" 动作 — 绑定组合键后可直接启动特定 CLI,无需经过默认项。 Cmd-W — 关闭当前标签页。 Cmd-\ — 向右拆分。 Cmd-Shift-\ — 向下拆分。

原生按键绑定 Orca 支持 kitty 键盘协议,因此终端应用能收到真正的 Shift+Enter、Ctrl+Enter 以及其他带修饰键的按键 — 这些绑定在 Orca 中的表现与在 Ghostty、WezTerm 或你的原生终端中一致。在 macOS 上,默认的 Auto 模式下 Option/Alt 快捷键可以在 ABC 键盘上传递给终端应用。 通过 kitty 键盘协议实现的原生按键绑定 — Shift+Enter 等按键可以像独立终端中一样准确送达 agent CLI。 macOS 上的日文 JIS 键盘,如果希望物理日元键在终端会话中发送反斜杠,请启用 Settings → Terminal → JIS Yen (¥) to Backslash (\)。 浮动终端 浮动终端是一个全局 shell 界面,无论你在哪个 worktree 或标签页,随时一个组合键即可唤出。新安装默认开启。

用 Cmd+Option+A(macOS)/ Ctrl+Alt+A(Linux/Windows)切换。面板已打开时按同一组合键会聚焦它;已聚焦时再按则关闭。 点击窗口边缘的浮动按钮,或在 Settings → Terminal → Floating terminal 下把触发器移到状态栏。 在同一设置下可设置起始工作目录(默认 ~),让新的浮动标签页落在你预期的位置。 浮动面板拥有自己的标签页,并支持编排设置 — 可以在不占用 worktree 窗格的情况下启动后台运行。

Quick Commands Quick Commands 用于保存你经常运行的终端命令,例如 npm run dev、pnpm test 或项目专属的初始化脚本。也可以保存可复用的 agent 提示词,供 Claude、Codex 等启动时提示词型 agent 使用。可在 Settings → Quick Commands 或标签栏的 Add command 按钮中创建,然后通过 worktree 标签栏的 Quick Commands 分裂按钮或终端右键菜单运行。 每条命令包含标签、命令文本和作用域。选择 Global 表示命令在所有地方可用,选择 Project 则只在特定仓库的 worktree 中显示。标签栏按钮会打开新的终端标签页并运行命令;终端右键菜单可以把命令插入当前终端。使用命令行上的复制控件(设置列表、标签栏菜单或移动端 Quick Commands)可将命令内容复制到剪贴板。 当你使用配对的 Remote Orca Server(或其他执行主机)时,选择器可以并排显示本地和远程命令集,并按主机标注(例如 Local Mac 和 Orca Server)。Saved on 表示命令存储的位置;运行命令时仍在发起它的终端或工作区中执行 — 因此客户端的命令可以在远程 worktree 内运行。不支持多主机 Quick Commands 的旧服务器会回退到仅本地列表。

评论 (0)