后台命令与终端
后台命令由系统内置“后台命令”插件提供,通过 Agent 的 bash 工具发起;终端标签由用户操作。两者有不同的状态和生命周期。
后台命令
插件初始启用,可在“设置 → 插件”关闭。它与子智能体协作分别启停;关闭后,新任务使用基础 bash,已开始的任务保留首次发送时的插件快照。配置规则见插件。
桌面 bash 支持 description、run_in_background 和毫秒单位的 timeout。显式后台执行立即返回任务 ID;普通命令超过前台等待时间可继续转后台,单独以 sleep 开头的命令按超时终止。
可要求 Agent“在后台启动开发服务”,然后在任务浮窗查看输出。TaskOutput 读取或等待结果,TaskStop 终止任务。完成结果会回传,不需要反复轮询。
| 操作 | 已转后台的命令 |
|---|---|
| 主任务当前回合结束或停止 | 可继续运行 |
| 显式停止该后台任务 | 清理对应进程树 |
| 停止子智能体 | 清理该子智能体所属命令 |
| 归档、删除会话或正常退出应用 | 清理所属命令 |
| 应用异常退出后重新打开 | 恢复历史状态,不自动重启,也不凭旧 PID 认领进程 |
输出直接写本地文件,侧栏展示有界尾部。前后台等待、文件容量和子任务运行期限见进程原理。
终端标签
在右侧新标签页打开终端,初始目录取当前任务工作目录。终端使用本机 Shell,可手动运行开发服务器、测试和 Git。
终端标题使用工作目录末级名称,同一任务的多个终端带序号。切换标签保留同一 PTY 和输出,关闭终端会销毁它。应用窗口重载或 renderer 崩溃会清理侧栏 PTY,工具后台命令仍由后台插件运行时独立管理。
主题随应用调整。macOS 可以只读检测本机终端配置的字体和 ANSI 色,缺失或无效时采用默认值,不修改 Shell 启动文件或系统终端设置。
常见情况
- 服务启动后不退出通常是正常常驻行为,可转后台后用浏览器面板访问。
- 停止主回复后服务还在,应在任务浮窗单独停止后台命令。
- 终端关闭后命令结束,不表示所有由工具启动的后台任务都结束。
- 重启后看到失联历史,应确认真实进程状态,不根据历史 PID 随意杀进程。
原理:Bash、后台任务与 PTY。