コンテキスト管理 - Amazon Q Developer

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

コンテキスト管理

コンテキストの管理

コンテキストファイルには、会話中に Amazon Q で考慮すべき情報が含まれています。これには、プロジェクト要件、コーディング標準、開発ルール、または Amazon Q がより関連性の高いレスポンスを提供するのに役立つその他の情報が含まれます。

コンテキストを設定する方法は 2 つあります。

  • エージェントリソース (推奨): エージェント設定ファイルで定義された永続コンテキスト

  • セッションコンテキスト: /context コマンドを使用してチャットセッション中に追加された一時的なコンテキスト

エージェントリソースを使用した永続コンテキストの設定

コンテキストを設定する推奨方法は、エージェント設定ファイルの resourcesフィールドを使用することです。これにより、エージェントを使用するたびに使用できる永続コンテキストが作成されます。

エージェント設定のresources配列にファイルパスまたは glob パターンを追加します。

{ "name": "my-agent", "description": "My development agent", "resources": [ "file://README.md", "file://.amazonq/rules/**/*.md", "file://docs/**/*.md", "file://src/config.py" ] }

リソースをコンテキストファイルとして含めfile://るには、 にプレフィックスを付ける必要があります。これらのファイルは、このエージェントを使用するすべてのチャットセッションで自動的に使用できます。

一時的なセッションコンテキストの追加

/context add コマンドを使用して、現在のチャットセッションにファイルを一時的に追加できます。これらの追加は現在のセッションでのみ使用でき、新しいチャットセッションを開始すると保持されません。

q chat > /context add README.md Added 1 path(s) to context. Note: Context modifications via slash command is temporary.

glob パターンを使用して、一度に複数のファイルを追加することもできます。

q chat > /context add docs/*.md Added 3 path(s) to context. Note: Context modifications via slash command is temporary.

コンテキストの変更を永続的にするには、代わりに ファイルをエージェントの resourcesフィールドに追加します。

コンテキストの表示

現在のコンテキストを表示するには、 /context show コマンドを使用します。

q chat > /context show 👤 Agent (my-agent): README.md (1 match) .amazonq/rules/**/*.md (3 matches) docs/**/*.md (5 matches) 💬 Session (temporary): <none> 5 matched files in use: 👤 README.md (~250 tkns) 👤 .amazonq/rules/security.md (~180 tkns) 👤 .amazonq/rules/coding-standards.md (~320 tkns) 👤 docs/architecture.md (~150 tkns) 👤 docs/best-practices.md (~200 tkns) Total: ~1100 tokens

出力には以下が表示されます。

  • 👤 エージェント: エージェントのresourcesフィールドからの永続コンテキスト

  • 💬 セッション: 現在のセッション中に追加された一時的なコンテキスト

コンテキストの削除

現在のセッションコンテキストからファイルを削除するには、 /context rm コマンドを使用します。

q chat > /context rm src/temp-file.py Removed 1 path(s) from context. Note: Context modifications via slash command is temporary.

すべてのセッションコンテキストをクリアするには、 /context clear コマンドを使用します。

q chat > /context clear Cleared context Note: Context modifications via slash command is temporary.

注: /context コマンドを使用してエージェント定義のコンテキストを削除することはできません。コンテキストを完全に削除するには、エージェントの resourcesフィールドを編集します。

一般的なユースケース

コンテキスト管理の一般的なユースケースは次のとおりです。

プロジェクトルールの使用

Amazon Q は、セキュリティガイドラインと制限を定義できるプロジェクトレベルのルールをサポートしています。これらのルールは、プロジェクトの .amazonq/rules ディレクトリにある Markdown ファイルで定義されます。

たとえば、以下を指定するルールを作成できます。

  • Amazon Q がアクセスを避けるディレクトリ

  • 生成されたコードのセキュリティ要件

  • コーディング標準とベストプラクティス

プロジェクトルールを含めるには、エージェント設定を使用することをお勧めします。

{ "name": "my-project-agent", "resources": [ "file://.amazonq/rules/**/*.md", "file://README.md", "file://docs/architecture.md" ] }

現在のセッションにプロジェクトルールを一時的に追加することもできます。

q chat > /context add .amazonq/rules/*.md Added 3 path(s) to context. Note: Context modifications via slash command is temporary.

プロジェクトルールの作成と使用の詳細については、IDE ドキュメントの「Amazon Q Developer チャットで使用するプロジェクトルールの作成」を参照してください。

セッションコンテキストからエージェントリソースへの移行

/context add コマンドを使用して同じコンテキストファイルを繰り返し追加する場合は、永続化のためにエージェントの resourcesフィールドに移動することを検討してください。

  1. で頻繁に追加するファイルを書き留めます。 /context add

  2. エージェント設定ファイルを編集する

  3. file:// プレフィックス付きのresources配列にファイルパスを追加する

  4. エージェント設定を保存する

移行の例:

# Instead of running these commands every session: > /context add README.md > /context add docs/*.md > /context add .amazonq/rules/*.md # Add them to your agent config once: { "resources": [ "file://README.md", "file://docs/**/*.md", "file://.amazonq/rules/**/*.md" ] }