PR

完全版Amazon Q CLI コマンドチートシート各コマンドの詳細解説

完全版Amazon Q CLI コマンドチートシート各コマンドの詳細解説

Amazon Q CLIは、AWS(Amazon Web Services)が提供するAIアシスタントのコマンドラインインターフェースです。このドキュメントでは、利用可能なすべてのコマンドとその引数について詳しく説明します。

Amazon Q CLI 基本構造

Amazon Q CLIは以下の基本構造を持ちます:

q [OPTIONS] [SUBCOMMAND]

グローバルオプション

  • -v, --verbose...: ログの詳細度を上げる(複数回指定可能)
  • --help-all: 全サブコマンドのヘルプを表示
  • -h, --help: ヘルプを表示
  • -V, --version: バージョンを表示

メインサブコマンド一覧

q chat – AIアシスタント

機能: ターミナル内でAIアシスタントとチャットします。 使用例:

q chat
q chat "Hello, how are you?"
q chat --no-interactive "What is AWS?"
q chat --resume
q chat --profile myprofile --model claude

引数:

  • [INPUT]: 最初に質問する内容(オプション)

オプション:

  • --no-interactive: インタラクティブモードなしで最初の応答をSTDOUTに出力
  • -r, --resume: このディレクトリから前回の会話を再開
  • --profile <PROFILE>: 使用するコンテキストプロファイル
  • --model <MODEL>: 使用する現在のモデル
  • --trust-all-tools: 確認なしでモデルが任意のツールを使用することを許可
  • --trust-tools <TOOL_NAMES>: 特定のツールセットのみを信頼(例:--trust-tools=fs_read,fs_write
  • -v, --verbose...: ログの詳細度を上げる
  • -h, --help: ヘルプを表示

q translate – 自然言語からシェルコマンドへの変換

機能: 自然言語をシェルコマンドに変換します。 使用例:

q translate "list all files in current directory"
q translate "find all python files"

引数:

  • [INPUT]...: 変換したい自然言語の説明

オプション:

  • -v, --verbose...: ログの詳細度を上げる
  • -h, --help: ヘルプを表示

q settings – 設定のカスタマイズ

機能: 外観と動作をカスタマイズします。 使用例:

q settings
q settings chat.editMode vi
q settings --delete chat.editMode
q settings --format json
q settings open
q settings all

引数:

  • [KEY]: 設定キー
  • [VALUE]: 設定値

オプション:

  • -d, --delete: 値を削除
  • -f, --format <FORMAT>: 出力フォーマット
    • plain: マークダウンとして出力(デフォルト)
    • json: JSON形式で出力
    • json-pretty: 整形されたJSON形式で出力
  • -v, --verbose...: ログの詳細度を上げる
  • -h, --help: ヘルプを表示

サブコマンド:

  • open: 設定ファイルを開く
  • all: すべての設定を一覧表示
  • help: ヘルプを表示

q mcp – Model Context Protocol管理

機能: MCPサーバーの管理を行います。 使用例:

q mcp list
q mcp add --name myserver --command "python server.py"
q mcp remove --name myserver
q mcp status --name myserver

サブコマンド:

q mcp add – サーバー追加

オプション:

  • --name <n>: サーバー名(必須)
  • --command <COMMAND>: サーバー起動コマンド(必須)
  • --args <ARGS>: コマンドに渡す引数
  • --scope <SCOPE>: サーバーを追加する場所(workspace または global
  • --env <ENV>: サーバー起動時に使用する環境変数
  • --timeout <TIMEOUT>: サーバー起動タイムアウト(ミリ秒)
  • --disabled: サーバーを無効化(読み込まない)
  • --force: 同名の既存サーバーを上書き

q mcp remove – サーバー削除

オプション:

  • --name <n>: サーバー名(必須)
  • --scope <SCOPE>: スコープ(workspace または global

q mcp list – サーバー一覧

引数:

  • [SCOPE]: スコープ(workspace または global

q mcp import – 設定インポート

引数:

  • [SCOPE]: スコープ(workspace または global

オプション:

  • --file <FILE>: インポートするファイル(必須)
  • --force: 同名の既存サーバーを上書き

q mcp status – サーバー状態確認

オプション:

  • --name <n>: サーバー名(必須)

q doctor – 診断・修復

機能: 一般的な問題の修正と診断を行います。 使用例:

q doctor
q doctor --all
q doctor --strict

オプション:

  • -a, --all: 修正なしですべての診断テストを実行
  • -s, --strict: 警告でもエラーとする
  • -v, --verbose...: ログの詳細度を上げる
  • -h, --help: ヘルプを表示

q login – ログイン

機能: Amazon Qにログインします。 使用例:

q login
q login --license pro --region us-east-1
q login --license free
q login --use-device-flow

オプション:

  • --license <LICENSE>: ライセンスタイプ
    • free: Builder IDでの無料ライセンス
    • pro: Identity Centerでのプロライセンス
  • --identity-provider <IDENTITY_PROVIDER>: Identity ProviderのURL(Identity Center用)
  • --region <REGION>: リージョン(Identity Center用)
  • --use-device-flow: 認証にOAuth device flowを常に使用
  • -v, --verbose...: ログの詳細度を上げる
  • -h, --help: ヘルプを表示

q user – アカウント管理

機能: アカウントを管理します。 使用例:

q user login
q user logout
q user whoami
q user profile

サブコマンド:

  • login: ログイン
  • logout: ログアウト
  • whoami: 現在のユーザー詳細を表示
  • profile: このIDCユーザーに関連付けられたプロファイルを表示
  • help: ヘルプを表示

q integrations – システム統合管理

機能: システム統合を管理します。 使用例:

q integrations install
q integrations uninstall
q integrations status

サブコマンド:

  • install: 統合をインストール
  • uninstall: 統合をアンインストール
  • reinstall: 統合を再インストール
  • status: 統合の状態を表示
  • help: ヘルプを表示

q inline – インラインシェル補完

機能: インラインシェル補完を管理します。 使用例:

q inline enable
q inline disable
q inline status
q inline set-customization
q inline show-customizations

サブコマンド:

  • enable: インラインを有効化
  • disable: インラインを無効化
  • status: インラインの状態を表示
  • set-customization: 利用可能なカスタマイゼーションを選択
  • show-customizations: 利用可能なカスタマイゼーションを表示
  • help: ヘルプを表示

その他のサブコマンド

q profile – プロファイル表示

機能: このIDCユーザーに関連付けられたプロファイルを表示します。 使用例q profile

q logout – ログアウト

機能: Amazon Qからログアウトします。 使用例q logout

q whoami – ユーザー情報表示

機能: 現在のユーザーの詳細を表示します。 使用例q whoami

q launch – デスクトップアプリ起動

機能: デスクトップアプリを起動します。 使用例q launch

q quit – デスクトップアプリ終了

機能: デスクトップアプリを終了します。 使用例q quit

q restart – デスクトップアプリ再起動

機能: デスクトップアプリを再起動します。 使用例q restart

q dashboard – ダッシュボード表示

機能: ダッシュボードを開きます。 使用例q dashboard

q update – アプリケーション更新

機能: Amazon Qアプリケーションを更新します。 使用例q update

q diagnostic – 診断テスト実行

機能: 診断テストを実行します。 使用例q diagnostic

q init – シェル用dotfile生成

機能: 指定されたシェル用のdotfileを生成します。 使用例q init

q theme – テーマ取得・設定

機能: テーマを取得または設定します。 使用例q theme

q issue – GitHub issue作成

機能: 新しいGitHub issueを作成します。 使用例q issue

q setup – CLI コンポーネントセットアップ

機能: CLIコンポーネントをセットアップします。 使用例q setup

q debug – アプリデバッグ

機能: アプリをデバッグします。 使用例q debug

チャット内コマンド(q chatセッション内で使用)

/clear – 会話履歴のクリア

機能: 現在の会話履歴をすべて削除します。 使用例/clear 引数: なし 詳細:

  • 会話の文脈をリセットしたい場合に使用
  • 新しいトピックで会話を始める際に便利
  • 実行後は過去の会話内容を参照できなくなります

/issue – 問題報告・機能要求

機能: Amazon Q Chatに関する問題報告や機能要求を送信します。 使用例/issue 引数: なし 詳細:

  • バグや不具合を発見した際に使用
  • 新機能の提案や改善要求を送信
  • GitHubのissueテンプレートが開かれます

/editor – エディタでプロンプト作成

機能: 外部エディタを開いてプロンプトを作成します。 使用例/editor 引数: なし 詳細:

  • デフォルトではviエディタが起動
  • $EDITOR環境変数で使用するエディタを変更可能
  • 長いプロンプトや複雑な質問を作成する際に便利

/help – ヘルプ表示

機能: このヘルプダイアログを表示します。 使用例/help 引数: なし 詳細:

  • 利用可能なコマンドの一覧を表示
  • 各コマンドの基本的な使用方法を確認可能

/quit – アプリケーション終了

機能: Amazon Q Chatアプリケーションを終了します。 使用例/quit 引数: なし 詳細:

  • 会話セッションを終了
  • 保存されていない会話履歴は失われます

/compact – 会話の要約

機能: 会話を要約してコンテキストスペースを解放します。 使用例:

  • /compact
  • /compact help
  • /compact [カスタムプロンプト]

引数:

  • [prompt]: 要約を導くためのオプションのカスタムプロンプト

サブコマンド:

  • help: compactコマンドのヘルプを表示

詳細:

  • 長い会話でコンテキスト制限に達した際に使用
  • 重要な情報を保持しながら会話履歴を圧縮
  • カスタムプロンプトで要約の方向性を指定可能

/tools – ツールと権限の管理

機能: ツールの表示と権限管理を行います。 使用例:

  • /tools
  • /tools help
  • /tools trust [ツール名]
  • /tools untrust [ツール名]
  • /tools trustall
  • /tools reset

引数:

  • [ツール名]: 信頼または信頼解除するツール名

サブコマンド:

  • help: trustコマンドの説明を表示
  • trust: 特定のツールまたは複数のツールをセッション中信頼する
  • untrust: ツールの信頼を取り消し、リクエストごとの確認に戻す
  • trustall: すべてのツールを信頼(非推奨の/acceptallと同等)
  • reset: すべてのツールをデフォルトの権限レベルにリセット

詳細:

  • セキュリティ管理の重要な機能
  • ツールごとに実行権限を細かく制御可能
  • セッション単位での権限管理

/mcp – MCPサーバー確認

機能: 読み込まれているMCPサーバーを確認します。 使用例/mcp 引数: なし 詳細:

  • MCP(Model Context Protocol)は、アプリケーションがLLMにコンテキストを提供する標準化されたオープンプロトコル
  • ローカルで実行されているMCPサーバーとの通信を可能にする
  • 追加のツールやリソースでAmazon Qの機能を拡張

/model – モデル選択

機能: 現在の会話セッション用のモデルを選択します。 使用例/model 引数: なし 詳細:

  • 異なるAIモデル間での切り替えが可能
  • セッション単位でのモデル選択
  • モデルによって応答の特性や能力が異なる場合があります

/profile – プロファイル管理

機能: プロファイルの管理を行います。 使用例:

  • /profile help
  • /profile list
  • /profile set [プロファイル名]
  • /profile create [プロファイル名]
  • /profile delete [プロファイル名]
  • /profile rename [旧名] [新名]

引数:

  • [プロファイル名]: 操作対象のプロファイル名
  • [旧名] [新名]: renameコマンドで使用する旧名と新名

サブコマンド:

  • help: プロファイルヘルプを表示
  • list: プロファイル一覧を表示
  • set: 現在のプロファイルを設定
  • create: 新しいプロファイルを作成
  • delete: プロファイルを削除
  • rename: プロファイル名を変更

詳細:

  • 複数のAWS環境や設定を管理
  • プロジェクトごとに異なる設定を使い分け可能
  • 認証情報や設定の切り替えが簡単

/prompts – プロンプトの表示・取得

機能: プロンプトの表示と取得を行います。 使用例:

  • /prompts help
  • /prompts list [検索条件]
  • /prompts get [プロンプトID]

引数:

  • [検索条件]: listコマンドで使用する検索条件
  • [プロンプトID]: getコマンドで取得するプロンプトのID

サブコマンド:

  • help: プロンプトヘルプを表示
  • list: 利用可能なプロンプトの一覧表示または検索
  • get: プロンプトを取得して送信

詳細:

  • 事前定義されたプロンプトテンプレートを活用
  • よく使用するプロンプトの再利用が可能
  • 効率的な質問作成をサポート

/context – コンテキストファイルとフックの管理

機能: チャットセッション用のコンテキストファイルとフックを管理します。 使用例:

  • /context help
  • /context show [--expand]
  • /context add [ファイルパス] [--global] [--force]
  • /context rm [ファイルパス] [--global]
  • /context clear [--global]
  • /context hooks

引数:

  • [ファイルパス]: 操作対象のファイルパス

オプション:

  • --expand: show コマンドで詳細表示
  • --global: グローバル設定として操作
  • --force: 強制的に実行

サブコマンド:

  • help: コンテキストヘルプを表示
  • show: 現在のコンテキストルール設定を表示
  • add: ファイルをコンテキストに追加
  • rm: コンテキストからファイルを削除
  • clear: 現在のコンテキストからすべてのファイルをクリア
  • hooks: コンテキストフックの表示と管理

詳細:

  • ファイルの内容をAIが参照できるように設定
  • プロジェクト固有の情報を継続的に提供
  • グローバル設定とセッション固有設定の使い分けが可能

/usage – コンテキストウィンドウ使用量表示

機能: 現在のセッションのコンテキストウィンドウ使用量を表示します。 使用例/usage 引数: なし 詳細:

  • トークン使用量の確認
  • コンテキスト制限の把握
  • 会話の長さを管理するための指標

/load – 会話状態の読み込み

機能: JSONファイルから会話状態を読み込みます。 使用例/load [ファイルパス] 引数:

  • [ファイルパス]: 読み込むJSONファイルのパス 詳細:
  • 以前に保存した会話を復元
  • 会話の継続や共有が可能
  • バックアップからの復旧

/save – 会話状態の保存

機能: 会話状態をJSONファイルに保存します。 使用例/save [ファイルパス] 引数:

  • [ファイルパス]: 保存先のJSONファイルパス 詳細:
  • 現在の会話をファイルに保存
  • 後で会話を再開可能
  • 重要な会話のバックアップ

/subscribe – Q Developer Proサブスクリプション

機能: クエリ制限を増加させるためのQ Developer Proサブスクリプションにアップグレードします。 使用例:

  • /subscribe
  • /subscribe --manage

オプション:

  • --manage: AWSで既存のサブスクリプションを表示・管理

詳細:

  • より多くのクエリを実行可能
  • 高度な機能へのアクセス
  • 商用利用での制限緩和

キーボードショートカットとTips

クイック実行

機能!{command} – 現在のセッションでコマンドを素早く実行 使用例!ls -la 詳細: シェルコマンドを直接実行可能

複数行入力

ショートカットCtrl + j または Alt + Enter 機能: 改行を挿入して複数行プロンプトを提供 詳細: 長い質問や複雑なプロンプトの作成に便利

ファジー検索

ショートカットCtrl + s 機能: コマンドとコンテキストファイルのファジー検索 詳細:

  • Tabキーで複数項目を選択可能
  • キーバインドの変更: q settings chat.skimCommandKey x (xは任意のキー)

編集モード設定

設定コマンドq settings chat.editMode vi/emacs 機能: 編集モード(vimまたはemacs)を設定 詳細: 好みのエディタキーバインドを使用可能

設定可能な項目

Amazon Q CLIでは、q settingsコマンドを使用して以下の項目を設定できます:

チャット関連設定

  • chat.editMode: 編集モード(vi または emacs
  • chat.skimCommandKey: ファジー検索のキーバインド(デフォルト: s

使用例

# 編集モードをvimに設定
q settings chat.editMode vi

# ファジー検索のキーをCtrl+xに変更
q settings chat.skimCommandKey x

# 設定を削除
q settings --delete chat.editMode

# 全設定を表示
q settings all

# JSON形式で設定を表示
q settings --format json

MCP(Model Context Protocol)について

MCPは、アプリケーションがLLMにコンテキストを提供する方法を標準化するオープンプロトコルです。Amazon Q CLIでMCPサーバーを設定することで、追加のツールやリソースにアクセスできます。

MCP設定例

# MCPサーバーを追加
q mcp add --name myserver --command "python server.py" --args "--port 8080"

# 環境変数付きでサーバーを追加
q mcp add --name dbserver --command "node db-server.js" --env "DB_URL=localhost:5432"

# グローバルスコープでサーバーを追加
q mcp add --name globalserver --command "python global.py" --scope global

# サーバーを無効化して追加
q mcp add --name testserver --command "python test.py" --disabled

# 既存サーバーを強制上書き
q mcp add --name myserver --command "python new-server.py" --force

詳細情報https://docs.aws.amazon.com/en_us/amazonq/latest/qdeveloper-ug/command-line-mcp.html

実用的な使用パターン

1. プロジェクト開始時の設定

# プロファイルを作成
q chat
/profile create myproject

# コンテキストファイルを追加
/context add README.md
/context add src/main.py --global

# 設定を保存
/save project-state.json

2. 開発作業の再開

# 前回の会話を再開
q chat --resume

# または保存した状態を読み込み
q chat
/load project-state.json

3. 特定のツールを信頼して作業

# ファイル操作ツールのみを信頼
q chat --trust-tools=fs_read,fs_write

# すべてのツールを信頼(注意して使用)
q chat --trust-all-tools

4. 非インタラクティブモードでの使用

# 一度だけ質問して結果を取得
q chat --no-interactive "What is the current AWS region?"

# ツールを信頼して非インタラクティブで実行
q chat --no-interactive --trust-all-tools "List all files in current directory"

トラブルシューティング

一般的な問題の診断

# 診断テストを実行
q doctor

# すべての診断テストを実行(修正なし)
q doctor --all

# 厳密モードで診断(警告もエラーとして扱う)
q doctor --strict

ログの詳細化

# 詳細ログを有効にして実行
q chat -v
q chat -vv  # より詳細
q chat -vvv # 最も詳細

認証関連の問題

# 現在のユーザー情報を確認
q whoami

# ログアウトして再ログイン
q logout
q login

# Identity Centerでのログイン
q login --license pro --region us-east-1

# Device Flowを使用したログイン
q login --use-device-flow

注意事項

  • コマンドは大文字小文字を区別します
  • 一部のコマンドは実行に時間がかかる場合があります
  • ネットワーク接続が必要な機能があります
  • 設定変更は即座に反映されます
  • 重要なデータは定期的に保存することを推奨します
  • MCPサーバーの設定は慎重に行い、信頼できるソースからのみ追加してください
  • --trust-all-toolsオプションは慎重に使用してください

まとめ

このドキュメントは、Amazon Q CLIの効果的な使用をサポートするための包括的なリファレンスです。各コマンドとその引数を適切に使用することで、AIアシスタントとの対話をより効率的に行うことができます。

定期的にq --helpや各サブコマンドの--helpオプションを確認して、最新の機能や変更点を把握することをお勧めします。

コメント

タイトルとURLをコピーしました