Browse free open source Go Command Line Tools and projects below. Use the toggles on the left to filter open source Go Command Line Tools by OS, license, language, programming language, and project status.

  • Simple, Secure Domain Registration Icon
    Simple, Secure Domain Registration

    Get your domain at wholesale price. Cloudflare offers simple, secure registration with no markups, plus free DNS, CDN, and SSL integration.

    Register or renew your domain and pay only what we pay. No markups, hidden fees, or surprise add-ons. Choose from over 400 TLDs (.com, .ai, .dev). Every domain is integrated with Cloudflare's industry-leading DNS, CDN, and free SSL to make your site faster and more secure. Simple, secure, at-cost domain registration.
    Sign up for free
  • Level Up Your Cyber Defense with External Threat Management Icon
    Level Up Your Cyber Defense with External Threat Management

    See every risk before it hits. From exposed data to dark web chatter. All in one unified view.

    Move beyond alerts. Gain full visibility, context, and control over your external attack surface to stay ahead of every threat.
    Try for Free
  • 1
    Diun

    Diun

    Receive notifications when an image is updated on a Docker registry

    Diun is a CLI application written in Go and delivered as a single executable (and a Docker image) to receive notifications when a Docker image is updated on a Docker registry. With Go, this can be done with an independent binary distribution across all platforms and architectures that Go supports. This support includes Linux, macOS, and Windows, on architectures like amd64, i386, ARM, PowerPC, and others.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 2
    Fortio

    Fortio

    Fortio load testing library, command line tool, advanced echo server

    Fortio (Φορτίο) started as, and is, Istio’s load testing tool and later (2018) graduated to be its own open-source project. Fortio runs at a specified query per second (qps) and records an histogram of execution time and calculates percentiles (e.g. p99 ie the response time such as 99% of the requests take less than that number (in seconds, SI unit)). It can run for a set duration, for a fixed number of calls, or until interrupted (at a constant target QPS, or max speed/load per connection/thread). Fortio is a fast, small (4Mb docker image, minimal dependencies), reusable, embeddable go library as well as a command line tool and server process, the server includes a simple web UI and REST API to trigger run and see graphical representation of the results (both a single latency graph and a multiple results comparative min, max, avg, qps and percentiles graphs).
    Downloads: 0 This Week
    Last Update:
    See Project
  • 3
    GoForge

    GoForge

    GoForge is a command-line interface (CLI) tool

    A Go-based CLI tool for building, testing, and managing secure web applications.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 4
    Helmify

    Helmify

    Creates Helm chart from Kubernetes yaml

    CLI that creates Helm charts from Kubernetes manifests. Helmify reads a list of supported k8s objects from stdin and converts it to a helm chart. Designed to generate charts for k8s operators but not limited to. See examples of charts generated by Helmify.
    Downloads: 0 This Week
    Last Update:
    See Project
  • The All-in-One Commerce Platform for Businesses - Shopify Icon
    The All-in-One Commerce Platform for Businesses - Shopify

    Shopify offers plans for anyone that wants to sell products online and build an ecommerce store, small to mid-sized businesses as well as enterprise

    Shopify is a leading all-in-one commerce platform that enables businesses to start, build, and grow their online and physical stores. It offers tools to create customized websites, manage inventory, process payments, and sell across multiple channels including online, in-person, wholesale, and global markets. The platform includes integrated marketing tools, analytics, and customer engagement features to help merchants reach and retain customers. Shopify supports thousands of third-party apps and offers developer-friendly APIs for custom solutions. With world-class checkout technology, Shopify powers over 150 million high-intent shoppers worldwide. Its reliable, scalable infrastructure ensures fast performance and seamless operations at any business size.
    Learn More
  • 5
    Massren

    Massren

    massren - easily rename multiple files using your text editor

    Massren is a command line tool that can be used to rename multiple files using your own text editor. Multiple-rename tools are usually difficult to use from the command line since any regular expression needs to be escaped, and each tool uses its own syntax and flavor of regex. The advantage of massren is that you are using the text editor you use every day, so can use all its features. The tool works by creating a file that contains the filenames of the target directory and opening this file in the text editor. You can then modify the filenames there directly. Once done, save the text file and the files will be renamed. Lines that are not changed will simply be ignored.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 6
    Nunu

    Nunu

    A CLI tool for building Go applications

    Nunu is a CLI scaffolding tool for building Go applications; it aggregates and encapsulates popular Go ecosystem libraries to provide a modular, high‑performance, extensible foundation, complete with documentation and test support. Nunu is a scaffolding tool for building Go applications. Its name comes from a game character in League of Legends, a little boy riding on the shoulders of a Yeti. Just like Nunu, this project stands on the shoulders of giants, as it is built upon a combination of popular libraries from the Go ecosystem. This combination allows you to quickly build efficient and reliable applications. Nunu encapsulates popular libraries that Gophers are familiar with, allowing you to easily customize the application to meet specific requirements.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 7
    PingMe

    PingMe

    PingMe is a CLI which provides the ability to send messages or alerts

    PingMe is a personal project to satisfy my need to have alerts, most major platforms have integration to send alerts but it's not always useful, either you are stuck with one particular platform, or you have to do a lot of integrations. I needed a small utility that I could just call from my backup scripts, cron jobs, CI/CD pipelines, or from anywhere to send a message with particular information. And I can ship it everywhere with ease. Hence, the birth of PingMe. Everything is configurable via environment variables, and you can simply export the logs or messages to a variable that will be sent as a message, most of all this serves as a swiss army knife sort of tool that supports multiple platforms.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 8
    Revel

    Revel

    A high productivity, full-stack web framework for the Go language

    Edit, save, and refresh. Revel compiles your code and templates for you, so you don't miss a beat. Code doesn't compile? It gives you a helpful description. Run-time code panic? Revel has you covered. Revel provides routing, parameter parsing, validation, session/flash, templating, caching, job running, a testing framework, and even internationalization. Revel is built around composable middleware called filters, which implement nearly all request-processing functionality. Developers have the freedom to replace the default filters with custom implementations. Already have an application started ? No problems, migrate easily to Revel by passing the path that you want your mux to handle to Revels Mux, and all requests for that path will be passed to that your Http muxer. Revel has modules. These are reusable MVC components that you can implement across all your projects. No need to copy and paste your code with these.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 9
    Skicka

    Skicka

    Command-line utility for working with Google Drive

    skicka is a fast, no-nonsense command-line tool for interacting with Google Drive, designed for developers and power users who want repeatable, scriptable file workflows. It handles uploads, downloads, and synchronization while mapping Drive’s IDs and folder hierarchy into a predictable local view. The utility focuses on resilience and correctness: it tracks checksums, resumable transfers, and modification times so large operations can be paused and resumed safely. Because it’s written as a single, portable binary, skicka drops neatly into CI jobs, cron tasks, or container images without extra dependencies. It supports partial trees and ignore patterns, making it easy to back up only what you need or mirror specific project directories. Thoughtful defaults and clear diagnostics help prevent accidental overwrites while keeping common tasks to a single command.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Gen AI apps are built with MongoDB Atlas Icon
    Gen AI apps are built with MongoDB Atlas

    Build gen AI apps with an all-in-one modern database: MongoDB Atlas

    MongoDB Atlas provides built-in vector search and a flexible document model so developers can build, scale, and run gen AI apps without stitching together multiple databases. From LLM integration to semantic search, Atlas simplifies your AI architecture—and it’s free to get started.
    Start Free
  • 10
    bee

    bee

    Bee is a tool for helping develop with beego app framework

    Bee is a command-line tool facilitating the development of a Beego-based application. Then you can add bee binary to PATH environment variable in your ~/.bashrc or ~/.bash_profile file. Bee provides a variety of commands which can be helpful at various stages of development. To display the current version of bee, beego and go installed on your machine. You can also change the output format using -o flag. Inspired by makefile / npm scripts. Run script allows you to run arbitrary commands using Bee. Custom commands are provided from the "scripts" object inside bee.json or Beefile. Bee also comes with a source code generator which speeds up the development.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 11
    chkit

    chkit

    Desktop CLI client for Containerum

    Chkit is a desktop CLI client for Containerum. Before using chkit to work with Containerum you have to specify the address of your API. Use chkit with your own Kubernetes cluster or use chkit with Containerum Online. By default chkit connects to Containerum Online platform. To learn more about chkit commands, please refer to the Docs section on our website.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 12
    go-wkhtmltopdf

    go-wkhtmltopdf

    Golang commandline wrapper for wkhtmltopdf

    We needed a way to generate PDF documents from Go. These vary from invoices with highly customizable layouts to reports with tables, graphs and images. In our opinion, the best way to do this was by using HTML/CSS templates as a source for our PDFs. Using CSS print media types and millimeters instead of pixel units we can generate very accurate PDF documents using wkhtmltopdf. It takes care of setting the correct order of options as these can become very long with multiple pages where you have page and TOC options for each page. It makes usage in server-type applications easier, every instance (PDF process) has its own output buffer which contains the PDF output and you can feed one input document from an io.Reader (using stdin in wkhtmltopdf). You can combine any number of external HTML documents (HTTP(S) links) with at most one HTML document from stdin and set options for each input document.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 13
    grpc_health_probe

    grpc_health_probe

    A command-line tool to perform health-checks for gRPC applications

    A command-line tool to perform health checks for gRPC applications in Kubernetes and elsewhere.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 14
    jackal

    jackal

    Instant messaging server for the Extensible Messaging

    jackal is a free, open-source, high-performance XMPP server that aims to be known for its stability, simple configuration and low resource consumption. Customizable, enforced SSL/TLS. Stream compression (zlib), database connectivity for storing offline messages and user settings (PostgreSQL 9.5+, BoltDB). Caching (Redis 6.2+), clustering capabilities (etcd 3.4+) Expose Prometheus metrics, cross-platform (OS X, Linux). To make it easy to install jackal via Helm in Kubernetes a chart has been included into this repository. After completing database setup and starting jackal service you'll have to register a new user to be able to login. To do so, you can use jackal command-line tool to create a new user proving name and password.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 15
    kubeaudit

    kubeaudit

    kubeaudit helps you audit your Kubernetes clusters

    kubeaudit helps you audit your Kubernetes clusters against common security controls.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 16
    kubefwd

    kubefwd

    Bulk port forwarding Kubernetes services for local development

    Kubernetes port forwarding for local development. kubefwd is a command line utility built to port forward multiple services within one or more namespaces on one or more Kubernetes clusters. kubefwd uses the same port exposed by the service and forwards it from a loopback IP address on your local workstation. kubefwd temporally adds domain entries to your /etc/hosts file with the service names it forwards. When working on our local workstation, my team and I often build applications that access services through their service names and ports within a Kubernetes namespace. kubefwd allows us to develop locally with services available as they would be in the cluster.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 17
    ldetool

    ldetool

    Code generator for fast log file parsers

    ldetool (Line Data Extraction Tool) is a command-line utility that generates Go code for fast log file parsing. By defining parsing rules, developers can produce efficient parsers tailored to specific log formats, outperforming traditional regex-based approaches. It's particularly useful for processing large volumes of log data.​
    Downloads: 0 This Week
    Last Update:
    See Project
  • 18
    pcp - Peer Copy

    pcp - Peer Copy

    Command line peer-to-peer data transfer tool based on libp2p

    Command line peer-to-peer data transfer tool based on libp2p. There already exists a long list of file transfer tools, so why bother building another one? The problem I had with the existing tools is that they rely on a limited set of servers to orchestrate peer matching and data relaying which poses a centralization concern. Many of the usual centralization vs. decentralization arguments apply here, e.g. the servers are single points of failure, the service operator has the power over whom to serve and whom not, etc. Further, as this recent issue in croc shows, this is a real risk for the sustainable operation of the provided service.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 19
    pv-migrate

    pv-migrate

    CLI tool to easily migrate Kubernetes persistent volumes

    pv-migrate is a CLI tool/kubectl plugin to easily migrate the contents of one Kubernetes PersistentVolumeClaim to another. On Kubernetes, if you need to rename a resource (like a Deployment) or to move it to a different namespace, you can simply create a copy of its manifest with the new namespace and/or name and apply it. However, it is not as simple with PersistentVolumeClaim resources: They are not only metadata, but they also store data in the underlying storage backend. In these cases, moving the data stored in the PVC can become a problem, making migrations more difficult.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 20
    reg

    reg

    Docker registry v2 command line client and repo listing generator

    Docker registry v2 command line client and repo listing generator with security checks. We do not allow users to pass all the custom certificate flags on commands because it is unnecessarily messy and can be handled through Linux itself. Which we believe is a better user experience than having to pass three different flags just to communicate with a registry using self-signed or private certificates.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 21
    sq data wrangler

    sq data wrangler

    sq data wrangler

    sq is a command line tool that provides jq-style access to structured data sources: SQL databases, or document formats like CSV or Excel. sq executes jq-like queries, or database-native SQL. It can join across sources: join a CSV file to a Postgres table, or MySQL with Excel. sq outputs to a multitude of formats including JSON, Excel, CSV, HTML, Markdown and XML, and can insert query results directly to a SQL database. sq can also inspect sources to view metadata about the source structure (tables, columns, size). You can use sq diff to compare tables, or entire databases. sq has commands for common database operations to copy, truncate, and drop tables.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 22
    wait4x

    wait4x

    Wait4X allows you to wait for a port or a service to enter the request

    wait4x is a command-line utility for waiting on the availability of TCP, HTTP(s), and command-based targets. It is useful in scripts and containerized environments to ensure dependencies are ready before proceeding. wait4x is designed to be a drop-in replacement for other wait tools, but with more flexibility and protocol support.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 23
    yamlfmt

    yamlfmt

    An extensible command line tool or library to format yaml files

    yamlfmt is an extensible formatter that makes YAML files consistent and easy to read across large repositories. It focuses on practical concerns unique to YAML—multi-document streams, anchors and aliases, comments, and block scalars—so a reformat doesn’t destroy semantics or helpful annotations. The tool ships as a single, distributable binary and can also be used as a library, making it simple to drop into CI and editor workflows. Configuration is file-based, allowing teams to pin indentation, line wrapping, and other house-style choices repo-wide. By normalizing structure while preserving meaning, it reduces diff noise and merge friction in configs, Kubernetes manifests, and automation playbooks. The project is intentionally extensible, so organizations can add custom formatters or rules without forking.
    Downloads: 0 This Week
    Last Update:
    See Project
Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.