| --- |
| 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. |
|
|
| --- |
| |
| |
|
|
| 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. |
|
|
| --- |
| |
| |
|
|
| Installer OpenCode fra [Zeds ACP-register](https://zed.dev/docs/ai/external-agents#registry) ved at køre `zed: acp registry` i kommandopaletten. |
|
|
| Hvis du i stedet vil bruge en brugerdefineret OpenCode-eksekverbar fil, skal du føje den til din [Zed](https://zed.dev)-konfiguration (`~/.config/zed/settings.json`): |
|
|
| ```json title="~/.config/zed/settings.json" |
| { |
| "agent_servers": { |
| "OpenCode": { |
| "type": "custom", |
| "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"] |
| } |
| } |
| } |
| } |
| ] |
| } |
| } |
| ] |
| ``` |
|
|
| --- |
| |
| |
|
|
| 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. |
|
|
| --- |
| |
| |
|
|
| 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") |
| } |
| } |
| } |
| } |
| ``` |
|
|
| --- |
| |
| |
|
|
| 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. |
|
|
| |
|
|
| 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 |
|
|