cligen

command module
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 31, 2026 License: Apache-2.0 Imports: 1 Imported by: 0

README

cligen

GitHub Release GitHub Actions Workflow Status GitHub License GitHub go.mod Go version Github Downloads Static Badge

Cligen is a command line tool to generate go cli applications with a set of sane defaults, including ci/cd and release management. It takes a fair bit of time setting up the basics when building a new cli application, and this tool aims to make that process easier.

Demo

Check out the quickstart to get started: https://twinsnes.github.io/cligen/docs/quickstart/

Included features

  • Multiple scaffolds, basic and interactive prompts using a TUI
  • Automated Release management using goreleaser
  • Automated SBOM generation
  • Automated release notes based on Conventional Commits
  • Automated Homebrew release generation using goreleaser
  • Built in Docs website using Hugo with the Lotus-Docs theme, and released to github pages
  • Automated Demo generation using vhs
  • CI workflows for linting, testing, and security scanning
  • Templates for issues and pull requests

Why did I make this?

I found myself writing quite a few cli tools, and it was always the same boilerplate over and over again, so I decided to create a tool to generate it for me. I could use an LLM to generate a lot of the structure, but I also wanted to make sure I had an opinionated and tested scaffold around building and releasing the app. So I've put together a tool that does it all for me.

This way I have a well-structured base to build on, and I can focus on building the actual app.

I hope that you find it useful, and if you have any feedback or suggestions, please feel free to open an issue or PR.

Installation

Install using homebrew

brew install twinsnes/tap/cligen

This makes cliegen available on your path and works around the MacOS Notarization requirement.

Other installation methods can be found in the docs: https://twinsnes.github.io/cligen/docs/install/

Usage

Call cligen new in the folder you would like to create a new cli application.

Details on usage can be found in the docs: https://twinsnes.github.io/cligen/docs/quickstart/#usage

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis
internal
gen
git

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL