Chrome 网页本地终端
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_15292d5a/yjkj-terminal-in-chrome。
技能介绍
要解决什么问题
在浏览器里查文档、看 Dashboard 或调试 Web 应用时,你往往还要切到独立终端窗口执行命令。Chrome 扩展 Web Terminal 可以在当前网页里叠一层可拖拽缩放的终端 UI(基于 xterm.js),但真正的 shell 进程不能跑在扩展沙箱里,必须有一台本机后端通过 WebSocket 把 PTY 桥接出来。
terminal-in-chrome 这类技能面向的是:你已经在用(或准备加载)该扩展,需要 Agent 帮你启停、排查本地 Node 服务,而不是每次自己记目录和端口。
技能如何工作
架构上分两块,技能主要管 Server(/server) 这一段:
- 本地服务:轻量 Node.js 监听
ws://localhost:8989,用node-pty拉起本机 bash 或 zsh。 - 扩展侧:Chrome 扩展把终端画进页面,经 WebSocket 连回上述地址(扩展目录在仓库的
extension,需自行「加载已解压的扩展程序」)。
Agent 可响应的运维动作包括:
- 启动:进入 server 目录并在后台跑 Node 服务(固定 8989 端口)。
- 停止:查找占用 8989 的进程并结束。
- 状态:检查 8989 是否被监听,判断服务是否在跑。
扩展使用上:在任意网页用 Ctrl + \(macOS 为 Cmd + J)开关终端,拖动上边框调整高度。
适用边界与注意点
- 服务只在本机有效;端口 8989 被占用时需先停旧进程或改部署(技能默认按 8989 处理)。
- 技能不包含替你安装 Chrome 扩展或打包上架;扩展需开发者模式加载仓库中的
web-terminal-extension/extension路径(以 SKILL 说明为准)。 - 在不可信页面注入终端会扩大误操作面(本机 shell 权限不变),敏感环境请自行评估是否在特定站点启用。
使用场景
- 在 Chrome 里用网页终端扩展查 API 文档时,先确认本机 8989 端口的 Node 后端已启动再连 WebSocket
- 扩展注入的 xterm 黑屏或连不上,需要查 8989 是否被占用并结束旧进程后重启 server
- 演示「任意网页内嵌 bash」前,让 Agent 后台拉起 `/server` 并检查 terminal backend 是否在跑
- 切换 shell 或更新 node-pty 依赖后,需要停掉占用 8989 的进程再重新启动终端服务
适合人员
- 本地开发 Chrome unpacked 扩展、需要在改代码后反复启停 8989 后端的前端工程师
- 习惯在 Stack Overflow 或内部 Wiki 页面里开叠加终端、不想手动 cd 到 server 目录跑 Node 的全栈开发者
- 帮同事排查「网页里终端打不开」、要快速执行 status/stop/start 的 IT 支持或平台组同学
- 维护 yayayahei 仓库里 terminal-in-chrome 技能、用自然语言代管本机 PTY 服务的自动化 Agent 使用者