承認モード
Qwen Code では、タスクの複雑さやリスクレベルに応じて、AI がコードおよびシステムとどのように対話するかを柔軟に制御できる 3 種類の異なる権限モードを提供しています。
権限モードの比較
| モード | ファイル編集 | シェルコマンド | 最適な使用シーン | リスクレベル |
|---|---|---|---|---|
| Plan | ❌ 読み取り専用の分析のみ | ❌ 実行されません | • コードの探索 • 複雑な変更の計画 • 安全なコードレビュー | 最低 |
| Default | ✅ 手動承認が必要 | ✅ 手動承認が必要 | • 新規または不慣れなコードベース • 重要なシステム • チームでの共同作業 • 学習および教育用途 | 低 |
| Auto-Edit | ✅ 自動承認済み | ❌ 手動承認が必要 | • 日常的な開発タスク • リファクタリングおよびコード改善 ・安全な自動化 | 中 |
| YOLO | ✅ 自動承認済み | ✅ 自動承認済み | • 信頼できる個人プロジェクト • 自動化スクリプト/CI/CD • 一括処理タスク | 最高 |
クイックリファレンスガイド
- プランモードで開始: 変更を加える前に理解を深めるのに最適
- デフォルトモードで作業: ほとんどの開発作業にバランスの取れた選択肢
- オートエディットモードに切り替え: 安全なコード変更を多数行う場合
- YOLO を控えめに使用: 制御された環境での信頼できる自動化処理にのみ使用
セッション中に Shift+Tab(Windows の場合は Tab)を押すことで、モードを素早く切り替えることができます。ターミナルのステータスバーには現在のモードが表示されるため、Qwen Code が持つ権限を常に確認できます。
1. 安全なコード分析にはプランモードを使用
プランモードでは、Qwen Code にコードベースを 読み取り専用 の操作で解析させ、計画を作成させます。これは、コードベースの探索、複雑な変更の計画立案、または安全なコードレビューに最適です。
プランモードを使用するタイミング
- 複数ステップでの実装: 機能の実装に多数のファイルを編集する必要がある場合
- コードの探索: 何かを変更する前に、コードベースを徹底的に調査したい場合
- 対話型開発: Qwen Code と連携して、実装の方針を反復的に検討・調整したい場合
プランモードの使用方法
セッション中にプランモードを有効化する
セッション中に Shift+Tab(Windows の場合は Tab)を押すことで、権限モードを順に切り替えてプランモードに移行できます。
通常モード(Normal Mode)の状態で Shift+Tab(Windows の場合は Tab)を押すと、まず auto-edits モードに切り替わり、ターミナルの下部に ⏵⏵ accept edits on と表示されます。さらに Shift+Tab(Windows の場合は Tab)を押すと、プランモードに切り替わり、ターミナルの下部に ⏸ plan mode と表示されます。
新規セッションをプランモードで開始する
新規セッションをプランモードで開始するには、/approval-mode コマンドを実行し、その後 plan を選択します。
/approval-modeプランモードで「ヘッドレス」クエリを実行する
また、-p オプションまたは --prompt オプションを指定することで、プランモードでクエリを直接実行することもできます。
qwen --prompt "機械学習とは何ですか?"例:複雑なリファクタリングの計画
/approval-mode plan認証システムを OAuth2 に移行する必要があります。詳細な移行計画を作成してください。Qwen Code は現在の実装を分析し、包括的な計画を作成します。以下のフォローアップで計画を精緻化できます。
後方互換性についてはどうすべきですか?
データベースのマイグレーションはどのように処理すべきですか?プランモードをデフォルト設定にする
// .qwen/settings.json
{
"permissions": {
"defaultMode": "plan"
}
}2. 制御された対話にはデフォルトモードを使用
デフォルトモードは、Qwen Code を使用する標準的な方法です。このモードでは、すべての潜在的に危険な操作について完全な制御権を保持します。つまり、Qwen Code はファイル変更やシェルコマンドの実行を行う前に、必ずあなたの承認を要求します。
デフォルトモードを使用するタイミング
- コードベースに不慣れな場合: 未知のプロジェクトを探索中で、特に慎重になりたいとき
- 重要システムの場合: 本番環境のコード、インフラストラクチャ、または機密データを扱うとき
- 学習・教育目的の場合: Qwen Code が各ステップで何を行っているかを理解したいとき
- チームでの共同作業の場合: 複数の人が同じコードベースで作業しているとき
- 複雑な操作の場合: 変更が複数のファイルや複雑なロジックを含むとき
デフォルトモードの使用方法
セッション中にデフォルトモードを有効化する
セッション中に Shift+Tab(Windows の場合は Tab)を押すことで、権限モードを順に切り替えてデフォルトモードに移行できます。他の任意のモードから開始した場合でも、Shift+Tab(Windows の場合は Tab)を繰り返し押すと最終的にデフォルトモードに戻ります。このとき、ターミナルの下部にはモードを示すインジケーターが表示されません。
デフォルトモードで新しいセッションを開始する
Qwen Code を起動すると、初期状態はデフォルトモードになります。モードを変更した後に再びデフォルトモードに戻したい場合は、以下のコマンドを実行してください:
/approval-mode defaultデフォルトモードで「ヘッドレス」クエリを実行する
ヘッドレスコマンドを実行する際は、デフォルトモードがデフォルトの動作です。明示的に指定するには、以下のようにします:
qwen --prompt "このコードに潜在的なバグがないか分析してください"例:安全に機能を実装する
/approval-mode defaultアプリケーションにユーザーのプロフィール画像を追加する必要があります。画像は S3 バケットに保存し、その URL をデータベースに保存します。Qwen Code はコードベースを分析し、計画を提案します。その後、以下の操作を実行する前に承認を要求します。
- 新しいファイルの作成(コントローラー、モデル、マイグレーション)
- 既存ファイルの変更(新しいカラムの追加、API の更新)
- シェルコマンドの実行(データベースマイグレーション、依存関係のインストール)
各提案された変更を個別に確認し、承認または却下できます。
デフォルトモードをデフォルトとして設定する
// .qwen/settings.json
{
"permissions": {
"defaultMode": "default"
}
}3. 自動編集モード
自動編集モードでは、Qwen Code がファイル編集を自動的に承認する一方で、シェルコマンドの実行には手動による承認を必要とします。これにより、システムの安全性を維持しつつ、開発ワークフローを加速できます。
Auto-Accept Edits モードを使用するタイミング
- 日常的な開発: ほとんどのコーディングタスクに最適
- 安全な自動化: AI によるコード変更を許可しつつ、危険なコマンドの誤実行を防ぎます
- チームでの協業: 他のメンバーへの意図しない影響を避けるため、共有プロジェクトで使用します
このモードへの切り替え方法
# コマンドで切り替える
/approval-mode auto-edit
# またはキーボードショートカットを使用
Shift+Tab(Windows の場合は Tab) # 他のモードから切り替える場合ワークフローの例
- Qwen Code に関数のリファクタリングを依頼します
- AI がコードを解析し、変更案を提示します
- 自動的に すべてのファイル変更を確認なしで適用します
- テスト実行が必要な場合、
npm testの実行について 承認を要求 します
4. YOLO モード — 完全自動化
YOLO モードでは、Qwen Code に最高レベルの権限が付与され、ファイル編集やシェルコマンドを含むすべてのツール呼び出しを自動的に承認します。
YOLO モードを使用するタイミング
- 自動化スクリプト: 事前に定義された自動タスクの実行
- CI/CD パイプライン: 制御された環境での自動実行
- 個人プロジェクト: 完全に信頼できる環境における迅速な反復開発
- バッチ処理: 複数のコマンドを連鎖的に実行する必要があるタスク
YOLO モードは注意して使用してください: AI は、あなたの端末に対するすべての権限で任意のコマンドを実行できます。以下の点を確認してください。
- 現在のコードベースを信頼していること
- AI が実行するすべての操作を理解していること
- 重要なファイルはバックアップ済み、またはバージョン管理システムにコミット済みであること
YOLO モードの有効化方法
# 一時的に有効化(現在のセッションのみ)
/approval-mode yolo
# プロジェクトのデフォルトとして設定
/approval-mode yolo --project
# ユーザー全体のグローバルデフォルトとして設定
/approval-mode yolo --user設定例
// .qwen/settings.json
{
"permissions": {
"defaultMode": "yolo",
"confirmShellCommands": false,
"confirmFileEdits": false
}
}自動化ワークフローの例
# 完全自動化されたリファクタリングタスク
qwen --prompt "テストスイートを実行し、失敗したすべてのテストを修正してから変更をコミットする"
# 人間の介入なしで、AIが以下の処理を行います:
# 1. テストコマンドを実行(自動承認)
# 2. 失敗したテストケースを修正(ファイルを自動編集)
# 3. git commit を実行(自動承認) モード切り替えと設定
キーボードショートカットによるモード切り替え
Qwen Code セッション中に、Shift+Tab(Windows の場合は Tab)を押すと、以下の 3 つのモードを素早く切り替えることができます:
デフォルトモード → 自動編集モード → YOLO モード → プランモード → デフォルトモード永続的な設定
// プロジェクトレベル: ./.qwen/settings.json
// ユーザーレベル: ~/.qwen/settings.json
{
"permissions": {
"defaultMode": "auto-edit", // または "plan"、"yolo"
"confirmShellCommands": true,
"confirmFileEdits": true
}
}モード使用の推奨事項
- コードベースに不慣れな場合: 安全な探索のために、まずプランモードから始めます
- 日常的な開発タスクの場合: 効率的で安全な自動承認編集モード(デフォルトモード)を使用します
- 自動化スクリプトの場合: 完全な自動化を実現するため、制御された環境でYOLOモードを使用します
- 複雑なリファクタリングの場合: 詳細な計画のためにまずプランモードを使用し、その後実行に適したモードに切り替えて実行します