---
title: "CLI と TUI"
description: "LaunchNext の CLI コマンド、TUI 操作フロー、安全運用をまとめた完全ガイド。"
url: "https://docs.closex.org/ja/launchnext/cli-and-tui.html"
markdown_url: "https://docs.closex.org/ja/launchnext/cli-and-tui.md"
site: "CloseX Docs"
product: "LaunchNext"
language: "ja"
last_updated: "2026-05-01T05:09:25.000Z"
alternates:
  en: "https://docs.closex.org/launchnext/cli-and-tui.md"
  zh-Hans: "https://docs.closex.org/zh/launchnext/cli-and-tui.md"
  ja: "https://docs.closex.org/ja/launchnext/cli-and-tui.md"
---

# LaunchNext CLI と TUI

LaunchNext には 2 つのターミナルインターフェースがあります。

- `CLI`: スクリプトや自動化向けの単発実行。
- `TUI`: 履歴付きの対話型ターミナルセッション。

実際には、この機能はターミナル上で動く AI Agent、たとえば `Claude Code`、`Codex`、それに近いローカル自動化ツール向けの用途と相性が良いです。GUI を手で操作しなくても、現在の LaunchNext レイアウト確認、アプリ検索、スナップショット取得、制御された変更実行まで行えます。

このページは `LaunchNextCLI.swift`、`LaunchNextCLIIPC.swift`、`LaunchpadApp.swift`、および現在の一般設定 UI の実装に合わせています。

## 利用前の準備

1. `設定 > 一般` を開く。
2. GUI endpoint を使う CLI コマンドや `--tui` を使う場合はコマンドラインインターフェースをオンにする。
3. GUI 依存コマンドを使う場合は LaunchNext GUI を起動したままにする。

重要な制約:

- `history` と `help` は GUI なしで動作。
- `example` も GUI なしで動作。
- `list`、`snapshot`、`search`、`create-folder`、`move` は GUI プロセスが必要。
- レイアウトロック有効時は `create-folder` / `move` は失敗。
- `--tui` は対話型ターミナル (TTY) 必須。

## 起動モード

```bash
launchnext
launchnext --gui
launchnext --tui
launchnext --cli help
launchnext list
```

次も利用できます:

```bash
LaunchNext --cli help
LaunchNext --tui
/Applications/LaunchNext.app/Contents/MacOS/LaunchNext --tui
```

モード挙動:

- 引数なし `launchnext`:
  - 対話型ターミナル -> TUI に入る
  - 非対話環境 -> GUI モードのまま
- `--gui` は常に GUI モード。
- `--tui` は常に TUI モード。
- `--cli <command>` は 1 コマンド実行して終了。

## CLI コマンド一覧

| コマンド | GUI 必須 | 内容 |
| --- | --- | --- |
| `help` | 不要 | 使い方とヘルプを表示。 |
| `list` | 必要 | フラットなアプリ一覧を表示。 |
| `snapshot` | 必要 | フォルダ ID を含むレイアウト JSON を出力。 |
| `history` | 不要 | 保存済み CLI/TUI 履歴を表示。 |
| `example` | 不要 | CLI/TUI サンプルコマンドを表示。 |
| `search` | 必要 | 名前とパスでアプリ/フォルダを検索。 |
| `create-folder` | 必要 | トップレベルアプリからフォルダを作成。 |
| `move` | 必要 | ソース/ターゲット指定でアプリを移動。 |

## `search` 詳細

利用例:

```bash
launchnext --cli search --query "safari"
launchnext --cli search safari
launchnext --cli search --query "mail" --limit 20
launchnext --cli search --query "mail" --limit 20 --json
```

補足:

- `limit` のデフォルトは `50`
- `limit` の最大は `500`
- `--json` で構造化 JSON を返す

## `create-folder` 詳細

利用例:

```bash
launchnext --cli create-folder \
  --path "/Applications/Mail.app" \
  --path "/Applications/Notes.app" \
  --name "Utilities" \
  --index 12 \
  --dry-run
```

ルール:

- 異なる `--path` を最低 2 つ指定する必要がある。
- 現在はトップレベルアプリのみ対応。
- フォルダ内アプリは拒否される。
- `--dry-run` は検証とプレビュー JSON のみで、実変更は行わない。

## `move` 詳細

基本形:

```bash
launchnext --cli move --source normal-app --path "/Applications/Safari.app" --to normal-index --index 12 --dry-run
```

現行ビルドで対応している組み合わせ:

- `normal-app -> normal-index`
- `folder-app -> normal-index`
- `normal-app -> folder-append`
- `folder-app -> folder-append`
- `folder-app -> folder-index`

ターゲットごとの必須引数:

- `normal-index`: `--index <n>`
- `folder-append`: `--target-folder-id <id>`
- `folder-index`: `--target-folder-id <id> --index <n>`

推奨フロー:

1. 先に `snapshot` で folder ID を確認。
2. `--dry-run` で事前検証。
3. 問題なければ `--dry-run` を外して実行。

## TUI 操作フロー

起動:

```bash
launchnext --tui
```

TUI プロンプト (`launchnext>`) で使える主なコマンド:

- `list`
- `snapshot`
- `history`
- `example`
- `search`
- `create-folder`
- `move`
- `clear`
- `help`
- `quit`

TUI は履歴を永続化し、上下キーで履歴を再利用できます。

## 履歴とランタイムファイル

- 履歴ファイル: `~/Library/Application Support/LaunchNext/cli_history`
- CLI IPC ソケット: `~/Library/Application Support/LaunchNext/cli.sock`
- 履歴は最大 `200` 件保持。

## よくあるエラーと対処

`CLI code is disabled`

- `設定 > 一般 > コマンドラインインターフェース` をオンにする。
- 注: 旧ビルドでは端末メッセージに "Development settings" と表示される場合があります。

`Please launch LaunchNext GUI first`

- 先に GUI を起動:

```bash
open -a LaunchNext
```

`Layout is locked`

- `move` / `create-folder` 実行前にレイアウトロックを解除。

`LaunchNext TUI requires an interactive terminal`

- 非対話シェルではなく通常のターミナルで実行する。

## 関連ページ

- [一般](https://docs.closex.org/ja/launchnext/settings/general.md)
- [LaunchNext 設定](https://docs.closex.org/ja/launchnext/settings/index.md)
- [更新とトラブルシューティング](https://docs.closex.org/ja/launchnext/updates-and-troubleshooting.md)
