PHPackages                             phpsoftbox/cli-app - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [CLI &amp; Console](/categories/cli)
4. /
5. phpsoftbox/cli-app

ActiveLibrary[CLI &amp; Console](/categories/cli)

phpsoftbox/cli-app
==================

Console application component (CliApp) for PhpSoftBox Framework

0265↓85.7%2PHP

Since Jun 16Pushed 4w agoCompare

[ Source](https://github.com/phpsoftbox/cli-app)[ Packagist](https://packagist.org/packages/phpsoftbox/cli-app)[ RSS](/packages/phpsoftbox-cli-app/feed)WikiDiscussions master Synced 2d ago

READMEChangelogDependenciesVersions (1)Used By (2)

PhpSoftBox CliApp
=================

[](#phpsoftbox-cliapp)

Команды описываются обычными PHP-файлами, которые возвращают `CommandDefinition` (через фабрику `Command::define()`), а сам раннер умеет разбирать `argv`, спрашивать пользователя (ask/confirm/secret), рисовать таблицы и прогресс, рассылать события и работать как с DI-контейнером (PSR-11), так и без него.

По умолчанию реестр команд (`AbstractCommandRegistry`) добавляет команду `list`, которая выводит все зарегистрированные команды по namespace (часть до `:`). Отключить можно так: `new InMemoryCommandRegistry(withDefaultCommands: false)`.

Entrypoint `psb`
----------------

[](#entrypoint-psb)

После установки пакета доступен `vendor/bin/psb`. Он ищет конфиг по `PSB_CLI_APP_CONFIG_PATH` (если задана), иначе `config/cli-app.php` и ожидает получить `CliApp`, `RunnerInterface` или `CliAppConfig`. Если файла нет — сканирует `./console` и `./commands`.

Установка
---------

[](#установка)

```
composer require phpsoftbox/cli-app
```

Быстрый старт
-------------

[](#быстрый-старт)

```
