Markdown Copilot for Visual Studio Code
December 9, 2025 · View on GitHub
Markdown Copilot for Visual Studio Code
Markdown Copilot は VS Code 向けの LLM API クライアントです。
Markdown Copilotを使用すると、OpenAI ChatGPT WebUIを完全に置き換えることができ、次のような優れた機能を提供します:
- Model Context Protocolサーバを利用する
- 会話履歴をMarkdownで保存する
- 複数の会話を同時並行で行う
- 会話を分岐させる
- 会話履歴を編集して会話を続ける
- 会話をもとにファイルに名前をつける
- 会話にタイトルをつける
- クリップボードの内容をファイルタイプに基づいて賢く貼り付ける
注意: この拡張機能を使用するには、OpenAI, Azure OpenAI, OpenRouterまたはローカルのOllamaインスタンスが必要です。設定方法:
- OpenAI APIキー
- Azure OpenAI クイックスタート
- OpenRouter APIキー: OpenAI, Claude, Gemini, Llama 3などをサポートしています。
- ローカルOllamaインスタンス: Llama 3.3, DeepSeek-R1, Phi-4, Mistral, Gemma 2などのモデルをローカルでサポートしています。
🛰️ 利用可能なバックエンド
markdown.copilot.backend.protocol でバックエンドを選択できます:
- OpenAI: Chat Completions (デフォルト)。
- OpenAI Responses: Responses API を呼び出し、OpenAI の組み込み
web_searchツールを利用可能。 - Azure:
backend.baseUrlにデプロイメントの chat/completions URL を設定。webSearchPreviewがある場合は利用。 - Google Vertex:
backend.baseUrlにサービスアカウント JSON の URI (例:file:///path/key.json) を設定し、gemini-3-pro-previewなど Vertex モデルを選択。 - OpenRouter と Ollama: エンドポイントと API キーを設定してホスト/ローカルモデルを利用。
🌟 主な機能
⚡ MCPサーバとツール呼び出し
Markdown Copilot はツール呼び出し(function calling)を行い、Model Context Protocol(MCP)サーバから追加ツールを取り込めます。使いたいツールを json copilot-tools もしくは yaml copilot-tools の配列で宣言し、プロンプトと一緒に選択して 💡 Markdown Copilot: 続ける を実行してください。
ツールプレフィックス
@組み込みグループ:@context(context_summary_and_new, context_reset_and_new),@file(fs_read_file, fs_read_dir, fs_find_files),@eval!(eval_js),@web(バックエンドの web search。OpenAI Responses またはwebSearchPreview付き Azure で利用)。^VS Code LM ツール または VS Code に追加した MCP サーバ: 正規表現でツールプロバイダーをフィルタします。例:^copilot(ビルトイン Copilot ツール) や、設定済み MCP サーバ名を指す^my-mcp-server。セットアップは Add an MCP server を参照。- プレフィックスなし:
web_search,fs_read_fileのような単体ツールや、copilot-tool-definitionブロックで定義したカスタムツール。
例: 利用可能なツールを列挙
あなたが使えるツールを全て列挙して。
```json copilot-tools
["^copilot"]
```
例: Web検索とファイル読み込みを組み合わせ
Web検索を使って、回答前にファイルを読み取ってください。
```json copilot-tools
["@web", "fs_read_file"]
```
Web検索 (OpenAI Responses / Azure webSearchPreview)
最新の VS Code リリースノートを探して要約してください。
```json copilot-tools
["@web"]
```
ツールを明示的に指定することもできます:
Python の最新安定版はどれですか?
```json copilot-tools
["web_search"]
```
MCP サーバの追加方法については、Use MCP servers in VSCode: Add an MCP server を参照してください。
🔀 並行編集
複数の自動編集を同時に実行し、ひとつの編集が完了するのを待たずに別の編集を開始できるため、作業速度が向上します。
📝 コンテキストに基づく編集
Markdown Copilotはコンテキストに基づいて選択したテキストに回答します。
使用するには、テキスト範囲を選択し、コードアクションの提案から 💡 Markdown Copilot: 続ける を使用します。
または、クイックアクセスのためのショートカットキーを使用します:
| コマンド | Windows / Linux | Mac |
|---|---|---|
候補をトリガー | Ctrl+Space または Ctrl+I | ⌃+Space または ⌘+I |
ᝰ オーバーライドオプション
Markdown Copilotの挙動をオーバーライドオプションでカスタマイズします。これにより、文書内で直接、応答の長さやAIモデルなどの設定をコントロールできます。
オーバーライドオプションを使用するには、希望する設定を含むJSONまたはYAMLコードブロックをそれぞれ json copilot-options または yaml copilot-options として含め、このブロックとテキストを一緒に選択し、コードアクションの提案から 💡 Markdown Copilot: 続ける を使用します。
例: カスタマイズされた応答の長さとモデルでMarkdown Copilotに自己紹介させる (JSON)
自己紹介してください。
```json copilot-options
{"max_tokens":50,"model":"gpt-3.5-turbo"}
```
例: カスタマイズされた応答の長さとモデルでMarkdown Copilotに自己紹介させる (YAML)
自己紹介してください。
```yaml copilot-options
max_tokens: 50
model: gpt-3.5-turbo
```
例: o1-preview モデルを利用する (JSON)
o1-preview モデルはシステムメッセージをサポートしていないので **System(Override):** を使ってシステムメッセージを空にします。
**System(Override):**
**User:**
自己紹介してください。
```json copilot-options
{"model":"o1-preview","temperature":1}
```
例: ローカル Ollama の llama2 モデルを使用する (JSON)
Introduce yourself.
```json copilot-options
{"model":"llama2","baseURL":"http://localhost:11434/v1"}
```
例: ローカル Ollama の llama2 モデルを使用する (YAML)
Introduce yourself.
```yaml copilot-options
model: llama2
baseURL: http://localhost:11434/v1
```
他の設定オプションについては、OpenAI API: Create chat completionを参照してください。
📛 ファイルに名前をつけて保存
Markdown Copilotはファイル内容をもとにファイルに名前を付けて保存できます。
使用するには、ファイルに名前を付けて保存したいエディタを選択してMarkdown Copilot: 名前をつけて保存...コマンドを使用します。
または、次のショートカットキーを使用します:
| Windows / Linux | Mac |
|---|---|
| Ctrl+Shift+P > Name and Save As | ⌘+⇧+P > Name and Save As |
🏷️ アクティブコンテキストにタイトルを付ける
Markdown Copilotは会話履歴をもとに会話にタイトルを付けられます。
会話タイトルは# Copilot Context: で始まる行として表現します。
使用するには、タイトルを付けたいコンテキストにカーソルを移動してMarkdown Copilot: アクティブコンテキストにタイトルを付けるコマンドを使用します。
または、次のショートカットキーを使用します:
| Windows / Linux | Mac |
|---|---|
| Ctrl+Shift+P > Title active context | ⌘+⇧+P > Title active context |
🪄 要約と新しいコンテキスト
Markdown Copilotでは現在のコンテキストを要約し、その要約に基づいて新しいコンテキストを開始できます。 この機能により、会話のコンテキストが長くなりすぎてモデルの処理能力を阻害しないようにしつつ、会話の要点を把握しやすくなります。
使用するには、要約したいコンテキストにカーソルを合わせた上で Markdown Copilot: コンテキストを要約して新規開始 コマンドを使用してください。
| Windows / Linux | Mac |
|---|---|
| Ctrl+Shift+P > Summarize and New Context | ⌘+⇧+P > Summarize and New Context |
📋⤵ いい感じのテキストとして貼り付ける
Markdown Copilotはクリップボードの内容をファイルタイプに応じて賢くドキュメントに貼り付けることができます。 この機能により、貼り付けた内容が編集中のファイルにシームレスに統合され、不要なフォーマットの問題を回避できます。
使用するには、貼り付けたい場所を選択しMarkdown Copilot: Paste as Pretty Textコマンドを使用します。
または、次のショートカットキーを使用します:
| Windows / Linux | Mac |
|---|---|
| Ctrl+Shift+P > Paste as pretty | ⌘+⇧+P > Paste as pretty |
📥 他のMarkdownファイルをインポート
Markdown Copilotは他のMarkdownファイルを現在の文書に簡単にインポートできます。 これにより、他のドキュメントの内容を参照したり、再利用したりすることが可能になります。
他のMarkdownファイルをインポートするには、@importディレクティブを使用します。
このディレクティブに続けて、インポートしたいファイルのパスをダブルクォーテーションで囲んで指定します。
相対パスの例: 現在のファイルから相対的な位置にあるanother-markdown.mdをインポートします。
@import "path/to/another-markdown.md"
絶対パスの例: ワークスペースのルートディレクトリからの絶対パスを使用してtoplevel-markdown.mdをインポートします。
@import "/toplevel-markdown.md"
現在の文書が未保存ときはファイルパスが確定していないため、必ず絶対パスを使用して他のMarkdownファイルを指定する必要があります。
🎛 コンテキストコントロール
コンテキストインデントと構文カラーを使用して、会話のコンテキストを階層的に管理し、視覚的にコンテキストを強調表示します。
♯ Markdownにおけるコンテキスト表記
アクティブなコンテキストは、カーソル行からコンテキストインデントを遡って決定されます。
# Copilot Contextで始まる行でコンテキストガードを強制できます。
Then say "take care".を選択して💡 Markdown Copilot: 続ける を使用すると、次の出力が得られます: hello → good bye → take care。
より複雑な例: コンテキストはtake care行を跨いで継続します。
発言者の指定: 行頭に特定のMarkdown表記を配置することで発言者を指定できます。
| Markdown | 意味 |
|---|---|
**User:** | ユーザ自身の発言であることを指定します |
**Copilot:** | Markdown Copilotの発言であることを指定します |
**System(Override):** | システムメッセージを上書き指定します |
**System:** | 追加のシステムメッセージを指定します |
⤷ コンテキストインデント
コンテキストインデントレベルの編集を直感的なアクションで行えます。
テキストを選択し、コードアクションの提案から 💡 Markdown Copilot: コンテキスト行をインデント または 💡 Markdown Copilot: コンテキスト行をアウトデント を選択します。
または、次のショートカットキーを使用します:
| コマンド | Windows / Linux | Mac |
|---|---|---|
Indent Quote Line | Ctrl+Alt+L | ⌘+⌥+L |
Outdent Quote Line | Ctrl+Alt+Shift+L | ⌘+⌥+⇧+L |
📋 前提条件
- OpenAI APIまたはAzure OpenAI Serviceへのアクセスが必要です。詳細については、OpenAI APIまたはAzure OpenAIクイックスタートをご覧ください。
- Visual Studio Codeがインストールされている必要があります。Visual Studio Codeダウンロードページからダウンロードしてください。
🔌 Markdown体験を強化する
次の拡張機能とMarkdown Copilotを組み合わせて、さらに強力なMarkdown体験を実現します:
- Markdown All in One: 包括的なMarkdownサポート(キーボードショートカット、目次、自動プレビューなど)。
- Snippets: VS Codeでスニペットを過給 - エディタを終了せずにコードスニペットを管理できます。
- Markdown Preview Mermaid Support: VS Codeの組み込みmarkdownプレビューにMermaidダイアグラムとフローチャートのサポートを追加します。
- Markdown Preview Enhanced: Markdown Preview Enhanced は Visual Studio Code のスーパー強力なmarkdown 拡張機能です。 このプロジェクトの目標は、素晴らしい markdown 編集経験を提供することです。
- Markdown+Math: LaTeX Mathを使用してMarkdownを強化します...マクロなどを含む。
🔄 変更履歴
詳細な更新については、CHANGELOGを参照してください。
🤝 参加する
- GitHub Issuesを通じてバグを報告したり、機能を提案してください。
- Visual Studio Marketplaceでレビューを残してフィードバックを共有してください。