A library to parse command line arguments for Golang application.
This library provides the following functionalities:
- Supports POSIX & GNU like short and long options.
- This library supports
--option. - This library doesn't support numeric short option.
- This library supports not
-ofoobut-o=fooas an alternative to-o foofor short option.
- This library supports
- Supports parsing with option configurations.
- Supports parsing with a struct which stores option values and has struct tags of fields.
- Is able to parse command line arguments including sub commands.
- Generates help text from option configurations.
import "github.com/sttk/cliargs"
The usage of this library is described on the overview in the go package document.
See https://pkg.go.dev/github.com/sttk/cliargs#pkg-overview
This library supports Go 1.18 or later.
% gvm-fav
Now using version go1.18.10
go version go1.18.10 darwin/amd64
ok github.com/sttk/cliargs 0.409s coverage: 97.6% of statements
ok github.com/sttk/cliargs/errors 0.631s coverage: 100.0% of statements
ok github.com/sttk/cliargs/validators 0.328s coverage: 100.0% of statements
Now using version go1.19.13
go version go1.19.13 darwin/amd64
ok github.com/sttk/cliargs 0.393s coverage: 97.6% of statements
ok github.com/sttk/cliargs/errors 0.635s coverage: 100.0% of statements
ok github.com/sttk/cliargs/validators 0.330s coverage: 100.0% of statements
Now using version go1.20.14
go version go1.20.14 darwin/amd64
ok github.com/sttk/cliargs 0.310s coverage: 97.6% of statements
ok github.com/sttk/cliargs/errors 0.590s coverage: 100.0% of statements
ok github.com/sttk/cliargs/validators 0.872s coverage: 100.0% of statements
Now using version go1.21.13
go version go1.21.13 darwin/amd64
ok github.com/sttk/cliargs 0.319s coverage: 97.6% of statements
ok github.com/sttk/cliargs/errors 0.617s coverage: 100.0% of statements
ok github.com/sttk/cliargs/validators 0.914s coverage: 100.0% of statements
Now using version go1.22.12
go version go1.22.12 darwin/amd64
ok github.com/sttk/cliargs 0.317s coverage: 97.6% of statements
ok github.com/sttk/cliargs/errors 0.895s coverage: 100.0% of statements
ok github.com/sttk/cliargs/validators 0.606s coverage: 100.0% of statements
Now using version go1.23.10
go version go1.23.10 darwin/amd64
ok github.com/sttk/cliargs 0.320s coverage: 97.6% of statements
ok github.com/sttk/cliargs/errors 0.611s coverage: 100.0% of statements
ok github.com/sttk/cliargs/validators 0.903s coverage: 100.0% of statements
Now using version go1.24.6
go version go1.24.6 darwin/amd64
ok github.com/sttk/cliargs 0.943s coverage: 97.6% of statements
ok github.com/sttk/cliargs/errors 0.329s coverage: 100.0% of statements
ok github.com/sttk/cliargs/validators 0.631s coverage: 100.0% of statements
Now using version go1.25.0
go version go1.25.0 darwin/amd64
ok github.com/sttk/cliargs 0.354s coverage: 97.6% of statements
ok github.com/sttk/cliargs/errors 0.679s coverage: 100.0% of statements
ok github.com/sttk/cliargs/validators 1.004s coverage: 100.0% of statements
Back to go1.25.0
Now using version go1.25.0Copyright (C) 2023-2025 Takayuki Sato
This program is free software under MIT License.
See the file LICENSE in this distribution for more details.