bunster: Compile Shell Scripts into Static Binaries

Summary
Bunster transpiles shell scripts into Go and builds them as standalone binaries, rather than bundling a script that still needs a shell. It is aimed at developers distributing shell-based tools, but currently supports only a subset of Bash features.
At a glance
- Language
- Go
- License
- BSD-3-Clause
- Stars
- 2.7k
- Forks
- 71
- Added to OSRepos
- April 13, 2026
- Last analyzed
- October 3, 2026
Use at your own risk
OSRepos shares public repositories for knowledge and discovery only. Any installation, execution, configuration, or use of code from these repositories is the user's own responsibility. Always review the repository, source code, dependencies, licenses, and security implications before running or installing anything. OSRepos is not responsible for issues, damages, or losses resulting from third-party repositories.
Overview
Bunster is a compiler for shell scripts: it transpiles scripts into Go code and uses the Go toolchain to build executable binaries. Unlike a wrapper, the result does not depend on an external shell at runtime.
It is intended for people who want to distribute shell-based programs as portable binaries or organize them as modules. Bash compatibility is a goal, but the project is still developing and currently implements only a subset of features.
Key Features
- Compiles shell scripts into standalone binaries rather than embedding the original script in a wrapper.
- Transpiles scripts to Go and delegates executable building to the Go toolchain.
- Provides a module system for splitting code across files.
- Includes a package manager for publishing and consuming modules.
- Supports loading
.envfiles at runtime. - Can embed files and directories into compiled programs for runtime use.
- Offers declared flags parsing and work-in-progress static analysis.
Use Cases
- A shell-script author who wants to distribute a command-line tool without requiring users to have a shell installed at runtime.
- A team packaging internal scripts as binaries for easier deployment across environments.
- Developers organizing a growing shell-based project into reusable modules.
- Script authors who want embedded assets or built-in flag handling instead of implementing those pieces manually.
Project Facts
- Language: Go
- License: BSD-3-Clause
- Stars: 2.7k
- Forks: 71
- Topics: aot, bash, compiler, go, shell
- Archived: No
Getting Started
Install with the project’s installer:
curl -f https://bunster.netlify.app/install.sh | bash
See the README and documentation for installation options and usage details.
Alternatives
- Nuitka: Nuitka compiles Python programs into C-based executables, rather than transpiling a subset of Bash into Go.
Considerations
Bunster describes itself as being in an early stage, and only a subset of shell features is supported. Bash compatibility is a stated goal, not a guarantee that every Bash script will work. The project says support for additional shells is not planned before its first stable v1 release. Bunster uses the Go toolchain to compile generated code.
Comparisons
Source repository
Open the original repository on GitHub.
15 counted GitHub visits
Related repositories
Similar repositories that may be relevant next.

ai-observer: Monitor AI Coding Assistant Usage Locally
October 4, 2026
AI Observer is a self-hosted OpenTelemetry backend and dashboard for tracking usage across local AI coding assistants. It brings token and cost data, traces, logs, and metrics together in DuckDB, with both OTLP ingestion and file-based import or watching for supported tools.

e2a: Email API for Applications and AI Agents
September 29, 2026
e2a provides an email API and relay for applications and AI agents. It supports transactional sending, inbound mailboxes, and agent replies, with optional human review and hosted or Docker-based deployment.

router: Route AI Requests to the Best Model
September 28, 2026
weave-os/router is a Go proxy that routes AI requests across configured model providers, while accepting Anthropic, OpenAI, and Gemini API formats. It suits developers who want model choice and routing behind one endpoint, including agent and coding-tool users.

ksail: Create and Operate Kubernetes Clusters
September 27, 2026
KSail is a Go-based toolkit for creating and operating Kubernetes clusters across local, nested, and cloud providers. It brings provisioning, GitOps, secrets, cluster operations, and AI interfaces into one tool, for developers and platform teams who want a unified workflow.