先だってCopilot for Obsidianプラグインの3つのクエリモードと簡単な操作を紹介しましたが、今回はさらに他の機能を紹介します。

1. カスタムプロンプト

カスタムプロンプトはプロンプトテンプレートと見なすことができます。これを通じて、繰り返し使用するプロンプトをモードとして設定し、何度も使用できるようになります。

Copilotはカスタムプロンプトの追加、編集、削除を行うためのAdd custom promptEdit custom promptDelete custom promptの3つのコマンドを提供しています。作成したプロンプトはApply custom promptを使用して大規模言語モデルに送信します。

1.1. プロンプトの追加

  • カスタムプロンプトダイアログには、名前と内容の2つのフィールドがあります。入力が完了したら【Save】を押します。
    gh|700

プロンプトの内容では、以下の特殊なキーワードで動的な情報を提供できます:

  • {}は選択したテキストです
  • {[[ノートファイル名]]}は特定のノートを指定します
  • {フォルダパス}はノートのフォルダです
  • {#tag1,#tag2}はタグtag1またはタグtag2です

例えば、私が設定したDaily Noteプロンプトの内容は次のとおりです:

{[[template-daily-AI]]}の内容を読み込み、以下のルールに従って置換し、置換後の内容を出力してください:
1. 今日の日付、時刻、天気は{}です
2. %今日の日付%を今日の日付(形式:YYYY-MM-DD、YYYYは西暦年、MMは月、DDは日。月と日は2桁)に置換します
3. %今日の時刻%を現在の時刻(形式:HH:mm:ss、HHは時、mmは分、ssは秒)に置換します
4. %今日の天気%を現在の天気に置換します
5. %昨日の日付%を昨日の日付(形式:YYYY-MM-DD)に置換します
6. %明日の日付%を明日の日付(形式:YYYY-MM-DD)に置換します
7. 今日が金曜日の場合は%金曜日BEGIN%から%金曜日END%までの内容を出力し、そうでない場合は%金曜日BEGIN%から%金曜日END%までの内容を生成しません
8. 今日が月曜日の場合は%月曜日BEGIN%から%月曜日END%までの内容を出力し、そうでない場合は%月曜日BEGIN%から%月曜日END%までの内容を生成しません

1.2. 動的なノートファイル名

別のカスタムプロンプト:

[[{}]]の内容を読み込み、3つの中文(中国語)の質問と回答を生成してください。Markdown形式を使用し、各質問の最初の行はh3タグを使用し、順序付きリストの番号で始まる必要があります。

元々は選択したテキストをノートファイル名として使用できることを期待していましたが、テスト結果では[[SelectedText]]が送信され、動的なファイル名の要求を満たすことができませんでした。

修正後のプロンプト:

処理対象の内容: {}
処理対象の内容に基づき、3つの中文(中国語)の質問と回答を生成してください。Markdown形式を使用し、各質問の最初の行はh3タグを使用し、順序付きリストの番号で始まる必要があります。

2. Copilotが提供するコマンド

Copilotには以下のコマンドがあり、コマンドパレットで使用できます:

コマンド 機能
Add custom prompt カスタムプロンプトテンプレートを追加
Edit custom prompt カスタムプロンプトテンプレートを編集
Delete custom prompt カスタムプロンプトテンプレートを削除
Apply custom prompt カスタムプロンプトを適用(送信)
Apply ad-hoc custom prompt 一時的なカスタムプロンプトを適用(送信)
Change tone of selection 選択範囲のトーンを変更(例:プロフェッショナル、カジュアル)
Toggle Copilot Chat Window Copilotチャットウィンドウの表示/非表示を切り替え
Toggle Copilot Chat Window in Note Area ノートエリアでのCopilotチャットウィンドウの表示/非表示を切り替え
Clear local vector store ローカルベクトルストアをクリア
Count words and tokens in selection 選択範囲の単語数とトークン数をカウント
Count total tokens in your vault Vault内の合計トークン数をカウント
Explain selection like I'm 5 選択範囲を5歳児にもわかるように説明
Emojify selection 選択範囲を絵文字化
Fix grammar and spelling of selection 選択範囲の文法とスペルを修正
Force re-index vault for QA QA用にVaultのインデックスを強制再構築
Garbage collect vector store (remove files that no longer exist in vault) ベクトルストアのガベージコレクション(Vault内に存在しなくなったファイルを削除)
Generate glossary for selection 選択範囲の用語集を生成
Generate table of contents for selection 選択範囲の目次を生成
Index (refresh) vault for QA QA用にVaultをインデックス(更新)
Make selection longer 選択範囲を長くする
Make selection shorter 選択範囲を短くする
Rewrite selection to a press release 選択範囲をプレスリリースに書き換える
Remove URLs from selection 選択範囲からURLを削除
Rewrite selection to a tweet 選択範囲をツイートに書き換える
Rewrite selection to a tweet thread 選択範囲をツイートスレッドに書き換える
Set note context for Chat mode チャットモード用のノートコンテキストを設定
Set exclusion for Vault QA mode Vault QAモード用の除外設定
Simplify selection 選択範囲を簡略化
Summarize selection 選択範囲を要約
Translate selection 選択範囲を翻訳

3. 💡 関連リンク

💡 解説記事: https://jdev.tw/blog/8393/
logancyang/obsidian-copilot: A ChatGPT Copilot in Obsidian
✅ Copilot for Obsidian作者のYouTubeチャンネル: https://www.youtube.com/@loganhallucinates/videos

4. チュートリアル動画

##