Skip to content

コンテキスト

コンテキストメンションは、VJSPにプロジェクトに関する具体的な情報を提供する強力な方法であり、これによりタスクをより正確かつ効率的に実行できるようになります。ファイル、フォルダ、問題(エラー・警告)、Gitコミットなどを参照するためにメンションを使用できます。コンテキストメンションは @ 記号で始まります。


チャットインターフェースにおける @ 記号のドロップダウンメニューを示したコンテキストメンションの概要

メンションの種類


ファイルメンションは実際のコード内容を会話に取り込み、直接参照・分析可能にします。

メンションの種類書式説明使用例
ファイル@/path/to/file.tsリクエストのコンテキストにファイルの内容を含める" @/src/utils.ts 内の関数を説明してください"
フォルダ@/path/to/folder/ディレクトリ構造をツリー形式で提供" @/src/components/ にはどのようなファイルがありますか?"
問題(Problems)@problemsIDEの「Problems」パネルからの診断情報を含める" @problems を使ってコード内のすべてのエラーを修正してください"
ターミナル@terminal最近のターミナルコマンドとその出力を含める" @terminal に表示されたエラーを修正してください"
Gitコミット@a1b2c3dハッシュ値で特定のコミットを参照"コミット @a1b2c3d では何が変更されましたか?"
Git変更@git-changes未コミットの変更内容を表示" @git-changes のためにコミットメッセージを提案してください"
URL@https://example.comWebサイトの内容をインポート" @https://vjsp.net/ を要約してください"

ファイルメンション


ファイルメンションは行番号とソースコードを組み合わせて、正確に参照できるようにします。

機能詳細
書式@/path/to/file.ts(パスは常にワークスペースのルートから始まり、先頭に / を含む)
内容表示行番号付きのファイル全体の内容を返す
サポート形式テキストファイル、PDF、DOCX(テキスト抽出可能な形式)
使用ケース初期クエリ、コンテキストの補足、フィードバックへの対応、後続のやり取りでのファイル参照
注意点非常に大きなファイルは切り捨てられる場合がある。画像や実行ファイルなどの純粋なバイナリファイルはサポートされない

フォルダメンション


フォルダメンションは読みやすいツリー形式でディレクトリ構造を表示します。

機能詳細
書式@/path/to/folder/(末尾のスラッシュに注意)
表示スタイル├── および └── 接頭辞を使った階層的ツリー形式
範囲直下の子要素(ファイルおよびサブディレクトリ)のみをリストし、再帰的な展開は行わない
使用ケースプロジェクトまたはモジュールのレイアウトを素早く把握する
推奨より深い理解のために、特定のファイルメンションと組み合わせて内容を確認すること

問題(Problems)メンション


問題メンションはIDEの「Problems」パネルから診断情報を直接取り込みます。

機能詳細
書式@problems
内容IDEの「Problems」パネルにあるすべてのエラーおよび警告を自動的に抽出
含まれる情報ファイルパス、行番号、詳細な診断メッセージ
整理方法ファイルごとにグループ化され、読みやすさと迅速なナビゲーションを向上
最適な用途エラーメッセージを手動でコピーせずに、コードの問題を素早く修正

ターミナルメンション


ターミナルメンションは最近のコマンド出力をキャプチャし、デバッグや分析に役立てます。

機能詳細
書式@terminal
キャプチャ内容最も最近実行されたコマンドとその全出力
状態保持ターミナルをクリアせず、現在のターミナルの状態を維持
制限事項表示可能なターミナルバッファ内の内容のみ取得
最適な用途ビルドエラーのデバッグやコマンドライン出力の分析

Gitメンション


Gitメンションはコミットの詳細や差分(diff)を提供し、バージョン管理に基づいた分析を可能にします。

種類書式提供される内容制限事項
コミット@a1b2c3dコミットメタデータ(メッセージ、作者、日時)および完全な差分Gitリポジトリ内でのみ動作
ワークスペースの変更@git-changesgit status の出力および未コミット変更の詳細な差分Gitリポジトリ内でのみ動作

URLメンション


URLメンションは外部Webコンテンツを取り込み、読みやすいMarkdown形式に変換します。

機能詳細
書式@https://example.com
処理方法ヘッドレスブラウザを使用してコンテンツを取得
クリーニングスクリプト、スタイル、ナビゲーション要素を削除
出力形式読みやすさを高めるためMarkdownに変換
制限事項複雑なページは完全に変換されない場合がある

メンションの使い方

  1. チャット入力ボックスに @ を入力して、サジェストドロップダウンメニューを表示
  2. 入力を続けて候補を絞り込むか、矢印キーでナビゲート
  3. Enterキーを押すかクリックして選択
  4. 単一のリクエスト内で複数のメンションを組み合わせ可能:
    " @/src/component.ts 内の @problems を修正してください"

ドロップダウンメニューは自動的に以下をサジェストします:

  • 最近開いたファイル
  • 表示中のフォルダ
  • 最近のGitコミット
  • 特別キーワード(problems, terminal, git-changes

ベストプラクティス

プラクティス説明
具体的なパスを使用場所を言葉で説明する代わりに、正確なファイルパスを参照
相対パスを使用パスは常にワークスペースルートから始まる(例:@/src/file.ts)。@C:/Projects/src/file.ts のような絶対パスは避ける
参照の正確性を確認ファイルパスやコミットハッシュ(例:@a1b2c3d)が正しいかつ有効であることを保証
メンションをクリックしてナビゲートチャット履歴内のファイルまたはコミットメンションをクリックして、即座にファイルを開いたり関連コンテンツを表示したり可能
手動でのコピーペーストを避けるコードスニペットやエラーメッセージを貼り付けるよりも、スマートメンション(例:@/file.ts@problems)を優先
複数のメンションを組み合わせる必要に応じて自由に組み合わせる。例:「コミット @a1b2c3d の実装を参照して、 @/src/component.ts 内の @problems を修正してください」