Search by

iserv / composertoolsinstaller

Allows to install tools as standalone Composer dependencies.

Maintainers

Package info

github.com/IServ-GmbH/cotor

Homepage

pkg:composer/iserv/composertoolsinstaller

Transparency log

Statistics

Installs: 31

Dependents: 0

Suggesters: 0

Stars: 2

Open Issues: 0

v1.12.0 2026-09-01 10:25 UTC

README

How to use cotor

You can install any composer-based dev tool with cotor. It will install each package in a tools folder in your current working directory. For each tool a standalone folder named by the package without the vendor will be created.

Commands

  • list: Lists all available commands.
  • install: Installs all tools and extensions listed in your composer.json at extra.cotor.
  • install $name: Installs a new tool. $name must be a tool's package or registered shortcut name.
  • update $name: Updates an installed tool. $name must be a tool's package or registered shortcut name.
  • update-all: Updates all installed tools.
  • outdated: Lists all tools and checks if they are up to date.
  • extend $name $extension: Installs a tool extension. $name must be a tool's package or registered shortcut name. $extension must be the package name of the extension.

composer.json

Cotor tracks your required tools in the extra section in your composer.json file:

{
  "extra": {
    "cotor": {
      "friendsofphp/php-cs-fixer": "^3.1",
      "phpstan/phpstan": "^1.5",
      "vimeo/psalm": "^4.10"
    }
  }
}

This way you can keep track of the tools and cotor can install them easily.

Configuration

cotor can be configured using a cotor.json file in the project root.

Example:

{
  "php": "8.2.0",
  "repositories": [
    {
      "type": "composer",
      "url": "https://repo.example.com"
    }
  ],
  "sync": true
}

Options

  • php: (string, default: null) The PHP platform version to use for tool installations.
  • repositories: (array, default: []) Composer repositories to use for tool installations.
  • sync: (boolean, default: true) Whether to automatically inherit require.php and repositories from the root composer.json.

Values in cotor.json will overwrite values inherited from composer.json.

How to build cotor

  1. Ensure you've got box installed in your $PATH.
  2. Run box compile to create a new cotor.phar.

box takes the latest git tag or hash to propagate this as the PHARs version. So be sure to hava a proper git history before running the command.