Esta página aborda o que você precisa implementar para criar um agente ACP personalizado que funcione com o Devin Desktop. Para consultar a especificação completa do protocolo, acesse agentclientprotocol.com. Bibliotecas de cliente oficiais estão disponíveis em Rust, TypeScript, Python, Kotlin e Java.Documentation Index
Fetch the complete documentation index at: https://docs.devin.ai/llms.txt
Use this file to discover all available pages before exploring further.
Noções básicas
stdio.
Métodos que você deve implementar
initialize— Negocie a versão do protocolo, informe as capacidades do seu agente e retorne as informações do agente (nome, versão).session/new— Crie uma nova sessão para um diretório de trabalho e retorne um ID da sessão. O Devin Desktop passa o cwd e todos os servidores MCP configurados.session/prompt— Receba uma mensagem do usuário, execute o turno de prompt e retorne umstopReasonao finalizar.session/cancel— Interrompa qualquer trabalho em andamento de uma sessão quando o usuário cancelar.
Ciclo de vida do turno de prompt
session/prompt, seu agente envia atualizações ao Devin Desktop como notificações JSON-RPC:
session/updatecomagent_message_chunkpara transmitir em streaming o texto do assistente.session/updatecomtool_calletool_call_updatepara exibir chamadas de ferramenta e seu status na Devin Desktop UI.session/request_permissionpara pedir permissão ao usuário antes de executar uma chamada de ferramenta sensível.session/updatecomplanse seu agente mantiver um plano do agente.
session/prompt com um stopReason (por exemplo, end_turn, cancelled, max_tokens).
Testes
- Adicione uma entrada para seu agente na sua configuração do registro local, apontando
cmdpara o caminho do binário do seu agente local (ou de um script wrapper). - Faça alterações no seu agente e refaça a build quando necessário.
- Execute
Reload ACP Connectionsna Paleta de Comandos para reconhecer a versão mais recente — não é preciso reiniciar o Devin Desktop entre as iterações.
Limitações
- Modos de sessão não têm suporte. Os modos de sessão não são exibidos na UI do Devin Desktop. Se o seu agente precisar permitir que os usuários escolham entre modos (por exemplo, plan / build / review), exponha-os como uma opção de configuração de sessão com a categoria
"mode". - Capacidades de terminal não são expostas. O Devin Desktop não anuncia capacidades de terminal, portanto os agentes não podem criar terminais na UI do Devin Desktop. Os agentes devem executar comandos em um subprocesso próprio e transmitir a saída de volta por meio de atualizações
tool_call.
