跳转到内容
HTTP 命令 API
WebSocket 流式传输
多人会话
50+ URL 参数
5 种 Shell 环境
展示自动映射
19 个 API 端点
持久化会话
HTTP 命令 API
WebSocket 流式传输
多人会话
50+ URL 参数
5 种 Shell 环境
展示自动映射
19 个 API 端点
持久化会话
HTTP 命令 API
WebSocket 流式传输
多人会话
50+ URL 参数
5 种 Shell 环境
展示自动映射
19 个 API 端点
持久化会话
HTTP 命令 API
WebSocket 流式传输
多人会话
50+ URL 参数
5 种 Shell 环境
展示自动映射
19 个 API 端点
持久化会话
TerminalKit 服务

Terminal

持久化 Linux shell,以 HTTPS 端点暴露。通过 API 运行命令,从任意浏览器连接,或与团队实时协作。

快速入门

# 获取你的令牌

$ curl -X POST \

https://abc123-def456-terminal-1.node-us-1.containers.hoody.com/api/v1/terminal/execute \

-H "Authorization: Bearer $TOKEN" \

-d '{"command":"echo Hello from Hoody!"}'

> { "command_id": "42", "status": "running" }

 

# 运行第一条命令

$ curl \

https://abc123-def456-terminal-1.node-us-1.containers.hoody.com/api/v1/terminal/result/42 \

-H "Authorization: Bearer $TOKEN"

> { "status": "completed", "output": "Hello from Hoody!", "exit_code": 0 }

 

# 分享 URL——任何人都可以连接

https://abc123-def456-terminal-1.node-us-1.containers.hoody.com

URL Structure

URL 就是接口

每个终端都有一个可预测的地址。从左到右读一遍,就知道自己在跟哪个服务、哪个实例、哪个容器打交道。

terminal 服务 URL
https://abc123-def456-terminal-1.node-us-1.containers.hoody.com
abc123

Project

你的项目 ID。

def456

Container

容器 ID。

terminal

Service

哪个 Kit 服务 —— terminal、files、display……

1

Instance

可运行多个:terminal-1、terminal-2、terminal-3。

node-us-1

Server

运行容器的节点。

URL 就是接口。没有端口,没有配置,没有网络搭建。

HTTP API

每条命令都是一次 API 调用

执行是异步的。发出一条命令,拿回一个 ID,再读取结果 —— 或通过 WebSocket 实时流式获取。

1Run it
POST /api/v1/terminal/execute
-d '{"command": "npm test"}'
{
"command_id": "42",
"status": "running"
}

POST 一条命令。立刻拿到 command_id 和 status: running。

2读取结果
GET /api/v1/terminal/result/42
{
"command_id": "42",
"status": "completed",
"output": "24 passed, 0 failed",
"exit_code": 0
}

轮询 result 端点,拿到合并后的输出和退出码。

3或实时流式输出
WS /api/v1/terminal/ws?terminal_id=1
> build started…
> compiling 42 modules
> 24 passed, 0 failed

打开一个 WebSocket,实时获取终端画面帧。

功能

全部内置

每个功能都开箱即用,零配置。Terminal 随每个 Hoody 容器即用即发。

Web 终端

浏览器里的完整终端

在任意设备上打开这个 URL —— 手机、平板、笔记本。整个 Web UI 都通过查询参数配置:shell、字号、只读模式、标题和侧边栏。

?shell=zsh?fontSize=16?readonly=true?title=Prod?panel=/docs

Shell 选择

bash、zsh、fish、tmux、sh——通过 URL 参数切换 Shell。预装且随时可用。

Automation API

发送按键、粘贴文本、等待画面稳定 —— 通过 HTTP 驱动交互式程序。

终端截图

通过 API 将终端状态捕获为 PNG、JPEG 或 GIF。可配置颜色和字体大小,便于文档记录。

实时会话状态

只要会话存活,工作目录、shell 和历史都会保留,并在重连后依然保持。

SSH 连接任意服务器

以远程 SSH 连接的方式打开会话 —— host、user 和 key 都作为参数传入。

HTTP API

19 个端点,完全控制

四个域:命令执行、会话管理、通过 WebSocket 实时流式传输和系统监控。

命令执行

5 endpoints

curl -X POST .../terminal/execute -d '{"command":"npm test"}'

POST
/api/v1/terminal/execute执行命令(同步/异步)
GET
/api/v1/terminal/result/{command_id}轮询异步结果
POST
/api/v1/terminal/execute/{command_id}/abort命令历史
POST
/api/v1/terminal/write捕获为 PNG/JPEG/GIF
GET
/api/v1/terminal/history/{terminal_id}列出活跃会话

会话管理

6 endpoints

curl .../terminal/sessions → [{ "terminal_id": "1", "shell": "bash" }]

GET
/api/v1/terminal/sessions创建新会话
POST
/api/v1/terminal/create终止会话
DELETE
/api/v1/terminal/{terminal_id}调整终端大小
GET
/api/v1/terminal/raw向会话写入
GET
/api/v1/terminal/screenshot会话状态
GET
/api/v1/terminal/openapi.json向会话发送信号

实时流式传输

4 endpoints

WS .../terminal/ws — real-time terminal frames

WS
/api/v1/terminal/ws实时流
POST
/api/v1/terminal/press读取输出缓冲区
POST
/api/v1/terminal/pasteCPU、内存、磁盘、网络
POST
/api/v1/terminal/wait运行中的进程

系统与元数据

7 endpoints

curl .../system/resources → { "cpu": 45.2, "memory": { ... } }

GET
/api/v1/terminal/health向 PID 发送信号
GET
/api/v1/system/resources环境变量
GET
/api/v1/system/processes系统信息
GET
/api/v1/system/processes/{pid}导出原始输出
GET
/api/v1/system/ports监听端口
POST
/api/v1/system/process/signal向 PID 发送信号
GET
/api/v1/system/displays活跃的 X11 显示
使用场景

为真实工作流而生

Terminal 覆盖开发者和自动化场景的全部范围。每个使用场景映射到具体的 API 端点。

  • 01

    远程开发

    GET /terminal/ws

    从任何有浏览器的设备 SSH 进入容器。完整的 shell 访问,持久化会话保留状态。

  • 02

    AI 代理编排

    POST /terminal/execute

    代理通过 HTTP API 执行 shell 命令。构建、测试、部署——Terminal API 为 AI 代理提供完整的系统访问权限。

  • 03

    团队调试

    GET /terminal/sessions

    与团队共享终端 URL 进行多人调试。所有人看到相同输出,可以输入,各有唯一光标颜色。

  • 04

    GUI 应用

    ?display=N

    从终端启动任意图形应用。Firefox、VS Code、GIMP——terminal-N 自动映射到 display-N。

  • 05

    CI/CD 集成

    GET /terminal/result/{id}

    通过 HTTP 运行构建步骤、执行测试、部署产物。将 Terminal 集成到任意 CI 流水线中。

  • 06

    实时监控

    GET /system/resources

    通过 API 获取实时 CPU、内存、磁盘和网络统计数据。列出运行中的进程,发送信号,检查系统信息。

准备探索?

Terminal 是随每个 Hoody 容器附带的 18 个 Kit 服务之一。无需安装,无需配置。

阅读文档