Konfiguration
VS Code-Einstellungen
Konfigurieren Sie Cortex in den VS Code-Einstellungen (suchen Sie nach „Cortex“). Einstellungen liegen unter dem Namespace cortex.* — das ist keine Projekt-config.json.
| Einstellung | Standard | Beschreibung |
|---|---|---|
cortex.opencodeBinary | "opencode" | Pfad zur OpenCode-CLI-Binary |
cortex.opencodePort | 4096 | Bevorzugter Port für opencode serve; ist er von einem anderen Workspace belegt, nimmt Cortex den nächsten freien |
cortex.agent | "build" | Standard-OpenCode-Primäragent (z. B. build, plan) |
cortex.providerID | "opencode" | Veralteter Offline-Spiegel — Standardmodell ist `model` in opencode.json |
cortex.modelID | "big-pickle" | Veralteter Offline-Spiegel — OpenCode-Config / Chat-Picker bevorzugen |
cortex.modelMode | "auto" | Modellauswahl: auto / turbo / manual |
cortex.routing.useAllConnectedProviders | false | Wenn true, dürfen Auto/Turbo jeden verbundenen Provider nutzen; wenn false, nur den des OpenCode-Standardmodells |
cortex.models.optimizeFor | "balance" | Auto-Routing Kosten vs Qualität: cost / balance / intelligence |
cortex.models.zenBillingEnabled | false | Schaltet bezahlte Zen-Modelle im Picker frei (standardmäßig aus — keine Überraschungskosten) |
cortex.models.byokEnabled | false | Schaltet BYOK-Provider-Modelle frei (OpenAI, Anthropic usw.) |
cortex.context.topK | 8 | Anzahl lokaler Kontext-Chunks pro Prompt |
cortex.context.maxChars | 16000 | Max. Zeichen abgerufenen Kontexts pro Prompt |
cortex.context.embedWeight | 0.45 | Gewicht (0–1) für Embedding-Ähnlichkeit vs lexikalischen Match beim Ranking |
cortex.context.embeddings | "hash" | Retrieval-Modus: hash = Leistung (schnell, offline); minilm = Qualität (semantisches MiniLM). Qualität lädt einmal eine native Runtime nach ~/.cache/cortex-minilm (nicht im VSIX); Senden bleibt gesperrt bis bereit (meist ≤~30 s beim ersten Index); Vektoren in .cortex/index; spätere Starts wärmen nur das Modell; Dateiänderungen re-embedden nur Geändertes. Onboarding/Chat zeigen Hardware-Eignung (Qualität ~150 MB; Parallelität auf knappen PCs begrenzt) |
cortex.context.chunkMode | "symbols" | Index-Aufteilung: symbols (LSP) oder lines |
cortex.context.include | [] | Optionale Include-Globs (relativ zum Workspace). Leer = alle indexierbaren Dateien |
cortex.context.exclude | [] | Zusätzliche Exclude-Globs zusätzlich zu gitignore |
cortex.context.extensionPriority | {".ts":1,".tsx":1,".js":0.8,".jsx":0.8,".py":0.9} | Score-Multiplikatoren pro Dateiendung für Retrieval-Ranking (höher = bevorzugt) |
cortex.autocomplete.enabled | true | Ghost-Text-Autocomplete über einen schnellen OpenCode-Agenten ohne Tools |
cortex.autocomplete.debounceMs | 350 | Debounce (ms), bevor nach Tipp-Pause eine Autocomplete-Suggestion angefordert wird |
cortex.locale | "en" | Cortex-UI-Sprache (unabhängig von der VS Code-Anzeigesprache) |
cortex.chat.pinEditorTab | true | Heftet den Cortex-Chat-Tab an und hält ihn als ersten in der Gruppe |
cortex.chat.maxOpenTabs | 5 | Max. Chat-Tabs, die offen bleiben und beim Start wiederhergestellt werden (0 = unbegrenzt) |
cortex.chat.maxHistorySessions | 100 | Max. Chats im Verlauf (neueste zuerst; 0 = alle) |
cortex.ui.showHeaderVersion | true | Gedämpfte Extension-Version neben dem Cortex-Titel anzeigen (für Demos ausschalten) |
cortex.ui.showReasoningSummaries | true | Thinking-/Reasoning-Zusammenfassungsblöcke in der Chat-Timeline anzeigen |
cortex.ui.shellToolPartsExpanded | true | Shell-/Bash-Ausgabeblöcke in der Timeline standardmäßig aufklappen |
cortex.ui.editToolPartsExpanded | true | Edit-/Write-/Patch-Karten in der Timeline standardmäßig aufklappen |
cortex.permissions.autoAccept | false | OpenCode-Berechtigungsdialoge automatisch mit einmaligem Allow akzeptieren |
cortex.appearance.uiFont | "" | Optionale CSS-Schriftfamilie für die Chat-UI; leer = VS-Code-UI-Schrift |
cortex.appearance.codeFont | "" | Optionale CSS-Schriftfamilie für Mono-/Code im Chat; leer = Editor-Schrift |
cortex.notifications.agent | false | VS-Code-Benachrichtigung anzeigen, wenn der Agent einen Turn beendet |
cortex.notifications.permissions | false | VS-Code-Benachrichtigung anzeigen, wenn ein Berechtigungsdialog erscheint |
cortex.notifications.errors | true | VS-Code-Benachrichtigung bei Chat-Fehlern anzeigen |
cortex.sounds.agent | "none" | Ton, wenn der Agent einen Turn beendet (none oder Web-Audio-Preset) |
cortex.sounds.permissions | "none" | Ton, wenn ein Berechtigungsdialog erscheint |
cortex.sounds.errors | "none" | Ton bei Chat-Fehlern |
cortex.theme.id | "follow" | Chat-Farbthema: follow (OpenCode tui.json), cortex oder eine OpenCode-Desktop-Theme-ID (GitHub-Katalog + Cache) |
cortex.theme.mode | "system" | Hell/Dunkel-Variante für OpenCode-Themes; system folgt dem VS-Code-Color-Theme |
cortex.theme.remoteRef | "dev" | Git-Ref auf anomalyco/opencode zum Auflisten offizieller Desktop-Themes |
cortex.policy.t0MaxChars | 2000 | Max. Zeichen für Tier T0 (unveränderliche Sicherheit / neverDo / Hooks) |
cortex.policy.t1MaxChars | 12000 | Max. Zeichen für Tier T1 (always-apply-Regeln, AGENTS.md, User Rules) |
cortex.policy.t2MaxChars | 8000 | Max. Zeichen für Tier T2 (Glob-Regeln, Skills, requestable-Katalog) |
cortex.policy.includeCursorRules | true | .cursor/rules in den Policy Brain laden |
cortex.policy.includeCortexRules | true | .cortex/rules in den Policy Brain laden |
cortex.skills.autoInvoke | true | Passende SKILL.md-Inhalte bei Turn-Match automatisch injizieren |
cortex.skills.topK | 2 | Max. vollständig injizierte Skills pro Turn bei aktivem Auto-Invoke |
cortex.hooks.enabled | true | .cortex/hooks.json und integriertes Changelog-Gate ausführen |
cortex.hooks.strict | false | Wenn true, lehnt ein fehlgeschlagener prePrompt-Hook den Turn ab |
Tastenkürzel
VS-Code-Tastenkürzel (nicht OpenCode Desktop). Anpassbar unter Tastenkürzel:
| Kürzel | Aktion |
|---|---|
Ctrl/Cmd+Alt+C | Chat öffnen (rechtes Editor-Panel) |
Ctrl+Alt+I / Cmd+Alt+Shift+I | Inline Edit |
Ctrl/Cmd+Alt+\ | Ghost-Text-Vervollständigung auslösen |
Ctrl/Cmd+Alt+T | Terminalauswahl an den Chat senden |
Befehlspalette
Alle Cortex-Befehle stehen in der VS-Code-Befehlspalette (Ctrl/Cmd+Shift+P). Suche nach „Cortex“:
| Befehl | Beschreibung |
|---|---|
Cortex: Open Session | Chat-Panel öffnen (rechte Editor-Gruppe) |
Cortex: New Session | Neue Chat-Session starten |
Cortex: Stop Generation | Aktuellen Agent-Turn abbrechen |
Cortex: Send Terminal Selection to Session | Ausgewählten Terminaltext an den Chat senden |
Cortex: Reindex Workspace | Lokalen Codebase-Index neu aufbauen |
Cortex: Trigger Inline Completion | Jetzt eine Ghost-Text-Suggestion anfordern |
Cortex: Inline Edit (Ctrl+Alt+I) | Inline-Edit der aktuellen Auswahl / Datei |
Cortex: Connect | Providers öffnen, um OpenCode-Konten zu verbinden |
Cortex: Connect / Models | Models öffnen (Standardmodell, Sichtbarkeit, Favoriten) |
Cortex: Remember preference | Eine Präferenz im Policy-Brain-Speicher speichern |
Cortex: Open rules / memory | Regeln und Memory-Dateien öffnen |
Cortex: Edit user rules | Benutzerregeln bearbeiten |
Cortex: Show Policy Inspector | Aktive Policy-Brain-Tiers für diesen Turn inspizieren |
Cortex: Run Diagnostics | Konnektivitäts- und Setup-Diagnose ausführen |
Cortex: Show Log | Cortex-Ausgabekanal öffnen |
Cortex: Dump last retrieval | Dump des letzten Kontext-Retrievals zur Fehlersuche schreiben |
Cortex: Report Issue / Feedback | Feedback- / Issue-Flow öffnen |
Modelle über OpenCode
Cortex nutzt OpenCode als agentischen Provider. Sie wählen unter den Modellen Ihres OpenCode-Abos (kostenloses Zen, bezahltes Zen oder OpenCode Go). Die OpenCode-Abrechnung erfolgt außerhalb von Cortex und hat nichts mit der Cortex-Lizenz zu tun.
- Servers — Unter Settings → Servers die lokale OpenCode-Verbindung und remote HTTP-OpenCode-Server verwalten (Health, Hinzufügen/Bearbeiten/Löschen, Default/aktiv) — wie OpenCode Desktop.
- Providers — Öffnen Sie Providers (Cortex: Connect), um Zen, Go, Anthropic, Copilot, eigene OpenAI-kompatible Endpoints u. a. zu verbinden — Katalog wie OpenCode Desktop. Auth bleibt in der lokalen OpenCode-auth.json.
- OpenCode Go — Nach Go-Abo auf opencode.ai erkennt Cortex es beim Start / Recheck und wechselt (nutzt Ihren API key erneut). Sie können Go auch unter Models aktivieren.
- Bezahltes Zen / BYOK — Kostenloses Zen bleibt freigeschaltet. Bezahltes Zen und BYOK brauchen eine explizite Freigabe in Models (oder cortex.models.zenBillingEnabled / cortex.models.byokEnabled).
- Modellauswahl — Wählen Sie jedes Modell Ihrer verbundenen OpenCode-Provider. Auto/Turbo respektieren cortex.models.optimizeFor (cost / balance / intelligence). Wenn der Katalog sie anbietet, wählen Sie eine Variante (Default / Low / Medium / High).
- Themes — Chat-Themes folgen OpenCode Desktop: offizieller GitHub-Katalog (Cache), Custom-Themes in ~/.config/opencode/themes oder follow tui.json. Setze cortex.theme.id / mode / remoteRef oder wähle ein Theme unter Models.
- Benachrichtigungen & Töne — Optionale VS-Code-Benachrichtigungen und Web-Audio-Presets, wenn der Agent fertig ist, ein Berechtigungsdialog erscheint oder ein Fehler auftritt (cortex.notifications.* / cortex.sounds.*). permissions.autoAccept entspricht Desktop-Auto-Accept.
- Composer + — Das Composer-+-Menü (OpenCode-Desktop-Parität): Bilder und Dateien (Ctrl/Cmd+U), Commands (/), Context (@), Shell (!). Anhänge werden nach den Input-Modalitäten des aktiven Modells gefiltert.
- Standardwerte — Das Standardmodell liegt in opencode.json (`model`). cortex.modelMode (Auto/Turbo/Manual) in VS Code; Sichtbarkeit/Favoriten unter Models
- Kein Ordner geöffnet — Sie können in einem leeren Fenster chatten; Cortex nutzt Ihr Home-Verzeichnis als OpenCode-cwd. Öffnen Sie einen Projektordner für Code-Indexierung und Projektpläne.
Keys liegen im lokalen OpenCode-Speicher (~/.local/share/opencode/auth.json; unter Windows: %USERPROFILE%\.local\share\opencode\auth.json). Cortex liest und schreibt dort — keine doppelten Credentials. OpenCode kann auch ~/.config/opencode/opencode.json für Agent-Berechtigungen nutzen; das ist getrennt von den Cortex-VS-Code-Einstellungen.
Kontextquellen
Cortex sammelt Kontext automatisch aus:
- Policy Brain (T0–T2) — geschichtete Regeln: user rules, AGENTS.md, .cursor/rules, .cortex/rules, skills, neverDo — auch Palette: Remember preference, Open rules / memory, Edit user rules, Show Policy Inspector
- Aktive Datei — die Datei, die Sie bearbeiten (wird bei jedem Turn angehängt)
- Auswahl — markierter Text
- Lexikalische Suche — Stichwortabgleich im Projekt
- Embeddings — Leistung (hash) standardmäßig; Qualität (MiniLM) in der Chat-Leiste — Senden erst wenn das lokale Modell bereit ist (kein stiller Leistungs-Fallback während des Ladens)
- Memory — Facts, Präferenzen und neverDo in .cortex/memory.json
- @ mentions — Dateien, Ordner, Terminals und Agents aus dem Chat (auch via Composer + → Context)
- Hooks — .cortex/hooks.json prePrompt/postTurn und integriertes Changelog-Gate