终端
终端把当前工作区的命令行环境放进底部面板,适合运行脚本、查看日志和确认长任务状态。面板中的命令由你直接输入;Agent 在会话里执行命令时走 Runtime 的审批与沙箱策略,两种方式的权限设置分别生效。
打开方式
- 入口:右侧工具栏(未显示时展开 更多工具)的 终端,或底部面板的 终端。
- 作用对象:当前工作区;终端进程以工作区根目录作为初始工作目录。
- 前提:已打开工作区,并且本机或远端 Workspace Host 可以启动系统 shell。
- 标签:同一工作区可开多个标签(上限 8 个),支持重命名、关闭其他标签、关闭全部标签和重启进程。
能做什么
| 你要完成的事 | 怎么做 | 产出 |
|---|---|---|
| 运行一次性命令 | 在标签中输入命令并回车 | 终端输出与进程退出状态 |
| 观察长任务 | 保持标签打开,滚动查看持续输出 | 任务进度;关闭标签会结束该终端进程 |
| 分离不同任务 | 新建标签并分别命名 | 按标签隔离的命令行会话 |
| 复现实验步骤 | 把命令写入脚本,在终端执行并记录关键输出 | 可再次执行的命令与退出状态 |
典型流程
- 确认顶部显示的工作区是本任务要操作的项目。
- 打开终端,先运行
pwd和只读命令,确认目录、解释器与依赖。 - 对会写入、联网或安装软件的命令,先核对目标路径、参数和失败后的恢复方式。
- 在会话中说明命令用途,并把关键输出、退出状态或错误信息带回对话。
- 任务结束后检查文件状态;需要长期保留的终端内容请复制到笔记或产物中。
输入、输出与权限
- 读取:命令可以读取当前用户有权限访问的文件、环境变量和网络资源。
- 写入:命令可以修改工作区文件,也可能写入工作区之外;工作目录不是文件系统沙箱。
- 审批或外部影响:终端本身不对每条命令弹审批,安装依赖、联网、覆盖文件等操作按当前用户权限直接生效。
- Agent 执行:Agent 发起的命令由其 Runtime 的审批与沙箱设置治理。不承诺所有命令都免审批,也不保证每条命令都会弹窗。
- 输出保留:命令与输出会随标签保留在当前工作区,关闭标签后不再保留;Agent 发起的命令结果会随工具调用回到会话上下文。
- 不会做什么:不会自动把终端内容写入对话记录;关闭标签会结束对应终端进程,但切换工作区不会自动结束已启动的终端。
已知限制
- 远程工作区中的终端进程运行在远端,输出按增量游标读取;远程受控终端基于管道,不宣称完整伪终端(PTY)兼容。
- 标签上限为 8 个;关闭全部标签会收起面板,未保存的屏幕内容不会恢复。
- 命令是否可用取决于本机或远端的 shell、PATH 和依赖,SciForge 不会替用户安装缺失工具。
- 终端滚动缓冲有限,重要输出应写入文件或日志;长任务应使用可持久化的调度或日志机制。
- 手动终端中的内容不会自动进入 Agent 上下文;要让 Agent 了解,请在会话中粘贴必要片段或让它自己执行命令。
相关页面
实现依据:
@sciforge/domain-terminalv1.0.1。