Skip to content

feat(providers): add Regolo.ai support - #871

Draft
lu-zero wants to merge 2 commits into
tontinton:mainfrom
lu-zero:regolo
Draft

feat(providers): add Regolo.ai support#871
lu-zero wants to merge 2 commits into
tontinton:mainfrom
lu-zero:regolo

Conversation

@lu-zero

@lu-zero lu-zero commented Aug 25, 2026

Copy link
Copy Markdown
Contributor

What

Adds Regolo.ai as a builtin provider: an EU-hosted LiteLLM-style proxy speaking the OpenAI protocol at https://api.regolo.ai/v1.

  • maki-providers/src/providers/regolo.rs: wraps the generic OpenAiCompatProvider (streaming, tool calling, reasoning via reasoning_content), 14 chat models with pricing/context from /model/info
  • Registered everywhere the other OpenAI-compat providers are: ProviderKind, manifest, setup priority, aperture gateway compat lists, dynamic-provider dispatch
  • Usage modal support via fetch_usage

Usage data

Endpoint Used for
GET /key/info lifetime spend / budget ("Spend" row)
GET /global/activity?start_date=X&end_date=X per-day request/token counts for the key ("Today" row, resets UTC midnight)
GET /spend/logs/v2 per-model daily breakdown in the usage modal

Notes from poking at their proxy:

  • despite the name, /global/activity is key-scoped; end date is inclusive
  • /spend/logs/v2 was 500ing this morning (naive vs tz-aware datetime mismatch server-side); it works now
  • Regolo enforces a soft per-account daily token cap (1M on free trial). No endpoint reports it, so the Today row shows counts only rather than a made-up percentage. Worth asking them to expose it.

Testing

  • unit tests for key/info parsing, activity mapping, spend-log aggregation, midnight reset math
  • live-tested streaming, tool calls (qwen3-coder-next, gpt-oss-120b, glm5.2, qwen3.8-27b), auth-file login flow, and the usage endpoints

Docs: provider table regenerated (just gen-docs).

@lu-zero
lu-zero force-pushed the regolo branch 2 times, most recently from df2a5e1 to 5115be5 Compare August 26, 2026 17:27
EU-hosted LiteLLM-style proxy speaking the OpenAI protocol. Streams via
the generic compat path, lists models from the static catalogue priced
from /model/info, and reports usage through GET /key/info (spend vs
budget) and GET /global/activity (requests and tokens for the current
UTC day, resetting at midnight).

Site docs are regenerated to match the manifest defaults.
/spend/logs/v2 recovered from its 500 and answers per-model hourly
spend/token rows for an API key. ProviderUsage grows a by_model table
(micro-dollar spends keep it Eq); Regolo fills it by summing the day's
hourly rows per model_group, ranked by spend. The usage modal renders
it under the quota section as model/in/out/total/spend.
@lu-zero
lu-zero marked this pull request as ready for review August 28, 2026 09:28
@lu-zero
lu-zero marked this pull request as draft August 28, 2026 09:35
@lu-zero

lu-zero commented Aug 28, 2026

Copy link
Copy Markdown
Contributor Author

Since @regolo-ai has a dynamic endpoint with all the information I can simplify a lot.

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant