Skip to content

OpenRouter model configuration fails due to strict single-slash provider/model-id validation #39

@DataWraith

Description

@DataWraith

Hi.

I've been playing with Rho for a bit today, and I quite like it so far. I ran into an issue when using it with OpenRouter though:

The configuration for heartbeat and auto_memory models won't accept two slashes in model identifiers, making it impossible to configure OpenRouter models. Instead, rho falls back to openrouter/openrouter/auto, which is very expensive because that meta model-ID usually gets routed to Opus 4.6.

In extensions/lib/auto-memory-model.ts, normalizeConfiguredModel():

const parts = trimmed.split("/");
if (parts.length !== 2 || !parts[0] || !parts[1]) {
  return {
    kind: "invalid",
    warning: `Invalid auto_memory_model '${trimmed}'. Expected 'auto' or 'provider/model-id'.`,
  };
}

This strict 2-part split is incompatible with OpenRouter's 3-part naming (e.g., openrouter/openai/gpt-5.4-mini); similar logic is also in place for the heartbeat model.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions