---
name: "Mojo::Commands"
section: "3pm"
platform: "linux"
package: "libmojolicious-perl"
version: "0.999926-1+squeeze2"
release: "Debian 6.0 (Squeeze)"
platforms: ["linux"]
url: "https://new.carta.tech/Mojo::Commands"
---

# Mojo::Commands(3pm)

Commands

## NAME

Mojo::Commands - Commands

## SYNOPSIS

```
    use Mojo::Commands;
    # Command line interface
    my $commands = Mojo::Commands->new;
    $commands->run(@ARGV);
```

## DESCRIPTION

Mojo::Commands is the interactive command line interface to the Mojo framework. It will automatically detect available commands in the Mojo::Command namespace. Commands are implemented by subclassing Mojo::Command.

These commands are available by default.

- "help"

  ```
      mojo
      mojo help
  ```

  List available commands with short descriptions.

  ```
      mojo help <command>
  ```

  List available options for the command with short descriptions.

- "generate"

  ```
      mojo generate
      mojo generate help
  ```

  List available generator commands with short descriptions.

  ```
      mojo generate help <generator>
  ```

  List available options for generator command with short descriptions.

- "generate app"

  ```
      mojo generate app <AppName>
  ```

  Generate application directory structure for a fully functional Mojo application.

- "generate makefile"

  ```
      script/myapp generate makefile
  ```

  Generate `"Makefile.PL"` file for application.

- "generate psgi"

  ```
      script/myapp generate psgi
  ```

  Generate `"myapp.psgi"` file for application.

- "cgi"

  ```
      mojo cgi
      script/myapp cgi
  ```

  Start application with CGI backend.

- "daemon"

  ```
      mojo cgi
      script/myapp daemon
  ```

  Start application with standalone HTTP 1.1 server backend.

- "daemon\_prefork"

  ```
      mojo daemon_prefork
      script/myapp daemon_prefork
  ```

  Start application with preforking standalone HTTP 1.1 server backend.

- "fastcgi"

  ```
      mojo fastcgi
      script/myapp fastcgi
  ```

  Start application with FastCGI backend.

- "get"

  ```
     mojo get http://mojolicious.org
     script/myapp get /foo
  ```

  Perform GET request to remote host or local application.

- "test"

  ```
     mojo test
     script/myapp test
     script/myapp test t/foo.t
  ```

  Runs application tests from the `"t"` directory.

- "version"

  ```
      mojo version
  ```

  List version information for installed core and optional modules, very useful for debugging.

## ATTRIBUTES

Mojo::Commands inherits all attributes from Mojo::Command and implements the following new ones.

### "hint"

```
    my $hint  = $commands->hint;
    $commands = $commands->hint('Foo!');
```

Short hint shown after listing available commands.

### "message"

```
    my $message  = $commands->message;
    $commands    = $commands->message('Hello World!');
```

Short usage message shown before listing available commands.

### "namespaces"

```
    my $namespaces = $commands->namespaces;
    $commands      = $commands->namespaces(['Mojo::Command']);
```

Namespaces to search for available commands, defaults to Mojo::Command.

## METHODS

Mojo::Commands inherits all methods from Mojo::Command and implements the following new ones.

### "run"

```
    $commands->run;
    $commands->run(@ARGV);
```

Load and run commands.

### "start"

```
    Mojo::Commands->start;
    Mojo::Commands->start(@ARGV);
```

Start the command line interface.

## SEE ALSO

Mojolicious, Mojolicious::Guides, \<http://mojolicious.org\>.
