A simple GUI to launch, monitor and organize your commands. Because nobody should have to juggle 12+ terminal windows just to run their project.
We started building this for ourselves when we got tired of the daily terminal chaos, and figured other developers might find it useful too.
- Keep all your commands organized by project so you never lose track of what belongs where
- Bundle related commands into groups and run them all at once
- See what's running, what's not, and check the logs without switching windows
- Configure working directories however you want - use relative or absolute paths, whatever fits your workflow
- Export and import project configurations to get your whole team on the same page
- Works on macOS, Linux and Windows
Right now commands that use TUI (e.g. ngrok) are not supported, as that require PTY support and the current code relies on commands with stdout
Since Gomander is a new project, we haven't purchased the $100 USD Apple Developer certificate required to sign the application. This means macOS will show a warning that the app is "damaged" or from an "unidentified developer."
To use Gomander on macOS, you'll need to manually remove it from quarantine:
If you downloaded the .app directly:
sudo xattr -d com.apple.quarantine /PATH/TO/YOUR/GOMANDER.appIf you installed via the DMG (most common):
sudo xattr -d com.apple.quarantine /Applications/gomander.appThis is a one-time process (every time you install a new release 😂). Once you run this command, Gomander will launch normally.
We'd love your help making Gomander better! Whether you've found a bug, have an idea for a new feature, or want to contribute code - all contributions are welcome.
- Found a bug? Open an issue and let us know what happened
- Have a feature idea? We're always curious to hear what would make your workflow smoother
- Want to contribute code? Pull requests are always appreciated
For detailed guidelines on coding standards, commit conventions, and testing requirements, please see our Contributing Guide.
Don't hesitate to jump in, even if it's your first contribution to an open source project.
This project is licensed under GPL-3. For more details, check out the LICENSE file.
To get started with development, you'll need to follow the Wails installation guide.
That's it, no extra setup needed beyond what Wails requires.
Once you've got Wails set up, just run:
wails devBefore building, you'll need a couple of prerequisites:
To build for all platforms:
make allWant to see more specific build options? Check them out with:
make helpGomander provides a REST API that enables integration with third-party applications and tools. This API allows you to interact with commands and command groups programmatically.
When Gomander starts, it automatically launches the API server on an available port in the range 9001-9100. To discover the API:
- Send a GET request to any port in this range with the path
/discovery - The first port that responds with a 200 OK status and the following JSON payload is the active Gomander API endpoint:
{ "app": "Gomander" }
The API provides the following main endpoints:
- GET /commands - List all commands with their status (running/stopped)
- POST /commands/{id}/run - Run a specific command
- POST /commands/{id}/stop - Stop a running command
- GET /command-groups - List all command groups with information about running commands
- POST /command-groups/{id}/run - Run all commands in a group
- POST /command-groups/{id}/stop - Stop all running commands in a group
For complete API documentation, refer to the OpenAPI specification file located at:
/cmd/gomander/thirdpartyserver/openapi.yaml
This specification provides detailed information about all endpoints, request parameters, response formats, and possible error codes.