Every Hoody container includes 18 HTTP services — your complete toolkit for building, deploying, and operating software. No installation. No configuration. Just instant HTTP access to everything you need.
The revolutionary part: Each service is a URL. Open it in a browser. Use it from your phone. Embed it in an iframe. Share it with a teammate. Control it via AI. Access it all through Hoody OS — a floating-window web-based operating system that lives inside each of your containers — or type ssh hoody.com for the same OS in your terminal. Everything is accessible because everything is HTTP.
Screenshot Needed
Hoody OS Workspaces — multiple Kit services visible as floating windows: terminal, file browser, SQLite query interface, AI agent chat, and display viewer Multiple services visible at once through Hoody OS Workspaces
These 18 services unlock unlimited potential—not through rigid feature sets, but through creative combination.
Each service is designed to be complete on its own while composing naturally with others :
Terminals can execute any command—but pair with Displays and GUI apps appear instantly
Files can access any storage—but integrate with SQLite for indexed metadata or Exec for automated processing
Agent can orchestrate workflows—but give it Terminal access and it controls your entire infrastructure
Browser can automate web tasks—but combine with cURL for API integration and SQLite for result storage
The pattern: One service enables the task. Two services multiply capability. Three or more services create workflows impossible on traditional platforms.
You’re not limited to “supported features.” With HTTP as the universal interface, every service can talk to every other service. Build workflows we never imagined—because the tools compose infinitely through HTTP.
This is intentional. Each service is a primitive. Your creativity determines what they become.
When you spawn a container with hoody_kit: true, you immediately get URLs for all 18 services:
https://PROJECT-CONTAINER-terminal-1.SERVER.containers.hoody.icu
https://PROJECT-CONTAINER-display-1.SERVER.containers.hoody.icu
https://PROJECT-CONTAINER-files-1.SERVER.containers.hoody.icu
https://PROJECT-CONTAINER-sqlite-1.SERVER.containers.hoody.icu
https://PROJECT-CONTAINER-exec-1.SERVER.containers.hoody.icu
https://PROJECT-CONTAINER-browser-1.SERVER.containers.hoody.icu
https://PROJECT-CONTAINER-workspaces-1.SERVER.containers.hoody.icu
https://PROJECT-CONTAINER-code-1.SERVER.containers.hoody.icu
https://PROJECT-CONTAINER-curl-1.SERVER.containers.hoody.icu
https://PROJECT-CONTAINER-n-1.SERVER.containers.hoody.icu # Notifications
https://PROJECT-CONTAINER-daemon-1.SERVER.containers.hoody.icu
https://PROJECT-CONTAINER-cron-1.SERVER.containers.hoody.icu
https://PROJECT-CONTAINER-pipe-1.SERVER.containers.hoody.icu
https://PROJECT-CONTAINER-notes-1.SERVER.containers.hoody.icu
https://PROJECT-CONTAINER-watch-1.SERVER.containers.hoody.icu
https://PROJECT-CONTAINER-run-1.SERVER.containers.hoody.icu # Run
https://PROJECT-CONTAINER-logs-1.SERVER.containers.hoody.icu # Proxy Logs
https://PROJECT-CONTAINER-tunnel-1.SERVER.containers.hoody.icu
No setup. No installation. Already running. Just use the URLs.
Hoody Agent includes a production-ready Model Context Protocol (MCP) client that connects to external MCP servers, dynamically discovering their tools at runtime.
Dynamic Tool Discovery : The number of available tools depends on which MCP servers you connect — there is no fixed list.
Local & Remote Servers : Supports local MCP servers (via stdio) and remote MCP servers (via StreamableHTTP/SSE).
OAuth Authentication : Full OAuth flow for authenticated remote MCP servers.
Safety First : Destructive operations require confirmation.
🖥️ Workspaces (Hoody UI)
Your floating operating system —manage all containers, projects, and services from one browser interface.
Key Capabilities:
Unified dashboard for all containers
Drag-and-drop workspace layouts
Embed multiple containers in one view
Share entire workspace with a URL
Access from any device
Perfect for: Project management, monitoring, client presentations
Learn More →
🔤 Terminals
Execute shell commands via HTTP —your Linux terminal as a web service, accessible from anywhere.
Key Capabilities:
Web terminal UI in browser
HTTP command execution API
Multiple terminal instances per container
Session state persistence (cwd, env, history)
SSH to remote servers (no client needed)
Launch GUI apps instantly
Perfect for: Command execution, automation, remote server management, AI agent control
Learn More → • API Reference →
🖼️ Displays
Remote desktop via HTTP —run graphical applications and see them in your browser. Zero configuration.
Key Capabilities:
Full Linux desktop in browser
Multiple display instances (one app per display)
Auto-mapping with terminals (terminal-5 → display-5)
Session sharing for multiplayer
Screenshot API
Perfect for: Visual development tools, GUI applications, browser automation, design software
Learn More → • API Reference →
📂 Files
Unified file access via HTTP —read, download, and manage files across local storage and 60+ cloud providers.
Key Capabilities:
Web File Manager UI
HTTP file streaming
60+ cloud storage integrations
File integrity verification (hashes)
Shared Storage cross-container access
Perfect for: Cloud aggregation, download verification, cross-container file sharing
Learn More → • API Reference →
🗄️ SQLite
Database via HTTP —SQLite queries and KV store accessible through HTTP endpoints.
Key Capabilities:
Web Database UI
SQL operations via HTTP
KV store with time-travel
SQLite Drive for multi-container access
Atomic operations and batch updates
Perfect for: Configuration management, feature flags, session storage, shared state
Learn More → • API Reference →
⚡ Exec
Execute any script via HTTP —turn code into instant API endpoints with dependency management and AI generation.
Key Capabilities:
Run TypeScript/JavaScript/Python/Bash via HTTP
Automatic dependency installation
AI-powered script generation
MITM capabilities (intercept/modify services)
Built-in logging and monitoring
Perfect for: API endpoints, webhooks, automation, service customization
Learn More → • API Reference →
🌐 cURL
HTTP requests as a service —make web requests from your container with scheduling, sessions, and storage.
Key Capabilities:
Wrap POST into GET - Turn any POST request into a GET URL (infinite workflows, zero constraints)
Execute HTTP requests via API
Request scheduling (cron-like)
Session management (cookies, headers)
Response storage and history
Perfect for: API integrations, web scraping, scheduled tasks, workflow automation
Learn More → • API Reference →
🌍 Browser
Chrome automation via HTTP —control Chromium instances through REST API for testing and automation.
Key Capabilities:
Browser instance management
Page interaction (click, type, scroll)
Screenshot capture
Network interception
Health monitoring
Perfect for: Web scraping, automated testing, screenshot services
Learn More → • API Reference →
⚙️ Daemons
Process management via HTTP —manage long-running background services through HTTP API.
Key Capabilities:
Daemon lifecycle control (start/stop/restart)
Process monitoring and health checks
Log aggregation
Auto-restart on failure
Resource usage tracking
Perfect for: Background services, worker processes, monitoring daemons
Learn More → • API Reference →
🕐 Cron
Managed cron jobs via HTTP —create, update, enable/disable, and auto-expire scheduled tasks through a REST API.
Key Capabilities:
Managed entries with UUID, metadata, and comments
Enable/disable without deletion
Auto-expiration with background cleanup
Per-user crontab management
Raw crontab read/write for full control
Standard 5-field cron + macros (@hourly, @daily, etc.)
Perfect for: Scheduled backups, periodic data processing, maintenance tasks, temporary monitoring
Learn More → • API Reference →
🔔 Notifications
Push notifications via HTTP —trigger desktop/mobile notifications through HTTP endpoints.
Key Capabilities:
Desktop push notifications
Custom icons and sounds
Notification history
WebSocket streaming
Toast/banner/alert styles
Perfect for: Build alerts, monitoring notifications, user engagement
Learn More → • API Reference →
💻 Code
VS Code in browser via HTTP —full-featured code editor accessible through web URL.
Key Capabilities:
Complete VS Code experience
Extensions and themes
Terminal integration
Multi-instance support
Health monitoring
Perfect for: Web-based development, collaborative coding, mobile development
Learn More → • API Reference →
📡 Pipe
Streaming data transfer over HTTP —named pipes over the internet. Send to a path, receive from the same path, data flows through in real-time.
Key Capabilities:
Real-time streaming (not store-and-forward)
Multi-receiver fan-out (up to 256 receivers)
Built-in video player for screen sharing
Progress spectating via SSE
Multipart uploads from browser
Binary-clean transport — bring your own encryption (e.g. openssl enc | curl -T -) for end-to-end secrecy
Perfect for: Screen sharing, file transfers, live data piping, event forwarding, multiplayer collaboration
Learn More →
📝 Notes
Collaborative notes via HTTP —realtime multi-user notes, inline databases, and file attachments.
Key Capabilities:
Realtime multi-user editing
Inline tables / databases
File attachments per note
REST + WebSocket API
Perfect for: Shared runbooks, team knowledge bases, embedded checklists
API Reference →
👁️ Watch
File system watchers via HTTP —recursive path monitoring streamed over SSE or WebSocket.
Key Capabilities:
Recursive directory watching (Linux inotify)
SSE streaming
WebSocket streaming
Pattern filters
Perfect for: Build triggers, live reload, file-change-driven automation
API Reference →
🚀 Run
Multi-source app resolver —query app names across Nix, pkgx, AppImage, Docker/OCI, and manifest registries; get back the exact shell command.
Key Capabilities:
Search across 9+ package sources in one query
Candidate ranking (manual or first-match)
Exact shell command output (agent-friendly)
Path-based launch URLs
Per-user profiles
Perfect for: AI agent app discovery, portable install flows, cross-source launchers
API Reference →
📜 Proxy Logs
Access logs from Hoody Proxy via HTTP —query and tail the request log for the container.
Key Capabilities:
Query historical access logs
Live tail over SSE / WebSocket
Filter by path, method, status, time range
Perfect for: Debugging access issues, traffic analysis, audit trails
API Reference →
🔌 Tunnel
TCP tunneling over HTTP —expose local services online or pull remote services into the container through the relay.
Key Capabilities:
Expose HTTP/WS/TCP services to the internet
Pull remote TCP services into the container loopback
Session-based control plane
URL/port bindings management
Perfect for: Sharing local dev servers, bridging networks, remote access
Learn More →
Traditional approach: Install tools on your computer. Each requires setup, configuration, dependencies, compatibility checks. Switching computers means reinstalling everything.
Hoody approach: Everything is a URL. Open the URL, you have the tool. Works on any device with a browser—phone, tablet, laptop, or TV.
Need a terminal? Open the terminal URL.
Need a database? Open the SQLite URL.
Need VS Code? Open the code URL.
No installation. No configuration. Just URLs.
Because everything speaks HTTP, everything composes:
// Terminal executes command that queries database
fetch ( terminalUrl + ' /api/v1/terminal/execute ' , {
command: ` curl -X POST ${ sqliteUrl } /api/v1/sqlite/db?db=app -H 'Content-Type: application/json' -d '{"transaction":[{"query":"SELECT * FROM users"}]}' `
// Exec script reads file, processes data, stores in database
fetch ( execUrl + ' /process-data.ts ' , {
input_file: filesUrl + ' /data/input.csv ' ,
// Agent orchestrates entire workflow across all services
fetch ( agentUrl + ' /api/v1/agent/prompt ' , {
ai: " Deploy the app using terminal, monitor with browser, store logs in database " ,
Each service is independent. Together, they’re a complete development environment.
The 18 services organize into 4 logical groups:
See and control your containers:
Terminals - Command-line interface via HTTP
Displays - Graphical desktop in browser
Browser - Automated Chrome for testing/scraping
Pipe - Streaming data transfer between any devices
Store and access information:
Files - Unified file system with cloud storage
SQLite - Database and KV store
Notes - Collaborative notes, databases, and files
Run code and coordinate systems:
Exec - Execute scripts as HTTP endpoints
cURL - HTTP requests with scheduling
Run - Multi-source app resolver (Nix, pkgx, AppImage, Docker/OCI)
Manage and observe systems:
Daemons - Background process management
Cron - Managed cron job scheduling
Notifications - Push alerts and updates
Code - Web-based IDE
Watch - File and event watchers
Proxy Logs - Access logs from Hoody Proxy
Tunnel - TCP tunneling over HTTP
Workspaces - Global management UI
Here’s the power: You can run multiple instances of most services in the SAME container:
terminal-1, terminal-2, terminal-3, terminal-4...
display-1, display-2, display-3, display-4...
exec-1, exec-2, exec-3...
sqlite-1, sqlite-2, sqlite-3...
browser-1, browser-2, browser-3...
curl-1, curl-2, curl-3...
daemon-1, daemon-2, daemon-3...
cron-1, cron-2, cron-3...
code-1, code-2, code-3...
pipe-1, pipe-2, pipe-3...
Why this matters:
Separation of concerns - Terminal-1 for frontend, terminal-2 for backend, terminal-3 for database
Parallel operations - Run tests in exec-1 while building in exec-2
Specialized agents - Agent-1 for code, agent-2 for docs, agent-3 for DevOps
Multi-user collaboration - Each user gets their own terminal/display instance
All instances share the same container filesystem, processes, and network —it’s one computer with multiple access points.
terminal-5.hoody.icu → firefox &
# See in display-5 (auto-mapped)
display-5.hoody.icu → Firefox appears
GUI applications automatically appear in matching display numbers. Zero configuration.
# Terminal with embedded agent panel
terminal-1.hoody.icu/?panel=...workspaces-1.hoody.icu&panel-width=40%
AI assistant helps with commands, explains output, suggests best practices—all in one window.
// Read CSV from cloud storage
const data = await fetch ( filesUrl + ' /google-drive/data.csv ' );
// Process with exec script
const processed = await fetch ( execUrl + ' /etl.ts ' , {
await fetch ( sqliteUrl + ' /api/v1/sqlite/db?db=analytics ' , {
transaction: [{ statement: ' INSERT INTO analytics VALUES (...) ' }]
Services compose naturally through HTTP.
// Agent has access to all container services
const agent = await fetch ( agentUrl + ' /api/v1/agent/prompt ' , {
headers: { ' Content-Type ' : ' application/json ' },
ai: " Set up production environment " ,
// 1. Terminal - Install dependencies
// 2. Files - Download config from cloud
// 3. SQLite - Initialize database schema
// 4. Exec - Run deployment script
// 5. Notifications - Alert when complete
One task description. Multiple services orchestrated.
Problem: Need to code from your phone/tablet but VS Code requires desktop OS.
Solution:
code-1.hoody.icu → Full VS Code in mobile browser
terminal-1.hoody.icu → Run builds and tests
display-1.hoody.icu → Preview GUI applications
Your complete development environment, accessible from any device.
Problem: Managing 10+ projects switching between terminals, editors, databases.
Solution:
Workspace shows all projects
├─ Project A: terminal-1, display-1, sqlite-1 (frontend app)
├─ Project B: terminal-1, agent-1, exec-1 (API service)
├─ Project C: browser-1, curl-1, sqlite-1 (scraper)
└─ Project D: terminal-1, code-1, files (docs site)
One workspace. All projects visible. Click to access any service instantly.
Problem: AI agents can’t install tools or access infrastructure.
Solution:
workspaces-1.hoody.icu → AI has HTTP access to:
├─ terminal (execute commands)
├─ files (read/write code)
└─ browser (test web apps)
AI orchestrates entire development workflow via HTTP. Human approves critical decisions.
Problem: Share development environment with team across time zones.
Solution:
# Share workspace URL with team
https://abc123-def456-workspaces-1.node-us-1.containers.hoody.icu
- Live terminal sessions (multiplayer)
- Shared displays (see what others see)
Everyone works in the same environment, from anywhere.
How to find service URLs after spawning a container:
When you create a container, the response includes server details:
"server_name" : " node-us-1 " ,
Construct URLs:
https://abc123-def456-terminal-1.node-us-1.containers.hoody.icu
https://abc123-def456-display-1.node-us-1.containers.hoody.icu
Open Workspaces, select your container, see all service URLs with copy buttons.
GET /api/v1/containers/{container_id}
Returns full container details including computed service URLs.
Don’t use a terminal when exec makes more sense:
❌ terminal.run/execute → cd /app && npm test && echo "done"
✅ exec.run/test-runner.ts → Clean script with logging, error handling, proper structure
Don’t use exec when terminal is simpler:
❌ Create exec script just to run ls -la
✅ terminal.run/execute → {"command": "ls -la"}
Give instances semantic meaning:
terminal-1 → Frontend work
terminal-2 → Backend work
terminal-3 → Database management
terminal-4 → DevOps/deployment
Services work better together:
Terminal + Display → Visual debugging
Files + SQLite → Data pipelines
Agent + Everything → Full autonomy
Browser + Exec → Web automation
Terminal + Agent Panel → AI-assisted development
For cross-container workflows:
/hoody/shared/ → Files accessible from all containers
/hoody/databases/ → SQLite databases accessible from all containers
See Shared Storage → and SQLite Drive →
Yes, when you create a container with hoody_kit: true. If you set hoody_kit: false, you get a plain Linux container without these HTTP services (SSH access only)—useful for minimal containers or custom setups.
Currently, all services come together. However, unused services consume minimal resources (they only activate when accessed). A terminal service that never receives requests uses almost no CPU/memory.
They share the same filesystem, processes, and network. A file created via the Files service is immediately readable via Terminal. A database created via SQLite is accessible from Exec scripts. They’re all running on the same Linux computer.
Yes! Terminals and Displays support multiplayer—multiple users typing in the same terminal or seeing the same desktop. Other services (Files, SQLite, Exec) are accessible simultaneously with standard HTTP concurrency.
Snapshots capture the complete container state, including all services and their data. When you restore a snapshot, all services come back exactly as they were—terminal history, file contents, database state, daemon configurations.
No. Proxy permissions control access to ALL services in a container. Set permissions once at the project or container level, and it applies to terminals, displays, files, SQLite, exec, etc.
Yes. Containers on the same server can communicate via internal networking. Use Shared Storage (/hoody/shared/) for file sharing or SQLite Drive (/hoody/databases/) for database sharing across containers.
All of them! Every service is web-native:
Terminals → Embed live shell
Displays → Embed desktop view
Files → Embed file browser
SQLite → Embed database UI
Code → Embed VS Code
Agent → Embed chat interface
This is how you build custom dashboards—compose service iframes.
Problem: https://abc123-def456-terminal-1.node-us.containers.hoody.icu returns 404
Causes:
Container not running - Check status: GET /api/v1/containers/{id}
Wrong URL format - Verify project_id, container_id, server_name are correct
Proxy permissions - Service might be blocked by permissions
Solutions:
# Verify container is running
curl " https://api.hoody.icu/api/v1/containers/{container_id} " \
-H " Authorization: Bearer $HOODY_TOKEN " | jq ' .data.status '
# Check server name matches
# Should be: node-us-1, node-eu-1, etc. (check container response)
# Verify proxy permissions allow access
curl " https://api.hoody.icu/api/v1/containers/{container_id}/proxy/permissions " \
-H " Authorization: Bearer $HOODY_TOKEN "
Problem: Service URLs are very slow to respond
Causes:
Server overloaded - Too many containers/processes on server
Network congestion - High traffic on container
Resource limits - Container out of CPU/memory
Solutions:
# Check server resource usage
curl " https://abc123-def456-terminal-1.node-us.containers.hoody.icu/api/v1/system/resources "
# Check running processes
curl " https://abc123-def456-terminal-1.node-us.containers.hoody.icu/api/v1/system/processes?sort=cpu "
# Consider moving to less loaded server or upgrading server resources
Problem: Service works from laptop but not from phone/public WiFi
Cause: Proxy permissions restrict access by IP or require authentication
Solution:
# Check current permissions
GET /api/v1/containers/{id}/proxy/permissions
# Update to allow your IP or remove IP restrictions
PUT /api/v1/containers/{id}/proxy/permissions
See Proxy Permissions → for access control details.
Explore individual services:
Understand the platform:
See complete technical specs:
The Hoody Kit turns every container into a complete computing environment.
18 HTTP services. Zero installation. Infinite possibilities.
Everything you need, accessible via URL.