--- id: cleo version: "2.1.0" license: MIT license_treatment: permissive maintenance: active --- # cleo — Cleo allows you to create beautiful and testable command-line interfaces. License: permissive · Maintenance: active · Popularity: top 1,000 on PyPI ## Install pip install cleo uv add cleo poetry add cleo ## Description # Cleo [![Poetry](https://img.shields.io/endpoint?url=https://python-poetry.org/badge/v0.json)](https://python-poetry.org/) [![Tests](https://github.com/python-poetry/cleo/actions/workflows/tests.yml/badge.svg)](https://github.com/python-poetry/cleo/actions/workflows/tests.yml) [![PyPI version](https://img.shields.io/pypi/v/cleo)](https://pypi.org/project/cleo/) Create beautiful and testable command-line interfaces. ## Resources - [Documentation](http://cleo.readthedocs.io) - [Issue Tracker](https://github.com/python-poetry/cleo/issues) ## Usage To make a command that greets you from the command line, create `greet_command.py` and add the following to it: ```python from cleo.commands.command import Command from cleo.helpers import argument, option class GreetCommand(Command): name = "greet" description = "Greets someone" arguments = [ argument( "name", description="Who do you want to greet?", optional=True ) ] options = [ option( "yell", "y", description="If set, the task will yell in uppercase letters", flag=True ) ] def... ## AI interpretation — verify before relying Cleo is a framework for building beautiful, testable command-line interfaces with support for commands, arguments, options, colored output, and verbosity levels. Verdict: Cleo is a stable, actively maintained CLI framework well-suited for building testable command-line applications. With low install friction, permissive MIT licensing, no known vulnerabilities, and top-1000 PyPI popularity, it is a reliable choice for developers needing structured CLI tooling. [View on SkillFed](https://skillfed.io/packages/cleo) · [View on PyPI](https://pypi.org/project/cleo/)