Agentic chat and flows in the IDE does not work with Self-Hosted Duo, via direct (gRPC) connection

The IDE extension on VSCode for DAP currently connects directly (gRPC) to the Duo Workflow Service, bypassing the Rails monolith.

Because of this reason, the monolith is unable to inject the model_metadata of the model that is currently chosen to power Duo Agent platform in a self-hosted Duo environment (say, Claude 4 on Bedrock)

Without this model_metadata, Duo workflow service just uses the "base" prompts, and tries to connect to Anthropic directly. Because self-hosted AIGW images do not contain the Anthropic API key in them, this request just fails with API Key not found error.

Need

We want agentic chat and flows on the IDE extension to work with self-hosted models. But if the IDE continues to use direct connection to the Duo workflow service, it can't function with self-hosted models.

We need to either:

  • Forbid the direct connection if a self-hosted model is configured for DAP, and the IDE must connect to the Duo workflow service(DWS) via the monolith.
  • OR, the direct connection endpoint should also pass the metadata of the configured model to the IDE, which the IDE will send along to the Duo workflow service along with every request.

PS: Agentic chat on the web UI continues to work with self-hosted models, we do not have issues there.

WORKAROUND

The user can specify in VSCode or Jetbrains to use indirect connection via websocket, instead of grpc and it will work.

https://docs.gitlab.com/user/duo_agent_platform/troubleshooting/#use-websocket-connection-instead-of-grpc

Edited by 🤖 GitLab Bot 🤖