> For the complete documentation index, see [llms.txt](https://ja.docs.monaca.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://ja.docs.monaca.io/products_guide/monaca_cli/cli_commands.md).

# Monaca CLI コマンド

| コマンド　　　　　　　                                                                             | 説明                                                   |
| --------------------------------------------------------------------------------------- | ---------------------------------------------------- |
| [monaca login](/products_guide/monaca_cli/cli_commands.md#monaca-login)                 | Monaca へのサインインします。                                   |
| [monaca logout](/products_guide/monaca_cli/cli_commands.md#monaca-logout)               | Monaca からサインアウトします。                                  |
| [monaca update](/products_guide/monaca_cli/cli_commands.md#monaca-update)               | CLI 2.x で作成したプロジェクトを最新の Monaca プロジェクト構成に更新します。       |
| [monaca init](/products_guide/monaca_cli/cli_commands.md#monaca-init)                   | 他の CLI ツールを使用して作成したプロジェクトを初期化して、Monaca で実行できるようにします。 |
| [monaca signup](/products_guide/monaca_cli/cli_commands.md#monaca-signup)               | Monaca のアカウント登録を行います。                                |
| [monaca create](/products_guide/monaca_cli/cli_commands.md#monaca-create)               | テンプレートを使用して、ローカルに Monaca プロジェクトを新規作成します。             |
| [monaca clone](/products_guide/monaca_cli/cli_commands.md#monaca-clone)                 | Monaca クラウドからプロジェクトをクローンします。                         |
| [monaca import](/products_guide/monaca_cli/cli_commands.md#monaca-import)               | Monaca クラウドからプロジェクトをインポートします。                        |
| [monaca download](/products_guide/monaca_cli/cli_commands.md#monaca-download)           | Monaca クラウドからプロジェクトをダウンロードします。                       |
| [monaca upload](/products_guide/monaca_cli/cli_commands.md#monaca-upload)               | Monaca クラウドへプロジェクトをアップロードします。                        |
| [monaca signing](#monaca-signing)                                                       | iOS と Android のビルド用の署名設定を管理します。                      |
| [monaca remote build](/products_guide/monaca_cli/cli_commands.md#monaca-remote-build)   | Monaca クラウド上で、プロジェクトをリモートビルドします。                     |
| [monaca remote config](/products_guide/monaca_cli/cli_commands.md#monaca-remote-config) | Monaca クラウド上で、プロジェクト設定を開きます。                         |
| [monaca preview](/products_guide/monaca_cli/cli_commands.md#monaca-preview)             | ローカル上で Web サーバーを起動させます。                              |
| [monaca debug](/products_guide/monaca_cli/cli_commands.md#monaca-debug)                 | Monaca デバッガー上でプロジェクトを実行します。                          |
| [monaca transpile](/products_guide/monaca_cli/cli_commands.md#monaca-transpile)         | ソースコードをコード変換 ( トランスパイル ) します。                        |
| [monaca config](/products_guide/monaca_cli/cli_commands.md#monaca-config)               | Monaca CLI の設定内容を管理できます。                             |
| [monaca plugin](/products_guide/monaca_cli/cli_commands.md#monaca-plugin)               | Cordova プラグインを管理します。                                 |
| [monaca docs](/products_guide/monaca_cli/cli_commands.md#monaca-docs)                   | Monaca CLI、Onsen UIのドキュメントを表示します。                    |

## monaca login

Monaca クラウドにサインインします。Monaca アカウント登録時のユーザー名とパスワードを入力します。

```javascript
$ monaca login [options]
```

**オプション**

* `email`: Monaca クラウドへログインするメールアドレス。

**【具体例】**

Monaca CLI を使用して、Monaca クラウドへログインします。

```javascript
$ monaca login
$ monaca login me@monaca.io
$ echo "mypass" | monaca login me@monaca.io
```

## monaca logout

Monaca クラウドからサインアウトして、保持していたログイントークンを削除します。

```javascript
$ monaca logout
```

**【具体例】**

Monaca CLI を使用して、Monaca クラウドからログアウトします。

```javascript
$ monaca logout
Signing out from Monaca Cloud...
You have been signed out.
Removed Monaca Debugger pairing information.
```

## monaca update

このコマンドは、Monaca CLI 3.x から利用できます。 Monaca CLI 2.x で作成した旧プロジェクトを更新するために使用されます。

**非トランスパイル プロジェクト**

`package.json` には、以下の設定が追加されます。

* `monaca:preview` コマンドが、`script` プロパティに追加されます。
* `dev` コマンドが存在していない場合は、以下のコマンドが `script` プロパティに追加されます。
  * `"dev": "browser-sync start -s www/ --watch --port 8080 --ui-port 8081"`
* `browser-sync` と `bordova`が、`devDependencies` として追加されます。

**トランスパイル プロジェクト**

`package.json` には、以下の設定が追加されます。

* `monaca:preview`、`monaca:transpile`、`monaca:debug` コマンドが、`script` プロパティに追加されます。
* `dev`、`build`、`watch` コマンドが存在していない場合は、`script` プロパティに追加されます。
* `webpack` と `cordova` を含む必須パッケージが、`devDependencies`として追加されます。

```javascript
$ monaca update [options]
```

**Options**

* `--force`: デフォルト設定で実行します。
* `--createPackageJson`: プロジェクトに `package.json`ファイルがない場合は、名前と説明を含む基本的な package.json ファイルを作成します。

**Example**

このコマンドの使用例です。

```javascript
$ monaca update
$ monaca update --force --createPackageJson
```

## monaca init

このコマンドは、Monaca CLI 3.x から利用できます。 Monaca（ Monaca CLI、Monaca クラウド IDE、Monaca Localkit ）で実行できるように、他の CLI ツールを使用して作成したプロジェクトを初期化します。 以下のリソースがプロジェクトに追加されます。

* `www/components`: JS/CSS コンポーネント用フォルダーとリソースファイル。
* `config.xml`: Cordova アプリ用グローバル設定ファイル。
* `res`: Android、iOS、Window 用アイコンとスプラッシュ画像用フォルダーとリソースファイル。
* `cordova`: Cordova 7.1 では、プロジェクトの package.json に cordova の設定がない場合は、devDependencies としてインストールされます。
* `.monaca/project_info.json`: Cordova バージョンとフレームワークバージョンなどの情報を含む JSON ファイル。

```javascript
$ monaca init
```

**Example**

このコマンドの使用例です。

```javascript
$ monaca init
```

## monaca signup

Monaca クラウド にサインアップします。 ユーザーの資格情報を要求する画面が表示されます。

```javascript
$ monaca signup
```

## monaca create

指定したパスのテンプレートから新しいローカル Monaca プロジェクトを作成します。 Monaca クラウドが提供しているテンプレートの中から、使用するテンプレートを選択します。 指定された保存場所に、選択されたテンプレートが置かれます。

```javascript
$ monaca create <path> [options]
```

* `path`: プロジェクトファイルの保存先

**オプション**

* `--`url: Monaca テンプレート zip ファイルの URL
* `--`template-list: 利用可能な Monaca テンプレートのリストを出力します。
* `--`template: プロジェクト作成に使用するMonaca テンプレートの名前。

**【具体例】**

Monaca CLI を使用して、Monaca プロジェクトを作成します。

```javascript
$ monaca create myproject
$ monaca create --template-list
$ monaca create myproject --template blank
$ monaca create myproject --url http://github.com/me/myproject/archive/master.zip
```

## monaca clone

Monaca クラウド上に置かれているプロジェクトを、ローカルへクローンします。Monaca クラウド上に置かれているプロジェクトの一覧が表示されます。プロジェクトを選択し、次に、保存先を指定します。

{% hint style="info" %}
Monaca クラウドからローカル PC にプロジェクトをクローンする場合には、クローンしたプロジェクトに関する「 クラウド同期情報 」 が作成 ・ 保持されます。この情報が作成 ・ 保持されている場合、プロジェクトをローカルで修正した後、Monaca クラウドにアップロード (  [monaca upload](/products_guide/monaca_cli/cli_commands.md#monaca-upload) を使用 ) したときには、同一プロジェクト内の古いファイルが、上書きされます。
{% endhint %}

```javascript
$ monaca clone
```

**【具体例】**

次の例では、Monaca クラウド上のプロジェクト「 `Memo Application` 」を、ローカルの「 `CloneMemoProjectn` 」フォルダーへクローンしています。

![](/files/-MgORvbp_je1CDq_vWmW)

## monaca import

Monaca クラウド上に置かれているプロジェクトをインポートします。Monaca クラウド上に置かれているプロジェクトの一覧が表示されます。プロジェクトを選択し、次に、保存先を指定します。

{% hint style="info" %}
Monaca クラウドからローカル PC にプロジェクトをインポートする場合には、インポートしたプロジェクトに関する 「 クラウド同期情報 」 は作成されません。この情報が作成されない場合、プロジェクトをローカルで修正した後、Monaca クラウドにアップロード ( [monaca upload ](/products_guide/monaca_cli/cli_commands.md#monaca-upload)を使用 ) したときには、アップロードしたプロジェクトは、新規のプロジェクトとして、取り扱われます。
{% endhint %}

```javascript
$ monaca import
```

**【具体例】**

次の例では、Monaca クラウド上のプロジェクト「 `Memo Application` 」を、ローカルの「 `ImportedMemoApplication` 」フォルダーへインポートしています。

![](/files/-MgOSKKYBUGjbgCKhQM_)

## monaca download

Monaca クラウド上で同期対象のプロジェクトに対して行った更新・修正箇所をダウンロードします。

{% hint style="info" %}
このコマンドを実行すると、ローカルのプロジェクトに、変更を反映できます。Monaca クラウド上に存在するプロジェクトと同一のプロジェクトが、ローカルに存在しない場合、このコマンドは使用できません。
{% endhint %}

```javascript
$ monaca download [options]
```

**オプション**

* `--delete`: Monaca クラウド上に存在しないローカルファイルを削除します。
* `--force`: 処理の実行時、ユーザー側に確認しません。
* `--dry-run`: ダウンロード処理をシュミレートします。出力として、ダウンロード対象のファイルを表示します。シュミレートのみで、実際のダウンロードは行われません。

**【具体例】**

プロジェクトフォルダーへ移動して、次に、さまざまな**オプション**を使用して `monaca download` コマンドを実行し、出力を確認してみましょう。

![](/files/-MgOSRz5puZ0_3dLVSBh)

## monaca upload

ローカルのプロジェクトを Monaca クラウドへアップロードします ( プロジェクトが置かれたディレクトリーのルートへ移動して、コマンドを実行します )。ローカルとクラウド間 ( 既存のファイルがクラウド上にあれば ) のファイルは比較され、新規ファイルまたは更新ファイルがあれば、そのファイルのみアップロードされます。アップロード処理は、プロジェクトの種類により、下記のように異なります。

1. アップロード対象のプロジェクトが 「 新規プロジェクト」 または 「 インポートしたプロジェクト 」の場合、新規のプロジェクトとして、関連するファイルのすべてが Monaca クラウドへアップロードされます。
2. アップロード対象のプロジェクトが 「 クローンしたプロジェクト 」場合、Monaca クラウド上に置かれている、クローン元のプロジェクトが上書きされます ( 新規ファイルまたは更新ファイルのみ、アップロードされます )。

{% hint style="info" %}
トランスパイルが必要なプロジェクトに関しては、`monaca upload` コマンドの実行時、アップロード処理が始まる前に、プロジェクトがコード変換 ( トランスパイル / Transpile ) されます。
{% endhint %}

```javascript
$ monaca upload [options]
```

**オプション**

* `--delete`: ローカルに存在しないファイルが、Monaca クラウド上に存在する場合、クラウド上のこれらのファイルを削除します。
* `--force`: 処理の実行時、ユーザー側に確認しません。
* `--dry-run`: アップロード処理をシュミレートします。出力として、アップロード対象のファイルを表示します。シュミレートのみで、実際のアップロードは行われません。

**【具体例】**

プロジェクトフォルダーへ移動して、さまざまな オプション を組み合わせて、`monaca upload` コマンドを実行し、出力を確認してみましょう。

![](/files/-MgOShI-27T1TrUQu_AW)

## monaca signing

iOS および Android ビルド用の署名設定を管理します。

```javascript
$ monaca signing <action> <item>
```

**action**

* `generate`:  `keystore` や `pkcsr` で使うことができます。
* `upload`: `keystore`、`pkcs12`、`certificate`、`provisioning` で使うことができます。
* `add`: `alias` で使うことができます。
* `remove`: `alias`、`pkcs12`、`certificate`、`provisioning` で使うことができます。
* `export`: `keystore`、`pkcsr` で使うことができます。

**item**

* `alias`: キーストアファイル内のエイリアス。
* `keystore`: Android キーストア。
* `pkcsr`: CSR ( 証明書署名要求 ) ファイル。
* `pkcs12`: 証明書付きの秘密鍵。
* `certificate`: iOS 証明書。
* `provisioning`: iOS プロビジョニングプロファイル。

{% hint style="info" %}
iOS および Android のビルド設定 ( キーストア、秘密鍵、証明書およびプロビジョニングプロファイルを含む ) の署名または作成方法の詳細については、[ iOS のビルド設定 ](/products_guide/monaca_ide/build/ios/build_ios.md#ios-nobirudo)と [Android キーストア ( KeyStore ) の設定 ](/products_guide/monaca_ide/build/build_android.md#suteppu-2-android-ksutoa-keystore-no)を参照してください。
{% endhint %}

**【具体例】**

プロジェクトフォルダーへ移動して、次のようにコマンドを使用します。

```javascript
$ monaca signing generate keystore
$ monaca signing generate pkcsr
$ monaca signing add alias
$ monaca signing upload keystore
$ monaca signing upload pkcs12
$ monaca signing upload certificate
$ monaca signing upload provisioning
$ monaca signing export keystore
$ monaca signing export pkcsr
$ monaca signing remove alias
$ monaca signing remove pkcs12
$ monaca signing remove certificate
$ monaca signing remove provisioning
```

## monaca remote build

Monaca クラウド上でプロジェクトをビルドします。Monaca クラウド上に、対象のプロジェクトが存在しない場合、ビルドを開始する前に、対象のプロジェクトが自動的にアップロードされます。一方、Monaca クラウド上に、対象のプロジェクトがすでに存在する場合には、ローカルで行った更新・修正は、ビルドを開始する前に、対象のプロジェクトに反映 ( アップロード ) されます。

次の点に関する詳細は、[Monaca アプリのビルド](/tutorials/monaca_cli/building_app.md) をご確認ください。

* 各プラットフォーム向けのビルドの設定方法
* ビルドの種類
* 各プラットフォーム向けアプリのビルド方法
* ビルド済みアプリの入手方法・インストール方法

```javascript
$ monaca remote build <platform> [options]
```

* `platform`: ビルド対象のプラットフォームを指定します。`ios`、`android`、`windows` のいずれかを指定します。

**オプション**

* `--build-type`: ビルドの種類を指定します。指定できるオプションを、次に記します。
  * `debug` ( iOS、Android、Windows 向け) デフォルトオプション
  * simulator, adhoc ( iOS 向け )
  * debugger, inapp\_updater ( iOS、Android 向け )
  * `release` ( iOS、Android 向け )
* `--output`: ビルド済みファイルを保存するディレクトリーを指定します ( ファイル名まで含む )。
* `--android_webview`: (Android のみ) Webview のタイプを選択します。`default`、`crosswalk` のいずれかを指定します。
* `--android_arch`: (Android のみ) `--android_webview` を `crosswalk` に指定した場合、こちらは必須オプションになります。値は、`x86`、`arm` のいずれかを指定します。
* `--skipUpload`: クラウドへローカルプロジェクトをアップロードする処理をスキップします。
* `--skipTranspile`: クラウドへローカルプロジェクトをアップロードする時にトランスパイル処理をスキップします。
* `--browser`: ブラウザー上で \[ ビルド設定 ] 画面を開きます ( 下のスクリーンショットを参照のこと )。

**【具体例】**

プロジェクトフォルダーへ移動して、さまざまなオプションを組み合わせてコマンドを実行してみましょう。

```javascript
$ monaca remote build ios
$ monaca remote build ios --build-type=debug
$ monaca remote build android --build-type=debug --android_webview=crosswalk --android_arch=arm
$ monaca remote build --browser
```

![](/files/-MgOULQs9qx1Mns_mGPG)

## monaca remote config

Monaca クラウド上でプロジェクト設定を開きます。\
設定が完了したら、 `monaca download` を実行して変更した設定内容をローカルに反映してください。

```javascript
$ monaca remote config
```

**オプション**

* `--skipUpload`: クラウドへローカルプロジェクトをアップロードする処理をスキップします。
* `--skipTranspile`: クラウドへローカルプロジェクトをアップロードする時にトランスパイル処理をスキップします。

**【具体例】**

対象のプロジェクトフォルダに移動し、次のコマンドを実行してください：

```javascript
$ monaca remote config
$ monaca download
```

## monaca preview

ローカル上で Web サーバーを起動後、ブラウザー上でアプリを起動させます ( `www` 下のアセットがブラウザー上で使用できる状態になります )。このコマンドを実行すると、ファイルシステム上のファイルを監視し、ファイルが変更された場合には、ブラウザー上にも即反映させます。package.json で定義された `npm run monaca:preview` を実行します。

{% hint style="info" %}
トランスパイルが必要なプロジェクトに関しては、`monaca preview` コマンドの実行時、プレビュー画面の起動前に、メモリー上でプロジェクトがコード変換されます。また、プレビュー画面を起動させた状態で、プロジェクトファイルを修正したときにも、コード変換処理が行われ、修正されたファイルの内容がプレビュー画面上に反映されます。
{% endhint %}

```javascript
$ monaca preview
```

**【具体例】**

プロジェクトフォルダーへ移動して、`monaca preview` コマンドを実行します。実行後、ブラウザーが起動してプロジェクトが実行されます。

![](/files/-MgOUY2wC7SzjhrKGvJu)

![](/files/-MgOUaJcaTqhsjtoXB3z)

{% hint style="info" %}
`monaca preview` の処理を停止する場合には、`Ctrl+c` を押します。
{% endhint %}

## monaca debug

端末上でアプリをデバッグするためのコマンドです。ローカルで行った、ファイルへの変更は、デバッガー上にも即反映されます。このコマンドを実行すると、Web サーバーが起動され、Monaca デバッガーからの接続を待ち受けます。また、同時に、対象のローカルネットワーク上に接続されているデバッガーに対して、接続するか確認するメッセージが送信されます。package.json で定義された `npm run monaca:debug` を実行します。

{% hint style="info" %}
トランスパイルが必要なプロジェクトに関しては、`monaca debug` コマンドの実行時、Monaca デバッガーへプロジェクトファイルが送信される前に、プロジェクトがコード変換 ( トランスパイル / Transpile ) されます。また、デバッガーを実行している状態で、プロジェクトファイルを修正したときにも、コード変換処理が行われ、修正されたファイルの内容がデバッガー上に反映されます。
{% endhint %}

```javascript
$ monaca debug [options]
```

**オプション**

* `paths`: ディレクトリー ( 現在開いているディレクトリーの場合には、省略可 )
* `--port`: HTTP の待ち受けポート番号 ( デフォルトは、8001 )

**【具体例】**

プロジェクトフォルダーへ移動して、`monaca debug` コマンドを実行します。実行後、Monaca デバッガーの *ローカルプロジェクト* 下に対象のプロジェクトが表示されていることを確認し、プロジェクトをタップして実行してみましょう。次に、プロジェクトに変更を加え、保存して、プロジェクトに変更点が即反映されることを確認してみましょう。

```javascript
$ cd MyProjectFolder/ImportRssProject
$ monaca debug
```

このコマンドの実行時、次のようなダイアログ ( 左 ) または通知 ( 右 ) が表示されます。ダイアログには、ペアリングを行うか確認するメッセージが表示されます。また、通知には、ネットワーク接続の状態が表示されます。なにか問題がある場合には、[Monaca デバッガーとのペアリングが失敗する場合](https://ja.docs.monaca.io/products_guide/monaca_cli/pages/-MfWrbFoQSpqFIibx1fY#monaca-デバッガーとのペアリングが失敗する場合) をご確認ください。

<img src="/files/-MgOVS8O27su8w1DnGeI" alt="" data-size="original"> <img src="/files/-MgOW1iEhWmZoA4AwnW2" alt="" data-size="original">&#x20;

*接続確認用ダイアログ & ネットワーク接続完了の通知*

{% hint style="info" %}
`monaca debug` の処理を停止する場合には、`Ctrl+c` を押します。
{% endhint %}

## monaca transpile

ReactJS、VueJS、Angular プロジェクトなど、トランスパイルが必要なプロジェクトをトランスパイルします。package.json で定義された `npm run monaca:transpile` を実行します。

```javascript
$ monaca transpile
```

**【具体例】**

対象のプロジェクトフォルダーへ移動して、`monaca transpile` コマンドを実行します ( コード変換が可能なプロジェクトであること )。実行後、コード変換が実行されます。

```javascript
$ monaca transpile

Running Transpiler...
Build completed in 71.835s

....
```

## monaca config

プロキシおよび API エンドポイントの設定内容を管理できます。

```javascript
$ monaca config [options]
```

**オプション**

* `proxy <url>`:  が設定されていない場合は、現在のプロキシサーバーが表示されます。
* `endpoint <url>`:  が設定されていない場合は、現在の API エンドポイントが表示されます。
* `--help`: ヘルプを表示します。
* `--reset`: デフォルト値にリセットします。

**【具体例】**

プロジェクトフォルダーへ移動して、次のようにコマンドを使用します。

```javascript
$ monaca config --help
$ monaca config proxy
$ monaca config proxy http://my.proxy.com:8080
$ monaca config proxy --reset

$ monaca config endpoint
$ monaca config endpoint my.endpoint.com
$ monaca config endpoint --reset
```

## monaca plugin

プロジェクトで使用するプラグインを管理します。プラグインの追加、削除、インストール済みのプラグイン一覧を行うことができます。

```javascript
$ monaca plugin [options]
```

**オプション**

* `add <plugin>`: プラグインを追加します。
* `rm <plugin>`: プラグインを削除します。

**【具体例】**

プロジェクトフォルダーへ移動して、次のようにコマンドを使用します。

```javascript
$ monaca plugin add cordova-plugin-camera
$ monaca plugin rm cordova-plugin-camera
```

## monaca docs

Monaca CLI 、Onsen UI のドキュメントを表示します。

```javascript
$ monaca docs [options]
```

**オプション**

* `onsen`: ブラウザで Onsen UI ドキュメントを開きます。
* `usage`: ブラウザで Monaca CLI ドキュメントを開きます。

**【具体例】**

プロジェクトフォルダーへ移動して、次のようにコマンドを使用します。

```javascript
$ monaca docs onsen
$ monaca docs usage
```
