--- title: ACP-understøttelse description: Brug OpenCode i enhver ACP-kompatibel editor. --- OpenCode understøtter [Agent Client Protocol](https://agentclientprotocol.com) eller (ACP), så du kan bruge det direkte i kompatible editorer og IDE'er. :::tip For en liste over editorer og værktøjer, der understøtter ACP, tjek [ACP fremskridtsrapport](https://zed.dev/blog/acp-progress-report#available-now). ::: ACP er en åben protokol, der standardiserer kommunikation mellem kodeeditorer og AI-kodningsagenter. --- ## Konfiguration For at bruge OpenCode via ACP, konfigurer din editor til at køre kommandoen `opencode acp`. Kommandoen starter OpenCode som en ACP-kompatibel underproces, der kommunikerer med din editor over JSON-RPC via stdio. Nedenfor er eksempler på populære editorer, der understøtter ACP. --- ### Zed Føj til din [Zed](https://zed.dev)-konfiguration (`~/.config/zed/settings.json`): ```json title="~/.config/zed/settings.json" { "agent_servers": { "OpenCode": { "command": "opencode", "args": ["acp"] } } } ``` For at åbne den skal du bruge handlingen `agent: new thread` i **Kommandopaletten**. Du kan også binde en tastaturgenvej ved at redigere din `keymap.json`: ```json title="keymap.json" [ { "bindings": { "cmd-alt-o": [ "agent::NewExternalAgentThread", { "agent": { "custom": { "name": "OpenCode", "command": { "command": "opencode", "args": ["acp"] } } } } ] } } ] ``` --- ### JetBrains IDE'er Tilføj til din [JetBrains IDE](https://www.jetbrains.com/) acp.json i henhold til [dokumentationen](https://www.jetbrains.com/help/ai-assistant/acp.html): ```json title="acp.json" { "agent_servers": { "OpenCode": { "command": "/absolute/path/bin/opencode", "args": ["acp"] } } } ``` For at åbne den skal du bruge den nye 'OpenCode'-agent i AI Chat-agentvælgeren. --- ### Avante.nvim Føj til din [Avante.nvim](https://github.com/yetone/avante.nvim)-konfiguration: ```lua { acp_providers = { ["opencode"] = { command = "opencode", args = { "acp" } } } } ``` Hvis du har brug for at videregive miljøvariabler: ```lua {6-8} { acp_providers = { ["opencode"] = { command = "opencode", args = { "acp" }, env = { OPENCODE_API_KEY = os.getenv("OPENCODE_API_KEY") } } } } ``` --- ### CodeCompanion.nvim For at bruge OpenCode som en ACP-agent i [CodeCompanion.nvim](https://github.com/olimorris/codecompanion.nvim), skal du tilføje følgende til din Neovim-konfiguration: ```lua require("codecompanion").setup({ interactions = { chat = { adapter = { name = "opencode", model = "claude-sonnet-4", }, }, }, }) ``` Denne konfiguration sætter CodeCompanion til at bruge OpenCode som ACP-agent til chat. Hvis du har brug for at sende miljøvariabler (som `OPENCODE_API_KEY`), henvises til [Konfiguration af adaptere: Miljøvariabler](https://codecompanion.olimorris.dev/getting-started#setting-an-api-key) i CodeCompanion.nvim-dokumentationen for alle detaljer. ## Understøttelse OpenCode fungerer på samme måde via ACP som i terminalen. Alle funktioner understøtter: :::note Nogle indbyggede slash-kommandoer som `/undo` og `/redo` er i øjeblikket ikke understøttet. ::: - Indbyggede værktøjer (filoperationer, terminalkommandoer osv.) - Brugerdefinerede værktøjer og slash-kommandoer - MCP-servere konfigureret i din OpenCode-konfiguration - Projektspecifikke regler fra `AGENTS.md` - Brugerdefinerede formatere og linters - Agenter og tilladelsessystem