ACP
Używanie ArmIn z protokołem Agent Client Protocol (ACP).
ArmIn obsługuje Agent Client Protocol (ACP), który umożliwia korzystanie z ArmIn bezpośrednio w edytorach i środowiskach IDE.
ACP to otwarty standard, który ujednolica komunikację między edytorami kodu a agentami kodującymi AI.
Konfiguracja
Aby używać ArmIn przez ACP, skonfiguruj swój edytor tak, aby uruchamiał polecenie armin acp.
Uruchamia to ArmIn jako podproces zgodny z ACP, który komunikuje się z edytorem za pomocą JSON-RPC przez stdio.
Poniżej znajdują się przykłady dla edytorów obsługujących ACP.
Zed
Dodaj do konfiguracji Zed (~/.config/zed/settings.json):
{ "agent_servers": { "ArmIn": { "command": "armin", "args": ["acp"] } }}Aby użyć, wybierz agent: new thread w Palecie poleceń (Command Palette).
Możesz także przypisać skrót klawiszowy, edytując keymap.json:
[ { "bindings": { "cmd-alt-o": [ "agent::NewExternalAgentThread", { "agent": { "custom": { "name": "ArmIn", "command": { "command": "armin", "args": ["acp"] } } } } ] } }]JetBrains IDE
Dodaj do swojego JetBrains IDE plik acp.json zgodnie z dokumentacją:
{ "agent_servers": { "ArmIn": { "command": "/absolute/path/bin/armin", "args": ["acp"] } }}Następnie wybierz „ArmIn” w selektorze agentów AI Chat.
Avante.nvim
Dodaj do konfiguracji Avante.nvim:
{ acp_providers = { ["armin"] = { command = "armin", args = { "acp" } } }}Jeśli potrzebujesz przekazać klucz API:
{ acp_providers = { ["armin"] = { command = "armin", args = { "acp" }, env = { OPENCODE_API_KEY = os.getenv("OPENCODE_API_KEY") } } }}CodeCompanion.nvim
Aby używać ArmIn jako agenta ACP w CodeCompanion.nvim, dodaj następującą konfigurację do Neovim:
require("codecompanion").setup({ interactions = { chat = { adapter = { name = "armin", model = "claude-sonnet-4", }, }, },})Ta konfiguracja sprawia, że CodeCompanion używa ArmIn jako agenta ACP do czatu.
Jeśli wymagany jest OPENCODE_API_KEY, zapoznaj się z sekcją Konfigurowanie adapterów: Zmienne środowiskowe w dokumentacji CodeCompanion.nvim, aby uzyskać szczegółowe informacje.
Wsparcie
ArmIn działa przez ACP tak samo, jak w terminalu. Obsługiwane są wszystkie główne funkcje:
- Narzędzia wbudowane (operacje na plikach, terminal itp.)
- Niestandardowe narzędzia i polecenia z ukośnikiem
- Serwery MCP zdefiniowane w konfiguracji ArmIn
- Zasady projektu z
AGENTS.md - Niestandardowe formatery i lintery
- Agenci systemowi i uprawnienia