name: spawn-terminal description: “打开一个新的终端窗口来运行CLI命令(ffmpeg、curl、python等)。用于非AI命令执行。”
目的
打开一个新的终端窗口来执行CLI命令。此技能用于通用命令执行,而非用于启动AI智能体。如需启动AI智能体,请改用spawn:agent技能。
变量
| 变量 | 默认值 | 描述 |
|---|---|---|
| LOG_TO_FILE | false | 将完整的终端输出写入调试文件 |
| CAPTURE | false | 阻塞并直接返回输出 |
使用说明
强制要求 - 您必须按顺序遵循以下工作流程步骤。请勿跳过任何步骤。
- 识别用户想要运行的CLI命令
- 首先运行
<command> --help以验证语法和选项 - 使用
fork_terminal()在新终端中执行命令
红色标志 - 停止并遵循操作手册
如果您即将:
- 在不检查其
--help的情况下执行命令 - 假设您知道命令语法
- 跳过
--help步骤(“因为它很简单”) - 启动AI智能体(请改用
spawn:agent)
停止 -> 首先运行<command> --help -> 查看输出 -> 然后继续
工作流程
强制检查点 - 在继续之前验证每一项:
- [ ] 理解用户的请求
- [ ] 验证:这是一个CLI命令,而非AI智能体请求
- [ ] 阅读:
../agent/fork_terminal.py以了解工具 - [ ] 遵循操作手册:阅读
./cookbook/cli-command.md - [ ] 检查点:已运行
<command> --help并查看了选项 - [ ] 执行
fork_terminal(command, log_to_file=False, log_agent_output=False)
操作手册
CLI命令
- 如果:用户请求任何非AI的CLI命令(ffmpeg、curl、python、npm等)
- 那么:阅读并执行
./cookbook/cli-command.md - 示例:
- “创建一个新终端来运行ffmpeg”
- “用curl打开一个终端”
- “分叉一个终端来运行python script.py”
- “新终端:npm run build”
用法
fork_terminal()函数位于../agent/fork_terminal.py:
from spawn.agent.fork_terminal import fork_terminal
# 简单命令执行(不捕获输出)
fork_terminal("npm run build")
# 带有调试输出捕获
file_path = fork_terminal("ffmpeg -i video.mp4 output.gif", log_to_file=True)
# 阻塞式捕获(等待完成)
output = fork_terminal("python script.py", capture=True, log_to_file=True)
何时改用spawn:agent
如果用户提到以下任何内容,请使用spawn:agent:
- Claude, Claude Code
- Codex, OpenAI
- Gemini, Google
- Cursor
- OpenCode
- Copilot, GitHub Copilot
- “AI智能体”、“编码智能体”、“启动智能体”