> Η χειροκίνητη συγκέντρωση δωρεάν επιπέδων είναι επίπονη — δεκάδες SDK, δεκάδες όρια ρυθμού, και καμία ιδέα για το πόσα έχετε πραγματικά. Το OmniRoute καταγράφει **446 καταχωρήσεις δωρεάν επιπέδων σε 38 επαναλαμβανόμενα κλειδιά pool** και υπολογίζει τον αριθμό tokens από τα **20 pool με δημοσιευμένο θετικό μηνιαίο προϋπολογισμό**, αφαιρώντας διπλότυπα ανά κοινό pool. Το αποτέλεσμα παραμένει ορατό στον πίνακα ελέγχου (`/dashboard/free-tiers`).
> Κινούμενη περίληψη της ζωντανής σελίδας `/dashboard/free-tiers`. Πλήρης μεθοδολογία (αφαίρεση διπλότυπων pool, πιστωτικά επίπεδα, όροι παρόχου): **[docs/reference/FREE_TIERS.md](docs/reference/FREE_TIERS.md)**.
>
> Αυτά τα στοιχεία επανελέγχονται κάθε δύο εβδομάδες σε σχέση με τον ζωντανό κατάλογο και **κινούνται και προς τις δύο κατευθύνσεις** — ένας πάροχος τερματίζει ένα δωρεάν επίπεδο και ο αριθμός μειώνεται· ένα νέο εμφανίζεται και ανεβαίνει. Δημοσιεύουμε αυτό που ο κατάλογος πραγματικά υπολογίζει, ποτέ μια στρογγυλεμένη προς τα πάνω καλύτερη περίπτωση.
⭐ Δώστε αστέρι στο repo αν το OMNIROUTE σας βοήθησε να εξοικονομήσετε χρήματα και να κάνετε τη δουλειά σας πιο εύκολη.
[](https://github.com/diegosouzapw/OmniRoute)
[](https://www.star-history.com/diegosouzapw/omniroute)
[](https://olud.ai/project/diegosouzapw-omniroute.html)
### 💬 Γίνετε μέλος της κοινότητας
**👋 Ακολουθήστε τον συντηρητή — λάβετε πρώτοι νέους παρόχους, εκδόσεις & συμβουλές:**
[](https://www.linkedin.com/in/diegosouzapw/)
[](https://github.com/diegosouzapw)
[](https://discord.gg/U47eFqAXCn)
[](https://t.me/omnirouteOficial)
[](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4)
[](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4)
[](https://omniroute.online)
**Ερωτήσεις, συμβουλές για παρόχους, οδικός χάρτης & υποστήριξη → [Discord](https://discord.gg/U47eFqAXCn) · [Telegram](https://t.me/omnirouteOficial) · WhatsApp [🌍 Global](https://chat.whatsapp.com/FvuCbrpZmQ6I85n2vW5QIC?s=cl&p=a&mlu=4) / [🇧🇷 Brasil](https://chat.whatsapp.com/KWgatljAjmbELQory59Oti?s=cl&p=a&mlu=4) / [Portal](https://portal.sthub.com.br/communities/groups/st-hub/channels/Omniroute-World-8kRjmK)**
## 📈 Η Πύλη Συνεχίζει να Μεγαλώνει
## 🆓 Λειτουργεί αμέσως μετά την εγκατάσταση — χωρίς κλειδιά, χωρίς ρύθμιση
```bash
# Νέα εγκατάσταση, χωρίς διαπιστευτήρια — το `auto` λειτουργεί ήδη:
curl http://localhost:20128/v1/chat/completions \
-H "Content-Type: application/json" \
-d '{"model":"auto","messages":[{"role":"user","content":"Hello!"}]}'
```
Προτιμάς συγκεκριμένο δωρεάν backend; Κάλεσε το `oc/…` (OpenCode Free) απευθείας. Μετά προχώρησε στο `auto` και άσε το OmniRoute να επιλέξει.📦 Σενάρια quickstart για αντιγραφή-επικόλληση για **Python, Node.js, PHP και cURL** → [`examples/quickstart/`](examples/quickstart/)
# 💥 Η Υπόσχεση
# 🤔 Γιατί OmniRoute;
## 🤝 Υποστηρίζεται από τους Φίλους μας στο Open Source
> **Θέλετε να συμμετάσχετε ως Φίλος Open Source;** Αυτές είναι οι εταιρείες που στηρίζουν το open source και βοηθούν το OmniRoute να συνεχίζει — και δηλώνουμε δημόσια πού πηγαίνει κάθε token που μας δίνουν. Επικοινωνήστε: [diegosouza.pw@outlook.com](mailto:diegosouza.pw@outlook.com)
Kimi Moonshot AI
Ευχαριστούμε τον Kimi (Moonshot AI), τον ιδρυτικό μας Φίλο Open Source, για την υποστήριξη αυτού του έργου! Το Kimi είναι το εργαστήριο τεχνητής νοημοσύνης πίσω από τις οικογένειες μοντέλων ανοιχτών βαρών K2 και K3 — το Kimi K3 προσφέρει παράθυρο περιβάλλοντος 1M token, εγγενή όραση και κωδικοποίηση επιπέδου frontier σε κλάσμα του κόστους των κλειστών μοντέλων, και λειτουργεί αμέσως με το Claude Code, το Codex και κάθε εργαλείο κωδικοποίησης που εξυπηρετεί το OmniRoute.
Τι τροφοδοτεί η υποστήριξη του Kimi: Τα API credits του Kimi τροφοδοτούν τον pipeline κυκλοφορίας με επικύρωση AI του OmniRoute — το στάδιο επικύρωσης συγχώνευσης από το Kimi K3 που αξιολογεί κάθε pull request πριν αυτό κυκλοφορήσει — καθώς και την καθημερινή ανάπτυξη λειτουργιών. Η πρωτοβάθμια υποστήριξη Kimi είναι διαθέσιμη και στις δύο γραμμές: το άμεσο Kimi API (kimi-k3) και το πλάνο κωδικοποίησης Kimi Code (OAuth και API key). Το OmniRoute είναι επίσης το πρώτο βραζιλιάνικο έργο ανοιχτού κώδικα στο πρόγραμμα υποστήριξης του Kimi. Αποκτήστε ένα Kimi API key με 15% επιπλέον credits →
Cheaper Inference cheaperinference.com
Ευχαριστούμε το Cheaper Inference, Φίλο Open Source του OmniRoute, για την υποστήριξη αυτού του έργου! Το Cheaper Inference είναι ένα gateway ταξινομημένο βάσει κόστους που μεταπωλεί 42 frontier μοντέλα — Claude, GPT-5.x, Gemini, Kimi K3, GLM, DeepSeek, Grok και MiniMax — πίσω από ένα endpoint συμβατό με OpenAI, δρομολογώντας κάθε αίτημα στον φθηνότερο επιλέξιμο πάροχο χωρίς ποτέ να χρεώνει πάνω από την τιμή καταλόγου του κατασκευαστή μοντέλου.
Πρωτοβάθμια υποστήριξη στο OmniRoute: Chat Completions, το εγγενές endpoint /v1/responses, vision, tool calling και 3 μοντέλα εικόνας (grok-imagine, nano-banana-pro, nano-banana-2, προσβάσιμα ως cheaperinference/<model>). Αποκτήστε ένα API key →
Οι σύνδεσμοι με ετικέτα aff=omniroute είναι σύνδεσμοι συνεργατών. Χρηματοδοτούν το έργο χωρίς επιπλέον κόστος για εσάς. 🎟️ Προσφορές Συνεργατών — δωρεάν κουπόνια εγγραφής από παρόχους που δεν μας χορηγούν (κάντε κλικ για ανάπτυξη)Αυτή η ενότητα αφορά μόνο κωδικούς παραπομπής/κουπόνια. Οι χορηγούμενες συνεργασίες βρίσκονται στην ενότητα 🤝 Υποστηρίζεται από τους Φίλους μας στο Open Source παραπάνω. Το OmniRoute δεν έχει χορηγία ή συνεργασία με τους παρόχους που αναφέρονται εδώ — αυτά είναι δημόσια κουπόνια που μπορεί να χρησιμοποιήσει ο καθένας.
AgentRouter agentrouter.org
AgentRouter — εγγραφή συνεργάτη · $100 δωρεάν credits κατά την εγγραφή (δωρεάν διακομιστής, αναμένετε υψηλότερη καθυστέρηση — κατάλληλο για δοκιμές, όχι για παραγωγή). Πρωτοβάθμια υποστήριξη στο OmniRoute από την v3.8.50: Chat Completions, η μορφή wire συμβατή με Anthropic και η διαδρομή συμβατή με OpenAI. Τα διαθέσιμα μοντέλα περιλαμβάνουν claude-opus-4-8, claude-opus-5, gpt-5.6-sol και άλλα. Πάρτε τα $100 σας →
⚠️ Σύνδεσμος συνεργάτη — το OmniRoute δεν έχει χορηγία ή συνεργασία με αυτόν τον πάροχο.
Γνωρίζετε άλλον πάροχο με γενναιόδωρο δωρεάν κουπόνι εγγραφής που ωφελεί τους χρήστες του OmniRoute; Ανοίξτε ένα issue και θα το προσθέσουμε εδώ.
## 🎯 Combos — Η Ναυαρχίδα
> Ένα **combo** είναι μια αλυσίδα μοντέλων στην οποία το OmniRoute δρομολογεί **αυτόματα**. Αν εξαντληθεί η ποσόστωση, αποτύχει ένας πάροχος ή εκτιναχθεί το κόστος, το combo μπορεί να μεταβεί στο επόμενο υγιές μοντέλο που πληροί τις προϋποθέσεις. 🛡️
### ⚡ Μηδενική ρύθμιση — απλώς χρησιμοποιήστε το `auto`
Δεν χρειάζεται να δημιουργήσετε combo. Ορίστε το μοντέλο σας σε `auto` (ή μια παραλλαγή) και το OmniRoute δημιουργεί ένα εικονικό combo από τους συνδεδεμένους παρόχους σας, βαθμολογημένο σε πραγματικό χρόνο:
🧑💻 Βάρη με προτεραιότητα στην ποιότητα για παραγωγή κώδικα
auto/fast
⚡ Χαμηλότερη λανθάνουσα κατάσταση πρώτα
auto/cheap
💰 Φθηνότερο ανά token πρώτα
auto/offline
🔋 Μεγαλύτερη ποσόστωση / περιθώριο ορίου ρυθμού πρώτα
auto/smart
🔭 Προτεραιότητα στην ποιότητα + 10% εξερεύνηση για ανακάλυψη καλύτερων μοντέλων
auto/lkgp
📌 Ρητή παραμονή στον τελευταίο γνωστό-καλό-πάροχο
auto/chaos
🧪 Βάρη έγχυσης σφαλμάτων για δοκιμές ανθεκτικότητας (chaos engineering)
##
### 🔀 Ή φτιάξτε το δικό σας — 19 στρατηγικές δρομολόγησης
Και οι **19** στρατηγικές — συνδυάστε τις ελεύθερα ανά βήμα combo:
#
Στρατηγική
Τι κάνει
1
priority
Διατεταγμένη λίστα με πρώτο στόχο — εξαντλεί τον καθένα πριν προχωρήσει στον επόμενο 🥇
2
fill-first
Γεμίζει πλήρως την ποσόστωση κάθε στόχου πριν προχωρήσει
3
weighted
Τυχαία επιλογή με βάση βαρύτητα ανά στόχο
4
round-robin
Εναλλαγή μεταξύ στόχων με σειρά
5
p2c
Τυχαία εξισορρόπηση φόρτου power-of-two-choices
6
least-used
Επιλέγει τον στόχο με το χαμηλότερο τρέχον φορτίο
7
random
Ομοιόμορφη τυχαία επιλογή (χωρίς επανάληψη)
8
strict-random
Τυχαία επιλογή χωρίς αποεπανάληψη 🎲
9
cost-optimized
Ελαχιστοποίηση $ ανά αίτημα από τιμοκατάλογο σε πραγματικό χρόνο 💸
10
headroom
Επιλέγει τον στόχο με το μεγαλύτερο υπολειπόμενο περιθώριο ποσόστωσης
11
reset-window
Προτιμά τον στόχο του οποίου το παράθυρο ποσόστωσης επαναφέρεται συντομότερα
12
reset-aware
Κατάταξη με βάση τον χρόνο επαναφοράς ποσόστωσης — πρώτα τα σύντομα παράθυρα 📊
13
context-relay
Μεταβίβαση πλαισίου μεταξύ στόχων για μακρές συνομιλίες 🧠
14
context-optimized
Επιλέγει τον καλύτερο στόχο για το τρέχον μέγεθος πλαισίου
15
cache-optimized
Καρφιτσώνει κάθε επαναχρησιμοποιήσιμο πρόθεμα προτροπής στον ίδιο λογαριασμό — μέγιστες επιτυχίες προσωρινής αποθήκευσης προτροπής 🎯
16
lkgp
Τελευταία Γνωστή Καλή Διαδρομή — καρφιτσώνει στον τελευταίο επιτυχή πάροχο, κατόπιν εφαρμόζει εναλλακτικούς κανόνες
17
auto
Ζωντανή βαθμολόγηση 16 παραγόντων σε κάθε σύνδεση 🤖
18
fusion
Εκπομπή σε ομάδα μοντέλων + ένας κριτής συνθέτει μία απάντηση 🧬
19
pipeline
Αλυσίδα βημάτων — η έξοδος κάθε στόχου τροφοδοτεί τον επόμενο 🔗
Η μηχανή Auto-Combo βαθμολογεί κάθε υποψήφιο με βάση **16 παράγοντες** (υγεία, ποσόστωση, κόστος, λανθάνουσα κατάσταση, καταλληλότητα εργασίας, ποιότητα, διαθεσιμότητα συνεδρίας…) — δείτε [`docs/routing/AUTO-COMBO.md`](docs/routing/AUTO-COMBO.md).
##
### 🧱 Η ανθεκτικότητα είναι ενσωματωμένη (3 ανεξάρτητα επίπεδα)
📖 [Μηχανή Auto-Combo](docs/routing/AUTO-COMBO.md) · [Οδηγός Ανθεκτικότητας](docs/architecture/RESILIENCE_GUIDE.md)
## 🏆 Τι Ξεχωρίζει το OmniRoute
📊 Πλήρης μεθοδολογία & λεπτομέρειες ανά λειτουργία σε σχέση με τα 9router, OpenRouter, CLIProxyAPI & LiteLLM → [`docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md`](docs/comparison/OMNIROUTE_VS_ALTERNATIVES.md)
## 💚 Υποστήριξη του OmniRoute
Το OmniRoute διαθέτει άδεια MIT και συντηρείται δημόσια. Αν σας εξοικονομεί χρόνο ή χρήμα, δείτε πώς μπορείτε να το διατηρήσετε ανεξάρτητο — επιλέξτε ό,τι σας ταιριάζει. Η χορηγία δεν επηρεάζει ποτέ την προτεραιότητα δρομολόγησης· αγοράζει ορατότητα, όχι κατάταξη.
**🇧🇷 PIX** — άμεσα, χωρίς χρεώσεις (Βραζιλία)
Κλειδί (τυχαίο): `5d865059-bc44-483a-962d-43ceb80126eb`
Pix copia-e-cola:
```
00020101021126580014br.gov.bcb.pix01365d865059-bc44-483a-962d-43ceb80126eb5204000053039865802BR5922OMNIROUTE CONTRIBUICAO6006BRASIL62070503***630475DD
```
₿ Κρυπτονόμισμα — BTC · ETH · USDT-TRC20 · USDC-Solana (κάντε κλικ για ανάπτυξη)
₿ BTC
Bitcoin (SegWit)
bc1qh00smz004sy85wyl28v77tenkt3ckl6eaep7fd
Ξ ETH
Ethereum (ERC20)
0x64Cf6B68A6Ff34288e89172950a2d00102337a84
₮ USDT
Tron (TRC20)
TKAF41JpuQrHbKTnsQa9svJE2T192Hvsc2
$ USDC
Solana
2emNNZzVVWQc3FQ2wk9M6qXUQmW8AKdjjL174fXR28Tu
⚠️ Αποστέλλετε κάθε νόμισμα μόνο στο δίκτυο που αναγράφεται — η αποστολή σε λάθος δίκτυο μπορεί να οδηγήσει σε απώλεια των κεφαλαίων.
🐛 Βρήκατε ένα σφάλμα ή έχετε σχόλια; Ανοίξτε μια [Συζήτηση](https://github.com/diegosouzapw/OmniRoute/discussions).
Σημειώσεις προγραμματιστή: Το έργο ενδέχεται να δημιουργήσει ένα τοπικό αρχείο .env κατά την εκτέλεση npm install/postinstall για την ευκολία των προγραμματιστών. Αυτό το αρχείο αγνοείται σκόπιμα μέσω του .gitignore (δείτε .gitignore) και δεν πρέπει ποτέ να υποβληθεί — αν υποβληθεί κατά λάθος, αντικαταστήστε τυχόν εκτεθειμένα μυστικά και αφαιρέστε το αρχείο από το ιστορικό. Δείτε docs/DEVELOPER-ENVIRONMENT.md για οδηγίες σχετικά με τη διαχείριση τοπικών αρχείων περιβάλλοντος και μυστικών.
## 📡 OmniRoute Radar
Η κύρια δωρεάν επικεφαλίδα παραμένει **~1,51 δισ. token/μήνα** από τον τεκμηριωμένο,
κατάλογο με αφαίρεση διπλοτύπων παρόχων που αναφέρεται παραπάνω. Προσωρινές πιστώσεις εγγραφής παρόχου μπορούν ξεχωριστά να ανεβάσουν τον πρώτο
μήνα στα **~2,13 δισ.**. Το Radar είναι ένα προαιρετικό, υπογεγραμμένο επίστρωμα καταλόγου για άτομα που θέλουν πιο ενημερωμένη
διαθεσιμότητα δωρεάν μοντέλων μεταξύ των εκδόσεων OmniRoute· ο κοινοτικός κατάλογος και κάθε υπάρχον δωρεάν
χαρακτηριστικό παραμένουν δωρεάν.
Οι υποστηρικτές μπορούν να λάβουν τον ζωντανό κατάλογο και επιπλέον ευκαιρίες παρόχων. Το ξεχωριστό,
μεταβλητό ανώτατο όριο του είναι **περίπου 3 δισ. token/μήνα κατ' ανώτατο**, ανάλογα με τη διαθεσιμότητα παρόχου.
Αυτό το ανώτατο όριο δεν αποτελεί εγγύηση: οι πάροχοι μπορούν να αλλάξουν ποσοστώσεις, επιλεξιμότητα, μοντέλα ή περιοχές ανά πάσα
στιγμή.
Το Radar είναι προαιρετικό και μόνο GET. Ο client OmniRoute δεν ανεβάζει prompt, κίνηση, ρυθμίσεις παρόχου, τηλεμετρία χρήσης ή τοπική κατάσταση απόρριψης ανακοινώσεων. Μάθετε για την επιλεξιμότητα και τον τρέχοντα κατάλογο στη διεύθυνση **[radar.omniroute.online/planos](https://radar.omniroute.online/planos)**.
## ✨ Τι Νέο Υπάρχει
> Πρόσφατες κορυφαίες αλλαγές από την **v3.8.20 → v3.8.50**. Πλήρες ιστορικό στο [`CHANGELOG.md`](CHANGELOG.md).
- **🎛️ OmniConductor** — εισερχόμενη ανάθεση A2A στον στόλο agent σας, δεξιότητες Conductor στο Agent Card, και πίνακας dashboard με φωνητική συνομιλία push-to-talk Faro. → [A2A Server](docs/frameworks/A2A-SERVER.md)
- **🛂 Προσαρμοστική αποδοχή & προστασία από υπερφόρτωση** — τα βαριά αιτήματα chat μπαίνουν σε ουρά αντί να λαμβάνουν 503, με ατομικές κυλιόμενες εκμισθώσεις RPM ανά σύνδεση. → [Resilience Guide](docs/architecture/RESILIENCE_GUIDE.md)
- **🗂️ Κανονική ταξινόμηση `/v1/models`** — ένα συνεχόμενο μπλοκ ομαδοποιημένο ανά πάροχο για κάθε πάροχο (οι συνδυασμοί καρφιτσωμένοι πρώτα), σταθερό σε κάθε πηγή καταλόγου. → [API Reference](docs/reference/API_REFERENCE.md)
- **🗜️ Ενίσχυση συμπίεσης** — inflation guard ενεργό εξ ορισμού, Caveman packs για DE / FR / JA + Κινεζικά (wényán), φίλτρα RTK για Gradle & .NET. → [Compression](docs/compression/COMPRESSION_ENGINES.md)
- **💸 Ειλικρινής σταθερό κόστος** — οι πάροχοι συνδρομής / προγράμματος κωδικοποίησης εμφανίζουν **$0** στην ανάλυση κόστους· ο προϋπολογισμός, η ποσόστωση και η δρομολόγηση συνεχίζουν να εκτιμούν. → [API Reference](docs/reference/API_REFERENCE.md)
- **⚖️ Δρομολόγηση Quota-Share** — διανέμει δίκαια την ποσόστωση ενός κοινού λογαριασμού σε κλειδιά pool, με διατήρηση εργασίας ώστε αδρανείς κατανομές να δανείζονται. → [Resilience Guide](docs/architecture/RESILIENCE_GUIDE.md)
- **🤖 Εγκατάσταση CLI/agent με μία εντολή** — 13 καταχωρημένες εντολές `setup-*`· το `omniroute run` εκκινεί 7 CLI (Claude Code, Codex, Aider, Goose, OpenCode, Qwen Code, Gemini CLI)· το `omniroute configure` υποστηρίζει 10 στόχους με διαδραστικό επιλογέα παρόχου+μοντέλου και αγαπημένα ανά πλαίσιο. → [CLI Integrations](docs/guides/CLI-INTEGRATIONS.md)
- **🛰️ Απομακρυσμένη λειτουργία** — οδηγήστε ένα απομακρυσμένο OmniRoute με διακριτικά εμβέλειας (`connect` / `contexts` / `tokens`) + έναν βοηθό `antigravity` OAuth για εγκαταστάσεις VPS. → [Remote Mode](docs/guides/REMOTE-MODE.md)
- **🧭 Εξυπνότερη αυτόματη δρομολόγηση** — συνδυασμοί `auto/:`, **Fusion** (πίνακας μοντέλων + κριτής), δρομολόγηση ανά εργασία, παρακάμψεις μοντέλου / λειτουργίας / USD-budget ανά αίτημα. → [Auto-Combo](docs/routing/AUTO-COMBO.md)
- **🗜️ Συμπίεση με δυνατότητα προσθήκης** — 12 συνδυαστικές μηχανές + Compression Studios: LLMLingua-2, Ultra δύο επιπέδων, omniglyph, πύλη πιστότητας ανά βήμα, GCF v3.2, επεξεργαστής με αναδιάταξη drag. → [Compression](docs/compression/COMPRESSION_ENGINES.md)
- **🕵️ Διαφανής αποκρυπτογράφηση MITM (TPROXY)** — καταγράφει CLI που αγνοούν μεταβλητές περιβάλλοντος proxy, με CA ανά SNI + εγκαταστάτη αποθήκης εμπιστοσύνης. → [MITM/TPROXY](docs/security/MITM-TPROXY-DECRYPT.md)
- **💸 Τηλεμετρία κόστους παντού** — κεφαλίδες κόστους/χρήσης `X-OmniRoute-*` σε κάθε endpoint, κεφαλίδα εξοικονόμησης cache-HIT, ποσοστώσεις δαπάνης USD ανά κλειδί. → [API Reference](docs/reference/API_REFERENCE.md)
- **🧠 Μνήμη υπό τον έλεγχό σας** — ανενεργή εξ ορισμού, προαιρετική κβαντοποίηση διανύσματος int8 + τυποποιημένη φθορά, `x-omniroute-no-memory` ανά αίτημα. → [Memory](docs/frameworks/MEMORY.md)
- **🛡️ Ασφάλεια** — φύλακας έγχυσης prompt σε κάθε διαδρομή LLM (σουίτα red-team), προαιρετική ασπίδα απόκρυψης διαπιστευτηρίων (αποκρύπτει διαρρεόντα κλειδιά API/μυστικά και στις δύο κατευθύνσεις), δωρεάν αναζήτηση web DuckDuckGo ως έσχατη λύση, και προαιρετική πύλη σύνδεσης OIDC για το dashboard (η σύνδεση με κωδικό πρόσβασης παραμένει πάντα διαθέσιμη). → [Guardrails](docs/security/GUARDRAILS.md)
- **🖼️ Νέα endpoint** — `/v1/ocr` (Mistral OCR) και `/v1/audio/translations` (τύπου Whisper) συμπληρώνουν την επιφάνεια πολυμέσων. → [API Reference](docs/reference/API_REFERENCE.md)
- **🎨 Δημιουργία εικόνας / βίντεο / ήχου** — ένα API για πολυμέσα: xAI Grok Imagine & Novita AI βίντεο, ComfyUI, Magnific, Adobe Firefly, Segmind, και πάροχοι ομιλίας όπως ElevenLabs. → [API Reference](docs/reference/API_REFERENCE.md)
- **🌍 Ανάπτυξη & λειτουργίες** — `basePath` αντίστροφου proxy, αυτόματη ανίχνευση γλώσσας browser, παρακολούθηση συσκευής ανά κλειδί, εμπιστοσύνη MITM χωρίς root, τοπικοποίηση zh-TW. → [Environment](docs/reference/ENVIRONMENT.md)
- **🤝 Περισσότεροι πάροχοι & agents** — cloud agents (Codex Cloud, Cursor, Devin, Jules), Grok Build (xAI) με σύνδεση μέσω browser + OAuth, κάρτα πρώτης κατηγορίας Ollama, Claude Opus 5 & Sonnet 5, επίσημη συνεργασία Kimi (Code/Web/Moonshot), Zed, Requesty, SenseNova, Yuanbao, Agnes AI… και ανανεωμένος **κατάλογος 352 παρόχων**. → [Providers](docs/reference/PROVIDER_REFERENCE.md)
- **📡 Διαφάνεια δρομολόγησης** — κάθε απόκριση φέρει κεφαλίδα `X-OmniRoute-Decision` που ονομάζει τη στρατηγική/πάροχο/καθυστέρηση που την εξυπηρέτησε, νέα στρατηγική συνδυασμού `cache-optimized` + παράγοντας `cacheAffinity` Auto-Combo που δρομολογεί επαναλαμβανόμενα αιτήματα πίσω στη σύνδεση που κατέχει το αποθηκευμένο πρόθεμα, και ένα endpoint μόνο-ανάγνωσης `/v1/auto-combo/{channel}/candidates` που εκθέτει το ζωντανό pool υποψηφίων ενός καναλιού `auto/*`. → [Auto-Combo](docs/routing/AUTO-COMBO.md)
- **⚡ Τοπική απόδοση & υποδομή** — τοπικό Redis με ένα κλικ, αναπτυκτήρες relay Cloudflare Workers / Deno Deploy, Bifrost & Mux ως εποπτευόμενες ενσωματωμένες υπηρεσίες. → [Embedded Services](docs/frameworks/EMBEDDED-SERVICES.md)
- **🧩 Επίσης στο πακέτο** — πλαίσιο plugin + marketplace, πλαίσια δεξιοτήτων Omni/Agent/GitHub, ενοποίηση αποθήκης Obsidian (22 εργαλεία MCP), API Batch & Files συμβατά με OpenAI, σημασιολογική cache αποκρίσεων, gamification με πίνακες κατάταξης, ανακάλυψη agent ACP (15 ενσωματωμένοι agents), προγραμματισμένη εξαγωγή αρχείων καταγραφής στο BigQuery, έγχυση σφαλμάτων `auto/chaos`, γέφυρα bot Telegram, ενδοεφαρμογικός διαχειριστής εκδόσεων και κατατάξεις δωρεάν παρόχων LMArena-ELO. → [Docs](docs/README.md)
## 🤖 Συμβατά CLIs & Κωδικοί Πράκτορες
> Μία ρύθμιση — `http://localhost:20128/v1` — και **κάθε** AI IDE ή CLI τρέχει με δωρεάν και χαμηλού κόστους μοντέλα.
+ λειτουργεί επίσης με · Kiro · Command Code · Antigravity · Windsurf · AMP · οποιοδήποτε εργαλείο συμβατό με OpenAI
📖 Ρύθμιση ανά εργαλείο για όλα τα 36 εργαλεία (26 CLI Code + 10 CLI Agents) → [`docs/reference/CLI-TOOLS.md`](docs/reference/CLI-TOOLS.md) · 🧩 Πρόσθετο OpenCode → [`@omniroute/opencode-provider`](https://www.npmjs.com/package/@omniroute/opencode-provider)
**Εκκινήστε οποιοδήποτε υποστηριζόμενο CLI μέσω του OmniRoute με μία εντολή** — χωρίς αρχεία ρυθμίσεων,
τα διαπιστευτήρια εισάγονται ανά διεργασία, τα Qwen/Gemini αποκτούν μια μεμονωμένη απομονωμένη αρχική κατάλογο:
```bash
omniroute run claude --model openai/gpt-5.4 # Claude Code
omniroute run codex --model glm/glm-5.2 # OpenAI Codex CLI
omniroute run aider --model glm/glm-5.2 -- --message "reply OK"
omniroute run goose --model glm/glm-5.2
omniroute run opencode --model glm/glm-5.2 -- run "reply OK"
omniroute run qwen --model glm/glm-5.2 -- -p "reply OK"
omniroute run gemini --model glm/glm-5.2 -- --skip-trust -p "reply OK"
# Ή επιλέξτε παρόχο+μοντέλο διαδραστικά και γράψτε τη δική του ρύθμιση του εργαλείου:
omniroute configure codex # επίσης: claude opencode qwen aider goose gemini cline continue kilo
```
Κάθε εντολή τιμά το ενεργό απομακρυσμένο πλαίσιο (`omniroute connect `), η `--dry-run`
προεπισκοπεί ακριβώς το περιβάλλον/ορίσματα χωρίς εκτέλεση, και η `--api-key-env NAME` κρατά τα μυστικά εκτός
του ιστορικού του κελύφους. → [Ενσωματώσεις CLI](docs/guides/CLI-INTEGRATIONS.md)
## 🌐 352 Πάροχοι AI — 152 Σημασμένοι ως Δωρεάν στον Κατάλογο
> **352 καταχωρημένοι πάροχοι** στις κανονικές συλλογές chat, media, search, local, cloud-agent και system, συμπεριλαμβανομένων **152 που φέρουν μεταδεδομένα ανακάλυψης `hasFree: true`**. Το μητρώο μοντέλων chat καλύπτει **229 παρόχους / 2.554 διακριτά ζεύγη παρόχου-μοντέλου / 1.283 ακατέργαστα αναγνωριστικά μοντέλων**· ο ξεχωριστός κατάλογος ελεύθερου προϋπολογισμού έχει **446 γραμμές ανά μοντέλο**, **38 επαναλαμβανόμενες δεξαμενές** και **53 επαναλαμβανόμενους/χωρίς κλειδί παρόχους ελεύθερους για πάντα**. Πρόκειται για διαφορετικούς παρονομαστές εκ σχεδιασμού· οι ορισμοί και οι υπολογισμοί με αφαίρεση διπλοτύπων δεξαμενών βρίσκονται στην [Αναφορά Παρόχων](docs/reference/PROVIDER_REFERENCE.md) και στα [Δωρεάν Επίπεδα](docs/reference/FREE_TIERS.md).
### 🏢 Κάθε μεγάλο εργαστήριο — μέσω ενός endpoint
OpenAI
Anthropic
Gemini
xAI Grok
DeepSeek
Mistral
Qwen
Meta Llama
Groq
NVIDIA
MiniMax
Cohere
Perplexity
HuggingFace
Together
Fireworks
Cloudflare
Baidu
…και 330+ ακόμα — κάθε εικονίδιο φορτώνεται ζωντανά από τον κατάλογο παρόχων του πίνακα ελέγχου. 📖 [Αναφορά Παρόχων](docs/reference/PROVIDER_REFERENCE.md)
### 🆓 Δωρεάν για Πάντα — $0, χωρίς κάρτα
OpenCode Zen DeepSeek V4, Nemotron 3 Χωρίς όριο token
Kilo Code Auto-router, Tencent Hy3 Δωρεάν για πάντα
Requesty GPT-OSS 120B, Nemotron Δωρεάν για πάντα
SiliconFlow DeepSeek V3.2 / R1 Δωρεάν επίπεδο
Z.AI GLM GLM-4.7 / 4.5-Flash Δωρεάν για πάντα
Baidu ERNIE ERNIE 4.0 Δωρεάν για πάντα
Qoder AI Qwen3-Max, Kimi-K2 Απεριόριστα ΔΩΡΕΑΝ
Pollinations GPT, Llama, Claude Χωρίς κλειδί
Cloudflare AI 50+ μοντέλα 10K neurons/day
NVIDIA NIM GLM, MiniMax ~40 RPM δωρεάν
Cerebras GLM 4.7, GPT-OSS 1M tokens/day
OpenRouter :free μοντέλα +$10 → υψηλότερο RPM
📖 Πλήρης αναγνώσιμος από μηχανή κατάλογος → [`docs/reference/PROVIDER_REFERENCE.md`](docs/reference/PROVIDER_REFERENCE.md)
## 🖥️ Πού Τρέχει το OmniRoute — Παντού
> Η ίδια εφαρμογή, στο δικό σου μηχάνημα, με τους δικούς σου κανόνες. Από μια καθολική εγκατάσταση npm μέχρι **το τηλέφωνό σου** μέσω Termux.
Πλατφόρμα
Εγκατάσταση
Χαρακτηριστικά
📦 npm (global)
npm install -g omniroute
Μία εντολή, οποιοδήποτε ΛΣ
🐳 Docker
docker run … diegosouzapw/omniroute
Πολλαπλές αρχιτεκτονικές AMD64 + ARM64
🖥️ Desktop (Electron)
npm run electron:build
Εγγενές παράθυρο + system tray — Windows / macOS / Linux
💪 ARM
native arm64
Raspberry Pi, διακομιστές ARM, Apple Silicon
📱 Android (Termux)
pkg install nodejs && npx -y omniroute
Τρέχει στο τηλέφωνό σου, 24/7, χωρίς root
📲 PWA
"Προσθήκη στην Αρχική Οθόνη"
Πλήρης οθόνη, offline, εγκαταστάσιμο από το πρόγραμμα περιήγησης
🧩 OpenCode plugin
@omniroute/opencode-provider
Εγγενής ενσωμάτωση OpenCode
🤖 VS Code Copilot Chat
εγκατάσταση επέκτασης OmniCopilot
Κάθε μοντέλο OmniRoute στο εγγενές πρόγραμμα επιλογής Copilot Chat — stable & Insiders
### 🧩 Νέο: OmniRoute μέσα στο εγγενές Copilot Chat του VS Code
> Χωρίς νέα πλαϊνή μπάρα, χωρίς νέο περιβάλλον συνομιλίας — κάθε μοντέλο που εξυπηρετεί το OmniRoute εμφανίζεται απευθείας στο
> **πρόγραμμα επιλογής μοντέλου Copilot Chat που ήδη χρησιμοποιείς**. Από το VS Code 1.122, τα μοντέλα παρόχου λειτουργούν
> χωρίς σύνδεση GitHub ή συνδρομή Copilot — agent mode, κλήση εργαλείων και vision, δωρεάν.
Εγκατέστησε την επέκταση **[OmniCopilot](https://github.com/diegosouzapw/OmniCopilot)**, κατεύθυνέ την
στον διακομιστή OmniRoute σου (προεπιλογή `localhost:20128`), και στη συνέχεια άνοιξε Copilot Chat → πρόγραμμα επιλογής μοντέλου
→ **Manage Models…** → **OmniRoute**.
Μέσα από τον επεξεργαστή: άνοιξε την προβολή **Extensions**, αναζήτησε **"OmniRoute"**, κάνε κλικ στο **Install**
— λειτουργεί με τον ίδιο τρόπο και στα δύο καταστήματα. Ο πηγαίος κώδικας, τα ζητήματα και το εγχειρίδιο δημοσίευσης βρίσκονται στο
[diegosouzapw/OmniCopilot](https://github.com/diegosouzapw/OmniCopilot).
📖 [Οδηγός VS Code Copilot Chat](docs/guides/VSCODE-COPILOT.md) — ρύθμιση, τι εμφανίζει το πρόγραμμα επιλογής, dashboard σε καρτέλα, αντιμετώπιση προβλημάτων
> Πέρα από τον διακομιστή, το OmniRoute είναι ένα **πλήρες πιλοτήριο γραμμής εντολών** με **80+ εντολές**, καθώς και ανοιχτά πρωτόκολλα πράκτορα ώστε ένας πράκτορας AI να μπορεί να το οδηγεί **από μόνος του**.
### ⌨️ Ένα πραγματικό CLI (όχι απλώς `start`)
```bash
omniroute # εκκίνηση πύλης + dashboard (port 20128)
omniroute chat # διαδραστικός TUI chat client (slash: /model /combo /skill /memory)
omniroute setup # οδηγός πρώτης εκτέλεσης
omniroute doctor # διάγνωση παρόχων, ports, εγγενών εξαρτήσεων
```
### 🛰️ Απομακρυσμένη λειτουργία — εκτελέστε το CLI εδώ, το OmniRoute σε VPS
Το OmniRoute σε διακομιστή; Οδηγήστε το από το laptop σας με το **ίδιο CLI**. Συνδεθείτε μία φορά
με ένα scoped access token· κάθε εντολή απευθύνεται στη συνέχεια στο απομακρυσμένο.
```bash
omniroute connect 192.168.0.15 # κωδικός πρόσβασης → scoped token, αποθηκεύεται ως context
omniroute models list # ← εκτελείται στον ΑΠΟΜΑΚΡΥΣΜΕΝΟ διακομιστή
omniroute configure codex # ← επιλέγει απομακρυσμένο μοντέλο, δημιουργεί τοπικό Codex profile
omniroute tokens create --name ci --scope read # δημιουργία πιο περιορισμένων tokens για άλλα μηχανήματα
omniroute contexts use default # ← επιστροφή στον τοπικό διακομιστή
```
Τα tokens έχουν εμβέλεια `read` / `write` / `admin`· οι διαδρομές εκκίνησης διεργασιών παραμένουν μόνο loopback.
📖 [Απομακρυσμένη Λειτουργία](docs/guides/REMOTE-MODE.md)
### 🤝 Συνδέστε έναν πράκτορα — και ελέγχει το ίδιο το OmniRoute
Εκθέστε το OmniRoute μέσω **MCP**, **A2A**, **REST API**, **webhooks** ή **απομακρυσμένου CLI** — οποιοσδήποτε ικανός πράκτορας (ή ο δικός σας κώδικας) αποκτά τα κλειδιά ολόκληρης της πύλης: δρομολόγηση, πάροχοι, combos, cache, συμπίεση, μνήμη — αυτόνομα. Τα HTTP endpoints παρακάτω εξυπηρετούνται στο `http://localhost:20128`.
Διεπαφή
Endpoint / εντολή
Χρήση για
🧰 MCP (stdio)
omniroute --mcp
Σύνδεση με Claude Desktop, Cursor, οποιονδήποτε MCP client
Συμβατό με OpenAI — chat, embeddings, εικόνες, ήχος, OCR
🔔 Webhooks
/api/webhooks
Αποστολή συμβάντων αιτημάτων / ορίου σε Slack, Discord, Telegram ή οποιοδήποτε URL
🛰️ Απομακρυσμένο CLI
omniroute connect
Οδήγηση απομακρυσμένης εγκατάστασης με scoped access tokens
```bash
# Δώστε στο Claude Code το πλήρες σύνολο εργαλείων OmniRoute μέσω MCP:
claude mcp add-server omniroute --type http --url http://localhost:20128/api/mcp/stream
```
📖 [MCP Server](docs/frameworks/MCP-SERVER.md) · [A2A Server](docs/frameworks/A2A-SERVER.md) · [Πρωτόκολλα Πράκτορα](docs/frameworks/AGENT_PROTOCOLS_GUIDE.md)
## 🗜️ Εξοικονόμηση 15–95% Tokens — Αυτόματα
### 📖 Πώς λειτουργεί — pipeline, αρχιτεκτονική & μαθηματικά εξοικονόμησης
Ο προεπιλεγμένος συνδυασμός στοίβαξης εκτελεί `RTK → Caveman`. Όταν και οι δύο δρουν στο ίδιο payload εργαλείου/πλαισίου, η εξοικονόμηση αθροίζεται:
```txt
combined = 1 − (1 − RTK) × (1 − Caveman_input)
average = 1 − (1 − 0.80) × (1 − 0.46) = 89.2%
range = 78.4 – 94.6%
```
Τα μπλοκ κώδικα, URLs, JSON και δομημένα δεδομένα **προστατεύονται πάντα** από τη μηχανή διατήρησης.
> **Γιατί να χρησιμοποιείς πολλά token όταν λίγα αρκούν;** Κάθε αίτημα διέρχεται από το pipeline συμπίεσης του OmniRoute **διαφανώς** — χωρίς αλλαγές στον πελάτη. Είναι πλέον μια **στοίβα από 12 συνθέσιμες μηχανές** που εκτελούνται με σειρά και συνδυάζονται ανά routing combo — βασιζόμενες σε ιδέες από τα [RTK](https://github.com/rtk-ai/rtk), [Caveman](https://github.com/JuliusBrussee/caveman) (⭐ 90K+), [LLMLingua-2](https://github.com/microsoft/LLMLingua) και [Troglodita](https://github.com/leninejunior/troglodita) (PT-BR).
### 🧱 Η στοίβα 12 μηχανών
Οι μηχανές εκτελούνται με σειρά pipeline· κάθε μία μπορεί να ενεργοποιηθεί/απενεργοποιηθεί ανεξάρτητα και να ρυθμιστεί ανά combo:
#
Μηχανή
Τι κάνει
1
Session-Dedup
Αφαιρεί περιεχόμενο που επαναλαμβάνεται μεταξύ γύρων (content-addressed, cross-turn)
2
CCR
Αρχειοθετεί μεγάλα μπλοκ πίσω από δείκτες ανάκτησης, που λαμβάνονται κατ' απαίτηση
3
Lite
Κλάδεμα κενού χώρου + URLs εικόνων (ελαφριά βάση ως προς καθυστέρηση)
Συμπίεση JSON με προτεραιότητα lossless + φραγμένη διαγνωστική συμπίεση για εξόδους shell/patch/search/build (Responses API)
6
Headroom
Lossless συμπύκνωση πινάκων JSON arrays (~30%) μέσω ενσωματωμένου κωδικοποιητή GCF
7
Relevance
Εξαγωγική βαθμολόγηση προτάσεων ως προς το τελευταίο ερώτημα χρήστη
8
Caveman
Συμπίεση πεζογραφίας βάσει κανόνων (~65–75% στην έξοδο)
9
Aggressive
Περίληψη + προοδευτική γήρανση παλαιών γύρων
10
LLMLingua-2
ML σημασιολογική κλάδευση μέσω MobileBERT ONNX — code-safe, async
11
Ultra
Ευρετική κλάδευση token με προαιρετικό επίπεδο small-model (SLM)
12
OmniGlyph
Πειραματική κωδικοποίηση πλαισίου-ως-εικόνα για μετρημένο Claude Fable 5 στο άμεσο Anthropic wire· οι μετασχηματιστές GPT 5.6 παραμένουν fail-closed εν αναμονή παραλαβών παρόχου. Τέσσερα προφίλ συμπίεσης (aggressive προεπιλογή, balanced, coding-safe, passthrough) (πιο aggressive· opt-in)
Τα μπλοκ κώδικα, URLs και δομημένα δεδομένα **διατηρούνται πάντα** byte-perfect. Τα **προεπιλεγμένα με ένα κλικ** συνδυάζουν τις μηχανές:
Λειτουργία
Εξοικονόμηση
Κατάλληλο για
🪶 Lite
~15%
Πάντα ενεργή ασφαλής προεπιλογή
🪨 Standard (Caveman)
~30%
Καθημερινό coding
⚡ Aggressive
~50%
Μεγάλες συνεδρίες με πολλά εργαλεία
🔥 Ultra
~75%
Μέγιστη εξοικονόμηση
🧰 RTK
60–90%
Έξοδος shell/test/build/git
🔗 Stacked (RTK → Caveman)
78–95%
Μικτά prompts + αρχεία καταγραφής εργαλείων
**Πραγματικό παράδειγμα — Λειτουργία Standard:**
> **Πριν (69 token):** _"The reason your React component is re-rendering is likely because you're creating a new object reference on each render cycle. When you pass an inline object as a prop, React's shallow comparison sees it as a different object every time, which triggers a re-render. I would recommend using useMemo to memoize the object."_
>
> **Μετά (19 token):** _"New object ref each render. Inline object prop = new ref = re-render. Wrap in useMemo."_
>
> **Ίδια απάντηση. 72% λιγότερα token. Μηδενική απώλεια ακρίβειας.** ✅
**Παράδειγμα PT-BR — Λειτουργία [Troglodita](https://github.com/leninejunior/troglodita):**
> **Antes (42 token):** _"O problema é que o componente está re-renderizando porque uma nova referência de objeto está sendo criada em cada ciclo de renderização. Eu recomendaria usar useMemo."_
>
> **Depois (12 token):** _"Re-render: ref nova cada ciclo (objeto inline recriado). Usar `useMemo`."_
>
> **Mesma resposta. ~70% menos tokens. Precisão técnica intacta.** ✅
### 🎚️ Πέρα από τις μηχανές — στυλ εξόδου, το προσαρμοστικό ρυθμιστικό & έλεγχος ανά αίτημα
Οι 12 μηχανές παραπάνω συρρικνώνουν αυτό που εισέρχεται. Τρία ακόμη επίπεδα διαμορφώνουν το **πώς**, το **πότε** και αυτό που **εξέρχεται**:
- **🪄 Στυλ Εξόδου** _(καθοδήγηση άξονα εξόδου)_ — εισάγουν ντετερμινιστικές, cache-safe οδηγίες διαμόρφωσης απόκρισης· συνδυάσιμα, το καθένα σε ένταση `lite` / `full` / `ultra`. Η προσθήκη ενός στυλ είναι μία γραμμή στο μητρώο:
- **Terse prose** — αφαίρεση γεμιστικών / άρθρων / επιφυλάξεων· διατήρηση τεχνικής ουσίας ακριβώς.
- **Less code** — "lazy senior dev" YAGNI: ελάχιστη λειτουργική αλλαγή, χωρίς ζητούμενη σκαλωσιά.
- **Ponytail (lazy senior dev)** — ανέβαση στη σκάλα YAGNI, διόρθωση της ρίζας του προβλήματος, ελάχιστο λειτουργικό diff.
- **I have ADHD (action-first)** — η επόμενη ενέργεια πρώτη, βήματα αριθμημένα, ένα συγκεκριμένο επόμενο βήμα, χωρίς εισαγωγή.
- **Terse CJK (文言)** — εξαιρετικά σύντομο ύφος κλασικών κινεζικών (με προϋπόθεση locale `zh`).
- **🎯 Προσαρμοστικός προϋπολογισμός πλαισίου** _(το ρυθμιστικό)_ — αντί για ένα on/off κατώφλι token, κλιμακώνει τις φθηνότερες, πιο lossless μηχανές μόνο όσο χρειάζεται για να **χωρέσει στο παράθυρο πλαισίου του μοντέλου**. Πολιτική: `reserve-output` (προεπιλογή, model-aware) · `percentage` · `absolute`. Λειτουργία: `floor` (εγγύηση χωρητικότητας) · `replace-autotrigger` (η ρητή επιλογή σου κερδίζει) · `off` (παλαιό κατώφλι).
- **🎛️ Πού αποφασίζεται η συμπίεση** _(προτεραιότητα, υψηλή → χαμηλή)_ — header `x-omniroute-compression` ανά αίτημα › παράκαμψη routing-combo › ενεργό επώνυμο προφίλ › adaptive / auto-trigger › προεπιλογή πίνακα › off. Το εφαρμοζόμενο πλάνο επιστρέφει στο header απόκρισης `X-OmniRoute-Compression: ; source=`.
Αυτόματη ενεργοποίηση βάσει κατωφλίου token, ενεργοποίηση του προσαρμοστικού ρυθμιστικού, καρφίτσωμα επώνυμου προφίλ, ορισμός εφάπαξ ανά αίτημα ή ανάθεση pipeline ανά routing combo — όποιο ταιριάζει στο φόρτο εργασίας. Ένα opt-in offline **eval harness** (`npm run eval:compression`) βαθμολογεί πιστότητα έναντι εξοικονόμησης σε καρφιτσωμένο corpus πριν προωθήσεις μια αλλαγή.
📖 [`COMPRESSION_GUIDE.md`](docs/compression/COMPRESSION_GUIDE.md) · [`RTK_COMPRESSION.md`](docs/compression/RTK_COMPRESSION.md) · [`COMPRESSION_ENGINES.md`](docs/compression/COMPRESSION_ENGINES.md)
# ⚡ Γρήγορη Εκκίνηση
**1) Εγκατάσταση & εκτέλεση**
```bash
npm install -g omniroute
omniroute
```
> 💡 Βλέπεις `npm warn ERESOLVE` ή προειδοποιήσεις peer-dep; [Είναι αβλαβείς](docs/guides/TROUBLESHOOTING.md#npm-install-warnings-eresolve--peer--deprecated).
Πίνακας εργαλείων στο `http://localhost:20128` · API στο `http://localhost:20128/v1`.
**2) Σύνδεση ΔΩΡΕΑΝ παρόχου (χωρίς εγγραφή)**
Πίνακας εργαλείων → **Providers** → σύνδεση **Kiro AI** (δωρεάν Claude, ~50 credits/μήνα ανά λογαριασμό) ή **OpenCode Free** (χωρίς auth) → έτοιμο.
**3) Ρύθμιση εργαλείου coding**
```txt
Base URL: http://localhost:20128/v1
API Key: [αντιγραφή από Πίνακα εργαλείων → Endpoints]
Model: auto (έξυπνο routing μηδενικής ρύθμισης — ή οποιοσδήποτε πάροχος/μοντέλο)
```
**4) Επαλήθευση λειτουργίας**
```bash
curl http://localhost:20128/v1/models -H "Authorization: Bearer YOUR_KEY"
```
Θα δεις τα συνδεδεμένα μοντέλα σου καταχωρισμένα. 🎉 Αυτό είναι όλο — ξεκίνα να γράφεις κώδικα και το OmniRoute δρομολογεί αυτόματα & κάνει fallback για σένα.
Αν ο πελάτης σου δεν μπορεί να στείλει custom headers, το OmniRoute εκθέτει επίσης tokenized ψευδώνυμα συμβατότητας:
```txt
OpenAI catalog: http://localhost:20128/vscode/YOUR_KEY/
OpenAI models: http://localhost:20128/vscode/YOUR_KEY/models
OpenAI chat: http://localhost:20128/vscode/YOUR_KEY/chat/completions
OpenAI responses: http://localhost:20128/vscode/YOUR_KEY/responses
Ollama chat: http://localhost:20128/vscode/YOUR_KEY/api/chat
Ollama tags: http://localhost:20128/vscode/YOUR_KEY/api/tags
```
Χρησιμοποίησε αυτά μόνο για πελάτες που δεν μπορούν να επισυνάψουν `Authorization: Bearer ...`. Η αυθεντικοποίηση μέσω header παραμένει ο προτιμώμενος τρόπος.
## 📦 Περισσότερες μέθοδοι εγκατάστασης — Docker, πηγαίος κώδικας, pnpm, Arch
**🐳 Docker**
```bash
docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \
-p 127.0.0.1:20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest
```
Το `:latest` ακολουθεί την υψηλότερη **δημοσιευμένη** σταθερή έκδοση SemVer. Δεν παρακολουθεί το git `main`. Καρφιτσώστε το `:X.Y.Z` για GitOps. Δείτε [Docker Release Channels](docs/guides/DOCKER_GUIDE.md#release-channels). Η εικόνα καρφιτσώνει **`OMNIROUTE_MEMORY_MB=1024`**. Αυτό είναι αρκετό για το dashboard και μια ελαφριά συνομιλία. Οι **πράκτορες κώδικα** (`POST /v1/responses` από Claude Code, Codex, Grok, …) χρειάζονται πολύ μεγαλύτερο heap V8, αλλιώς η διεργασία εμφανίζει `FATAL ERROR` στα ~12 GiB με δύο αλληλοεπικαλυπτόμενα μεγάλα πλαίσια. Μεγεθύνετε το container πάνω από το heap (οι native buffers βρίσκονται εκτός V8):
| Φόρτος εργασίας | Heap (`-e OMNIROUTE_MEMORY_MB`) | Container (`--memory`) |
| ------------------------------------- | ------------------------------- | ---------------------- |
| Dashboard / ελαφριά συνομιλία | `1024` (προεπιλογή εικόνας) | ≥2 g |
| Ένας πράκτορας κώδικα | `8192` | ≥10 g |
| Δύο ταυτόχρονα μεγάλα `/v1/responses` | `10240`–`12288` | ≥12–16 g |
```bash
docker run -d --name omniroute --restart unless-stopped --stop-timeout 40 \
-e OMNIROUTE_MEMORY_MB=8192 --memory=10g \
-p 127.0.0.1:20128:20128 -v omniroute-data:/app/data diegosouzapw/omniroute:latest
```
Πλήρης πίνακας: [Docker Guide — runtime RAM](docs/guides/DOCKER_GUIDE.md#runtime-ram-for-coding-agents).
> **Κανάλι Docker προ-κυκλοφορίας:** Τα `diegosouzapw/omniroute:next` και
> `diegosouzapw/omniroute:next-web` ακολουθούν τον τρέχοντα προεπιλεγμένο κλάδο `release/v*`.
> Αυτές οι μεταβλητές ετικέτες προορίζονται μόνο για δοκιμή μη κυκλοφορημένων διορθώσεων και
> **δεν υποστηρίζονται για παραγωγή**. Δείτε
> [Docker Release Channels](docs/guides/DOCKER_GUIDE.md#release-channels).
**🥟 Bun**
Το τυπικό `bun install` και η καθολική εγκατάσταση (`bun install -g omniroute`) υποστηρίζονται μέσω ανίχνευσης χρόνου εκτέλεσης Bun:
- **Ενσωματωμένο `bun:sqlite`**: Το OmniRoute χρησιμοποιεί τον ενσωματωμένο οδηγό `bun:sqlite` του Bun όταν εκτελείται υπό Bun, με εναλλακτική χρήση του `better-sqlite3` σε Node.js ή `sql.js`.
- **Αυτόματη επιλογή bundler Webpack στη ανάπτυξη**: Η ανάπτυξη (`bun run dev`) ανιχνεύει αυτόματα το Bun και απενεργοποιεί το Turbopack υπέρ του Webpack για αποφυγή ασυμβατοτήτων native δεσμεύσεων V8. Οι builds παραγωγής (`bun run build`) ακολουθούν ακριβώς το `OMNIROUTE_USE_TURBOPACK` όπως στο Node: Turbopack από προεπιλογή, `OMNIROUTE_USE_TURBOPACK=0` για build με Webpack (το `Dockerfile.bun` το εκθέτει ως `--build-arg`).
- **Αποκλειστικό Bun Dockerfile**: Πολυσταδιακό `Dockerfile.bun` για native Bun αναπτύξεις παραγωγής (`docker build -f Dockerfile.bun -t omniroute:bun .`).
```bash
# Εγκατάσταση και εκτέλεση με Bun
bun install
bun run dev
```
**🛠️ Από πηγαίο κώδικα**
```bash
cp .env.example .env && npm install
PORT=20128 npm run dev
```
**📦 pnpm**
```bash
pnpm add -g omniroute@latest --allow-build=better-sqlite3 --allow-build=@swc/core && omniroute
```
**🐧 Arch Linux (AUR)**
```bash
yay -S omniroute-bin && systemctl --user enable --now omniroute.service
```
**🔧 Nix (Flake)**
```bash
# Χρήση Nix flakes
nix develop
npm run dev
# Ή χρήση devbox
devbox run npm run dev
```
📖 [Docker Guide](docs/guides/DOCKER_GUIDE.md) — Προφίλ Compose, Caddy HTTPS, tunnels Cloudflare.
**🦭 Podman**
```bash
# 1. Προετοιμασία του καταλόγου δεδομένων με bind-mount
mkdir -p data
# 2. Μόνο Linux + τοπικό rootless Podman (ποτέ απομακρυσμένο Podman Machine client):
podman unshare chown 1000:1000 ./data
# 3. Ορισμός της υπόδειξης χρόνου εκτέλεσης, build της τοπικής εικόνας Compose και εκκίνηση
echo "CONTAINER_HOST=podman" >> .env
podman compose --profile base up -d --build
```
Σε macOS ή Windows, το Podman χρησιμοποιεί απομακρυσμένο Podman Machine: παραλείψτε το `podman unshare` και
ακολουθήστε την [οδηγία καταλόγου δεδομένων ανά τοπολογία](contrib/podman/README.md#data-directory-permissions-by-topology).
📖 [Podman Guide](contrib/podman/README.md) — Builds Compose, Podman Machine και
ρύθμιση Linux/systemd Quadlet.
**⚡ Ταχύτερη / ελαφρύτερη εγκατάσταση (παράλειψη native build)**
Η native μηχανή SQLite (`better-sqlite3`) είναι **προαιρετική** εξάρτηση, οπότε μια καθολική
εγκατάσταση δεν εμποδίζεται ποτέ από μεταγλώττιση πηγαίου κώδικα: χρησιμοποιεί προκατασκευασμένο δυαδικό αρχείο όταν ταιριάζει με
την πλατφόρμα/Node σας, και διαφορετικά υποχωρεί διαφανώς σε καθαρή JS μηχανή
(`node:sqlite` σε Node 22+, αλλιώς στο ενσωματωμένο `sql.js` WASM) — δεν απαιτούνται εργαλεία build.
Για πλήρη παράλειψη της native προθέρμανσης μετά την εγκατάσταση (CI, headless ή αργά μηχανήματα):
```bash
OMNIROUTE_SKIP_POSTINSTALL=1 npm install -g omniroute # CI=1 επίσης την παραλείπει
```
Για τις ταχύτερες εγκαταστάσεις προτιμήστε το **pnpm** (αποθήκη με διευθυνσιοδότηση περιεχομένου + hard links — δείτε παραπάνω).
Για headless χρόνο εκτέλεσης χωρίς dashboard χρησιμοποιήστε το προφίλ `base` του Docker (παραπάνω) ή τον
[οδηγό Termux](docs/guides/TERMUX_GUIDE.md). Το CLI και το web dashboard εξυπηρετούνται από την
ίδια διεργασία σε μία θύρα, οπότε δεν υπάρχει ξεχωριστό πακέτο αποκλειστικά CLI σήμερα.
Στρατηγική κάλυψης δοκιμών για 39.000+ στατικές δηλώσεις δοκιμών σε 5.100+ παρακολουθούμενα αρχεία δοκιμών
# ⭐ Κορυφαίοι Συνεισφέροντες
> Το OmniRoute διαμορφώνεται από μια παθιασμένη κοινότητα ανοιχτού κώδικα. Αυτά τα άτομα έχουν κάνει εξαιρετικές συνεισφορές που επηρεάζουν άμεσα την ποιότητα, τη σταθερότητα και την εμβέλεια του έργου. **Ευχαριστούμε.**
### Εξωτερικοί συνεισφέροντες βάσει συγχωνευμένων pull requests
Καταψυγμένο στην κορυφή του release/v3.8.50 με commit dafb4ae808, με συγχωνεύσεις έως 2026-08-24 05:26:03 UTC. Η σελιδοποιημένη απογραφή GitHub GraphQL περιέχει 5.911 συγχωνευμένα PRs: 2.707 από τον ιδιοκτήτη του αποθετηρίου, 179 από το Dependabot, και 3.025 εξωτερικά PRs από 535 διαφορετικούς συνεισφέροντες. «Αλλαγμένες γραμμές» είναι οι προσθήκες + διαγραφές του GitHub και περιλαμβάνουν παραγόμενα αρχεία, lockfiles, καταλόγους, μεταφράσεις και τεκμηρίωση· είναι ανακύκλωση, όχι πραγματικές γραμμές κώδικα. Ισοβαθμίες στο όριο διατηρούνται.
### Commits που αποδίδονται στο GitHub
Bob.Hou 🏅 51 commits που αποδίδονται στο GitHub · ισοβαθμία #10
Xiangzhe 🏅 51 commits που αποδίδονται στο GitHub · ισοβαθμία #10
Επανελέγχθηκε στις 2026-08-24 06:14:31 UTC: commits που αποδίδονται στο GitHub όπως αναφέρονται από το Contributors API του αποθετηρίου για τον προεπιλεγμένο κλάδο release/v3.8.50. Το API επέστρεψε 525 ταυτότητες (415 χρήστες, 2 bots, 108 ανώνυμοι)· αυτός ο πίνακας εξαιρεί τον συντηρητή, τα bots και τις ανώνυμες ταυτότητες και διατηρεί ισοβαθμίες στον ανταγωνισμό. Διαφέρει τόσο από την κατάταξη συγχωνευμένων PRs παραπάνω όσο και από την απογραφή μεταδεδομένων Git 639 ατόμων παρακάτω.
> 🙏 Τα χαρακτηριστικά, οι διορθώσεις σφαλμάτων και οι βελτιώσεις υποδομής αυτών των συνεισφερόντων αποτελούν **βασικό μέρος** αυτού που κάνει το OmniRoute αξιόπιστο και πλούσιο σε χαρακτηριστικά. Κάθε pull request, κάθε περίπτωση δοκιμής και κάθε αρχείο μετάφρασης i18n έχει σημασία. Ο ανοιχτός κώδικας χτίζεται από ανθρώπους σαν αυτούς.
---
## 💖 Χορηγοί
Ένα ολόθερμο ευχαριστώ στους ανθρώπους που χρηματοδοτούν το OmniRoute από την τσέπη τους — κάθε συνεισφορά κρατά το έργο δωρεάν, ανεξάρτητο και σε κίνηση.
… και άλλοι που προτιμούν να παραμείνουν ανώνυμοι 💛Δημόσιοι χορηγοί GitHub επαναληπτικά ελεγμένοι στις 2026-08-24. Η κατάσταση activeOnly του GitHub καθορίζει τις ετικέτες ενεργών παραπάνω· οι προηγουμένως αποκαλυφθέντες δημόσιοι εφάπαξ υποστηρικτές εξακολουθούν να ευχαριστούνται, και οι ιδιωτικοί χορηγοί παραμένουν ανώνυμοι.💖 Γίνε χορηγός → — κάθε δολάριο κρατά το OmniRoute δωρεάν και ανεξάρτητο.
## 👥 600+ Συνεισφέροντες
[](https://github.com/diegosouzapw/OmniRoute/graphs/contributors)
Ελεγμένο στις 2026-08-24 στη δεσμευμένη βάση ac02c5b42f και επανελεγμένο στο ενεργό άκρο release/v3.8.50dafb4ae808: 639 κανονικοποιημένες ανθρώπινες Git ταυτότητες — 407 εμφανίζονται ως συγγραφείς commit (συμπεριλαμβανομένου του συντηρητή) και 232 μόνο σε ρητά Co-authored-by trailers. Η απογραφή κανονικοποιεί τα noreply handles του GitHub, εξαιρεί 26 ταυτότητες bot/agent/υπηρεσίας/placeholder, και δεν συγχωνεύει κοινές διευθύνσεις email μόνο και μόνο επειδή τα εμφανιζόμενα ονόματά τους ταιριάζουν.
### Πώς να Συνεισφέρεις
1. Κάνε fork το αποθετήριο
2. Διακλαδώσου από το **ενεργό** άκρο `release/vX.Y.Z` (όχι από το `main`) — δες [Branching & Release Model](docs/ops/BRANCHING_MODEL.md)
3. Δημιούργησε τον κλάδο της λειτουργίας σου (`git checkout -b feat/amazing-feature`)
4. Κάνε commit τις αλλαγές σου (`git commit -m 'feat: add amazing feature'`)
5. Κάνε push στον κλάδο (`git push origin feat/amazing-feature`)
6. Άνοιξε ένα Pull Request με **base = εκείνον τον κλάδο `release/vX.Y.Z`**
Δες το [CONTRIBUTING.md](CONTRIBUTING.md) για λεπτομερείς οδηγίες.
### Κυκλοφορία Νέας Έκδοσης
```bash
# Δημιούργησε μια έκδοση — το npm publish γίνεται αυτόματα
VERSION=x.y.z
gh release create "v${VERSION}" --title "v${VERSION}" --generate-notes
```
## 📊 Αστέρια
## 🌍 StarMapper
## 🙏 Ευχαριστίες
Το OmniRoute στηρίζεται σε γίγαντες. Ξεκίνησε ως fork του **[9router](https://github.com/decolua/9router)** και ως μεταφορά σε TypeScript του έργου Go **[CLIProxyAPI](https://github.com/router-for-me/CLIProxyAPI)** — και από εκεί, κάθε υποσύστημα παρακάτω εμπνεύστηκε από ένα έργο ανοιχτού κώδικα που έφτασε εκεί πρώτο. Καθένα διαμόρφωσε ένα συγκεκριμένο κομμάτι του OmniRoute. Αυτό είναι το ευχαριστώ μας σε όλους τους. 🙏
> ⭐ Οι αριθμοί αστεριών επαληθεύτηκαν από το REST API του GitHub στις 24 Αυγούστου 2026 — πηγαίνετε να δώσετε αστέρι σε αυτά τα έργα. Οι αριθμοί είναι ακριβές χρονολογημένο στιγμιότυπο και θα αλλάξουν φυσικά.
### 🧬 系譜 & πύλη
Η πύλη AI της οποίας το δημόσιο σύνολο δεδομένων τιμολόγησης τροφοδοτεί τον συγχρονισμό παρακολούθησης κόστους και της οποίας το μοντέλο κανονικοποίησης παρόχων ενημέρωσε τη δρομολόγησή μας.
Πηγαίος κώδικας MIT προσαρμοσμένος στη vendored γέφυρα ChatGPT Web → Codex Responses, συμπεριλαμβανομένων προσαρμογέων browser-session, response-framing, χρήσης και web-search.
Οι αντιστοιχίσεις μοντέλων Grok, ο γεννήτορας Statsig τύπου fake-TypeError, οι προεπιλογές αιτήματος και συσκευής, και ο επεξεργαστής απόκρισης NDJSON προσαρμόστηκαν ουσιαστικά στον εκτελεστή Grok Web του OmniRoute.
Η κύρια μεταβατική πηγή κώδικα πίσω από το grok2api-merged· οι υλοποιήσεις μοντέλου, κεφαλίδας, payload, Statsig και επεξεργαστή διατηρούνται στη γενεαλογία Grok Web.
Η υποκείμενη πηγή MIT για τις προεπιλογές payload και συσκευής Grok, τον γεννήτορα Statsig και τον επεξεργαστή result.response που μεταφέρθηκε μέσω TQZHR και grok2api-merged.
Μια μεταβατική πηγή που αναφέρεται από το grok2api-merged για το επίπεδο proxy-pool· το OmniRoute διατηρεί αυτή την ειδοποίηση γενεαλογίας αλλά δεν ισχυρίζεται μεταφορά proxy-pool στον περιορισμένο εκτελεστή Grok Web.
Η αρχική υλοποίηση Grok Web συμβουλεύτηκε τον σχεδιασμό HTTP/browser upstream· η άμεση HTTP διαδρομή της προέρχεται από το GrokProxy, οπότε δεν διεκδικείται ανεξάρτητη μεταφορά κώδικα.
Το viral έργο "γιατί να χρησιμοποιείς πολλά διακριτικά όταν λίγα κάνουν τη δουλειά" — η φιλοσοφία caveman-speak τροφοδοτεί την τυπική λειτουργία συμπίεσης και 30+ κανόνες πλήρωσης/συμπύκνωσης.
Συμπίεση εξόδου εντολών υψηλής απόδοσης — ενέπνευσε τη μηχανή RTK, το DSL φίλτρου JSON, την ανάκτηση ακατέργαστης εξόδου και τη στοιβαγμένη αγωγό RTK → Caveman.
Συμπίεση διακριτικών PT-BR — τροφοδοτεί το γλωσσικό πακέτο pt-BR: μείωση πλεονασμού και αφαίρεση γεμιστικών λέξεων βελτιστοποιημένη για τη βραζιλιάνικη-πορτογαλική γραμματική.
Η viral δεξιότητα YAGNI-coding του "τεμπέλη senior dev" — ενέπνευσε το Στυλ Εξόδου less-code: καθοδήγηση ελάχιστης-λειτουργικής-αλλαγής που μειώνει τον _παραγόμενο_ κώδικα (ο αδελφός στον άξονα εξόδου της πεζολογίας χωρίς περιττές λέξεις του Caveman).
Το στυλ απόκρισης που δίνει προτεραιότητα στη δράση και είναι φιλικό προς το ADHD προσαρμόστηκε στο συνοπτικό στυλ εξόδου του OmniRoute σε πέντε γλώσσες.
Συμπίεση εξόδου με επίγνωση περιεχομένου, ανά τύπο αρχείου, με διακοπή λόγω αποτυχίας — επικύρωσε την αποστολή ανά τύπο και την παράλειψη ελάχιστου κέρδους.
Στηλοθετικό JSON σε Rust + ανάκτηση με αναφορά περιεχομένου + διαγραμμάτωση μεταξύ μηνυμάτων — επικύρωσε τον σχεδιασμό μηχανής headroom/ccr/session-dedup και την αναλλοίωτη "η συμπιεσμένη μορφή είναι ανεξάρτητη θέσης" σταθερής κρυφής μνήμης.
Η υποκλοπή/ανάλυση MITM κίνησης βοηθού κωδικοποίησης ↔ LLM ενημέρωσε τις πρώιμες απαιτήσεις Επιθεωρητή Κίνησης. Τέσσερις προηγουμένως παράγωγες ενότητες — συγχώνευση SSE, κανονικοποίηση συνομιλίας, απόκρυψη μυστικών και εξυγίανση κεφαλίδων — έχουν αντικατασταθεί από ανεξάρτητες υλοποιήσεις καθαρού δωματίου βάσει δημόσιων προτύπων πρωτοκόλλου. Οι δύο επιφάνειες host-passthrough (passthrough.ts και _internal/bypass.cjs) παραμένουν εσωτερικές υλοποιήσεις OmniRoute που ταξινομούνται ανεξάρτητα· δεν επανεγράφηκαν ως μέρος αυτής της αντικατάστασης.
Διαφανής δρομολόγηση proxy ανά διεργασία — ενέπνευσε την ασφαλή ως προς καταρρεύσεις διακοπή MITM, τα χρονικά όρια αδράνειας socket, την απόδοση διεργασίας /proc και τη σύλληψη TPROXY.
Μια επιμελημένη λίστα βιβλιοθηκών ασφαλών εξ ορισμού που καθοδηγεί τις επιλογές ασφαλείας μας (Helmet.js, DOMPurify, ssrf-req-filter, safe-regex, Google Tink).
Ενέπνευσε την αποπλεονασμάτωση αιτημάτων, εναλλακτική μηδενικού κόστους έκτακτης ανάγκης, τις αρθρωτές στρατηγικές Auto-Combo και την πολύγλωσση ταξινόμηση προθέσεων.
Η αντιστοίχιση μοντέλων με επίγνωση λογαριασμού, η επικύρωση διαδρομής εκτελέσιμου και η συμπεριφορά ετικέτας πλάνου ενημέρωσαν το runtime Antigravity του OmniRoute.
Εντόπισε την επιφάνεια ποσόστωσης Grok Build· το OmniRoute επαλήθευσε και διόρθωσε στη συνέχεια ανεξάρτητα τη ζωντανή μορφή wire.
## 📄 Άδεια Χρήσης
Άδεια MIT - δείτε το [LICENSE](LICENSE) για λεπτομέρειες.
---
**[⬆ Πίσω στην κορυφή](#-omniroute)** · Φτιαγμένο με ❤️ για την κοινότητα ανοιχτού κώδικα AI.
OmniRoute v3.8.51 · Node ≥22.22.2 · MIT License · omniroute.online