跳转到内容
首页 / kit / terminal
TerminalKit 服务

Terminal

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

快速入门

# 获取你的令牌

$ curl https://your-terminal.hoody.com/token

> eyJhbG...

 

# 运行第一条命令

$ curl -X POST .../api/v1/terminal/execute \

-H "Authorization: Bearer $TOKEN" \

-d '["command":"echo Hello from Hoody!","wait":true]'

> ["success":true,"stdout":"Hello from Hoody!\n","duration_ms":3]

 

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

https://proj-dev-terminal-1.server.containers.hoody.com

首页 / kit / terminal / 功能
工作原理

五种使用终端的方式

Terminal 适应你的工作方式。通过 HTTP 执行命令,通过 WebSocket 流式传输构建输出,与团队协作或监控系统。

terminal-1

通过 HTTP 执行命令

向任意终端会话 POST shell 命令,获取包含 stdout、stderr、退出码和计时信息的结构化 JSON。

# 之前 / 之后

- ssh user@server 'ls -la /app' 2>/dev/null

+ curl -X POST terminal.hoody.com/api/v1/terminal/execute -d '["command":"ls -la /app"]'

$ curl -X POST /api/v1/terminal/execute \

-d '["command": "npm test", "wait": true]'

 

> HTTP/1.1 200 OK

> [

> "success": true,

> "exit_code": 0,

> "stdout": "24 passed, 0 failed",

> "duration_ms": 12

> ]

执行1/5
首页 / kit / terminal / api
HTTP API

每条命令都是一次 API 调用

POST 命令,获取包含 stdout、stderr、退出码和计时元数据的结构化 JSON 响应。支持同步和异步模式。

查看所有端点
terminal-api.sh

# Execute a command via Terminal HTTP API

curl -X POST \

https://proj-dev-terminal-1.hoody.com/api/v1/terminal/execute \

-H "Content-Type: application/json" \

-H "Authorization: Bearer $TOKEN" \

-d '{

"command": "ls -la /app",

"wait": true

}'

 

# Response:

# {

# "success": true,

# "exit_code": 0,

# "stdout": "total 48\ndrwxr-xr-x ...",

# "stderr": "",

# "duration_ms": 12

# }

首页 / kit / terminal / 更多
使用场景

为真实工作流而生

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

远程开发

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

AI 代理编排

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

团队调试

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

GUI 应用

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

CI/CD 集成

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

实时监控

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

首页 / kit / terminal / 端点
HTTP API

19 个端点,完全控制

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

会话管理

7 endpoints

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

GET
/api/v1/terminal/sessions列出活跃会话
POST
/api/v1/terminal/sessions创建新会话
DELETE
/api/v1/terminal/sessions/:id终止会话
POST
/api/v1/terminal/sessions/:id/resize调整终端大小
POST
/api/v1/terminal/sessions/:id/write向会话写入
GET
/api/v1/terminal/sessions/:id/status会话状态
POST
/api/v1/terminal/sessions/:id/signal向会话发送信号

系统与元数据

6 endpoints

curl .../system/resources → {cpu: 45%, mem: 8GB}

GET
/api/v1/system/resourcesCPU、内存、磁盘、网络
GET
/api/v1/system/processes运行中的进程
POST
/api/v1/system/process/signal向 PID 发送信号
GET
/api/v1/system/env环境变量
GET
/api/v1/system/info系统信息
GET
/api/v1/terminal/raw导出原始输出

命令执行

4 endpoints

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

POST
/api/v1/terminal/execute执行命令(同步/异步)
GET
/api/v1/terminal/result/:id轮询异步结果
GET
/api/v1/terminal/history/:id命令历史
GET
/api/v1/terminal/screenshot捕获为 PNG/JPEG/GIF

实时流式传输

2 endpoints

WS .../sessions/1/ws → real-time stdout frames

WS
/api/v1/terminal/sessions/:id/ws实时流
GET
/api/v1/terminal/sessions/:id/buffer读取输出缓冲区
首页 / kit / terminal / 更多
功能

全部内置

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

持久化会话

工作目录、环境变量、Shell 历史——一切在浏览器关闭和重连后依然保留。

Shell 选择

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

tmux 桥接

tmux 会话在 Web 和 SSH 访问之间共享。浏览器中的 terminal-3 映射到 SSH 上的 tmux 会话 3。

终端截图

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

会话重置

单个 URL 参数即可终止所有进程、清除环境、重置工作目录。干净的白板。

OpenAPI 规范

在 /api/v1/terminal/openapi.json 提供自文档化 API。自动生成任意语言的类型化客户端。

首页 / kit / terminal / 开始

准备探索?

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

阅读文档