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.

  • Our Free Plans just got better! | Auth0 Icon
    Our Free Plans just got better! | Auth0

    With up to 25k MAUs and unlimited Okta connections, our Free Plan lets you focus on what you do best—building great apps.

    You asked, we delivered! Auth0 is excited to expand our Free and Paid plans to include more options so you can focus on building, deploying, and scaling applications without having to worry about your security. Auth0 now, thank yourself later.
    Try free now
  • AI-powered service management for IT and enterprise teams Icon
    AI-powered service management for IT and enterprise teams

    Enterprise-grade ITSM, for every business

    Give your IT, operations, and business teams the ability to deliver exceptional services—without the complexity. Maximize operational efficiency with refreshingly simple, AI-powered Freshservice.
    Try it Free
  • 1
    IPATool

    IPATool

    Command-line tool that allows searching and downloading app packages

    ipatool is a command line tool that allows you to search for iOS apps on the App Store and download a copy of the app package, known as an ipa file. Supported operating system (Windows, Linux or macOS). Apple ID is set up to use the App Store. To authenticate with the App Store, use the auth command. To search for apps on the App Store, use the search command. To obtain a license for an app, use the purchase command. To download a copy of the ipa file, use the download command.
    Downloads: 35 This Week
    Last Update:
    See Project
  • 2
    saml2aws

    saml2aws

    CLI tool which enables you to login and retrieve AWS credentials

    CLI tool which enables you to log in and retrieve AWS temporary credentials using ADFS or PingFederate Identity Providers. Aside from Okta, most of the providers in this project are using screen scraping to log users into SAML, this isn't ideal and hopefully, vendors make this easier in the future.
    Downloads: 18 This Week
    Last Update:
    See Project
  • 3
    LXD

    LXD

    Powerful system container and virtual machine manager

    LXD is a next-generation system container and virtual machine manager. It offers a unified user experience around full Linux systems running inside containers or virtual machines. LXD is image based and provides images for a wide number of Linux distributions. It provides flexibility and scalability for various use cases, with support for different storage backends and network types and the option to install on hardware ranging from an individual laptop or cloud instance to a full server rack. When using LXD, you can manage your instances (containers and VMs) with a simple command line tool, directly through the REST API or by using third-party tools and integrations. LXD implements a single REST API for both local and remote access. The LXD project was founded and is currently led by Canonical Ltd with contributions from a range of other companies and individual contributors.
    Downloads: 12 This Week
    Last Update:
    See Project
  • 4
    NextDNS

    NextDNS

    NextDNS CLI client (DoH Proxy)

    NextDNS protects you from all kinds of security threats, blocks ads and trackers on websites and in apps and provides a safe and supervised Internet for kids, on all devices and on all networks. Determine your threat model and fine-tune your security strategy by enabling 10+ different types of protections. Use the most trusted threat intelligence feeds containing millions of malicious domains, all updated in real-time. Go beyond the domain, we analyze DNS questions and answers on-the-fly (in a matter of nanoseconds) in order to detect and block malicious behavior. With usually only a few hours between domain registration and the start of an attack, our threat intelligence system is built to catch malicious domains earlier than classic security solutions. Block ads and trackers on websites and in apps, including the most devious ones. Use the most popular ads & trackers blocklists, millions of domains all updated in real-time.
    Downloads: 12 This Week
    Last Update:
    See Project
  • Crowdtesting That Delivers | Testeum Icon
    Crowdtesting That Delivers | Testeum

    Unfixed bugs delaying your launch? Test with real users globally – check it out for free, results in days.

    Testeum connects your software, app, or website to a worldwide network of testers, delivering detailed feedback in under 48 hours. Ensure functionality and refine UX on real devices, all at a fraction of traditional costs. Trusted by startups and enterprises alike, our platform streamlines quality assurance with actionable insights.
    Click to perfect your product now.
  • 5
    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: 8 This Week
    Last Update:
    See Project
  • 6
    arduino-cli

    arduino-cli

    Arduino command line tool

    Arduino CLI is an all-in-one solution that provides Boards/Library Managers, sketch builders, board detection, uploader, and many other tools needed to use any Arduino compatible board and platform from the command line or machine interfaces. In addition to being a standalone tool, Arduino CLI is the heart of all official Arduino development software (Arduino IDE, Arduino Web Editor). The script requires sh, which is always available on Linux and macOS. sh is not available by default on Windows, though it is available as part of Git for Windows (Git Bash). If you don't have sh available, use the "Download" installation option. If you would like to use the arduino-cli command from any location, install Arduino CLI to a directory already in your PATH or add the Arduino CLI installation path to your PATH environment variable.
    Downloads: 7 This Week
    Last Update:
    See Project
  • 7
    Kubefirst CLI

    Kubefirst CLI

    The Kubefirst Open Source Platform

    kubefirst is a free, fully automated, and instantly operational open source platform that includes some of the most popular open source tools available in the Kubernetes space, all working together in a click. By running our installer in your cloud, you'll get a GitOps cloud management and application delivery ecosystem complete with automated Terraform workflows, Vault secrets management, GitLab or GitHub integrations with Argo, and a demo application that demonstrates how it all pieces together. With kubefirst k3d, you can explore some of the best parts of the kubefirst platform running for free on a local k3d cluster in 5 minutes - without any cloud costs or domain prerequisites. Our AWS cloud platform can accommodate all the needs of your enterprise. All you need is a domain in addition to a hosted zone, and within 35 minutes of running a single command, you'll have a secure EKS infrastructure management and application delivery platform.
    Downloads: 6 This Week
    Last Update:
    See Project
  • 8
    Pluto

    Pluto

    A cli tool to help discover deprecated apiVersions in Kubernetes

    Kubernetes sometimes deprecates API versions. Most notably, a large number of deprecations happened in the 1.16 release. This is fine, and it's a fairly easy thing to deal with. However, it can be difficult to find all the places where you might have used a version that will be deprecated in your next upgrade. You might think, "I'll just ask the api-server to tell me!", but this is fraught with danger. If you ask the API-server to give you deployments.v1.apps, and the deployment was deployed as deployments.v1beta1.extensions, the API-server will quite happily convert the API version and return a manifest with apps/v1. This is fairly well outlined in the discussion of this issue.
    Downloads: 5 This Week
    Last Update:
    See Project
  • 9
    eksctl

    eksctl

    The official CLI for Amazon EKS

    eksctl is a simple CLI tool for creating clusters on EKS - Amazon's newly managed Kubernetes service for EC2. It is written in Go, and uses CloudFormation. eksctl is available to install from official releases as described below. We recommend that you install eksctl from only the official GitHub releases. You may opt to use a third-party installer, but please be advised that AWS does not maintain nor support these methods of installation. Use them at your own discretion. You will need to have AWS API credentials configured. What works for AWS CLI or any other tools (kops, Terraform, etc.) should be sufficient. You can use ~/.aws/credentials file or environment variables.
    Downloads: 5 This Week
    Last Update:
    See Project
  • Test your software product anywhere in the world Icon
    Test your software product anywhere in the world

    Get feedback from real people across 190+ countries with the devices, environments, and payment instruments you need for your perfect test.

    Global App Testing is a managed pool of freelancers used by Google, Meta, Microsoft, and other world-beating software companies.
    Try us today.
  • 10
    CFSSL

    CFSSL

    Cloudflare's PKI and TLS toolkit

    CFSSL is CloudFlare's PKI/TLS swiss army knife. It is both a command line tool and an HTTP API server for signing, verifying, and bundling TLS certificates. It requires Go 1.12+ to build. Note that certain linux distributions have certain algorithms removed (RHEL-based distributions in particular), so the golang from the official repositories will not work. Users of these distributions should install go manually to install CFSSL. You can set the GOOS and GOARCH environment variables to have Go cross compile for alternative platforms; however, cfssl requires cgo, and cgo requires a working compiler toolchain for the target platform. The csr is the client's certificate request. The -ca and -ca-key flags are the CA's certificate and private key, respectively. By default, they are ca.pem and ca_key.pem. The -hostname is a comma separated hostname list that overrides the DNS names and IP address in the certificate SAN extension.
    Downloads: 4 This Week
    Last Update:
    See Project
  • 11
    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: 3 This Week
    Last Update:
    See Project
  • 12
    cli

    cli

    GitHub’s official command line tool

    Work with issues, pull requests, checks, releases and more. Call the GitHub API to script almost any action, and set a custom alias for any command. Connect to GitHub Enterprise Server in addition to GitHub. Allow contributors to easily notify you of changes they've pushed to a repository, with access limited to the contributors you specify. Easily merge changes you accept. Visual Studio Code is backed by high-performance VMs that start in seconds. Get updates on the GitHub activity you've subscribed to. Use the notifications inbox to customize, triage, and manage your updates. Review new code, see visual code changes, and confidently merge code changes with automated status checks. Assign code reviews to make it clear which team members should submit their review for a pull request. Automatically request reviews–or require approval, by selected contributors when changes are made to sections of code that they own.
    Downloads: 2 This Week
    Last Update:
    See Project
  • 13
    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: 2 This Week
    Last Update:
    See Project
  • 14
    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: 1 This Week
    Last Update:
    See Project
  • 15
    Swagger 2.0

    Swagger 2.0

    Swagger 2.0 implementation for go

    This package contains a golang implementation of Swagger 2.0 (aka OpenAPI 2.0), it knows how to serialize and deserialize swagger specifications. With the largest ecosystem of API tooling on the planet, thousands of developers are supporting Swagger in almost every modern programming language and deployment environment. With a Swagger-enabled API, you get interactive documentation, client SDK generation and discoverability. We created Swagger to help fulfill the promise of APIs. Swagger helps companies like Apigee, Getty Images, Intuit, LivingSocial, McKesson, Microsoft, Morningstar, and PayPal build the best possible services with RESTful APIs. Now in version 2.0, Swagger is more enabling than ever. And it's 100% open-source software. go-swagger brings to the go community a complete suite of fully-featured, high-performance, API components to work with a Swagger API, server, client, and data model.
    Downloads: 1 This Week
    Last Update:
    See Project
  • 16
    AKS Engine

    AKS Engine

    AKS Engine units of Kubernetes on Azure!

    AKS Engine is an ARM template-driven way to provision a self-managed Kubernetes cluster on Azure. By leveraging ARM (Azure Resource Manager), AKS Engine helps you create, destroy and maintain clusters provisioned with basic IaaS resources in Azure. AKS Engine has limited support for ongoing operational capabilities such as scaling, in-place upgrades, and extensions. The Cluster API Provider for Azure a.k.a. CAPZ provides more complete operational capabilities. AKS Engine remains the tool for managing Kubernetes clusters on Azure Stack Hub as CAPZ does not yet work there. Read the CLI Overview for a list of features provided by the aks-engine command-line tool. The Quickstart Guide describes how to download the latest release of aks-engine for your environment, and demonstrates how to use aks-engine to create a Kubernetes cluster on Azure that you will manage and customize.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 17
    Bank Vaults

    Bank Vaults

    K8s operator, Go client with automatic token renewal

    The Vault Swiss Army knife, which makes enterprise-grade security attainable on Kubernetes. It has many 'blades' that cut through the security problem: the Bank-Vaults operator provides automation; a Go client with automatic token renewal that provides dynamic secret generation, multiple unseal options, and more; a CLI tool to initialize, unseal and configure Vault with authentication methods and secret engines; and direct secret injection into Pods to reduce the attack surface. Automates the entire Vault lifecycle in your Kubernetes clusters. Provides seamless integration with non-Vault-aware applications without storing the decrypted secret anywhere. Vault is the de-facto standard for secret management in cloud-native environments. Bank-Vaults provides various tools for Hashicorp Vault to make its use easier. A wrapper for the official Vault client with automatic token renewal, built in Kubernetes support, and a dynamic database credential provider.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 18
    Bank-Vaults

    Bank-Vaults

    CLI tool to init, unseal and configure Vault

    Bank Vaults is a thick, tricky, shifty right with a fast and intense tube for experienced surfers only, located on Mentawai. Think heavy steel doors, secret unlocking combinations and burly guards with smack-down attitude. Watch out for clean-up sets. Bank-Vaults provides tools that make using and operating Hashicorp Vault easier. It's a wrapper for the official Vault client with automatic token renewal and built-in Kubernetes support, dynamic database credential provider for Golang database/sql based clients. It has a CLI tool to automatically initialize, unseal, and configure Vault. It also provides a Kubernetes operator for provisioning, and a mutating webhook for injecting secrets.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 19
    Chart Testing

    Chart Testing

    CLI tool for linting and testing Helm charts

    ct is the tool for testing Helm charts. It is meant to be used for linting and testing pull requests. It automatically detects charts changed against the target branch.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 20
    Dbmate

    Dbmate

    A lightweight, framework-agnostic database migration tool

    Dbmate is a database migration tool, to keep your database schema in sync across multiple developers and your production servers. It is a standalone command line tool, which can be used with Go, Node.js, Python, Ruby, PHP, or any other language or framework you are using to write database-backed applications. This is especially helpful if you are writing many services in different languages, and want to maintain some sanity with consistent development tools. Supports MySQL, PostgreSQL, SQLite, and ClickHouse. Uses plain SQL for writing schema migrations. Migrations are timestamp-versioned, to avoid version number conflicts with multiple developers. Migrations are run atomically inside a transaction. Supports creating and dropping databases (handy in development/test). Supports saving a schema.sql file to easily diff schema changes in git. Database connection URL is defined using an environment variable (DATABASE_URL by default), or specified on the command line.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 21
    Distributed Code Review For Git

    Distributed Code Review For Git

    Distributed code review system for Git repos

    This repo contains a command-line tool for performing code reviews on git repositories. This tool is a distributed code review system for git repos. By "distributed", we mean that code reviews are stored inside of the repository as git objects. Every developer on your team has their own copy of the review history that they can push or pull. When pulling, updates from the remote repo are automatically merged by the tool. This design removes the need for any sort of server-side setup. As a result, this tool can work with any git hosting provider, and the only setup required is installing the client on your workstation. he git command-line tool is configured with the credentials it needs to push to and pull from the remote repos. The code review data is stored in git-notes, using the formats described below. Each item stored is written as a single line of JSON, and is written with at most one such item per line.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 22
    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
  • 23
    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
  • 24
    Gum

    Gum

    A tool for glamorous shell scripts

    A tool for glamorous shell scripts. Leverage the power of Bubbles and Lip Gloss in your scripts and aliases without writing any Go code! Gum provides highly configurable, ready-to-use utilities to help you write useful shell scripts and dotfiles aliases with just a few lines of code. Let's build a simple script to help you write Conventional Commits for your dotfiles. Use a package manager. gum is designed to be embedded in scripts and supports all sorts of use cases. Components are configurable and customizable to fit your theme and use case. You can customize with --flags. See gum <command> --help for a full view of each command's customization and configuration options. You can also use ENVIRONMENT_VARIABLES to customize gum by default, this is useful to keep a consistent theme for all your gum commands.
    Downloads: 0 This Week
    Last Update:
    See Project
  • 25
    Hilbish

    Hilbish

    The Moon-powered shell! A comfy and extensible shell for Lua fans

    Hilbish is an extensible shell designed to be highly customizable. It is configured in Lua and provides a good range of features. It aims to be easy to use for anyone but powerful enough for those who need it. The motivation for choosing Lua was that it's simpler and better to use than an old shell script. It's fine for basic interactive shell uses, but that's the only place Hilbish has shell script; everything else is Lua and aims to be infinitely configurable. Hilbish is configured and scripted in the Lua programming language. This removes all the old, ugly things about Shell script and introduces everything good about Lua, including other languages (Fennel, Lua derivatives). Hilbish provides the user with proper menus for completions and history usage. Want to see your previous commands? Hit Ctrl-R. Hilbish offers a bunch of features to make your interactive shell experience rich. Things like syntax highlighting and hinting available via the Lua API.
    Downloads: 0 This Week
    Last Update:
    See Project
  • Previous
  • You're on page 1
  • 2
  • Next
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.