Każdy model AI, każdy prompt, każdy dolar — zarządzane w jednym miejscu.
odnoga to warstwa sterowania AI dla SaaS na Supabase. Wersjonuj prompty, kieruj ruch między modelami LLM, rozliczaj użytkowników w Stripe i rejestruj każde wywołanie — bez budowania własnej infrastruktury.
const jwt = req.headers.get("authorization")!.split(" ")[1];
const { data: { user } } = await supabase.auth.getUser(jwt); // zweryfikowany, nie zdekodowany
if (!user) return new Response("Unauthorized", { status: 401 });
const r = await fetch(ODNOGA + "/chat/completions", {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${Deno.env.get("ODNOGA_API_KEY")}`,
"x-odnoga-end-user": user.id, // metering per end user
},
body: JSON.stringify({
model: "gpt-5.1", // zmienisz go bez wdrożenia
messages: [{ role: "user", content: "Hello!" }],
}),
});Zobacz przewodnik dla Supabase.
Tokeny przetworzone przez odnogę
Jeden klucz — wszyscy dostawcy
Trzy rzeczy, których nie da Ci nikt inny w jednej platformie.
Typowe bramki LLM tylko przekazują wywołania. odnoga zapewnia też warstwę biznesową potrzebną aplikacji SaaS obsługującej wielu klientów.
Prompty jak w Git. Bez ponownego wdrażania.
Wersjonuj i oznaczaj prompty, przechwyć zweryfikowany przykład z produkcji, porównaj 2–8 modeli na tych samych zamrożonych testach, a potem uruchom test A/B i zmień wersję produkcyjną bez ponownego wdrażania.
const r = await ai.prompts.chat({
slug: 'welcome-email',
label: 'production',
variables: { name: 'Ada' },
});Dwanaście linii w funkcji Edge Function.
Zbudowane z myślą o Supabase Edge Functions: przekazujesz identyfikator użytkownika z Supabase, a każde wywołanie jest mierzone, rozliczane i rejestrowane dla tej osoby — bez instalowania pakietu i tworzenia własnej warstwy pomiarowej.
const jwt = req.headers.get("authorization")!.split(" ")[1];
const { data: { user } } = await supabase.auth.getUser(jwt);
if (!user) return new Response("Unauthorized", { status: 401 });
await fetch("https://api.odnoga.com/v1/chat/completions", {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${Deno.env.get("ODNOGA_API_KEY")}`,
"x-odnoga-end-user": user.id, // metered per end user
},
body: JSON.stringify({ model: "gpt-5.1", messages }),
});Rozliczenia użytkowników w Stripe.
Jeden nagłówek przypisuje koszt do właściwego użytkownika końcowego. Każda organizacja ma własnego klienta Stripe i własne plany, a koszty OpenAI, Anthropic, Gemini i Replicate trafiają na jedną zbiorczą fakturę.
// One header attributes cost & limits.
await fetch("https://api.odnoga.com/v1/chat/completions", {
method: "POST",
headers: {
"Content-Type": "application/json",
Authorization: `Bearer ${KEY}`,
"x-airouter-end-user": "tenant_acme:user_42",
},
body: JSON.stringify({ model: "gpt-5.1", messages }),
});Pozwól swojemu asystentowi AI zarządzać bramą AI
odnoga ma wbudowany serwer MCP. Podłącz Claude, Cursor, VS Code albo Lovable, zaloguj się przez OAuth, zatwierdź zakresy uprawnień — i Twoje narzędzie AI może konfigurować bramę z tymi samymi zasadami i rejestrem działań co panel. Bez kopiowania kluczy API.
Prompty
Zapisuj wersje, przenoś etykiety, podstawiaj zmienne.
Routing
Czytaj i testuj politykę, proponuj łańcuchy auto — każdą zmianę zatwierdzasz Ty.
Modele i katalog
Przeglądaj modele, sprawdzaj ich dostępność, synchronizację katalogu i ceny.
Zużycie i rozliczenia
Podsumowania wydatków, trendy, błędy, faktury i portfele.
Partie i pamięć podręczna
Uruchamiaj zadania wsadowe, ustawiaj cache, zobacz realne oszczędności.
Schematy i ustawienia
Wersjonuj schematy odpowiedzi, zarządzaj wyszukiwaniem w sieci i przestrzeniami roboczymi.
Dodaj adres serwera MCP odnogi w swoim narzędziu AI.
Zaloguj się przez OAuth i wybierz przestrzeń roboczą.
Zatwierdź zakresy uprawnień — możesz je odebrać w każdej chwili.
Każdy zakres uprawnień wymaga zgody, zakresy zapisu zawsze wymagają wyraźnej akceptacji, a każde działanie narzędzia jest rejestrowane z nazwą aplikacji i adresem IP.
Byliśmy zespołem, który się w tym topił.
Budując SaaS z AI dla wielu klientów, wciąż napotykaliśmy te same problemy. Stworzyliśmy odnogę, bo sami potrzebowaliśmy takiego rozwiązania.
Modele zaszyte w ponad 100 funkcjach Edge Function.
Reguły routingu ustawiasz w panelu. Zmieniasz modele po stronie serwera bez ponownego wdrażania aplikacji.
Prompty ukryte w kodzie. Bez testów A/B i szybkiego powrotu do poprzedniej wersji.
Rejestr promptów z wersjami, etykietami, testami A/B i natychmiastowym wycofaniem zmian.
Funkcje Edge Function są czarną skrzynką. Nie wiesz, kto, co, kiedy i dla kogo uruchomił.
Każde wywołanie ma własny zapis: organizacja, użytkownik końcowy, wersja promptu, koszt, czas odpowiedzi i dostawca.
Nie możesz rozliczać klientów, więc cały koszt AI obciąża Twoją kartę.
Przypisanie użycia do użytkownika, osobne rozliczenia w Stripe i jedna faktura obejmująca wszystkich dostawców.
Działające produkty obsługują całe AI przez odnogę
Salesdots prowadzi każdą operację AI na odnodze
Platforma sprzedażowa oparta na AI — wzbogacanie danych o potencjalnych klientach, tworzenie wiadomości, podsumowania rozmów i ocena szans sprzedaży — w której każde wywołanie przechodzi przez odnogę.
- Całe AI przez bramkę odnoga
- Wersjonowane prompty, bez ponownego wdrażania
- Rozliczenia każdej organizacji w Stripe
- Każde wywołanie przypisane do użytkownika końcowego
2ool.ai zasila swojego copilota Luna AI przez odnogę
Kompleksowa platforma dla firm doradztwa IT — zarządzanie CV, ATS, projekty, ewidencja czasu i portal klienta — w której Luna, asystent AI, wykonuje każdą operację przez odnogę.
- Copilot Luna — każda akcja przez bramkę
- Analiza ofert, SOW i RFP
- Zużycie AI mierzone osobno dla każdej organizacji
- Działania zgodne z RBAC i przypisane do użytkownika
Czym jest odnoga?
odnoga to warstwa sterowania wieloma modelami AI dla SaaS obsługujących wielu klientów. Łączy bramkę zgodną z OpenAI, wersjonowanie promptów, laboratorium porównujące 2–8 modeli na zamrożonych przypadkach z produkcji, niezależną kontrolę pamięci podręcznej odpowiedzi i promptów dostawcy, rozliczenia użytkowników, routing, zaszyfrowany magazyn kluczy i pełną historię wywołań — natywnie z Supabase.
Dla kogo?
Zespoły SaaS korzystające z Supabase, które zarządzają wieloma modelami i promptami oraz chcą rozliczać własnych klientów za użycie AI bez budowania od zera pomiaru, rozliczeń i śledzenia wywołań.
Czym się różni?
- • Przypisanie użycia do użytkownika w Supabase: przekazujesz identyfikator ze zweryfikowanego JWT, a zużycie, budżety i faktury są wiązane z tą osobą.
- • Praca z promptami tworzy jeden proces: wersje, przechwytywanie rzeczywistych wywołań, porównania wielu modeli, routing A/B i natychmiastowe przełączanie etykiet.
- • Rozliczenia wielu organizacji z przypisaniem użycia do użytkownika i zbiorczą fakturą Stripe obejmującą wszystkich dostawców.
- • Dwa niezależne mechanizmy pamięci podręcznej: deterministyczne ponowne użycie odpowiedzi i pamięć promptów dostawcy, każdy z osobnymi ustawieniami i pomiarem oszczędności.