Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Command-Line Apps
  3. shell2http

shell2http

MITGov1.17.0

A minimal HTTP server that executes shell commands via simple HTTP endpoints, ideal for prototyping and remote control.

GitHubGitHub
1.5k stars148 forks0 contributors

What is shell2http?

shell2http is a command-line tool that creates an HTTP server to execute shell commands via defined endpoints. It solves the problem of quickly exposing system scripts or commands as web services for remote access, automation, or testing without writing custom server code.

Target Audience

Developers and system administrators who need to create simple HTTP interfaces for shell scripts, automate tasks via webhooks, or mock APIs during development.

Value Proposition

Developers choose shell2http for its extreme simplicity and zero-configuration approach, allowing them to turn any shell command into a web endpoint instantly, with built-in features like form handling, authentication, and CGI support.

Overview

Executing shell commands via HTTP server

Use Cases

Best For

  • Creating quick HTTP endpoints for system monitoring commands (e.g., top, ps, date)
  • Building simple web interfaces to control local applications or hardware remotely
  • Mocking JSON APIs for frontend development without backend setup
  • Automating tasks via HTTP requests or webhooks in CI/CD pipelines
  • Prototyping microservices by exposing shell scripts as temporary APIs
  • Setting up lightweight HTTP proxies with logging or caching for debugging

Not Ideal For

  • Production APIs requiring robust input validation and security hardening, as shell command exposure risks injection attacks
  • Applications needing real-time features like WebSockets or server-sent events, since it only supports basic HTTP request-response
  • Teams building complex web services with middleware, session management, or database integrations, due to its minimalist, command-focused design

Pros & Cons

Pros

Zero-Boilerplate Setup

Define endpoints and shell commands directly from the command line with just two arguments, eliminating the need for custom server code, as shown in the simple usage examples.

Flexible Form Handling

Parses query parameters and file uploads into environment variables like $v_NNN and $filepath_ID, enabling dynamic script inputs without complex parsing, demonstrated in the form and upload examples.

Built-in Caching

Cache command output for specified seconds using the -cache option to reduce redundant executions, improving efficiency for repetitive requests such as monitoring endpoints.

Cross-Platform Deployment

Available via binaries, Docker, and package managers for macOS, Linux, Windows, and Raspberry Pi, ensuring easy installation and wide compatibility across environments.

Cons

Security Vulnerabilities

Exposing shell commands directly can lead to command injection if user inputs are not sanitized, and the README lacks comprehensive security best practices beyond basic auth.

Limited HTTP Protocol Support

Does not support advanced HTTP features like WebSockets, custom middleware, or complex routing, restricting its use for modern, feature-rich web applications.

Performance Overhead

Each HTTP request spawns a new shell process, which can be slow and resource-intensive under high load compared to dedicated HTTP servers or frameworks.

Frequently Asked Questions

Quick Stats

Stars1,499
Forks148
Contributors0
Open Issues6
Last commit5 days ago
CreatedSince 2015

Tags

#http-server#proxy#remote-control#shell-scripting#http#server#api-mocking#cli-tool#cgi#prototyping#shell#bash#docker#golang#cli#go#automation

Built With

G
Go
D
Docker

Included in

Go169.1kShell36.8kCommand-Line Apps19.2kTerminals Are Sexy12.9k
Auto-fetched 1 day ago

Related Projects

yt-dlpyt-dlp

A feature-rich command-line audio/video downloader

Stars184,125
Forks15,856
Last commit9 days ago
fzffzf

:cherry_blossom: A command-line fuzzy finder

Stars82,536
Forks2,865
Last commit2 days ago
ripgrepripgrep

ripgrep recursively searches directories for a regex pattern while respecting your gitignore

Stars67,265
Forks2,729
Last commit9 days ago
tldrtldr

Collaborative cheatsheets for console commands 📚.

Stars63,391
Forks5,372
Last commit1 day ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub