設定
VS Code設定
VS Codeの設定でCortexを構成します(「Cortex」で検索)。設定は cortex.* 名前空間にあり、プロジェクトのconfig.jsonではありません。
| 設定 | デフォルト | 説明 |
|---|---|---|
cortex.opencodeBinary | "opencode" | OpenCode CLIバイナリへのパス |
cortex.opencodePort | 4096 | opencode serve の優先ポート。別ワークスペースが使用中なら次の空きポートを使う |
cortex.agent | "build" | デフォルトのOpenCodeプライマリエージェント(例: build、plan) |
cortex.providerID | "opencode" | 非推奨のオフラインミラー — デフォルトモデルは opencode.json の `model` |
cortex.modelID | "big-pickle" | 非推奨のオフラインミラー — OpenCode 設定 / チャットピッカーを優先 |
cortex.modelMode | "auto" | モデル選択: auto / turbo / manual |
cortex.routing.useAllConnectedProviders | false | trueの場合、Auto/Turboは接続済みの任意プロバイダーを使用可。falseの場合は OpenCode デフォルトモデルのプロバイダーのみ |
cortex.models.optimizeFor | "balance" | Autoルーティングのコスト対品質: cost / balance / intelligence |
cortex.models.zenBillingEnabled | false | 有料Zenモデルをピッカーで解除(既定オフ — 予期しない課金を防止) |
cortex.models.byokEnabled | false | BYOKプロバイダーモデルを解除(OpenAI、Anthropicなど) |
cortex.context.topK | 8 | プロンプトごとに注入するローカルコンテキストチャンク数 |
cortex.context.maxChars | 16000 | プロンプトあたりの取得コンテキスト最大文字数 |
cortex.context.embedWeight | 0.45 | コンテキスト順位付け時の埋め込み類似度の重み(0–1)。残りはレキシカル |
cortex.context.embeddings | "hash" | retrievalモード: hash = 高速(オフライン); minilm = 品質(意味的 MiniLM)。品質はネイティブ runtime を一度 ~/.cache/cortex-minilm に取得(VSIX 非同梱);準備まで送信ロック(初回インデックスは通常 ≤約30秒);ベクトルは .cortex/index;以降の起動はモデル温機のみ;編集は変更ファイルのみ再埋め込み。オンボーディング/チャットでハードウェア適性を表示(品質は約150MB追加、余裕の少ないPCでは並列を制限) |
cortex.context.chunkMode | "symbols" | インデックス分割モード: symbols(LSP)または lines |
cortex.context.include | [] | 任意の include glob(ワークスペース相対)。空 = 索引可能な全ファイル |
cortex.context.exclude | [] | gitignoreに加える追加の exclude glob |
cortex.context.extensionPriority | {".ts":1,".tsx":1,".js":0.8,".jsx":0.8,".py":0.9} | retrieval ランキング用の拡張子別スコア倍率(高いほど優先) |
cortex.autocomplete.enabled | true | ツールなしの高速OpenCodeエージェントによるゴースト補完 |
cortex.autocomplete.debounceMs | 350 | 入力停止後、オートコンプリートを要求するまでのデバウンス(ms) |
cortex.locale | "en" | Cortex UI言語(VS Code表示言語とは独立) |
cortex.chat.pinEditorTab | true | Cortexチャットタブをピン留めし、グループの先頭に保つ |
cortex.chat.maxOpenTabs | 5 | 起動時に保持・復元するチャットタブの最大数(0 = 無制限) |
cortex.chat.maxHistorySessions | 100 | 履歴に表示するチャットの上限(新しい順;0 = 取得したすべて) |
cortex.ui.showHeaderVersion | true | Cortexタイトル横に控えめなバージョンを表示(デモではオフ) |
cortex.ui.showReasoningSummaries | true | チャットタイムラインに thinking / reasoning サマリーブロックを表示 |
cortex.ui.shellToolPartsExpanded | true | タイムラインの shell/bash 出力ブロックをデフォルトで展開 |
cortex.ui.editToolPartsExpanded | true | タイムラインの edit/write/patch カードをデフォルトで展開 |
cortex.permissions.autoAccept | false | OpenCode の権限プロンプトをワンタイム allow で自動承認 |
cortex.appearance.uiFont | "" | チャット UI 用の任意 CSS font-family。空なら VS Code UI フォント |
cortex.appearance.codeFont | "" | チャット内モノスペース/コード用の任意 CSS font-family。空ならエディタフォント |
cortex.notifications.agent | false | エージェントがターンを終えたときに VS Code 通知を表示 |
cortex.notifications.permissions | false | 権限プロンプトが表示されたときに VS Code 通知を表示 |
cortex.notifications.errors | true | チャットエラー時に VS Code 通知を表示 |
cortex.sounds.agent | "none" | エージェント終了時のサウンド(none または Web Audio プリセット) |
cortex.sounds.permissions | "none" | 権限プロンプト表示時のサウンド |
cortex.sounds.errors | "none" | チャットエラー時のサウンド |
cortex.theme.id | "follow" | チャット配色テーマ: follow(OpenCode tui.json)、cortex、または OpenCode Desktop テーマ id(GitHub カタログ + キャッシュ) |
cortex.theme.mode | "system" | OpenCode テーマの明暗バリアント。system は VS Code の配色に従う |
cortex.theme.remoteRef | "dev" | 公式 Desktop テーマ一覧用の anomalyco/opencode Git ref |
cortex.policy.t0MaxChars | 2000 | Tier T0 の最大文字数(不変の安全 / neverDo / hooks) |
cortex.policy.t1MaxChars | 12000 | Tier T1 の最大文字数(always-apply ルール、AGENTS.md、user rules) |
cortex.policy.t2MaxChars | 8000 | Tier T2 の最大文字数(glob ルール、skills、requestable カタログ) |
cortex.policy.includeCursorRules | true | Policy Brain に .cursor/rules を読み込む |
cortex.policy.includeCortexRules | true | Policy Brain に .cortex/rules を読み込む |
cortex.skills.autoInvoke | true | ターンに一致する SKILL.md 本文を自動注入する |
cortex.skills.topK | 2 | auto-invoke 有効時にターンあたり完全注入する skills の最大数 |
cortex.hooks.enabled | true | .cortex/hooks.json と組み込み changelog gate を実行する |
cortex.hooks.strict | false | true の場合、失敗した prePrompt hook でターンを拒否 |
キーボードショートカット
VS Code のキーバインド(OpenCode Desktop ではありません)。キーボードショートカットで変更可能:
| ショートカット | 操作 |
|---|---|
Ctrl/Cmd+Alt+C | チャットを開く(右側エディタパネル) |
Ctrl+Alt+I / Cmd+Alt+Shift+I | Inline Edit |
Ctrl/Cmd+Alt+\ | ゴースト補完をトリガー |
Ctrl/Cmd+Alt+T | ターミナル選択をチャットへ送信 |
コマンドパレット
すべての Cortex コマンドは VS Code のコマンドパレット(Ctrl/Cmd+Shift+P)にあります。「Cortex」で検索:
| コマンド | 説明 |
|---|---|
Cortex: Open Session | チャットパネルを開く(右エディタグループ) |
Cortex: New Session | 新しいチャットセッションを開始 |
Cortex: Stop Generation | 現在のエージェントターンを中止 |
Cortex: Send Terminal Selection to Session | 選択したターミナルテキストをチャットへ送る |
Cortex: Reindex Workspace | ローカルコードベース索引を再構築 |
Cortex: Trigger Inline Completion | 今すぐゴーストテキスト補完を要求 |
Cortex: Inline Edit (Ctrl+Alt+I) | 現在の選択 / ファイルをインライン編集 |
Cortex: Connect | Providers を開き OpenCode アカウントを接続 |
Cortex: Connect / Models | Models を開く(デフォルトモデル、表示、お気に入り) |
Cortex: Remember preference | 設定を Policy Brain メモリに保存 |
Cortex: Open rules / memory | ルールとメモリファイルを開く |
Cortex: Edit user rules | ユーザールールを編集 |
Cortex: Show Policy Inspector | このターンの有効な Policy Brain ティアを検査 |
Cortex: Run Diagnostics | 接続とセットアップの診断を実行 |
Cortex: Show Log | Cortex 出力チャネルを開く |
Cortex: Dump last retrieval | トラブルシュート用に最後のコンテキスト retrieval ダンプを書き出す |
Cortex: Report Issue / Feedback | フィードバック / Issue 報告フローを開く |
OpenCode経由のモデル
CortexはOpenCodeをアジェンティックプロバイダーとして使用します。OpenCodeサブスクリプション(無料Zen、有料Zen、OpenCode Go)で利用可能なモデルから選択します。OpenCodeの課金はCortex外で管理され、Cortexライセンスとは無関係です。
- Servers — Settings → Servers でローカル OpenCode 接続とリモート HTTP OpenCode サーバーを管理(health、追加/編集/削除、default/active)— OpenCode Desktop と同じ考え方。
- Providers — Providers(Cortex: Connect)で Zen / Go / Anthropic / Copilot / OpenAI 互換カスタムなどを接続 — OpenCode Desktop と同系のカタログ。認証は OpenCode のローカル auth.json のままです。
- OpenCode Go — opencode.aiでGoに登録すると、起動時 / Recheck で自動検出し切り替えます(API keyを再利用)。Modelsの「OpenCode Goを有効化」でも可能です。
- 有料Zen / BYOK — 無料Zenは解除のまま。有料ZenとBYOKは Models での明示的な解除(または cortex.models.zenBillingEnabled / cortex.models.byokEnabled)が必要です。
- モデル選択 — 接続済み OpenCode プロバイダーの任意のモデルを選択。Auto/Turbo は cortex.models.optimizeFor(cost / balance / intelligence)に従います。カタログが公開していればバリアント(Default / Low / Medium / High)も選べます。
- テーマ — チャットテーマは OpenCode Desktop に準拠: GitHub 公式カタログ(キャッシュ)、~/.config/opencode/themes のカスタム、または follow tui.json。cortex.theme.id / mode / remoteRef を設定するか Models で選択。
- 通知とサウンド — エージェント完了・権限プロンプト・エラー時の任意 VS Code 通知と Web Audio プリセット(cortex.notifications.* / cortex.sounds.*)。permissions.autoAccept は Desktop の auto-accept と同等。
- Composer + — composer の + メニュー(OpenCode Desktop 互換): 画像とファイル(Ctrl/Cmd+U)、Commands(/)、Context(@)、Shell(!)。添付はアクティブモデルの入力モダリティでフィルタ。
- デフォルト — デフォルトモデルは opencode.json(`model`)。cortex.modelMode(Auto/Turbo/Manual)は VS Code;表示/お気に入りは Models
- フォルダー未開放 — 空のウィンドウでもチャット可能;Cortex はホームディレクトリを OpenCode の cwd に使います。コード索引やプロジェクトプランにはフォルダーを開いてください。
キーはOpenCodeのローカル保存先(~/.local/share/opencode/auth.json;Windows: %USERPROFILE%\.local\share\opencode\auth.json)にあります。Cortexはそこを読み書きし、認証情報を複製しません。OpenCodeはエージェント権限用に ~/.config/opencode/opencode.json も使えます(CortexのVS Code設定とは別)。
コンテキストソース
Cortexは次から自動的にコンテキストを収集します:
- Policy Brain (T0–T2) — 階層ルール: user rules、AGENTS.md、.cursor/rules、.cortex/rules、skills、neverDo — コマンドパレット: Remember preference、Open rules / memory、Edit user rules、Show Policy Inspector も
- アクティブファイル — 編集中のファイル(各ターンで自動添付)
- 選択範囲 — ハイライトされたテキスト
- レキシカル検索 — プロジェクト全体のキーワード一致
- Embeddings — 既定は高速(hash)。チャットツールバーで品質(MiniLM)に切替 — ローカルモデル準備後に送信解除(読み込み中の高速への黙認フォールバックなし)
- Memory — .cortex/memory.json の facts・設定・neverDo
- @ mentions — チャットからのファイル、フォルダ、ターミナル、エージェント(composer + → Context からも)
- Hooks — .cortex/hooks.json の prePrompt/postTurn と組み込み changelog gate