Типобезопасная библиотека Swift для объявления и разбора аргументов командной строки, опций и флагов с автоматической генерацией справки.
urfave/cli
Декларативный пакет Go для создания CLI-приложений с подкомандами, флагами, автодополнением команд и генерацией справки.
- Звёзды
- 24,291
- Форки
- 1,923
- Открытые issues
- 30
- Последний коммит
- 3 часа назад
Что это?
urfave/cli — пакет Go для создания приложений командной строки. Вы декларативно задаёте команды, подкоманды и флаги, а пакет обрабатывает разбор аргументов, маршрутизацию и вывод справки.
Пакет поддерживает псевдонимы и сопоставление команд по префиксу, составные короткие флаги, например -abc, а также флаги для простых значений, срезов, времени и длительности. Динамическое автодополнение команд доступно для bash, zsh, fish и PowerShell. У пакета нет зависимостей, кроме стандартной библиотеки Go.
Данные можно получать из флагов командной строки, переменных окружения, обычных текстовых файлов и структурированных форматов, таких как JSON, TOML и YAML, с помощью сопутствующего модуля urfave/cli-altsrc. Модуль urfave/cli-docs позволяет генерировать документацию в формате man page и Markdown.
Ключевые возможности
- 01Команды и подкоманды с псевдонимами и сопоставлением по префиксу
- 02Динамическое автодополнение команд для bash, zsh, fish и PowerShell
- 03Составные короткие флаги, например -abc
- 04Флаги для простых типов, срезов, времени и длительности
- 05Получение данных из переменных окружения, текстовых файлов, а также JSON, TOML и YAML
- 06Нет зависимостей, кроме стандартной библиотеки Go
Сценарии использования
- Создание CLI-инструмента на Go с подкомандами и типизированными флагами
- Добавление автодополнения команд по Tab в существующий CLI
- Загрузка параметров CLI из переменных окружения или конфигурационных файлов в YAML или TOML
Темы
Частые вопросы
- Что такое cli?
- Декларативный пакет Go для создания CLI-приложений с подкомандами, флагами, автодополнением команд и генерацией справки. urfave/cli — пакет Go для создания приложений командной строки. Вы декларативно задаёте команды, подкоманды и флаги, а пакет обрабатывает разбор аргументов, маршрутизацию и вывод справки.
- cli можно использовать бесплатно? Какая у него лицензия?
- cli распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- cli всё ещё поддерживается?
- Активно поддерживается. Последний коммит в cli — 19 окт. 2026 г..
- Для чего можно использовать cli?
- Создание CLI-инструмента на Go с подкомандами и типизированными флагами Добавление автодополнения команд по Tab в существующий CLI Загрузка параметров CLI из переменных окружения или конфигурационных файлов в YAML или TOML
- Где скачать cli?
- Исходный код и инструкции по установке — на GitHub: https://github.com/urfave/cli
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Быстрая библиотека для сериализации и валидации данных в Python: кодирует и декодирует JSON, MessagePack, YAML и TOML с помощью стандартных аннотаций типов.
Многофункциональная CLI-утилита для скачивания аудио и видео с тысяч сайтов, форк youtube-dl.
Консольная утилита для синхронизации, копирования и монтирования файлов в локальном хранилище и более чем 70 облачных сервисах — rsync для облака.
Умная замена cd: запоминает часто используемые каталоги и позволяет быстро переходить к ним в популярных оболочках.
Консольная утилита на Rust, которая одной командой получает данные с более чем 55 сайтов, включая Twitter/X, Reddit, YouTube и Hacker News.