Skip to content

Comments

feat: add Brainiall as a named API provider#11712

Closed
fasuizu-br wants to merge 1 commit intoRooCodeInc:mainfrom
fasuizu-br:add-brainiall-provider
Closed

feat: add Brainiall as a named API provider#11712
fasuizu-br wants to merge 1 commit intoRooCodeInc:mainfrom
fasuizu-br:add-brainiall-provider

Conversation

@fasuizu-br
Copy link

@fasuizu-br fasuizu-br commented Feb 23, 2026

Summary

  • Adds Brainiall as a first-class API provider with 18 models served via AWS Bedrock
  • OpenAI-compatible gateway at https://apim-ai-apis.azure-api.net/v1 with Bearer auth
  • Follows the xAI pattern: hardcoded model list, OpenAI SDK, fixed baseURL
  • Supports streaming, tool calls, reasoning content (DeepSeek R1 via preserveReasoning), reasoning budget (Claude Opus 4.5 via supportsReasoningBudget), and prompt caching (Claude models)

Models (18 total)

Model Context Cache Reasoning Vision Input $/M Output $/M
Claude Opus 4.6 200K Yes - Yes $5.00 $25.00
Claude Sonnet 4.6 (default) 200K Yes - Yes $3.00 $15.00
Claude Haiku 4.5 200K Yes - Yes $1.00 $5.00
Claude Opus 4.5 200K Yes Budget Yes $15.00 $75.00
DeepSeek R1 128K - Yes - $1.35 $5.40
DeepSeek V3.2 128K - - - $0.27 $1.10
Llama 3.3 70B 128K - - - $0.72 $0.72
Llama 4 Scout 17B 512K - - - $0.17 $0.17
Nova Pro 300K - - Yes $0.80 $3.20
Nova Lite 300K - - Yes $0.06 $0.24
Nova Micro 300K - - - $0.04 $0.14
Mistral Large 3 675B 128K - - Yes $2.00 $6.00
Devstral 2 123B 128K - - - $0.50 $1.50
Qwen3 80B 128K - - - $0.50 $0.50
Qwen3 32B 128K - - - $0.35 $0.35
MiniMax M2 1M - - - $1.00 $5.00
Kimi K2.5 128K - - - $0.60 $2.40
GPT OSS 120B 200K - - - $1.35 $5.40

Files changed (33 files)

New files (3):

  • packages/types/src/providers/brainiall.ts — Model definitions
  • src/api/providers/brainiall.ts — API handler (OpenAI SDK)
  • webview-ui/src/components/settings/providers/Brainiall.tsx — Settings UI

Modified files (30):

  • packages/types/: provider-settings, providers/index, global-settings (secret keys)
  • src/api/: index (switch case), providers/index (export)
  • src/shared/: ProfileValidator (model ID resolution)
  • webview-ui/: ApiOptions, constants, providers/index, providerModelConfig, useSelectedModel, validate
  • 18 locale files (ca, de, en, es, fr, hi, id, it, ja, ko, nl, pl, pt-BR, ru, tr, vi, zh-CN, zh-TW)

Test plan

  • pnpm --filter @roo-code/types build passes (DTS + CJS + ESM)
  • tsc --noEmit passes for all packages (types, roo-cline, vscode-webview, etc.)
  • ESLint passes across all 14 packages with --max-warnings=0
  • Prettier formatting passes
  • All pre-commit and pre-push hooks pass
  • Manual: Select Brainiall provider in settings, enter API key, verify model picker shows 18 models
  • Manual: Send a message using Claude Sonnet 4.6, verify streaming response
  • Manual: Test DeepSeek R1 reasoning content appears in thinking panel

Interactively review PR in Roo Code Cloud

Add Brainiall LLM gateway as a first-class provider with 18 models
served via AWS Bedrock (Claude, DeepSeek, Llama, Nova, Mistral, Qwen,
MiniMax, Kimi, GPT OSS). OpenAI-compatible API with Bearer auth at
https://apim-ai-apis.azure-api.net/v1.

Follows the xAI pattern: hardcoded model list, OpenAI SDK, fixed
baseURL. Supports streaming, tool calls, reasoning content (DeepSeek R1),
and prompt caching (Claude models).
@dosubot dosubot bot added size:L This PR changes 100-499 lines, ignoring generated files. Enhancement New feature or request labels Feb 23, 2026
@github-project-automation github-project-automation bot moved this from New to Done in Roo Code Roadmap Feb 23, 2026
@fasuizu-br
Copy link
Author

Hi @hannesrudolph, thanks for taking the time to review. I noticed the PR was closed without feedback — could you share what needs to change for a provider addition to be accepted?

I see the project follows an Issue-First approach (CONTRIBUTING.md), and I didn't create a linked issue beforehand — that may have been the reason. I also noticed PR #11297 removed 9 low-usage providers, so I understand the team is being selective.

If adding Brainiall as a named provider is something the project would consider (it's an OpenAI-compatible gateway to 113+ models on AWS Bedrock with Flex/Cache pricing), I'm happy to:

  1. Create a proper Enhancement Request issue first
  2. Discuss on Discord before implementation
  3. Adjust the implementation to match current patterns (AI SDK migration, etc.)

Any guidance would be appreciated!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Enhancement New feature or request size:L This PR changes 100-499 lines, ignoring generated files.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants