kosmosafive/kosmosafive.commandline

Командная PHP-строка

Maintainers

Package info

github.com/kosmosafive/kosmosafive.commandline

Type:bitrix-d7-module

pkg:composer/kosmosafive/kosmosafive.commandline

Statistics

Installs: 8

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

1.0.0 2026-05-21 12:09 UTC

This package is auto-updated.

Last update: 2026-05-21 12:09:44 UTC


README

Инструмент для разработчиков, работающих с проектами на Bitrix.

Позволяет писать и запускать PHP-код прямо из браузера, не обращаясь к файловой системе сервера и не выходя из административной части сайта.

Может использоваться как замена стандартного функционала или дополнительный инструмент.

img-main

  • Многовкладочный редактор. Одновременно можно держать открытыми несколько независимых скриптов. Вкладки создаются, переименовываются и удаляются в пару кликов. Все скрипты сохраняются в браузере автоматически — они никуда не пропадут после перезагрузки страницы или закрытия вкладки.

img-tabs

  • Полноценный редактор кода. В основе — Monaco Editor, тот же движок, что используется в VS Code. Подсветка синтаксиса PHP, автодополнение, парные скобки, отступы — всё работает так, как ожидает разработчик.

img-editor

  • Автодополнение при наборе кода. Редактор знает о ваших классах и методах. При наборе кода предлагаются подсказки с сигнатурами методов и сниппеты с подстановкой параметров.

img-completion

  • Запуск кода. Написанный скрипт отправляется на сервер и выполняется в контексте текущего Bitrix-окружения. Результат отображается сразу под редактором. Для удобства работы с отладочным выводом (например, var_dump, print_r или вывод Symfony VarDumper) доступен режим отображения оригинального HTML-ответа.

  • Вывод результата. Консоль показывает результат выполнения, время работы скрипта, потребление памяти и статус запроса. При необходимости вывод можно открыть на весь экран — удобно, когда результат объёмный.

img-output

  • Настройка под себя. Светлая и тёмная тема интерфейса, несколько тем оформления самого редактора, режим полного экрана для работы с большими скриптами.

img-dark-theme

Установка

В composer.json (пример для директории local) проекта добавьте

{
  "require": {
    "wikimedia/composer-merge-plugin": "dev-master",
    "composer/installers": "^2.3"
  },
  "config": {
    "allow-plugins": {
      "composer/installers": true,
      "wikimedia/composer-merge-plugin": true
    }
  },
  "extra": {
    "merge-plugin": {
      "include": [
        "../bitrix/composer-bx.json",
        "modules/*/composer.json"
      ],
      "recurse": true,
      "replace": true,
      "ignore-duplicates": false,
      "merge-dev": true,
      "merge-extra": false,
      "merge-extra-deep": false,
      "merge-scripts": false,
      "merge-ignore-none": true
    },
    "installer-paths": {
      "modules/{$name}/": [
        "type:bitrix-d7-module"
      ]
    }
  }
}

Установите зависимости. Добавьте модуль

composer require kosmosafive/kosmosafive.commandline

Подключите автозагрузку из vendor. Например, в файле /bitrix/.settings.php или /bitrix/.settings_extra.php добавьте

$vendorAutoload = dirname(__DIR__) . '/local/vendor/autoload.php';
if (file_exists($vendorAutoload)) {
    require_once $vendorAutoload;
}

Конфигурация модуля

Конфигурация указывается в файле /bitrix/.settings.php или /bitrix/.settings_extra.php.

  • replace — заменять ли ссылку на стандартную страницу выполнения кода (по умолчанию true)
  • dirs — список сканируемых директорий при формировании подсказок (по умолчанию директории модулей).
return [
    'kosmosafive.commandline' => [
        'value' => [
            'replace' => true,
            'dirs' => [
                $_SERVER['DOCUMENT_ROOT'] . '/local/modules',
                $_SERVER['DOCUMENT_ROOT'] . '/local/vendor',
                $_SERVER['DOCUMENT_ROOT'] . '/bitrix/modules',
            ],           
        ],
    ],
];

Подсказки в редакторе

Для генерации подсказок в редакторе необходимо запустить консольную команду

php bitrix.php kosmosafive.commandline:generate-hints

Команда создает файл конфигурации с подсказками для редактора на основе модулей ядра продукта и пользовательских модулей.