feat(providers): add grok-cli and kimi-coding to CONNECTION_BILLING_CATALOG
Problem / Use Case
OmniRoute's filterSubscriptionOnlyCandidates() in the auto-routing pipeline validates candidates against CONNECTION_BILLING_CATALOG via classifyConnectionBilling(). Currently, only claude, codex, antigravity, cursor, copilot-web, and devin-desktop are curated in that catalog.
When operators authenticate with grok-cli (OAuth / Grok subscription) or kimi-coding (OAuth), OmniRoute defaults their billing classification to unknown / metered. Consequently, structured auto routes enforcing zero marginal token cost (such as auto/<category>:subscription) completely filter out Grok and Kimi, even when their OAuth quota is active and healthy.
Proposed Solution
Add entries to CONNECTION_BILLING_CATALOG in open-sse/services/routing/billingCatalog.ts (or corresponding module):
{
provider: "grok-cli",
authType: "oauth",
billing: "subscription",
overage: "hard-stop",
reason: "Grok CLI OAuth serves the operator's Grok subscription tier quota. Exhaustion is refused until the plan window resets rather than billed."
},
{
provider: "kimi-coding",
authType: "oauth",
billing: "subscription",
overage: "hard-stop",
reason: "Kimi Coding OAuth serves the operator's included plan quota with hard-stop overage."
}
Additionally, consider allowing operators to declare custom subscription providers via an environment variable or config setting (e.g. OMNIROUTE_SUBSCRIPTION_PROVIDERS=grok-cli,kimi-coding) so newly supported OAuth providers do not require waiting on upstream catalog updates.
Acceptance Criteria
grok-cliOAuth connections evaluate tobilling: 'subscription'andoverage: 'hard-stop'.kimi-codingOAuth connections evaluate tobilling: 'subscription'andoverage: 'hard-stop'.- Requests to
auto/*:subscriptionadmit healthygrok-cliandkimi-codingconnections into the candidate pool.
Area
- Proxy / Routing
- Provider Support
- OAuth / Authentication
Source: diegosouzapw/OmniRoute