A remote terminal API.
Project description
⚡ Open Terminal
A lightweight API for running shell commands remotely — designed for AI agents and automation.
The container ships with a full toolkit (Python, git, jq, curl, build tools, and more) and runs as a non-root user with passwordless sudo.
Getting Started
Docker (recommended)
docker run -d --name open-terminal --restart unless-stopped -p 8000:8000 -v open-terminal:/home/user -e OPEN_TERMINAL_API_KEY=your-secret-key ghcr.io/open-webui/open-terminal
If no API key is provided, one is auto-generated and printed on startup (docker logs open-terminal).
Build from Source
docker build -t open-terminal .
docker run -p 8000:8000 open-terminal
Bare Metal
pip install open-terminal
open-terminal run --host 0.0.0.0 --port 8000 --api-key your-secret-key
Quick Examples
Run a command:
curl -X POST http://localhost:8000/execute?wait=5 \
-H "Authorization: Bearer <api-key>" \
-H "Content-Type: application/json" \
-d '{"command": "echo hello"}'
Upload a file:
curl -X POST "http://localhost:8000/files/upload?directory=/home/user&url=https://example.com/data.csv" \
-H "Authorization: Bearer <api-key>"
API Docs
Full interactive API documentation is available at http://localhost:8000/docs.
License
MIT — see LICENSE for details.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file open_terminal-0.2.3.tar.gz.
File metadata
- Download URL: open_terminal-0.2.3.tar.gz
- Upload date:
- Size: 13.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d00b8e9478e58040fd811888d09738201dc31c3eb7876de6df8cb76d8a61ea79
|
|
| MD5 |
a7f599bbdc45a4f64891672a8acd25c6
|
|
| BLAKE2b-256 |
2f7e085185ffaee8f70a2454768e3f3bd5cfabfeeb40749278caadb0d8e0e4fd
|
File details
Details for the file open_terminal-0.2.3-py3-none-any.whl.
File metadata
- Download URL: open_terminal-0.2.3-py3-none-any.whl
- Upload date:
- Size: 12.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.8.0
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
067556265ff116b797671eb10b7eeb9a129dddf07a4ea7d3796bd363cbd1b52e
|
|
| MD5 |
17b828484f933374a6d59a27251cb7ec
|
|
| BLAKE2b-256 |
c1297edcdf9aa5260cbfc65df211664c54ae9d86de03dd7a523dd8f850052115
|