Compare commits
44 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 70a4d38d04 | |||
| dbe17b4b16 | |||
| ee4df2806f | |||
| afc0bc9323 | |||
| e071393eb5 | |||
| 6f9fec658f | |||
| 9227964cb6 | |||
| cf6056cede | |||
| 4397612349 | |||
| cf3719a663 | |||
| 77bf35d728 | |||
| e7addec0a1 | |||
| 243d61d95f | |||
| 028874fd05 | |||
| 6d366fe80f | |||
| 0924f767e9 | |||
| 173b5a1cd1 | |||
| 49e1d51be9 | |||
| 23e47a74ee | |||
| fce7f6ce47 | |||
| f3b47a16dd | |||
| aa7b754693 | |||
| 397b13e2d8 | |||
| b2c203e8c1 | |||
| 6afb314d26 | |||
| 28123355b4 | |||
| bcb87f5d55 | |||
| 67b9a3bc0e | |||
| a315ab29bc | |||
| 5437d691b5 | |||
| f99c90dc85 | |||
| d838388443 | |||
| e2eb4ef29d | |||
| ff73de5716 | |||
| 7ab75dd15a | |||
| df38b3c62a | |||
| fec585e44b | |||
| ae1a0f411b | |||
| e90c9c171a | |||
| d3a24446b8 | |||
| aa93276e6e | |||
| 4083447c3f | |||
| 61d7566ca1 | |||
| a5393a3ec4 |
@@ -11,6 +11,8 @@ Bump version, finalize CHANGELOG, commit, open a **PR to main** and wait for use
|
||||
> Always use: `npm version patch --no-git-tag-version`
|
||||
> The threshold rule: when `y` reaches 10, bump to `2.(x+1).0` — e.g. `2.1.10` → `2.2.0`.
|
||||
|
||||
> **🔴 SINGLE BRANCH RULE**: The `release/vX.Y.Z` branch is the **ONLY** development branch for the entire release cycle. ALL work — bug fixes, feature implementations, PR integrations, issue resolutions — MUST be committed directly on this branch. Never create separate `fix/`, `feat/`, or topic branches. When running `/resolve-issues`, `/implement-features`, or `/review-prs`, always work on the current release branch.
|
||||
|
||||
---
|
||||
|
||||
## ⚠️ Two-Phase Flow
|
||||
@@ -176,24 +178,17 @@ Inform the user:
|
||||
|
||||
> Run these steps only AFTER the user has merged the PR.
|
||||
|
||||
### 11. Pull main and create tag
|
||||
### 11. Create Git Tag and GitHub Release (MANDATORY)
|
||||
|
||||
// turbo
|
||||
|
||||
```bash
|
||||
git checkout main
|
||||
git pull origin main
|
||||
git tag -a v2.x.y -m "Release v2.x.y"
|
||||
```
|
||||
|
||||
### 12. Push tag to GitHub
|
||||
|
||||
```bash
|
||||
VERSION=$(node -p "require('./package.json').version")
|
||||
git tag -a "v$VERSION" -m "Release v$VERSION"
|
||||
git push origin --tags
|
||||
```
|
||||
|
||||
### 13. Create GitHub release
|
||||
|
||||
```bash
|
||||
gh release create v2.x.y --title "v2.x.y — summary" --notes "..."
|
||||
gh release create "v$VERSION" --title "v$VERSION" --notes "OmniRoute v$VERSION Release" --target main
|
||||
```
|
||||
|
||||
### 14. 🐳 Trigger Docker Hub build (MANDATORY — keep npm and Docker in sync)
|
||||
|
||||
@@ -6,7 +6,9 @@ description: Analyze open feature request issues, implement viable ones on dedic
|
||||
|
||||
## Overview
|
||||
|
||||
Fetches open feature request issues, analyzes each against the current codebase, implements viable ones on dedicated branches, and responds to authors with results. Does NOT merge to main — leaves branches for author validation.
|
||||
Fetches open feature request issues, analyzes each against the current codebase, implements viable ones **on the current release branch** (`release/vX.Y.Z`), and responds to authors with results. Does NOT merge to main — the release branch is later merged via PR.
|
||||
|
||||
> **BRANCH RULE**: All work MUST happen on the current `release/vX.Y.Z` branch. Never create separate `feat/` branches. If no release branch exists yet, create one first using `/generate-release` Phase 1 steps 1–5.
|
||||
|
||||
## Steps
|
||||
|
||||
@@ -16,15 +18,48 @@ Fetches open feature request issues, analyzes each against the current codebase,
|
||||
|
||||
- Run: `git -C <project_root> remote get-url origin` to extract owner/repo
|
||||
|
||||
### 2. Fetch Open Feature Request Issues
|
||||
### 2. Ensure Release Branch Exists
|
||||
|
||||
// turbo
|
||||
|
||||
- Run: `gh issue list --repo <owner>/<repo> --state open --limit 50 --json number,title,labels,body,comments,createdAt,author`
|
||||
- Filter for issues that are feature requests (label `enhancement`/`feature`, or body describes new functionality, or previously classified as feature request)
|
||||
- Sort by oldest first
|
||||
Before doing any work, ensure you are on the current release branch:
|
||||
|
||||
### 3. Analyze Each Feature Request
|
||||
```bash
|
||||
# Check current branch
|
||||
git branch --show-current
|
||||
|
||||
# If on main, determine next version and create the release branch
|
||||
VERSION=$(node -p "require('./package.json').version")
|
||||
NEXT=$(node -p "const [a,b,c]=('$VERSION').split('.').map(Number); c>=9?a+'.'+(b+1)+'.0':a+'.'+b+'.'+(c+1)")
|
||||
git checkout -b release/v$NEXT
|
||||
npm version patch --no-git-tag-version
|
||||
npm install
|
||||
```
|
||||
|
||||
If already on a `release/vX.Y.Z` branch, continue working there.
|
||||
|
||||
### 3. Fetch Open Feature Request Issues
|
||||
|
||||
// turbo-all
|
||||
|
||||
**⚠️ CRITICAL**: The JSON output of `gh issue list` can be truncated by the tool, silently hiding issues and their comments. You MUST use the two-step approach below to guarantee **all** feature requests and their full conversations are fetched.
|
||||
|
||||
**Step 3a — Get Issue numbers only** (small output, never truncated):
|
||||
|
||||
- Run: `gh issue list --repo <owner>/<repo> --state open --labels "enhancement" --limit 500 --json number --jq '.[].number'`
|
||||
- (Also run the same for `--labels "feature"` if they are separated, or filter all open issues if labels are not strictly used).
|
||||
- This outputs one issue number per line. Count them and confirm total.
|
||||
|
||||
**Step 3b — Fetch full metadata & conversations for each Issue** (one call per issue):
|
||||
|
||||
- For each issue number from step 3a, run:
|
||||
`gh issue view <NUMBER> --repo <owner>/<repo> --json number,title,labels,body,comments,createdAt,author`
|
||||
- Read not just the body, but **ALL comments (`comments` array)** completely to understand the full context, agreements, and restrictions discussed by the community.
|
||||
- You may batch these into parallel calls (up to 4 at a time).
|
||||
- Filter for issues that are feature requests (if not already filtered by label).
|
||||
- Sort by oldest first.
|
||||
|
||||
### 4. Analyze Each Feature Request
|
||||
|
||||
For each feature request issue, perform a **two-level analysis**:
|
||||
|
||||
@@ -46,21 +81,16 @@ Ask yourself:
|
||||
|
||||
#### Level 2 — Implementation (only for VIABLE features)
|
||||
|
||||
> **⚠️ ALL implementation happens on the release branch.**
|
||||
|
||||
1. **Research** — Read all related source files to understand the current architecture
|
||||
2. **Design** — Plan the implementation, filling gaps in the original request
|
||||
3. **Create branch** — Name format: `feat/issue-<NUMBER>-<short-slug>`
|
||||
```bash
|
||||
git checkout main
|
||||
git pull origin main
|
||||
git checkout -b feat/issue-<NUMBER>-<short-slug>
|
||||
```
|
||||
4. **Implement** — Build the complete solution following project patterns
|
||||
5. **Build** — Run `npm run build` to verify compilation
|
||||
6. **Commit** — Commit with: `feat: <description> (#<NUMBER>)`
|
||||
7. **Push** — Push the branch: `git push -u origin feat/issue-<NUMBER>-<short-slug>`
|
||||
8. **Return to main** — `git checkout main`
|
||||
3. **Implement** — Build the complete solution following project patterns, **on the release branch**
|
||||
4. **Build** — Run `npm run build` to verify compilation
|
||||
5. **Commit** — Commit with: `feat: <description> (#<NUMBER>)`
|
||||
6. **Continue** — Move to the next feature (do not switch branches)
|
||||
|
||||
### 4. Respond to Authors
|
||||
### 5. Respond to Authors
|
||||
|
||||
#### For VIABLE (implemented) features:
|
||||
|
||||
@@ -70,9 +100,9 @@ Post a comment on the issue:
|
||||
````markdown
|
||||
## ✅ Feature Implemented!
|
||||
|
||||
Hi @<author>! We've analyzed your request and implemented it on a dedicated branch.
|
||||
Hi @<author>! We've analyzed your request and implemented it.
|
||||
|
||||
**Branch:** `feat/issue-<NUMBER>-<short-slug>`
|
||||
**Branch:** `release/vX.Y.Z` (upcoming release)
|
||||
|
||||
### What was implemented:
|
||||
|
||||
@@ -82,31 +112,24 @@ Hi @<author>! We've analyzed your request and implemented it on a dedicated bran
|
||||
|
||||
```bash
|
||||
git fetch origin
|
||||
git checkout feat/issue-<NUMBER>-<short-slug>
|
||||
git checkout release/vX.Y.Z
|
||||
npm install && npm run dev
|
||||
```
|
||||
````
|
||||
|
||||
### Next steps:
|
||||
|
||||
1. **Test it** — Please verify it works as you expected
|
||||
2. **Want to improve it?** — You're welcome to contribute! Just:
|
||||
```bash
|
||||
git checkout feat/issue-<NUMBER>-<short-slug>
|
||||
# Make your improvements
|
||||
git add -A && git commit -m "improve: <your changes>"
|
||||
git push origin feat/issue-<NUMBER>-<short-slug>
|
||||
```
|
||||
Then open a Pull Request from your branch to `main` 🎉
|
||||
2. **Want to improve it?** — Feel free to open a follow-up PR targeting `release/vX.Y.Z`
|
||||
3. **Not quite right?** — Let us know in this issue what needs to change
|
||||
|
||||
Looking forward to your feedback! 🚀
|
||||
|
||||
```
|
||||
This will be included in the next release. Looking forward to your feedback! 🚀
|
||||
````
|
||||
|
||||
#### For NEEDS MORE INFO:
|
||||
|
||||
// turbo
|
||||
Post a comment asking for specific missing details needed to implement, e.g.:
|
||||
|
||||
- "Could you describe the exact behavior when X happens?"
|
||||
- "Which API endpoints should be affected?"
|
||||
- "Should this apply to all providers or only specific ones?"
|
||||
@@ -114,18 +137,28 @@ Post a comment asking for specific missing details needed to implement, e.g.:
|
||||
Add the context of WHY you need each piece of information.
|
||||
|
||||
#### For NOT VIABLE:
|
||||
|
||||
// turbo
|
||||
Post a polite comment explaining why the feature doesn't fit at this time:
|
||||
|
||||
- If the idea is decent but timing is wrong: "This is an interesting idea, but it doesn't align with our current priorities. Feel free to open a new issue with more details if you'd like us to reconsider."
|
||||
- If fundamentally flawed: Explain the technical or architectural reasons why it won't work, suggest alternatives if possible.
|
||||
- Close the issue after posting the comment.
|
||||
|
||||
### 5. Summary Report
|
||||
### 6. Finalize & Push
|
||||
|
||||
After implementing all viable features:
|
||||
|
||||
1. **Update CHANGELOG.md** on the release branch with all new feature entries
|
||||
2. Push the release branch: `git push origin release/vX.Y.Z`
|
||||
3. Run `/generate-release` workflow Phase 1 steps 7–10 (tests → commit → push → open PR to main → wait for user)
|
||||
|
||||
### 7. Summary Report
|
||||
|
||||
Present a summary report to the user via `notify_user`:
|
||||
|
||||
| Issue | Title | Verdict | Branch / Action |
|
||||
|---|---|---|---|
|
||||
| #N | Title | ✅ Implemented | `feat/issue-N-slug` |
|
||||
| #N | Title | ❓ Needs Info | Comment posted |
|
||||
| #N | Title | ❌ Not Viable | Closed with explanation |
|
||||
```
|
||||
| Issue | Title | Verdict | Action |
|
||||
| ----- | ----- | -------------- | ----------------------- |
|
||||
| #N | Title | ✅ Implemented | Committed on release/vX |
|
||||
| #N | Title | ❓ Needs Info | Comment posted |
|
||||
| #N | Title | ❌ Not Viable | Closed with explanation |
|
||||
|
||||
@@ -6,7 +6,9 @@ description: Fetch all open GitHub issues, analyze bugs, resolve what's possible
|
||||
|
||||
## Overview
|
||||
|
||||
This workflow fetches all open issues from the project's GitHub repository, classifies them, analyzes bugs, resolves what can be fixed, and triages issues with insufficient information. **It does NOT merge or release automatically** — it creates a PR and waits for user validation before merging.
|
||||
This workflow fetches all open issues from the project's GitHub repository, classifies them, analyzes bugs, resolves what can be fixed, and triages issues with insufficient information. **All fixes are committed on the current release branch** (`release/vX.Y.Z`). It does NOT merge or release automatically — the release branch is later merged via PR to main.
|
||||
|
||||
> **BRANCH RULE**: All work MUST happen on the current `release/vX.Y.Z` branch. Never create separate `fix/` branches. If no release branch exists yet, create one first using `/generate-release` Phase 1 steps 1–5.
|
||||
|
||||
## Steps
|
||||
|
||||
@@ -17,25 +19,45 @@ This workflow fetches all open issues from the project's GitHub repository, clas
|
||||
- Run: `git -C <project_root> remote get-url origin` to extract the owner/repo
|
||||
- Parse the owner and repo name from the URL
|
||||
|
||||
### 2. Fetch All Open Issues
|
||||
### 2. Ensure Release Branch Exists
|
||||
|
||||
// turbo
|
||||
|
||||
Before doing any work, ensure you are on the current release branch:
|
||||
|
||||
```bash
|
||||
# Check current branch
|
||||
git branch --show-current
|
||||
|
||||
# If on main, determine next version and create the release branch
|
||||
VERSION=$(node -p "require('./package.json').version")
|
||||
NEXT=$(node -p "const [a,b,c]=('$VERSION').split('.').map(Number); c>=9?a+'.'+(b+1)+'.0':a+'.'+b+'.'+(c+1)")
|
||||
git checkout -b release/v$NEXT
|
||||
npm version patch --no-git-tag-version
|
||||
npm install
|
||||
```
|
||||
|
||||
If already on a `release/vX.Y.Z` branch, continue working there.
|
||||
|
||||
### 3. Fetch All Open Issues
|
||||
|
||||
// turbo-all
|
||||
|
||||
**⚠️ CRITICAL**: The JSON output of `gh issue list` can be truncated by the tool, silently hiding issues. You MUST use the two-step approach below to guarantee **all** issues are fetched.
|
||||
|
||||
**Step 2a — Get Issue numbers only** (small output, never truncated):
|
||||
**Step 3a — Get Issue numbers only** (small output, never truncated):
|
||||
|
||||
- Run: `gh issue list --repo <owner>/<repo> --state open --limit 500 --json number --jq '.[].number'`
|
||||
- This outputs one issue number per line. Count them and confirm total.
|
||||
|
||||
**Step 2b — Fetch full metadata for each Issue** (one call per issue):
|
||||
**Step 3b — Fetch full metadata for each Issue** (one call per issue):
|
||||
|
||||
- For each issue number from step 2a, run:
|
||||
- For each issue number from step 3a, run:
|
||||
`gh issue view <NUMBER> --repo <owner>/<repo> --json number,title,labels,body,comments,createdAt,author`
|
||||
- You may batch these into parallel calls (up to 4 at a time).
|
||||
- Sort by oldest first (FIFO).
|
||||
|
||||
### 3. Classify Each Issue
|
||||
### 4. Classify Each Issue
|
||||
|
||||
For each issue, determine its type:
|
||||
|
||||
@@ -46,9 +68,9 @@ For each issue, determine its type:
|
||||
|
||||
Focus ONLY on **Bugs** for resolution. Feature requests and questions should be skipped with a note in the final report.
|
||||
|
||||
### 4. Analyze Each Bug — For each bug issue:
|
||||
### 5. Analyze Each Bug — For each bug issue:
|
||||
|
||||
#### 4a. Check Information Sufficiency
|
||||
#### 5a. Check Information Sufficiency
|
||||
|
||||
Verify the issue contains enough information to reproduce and fix:
|
||||
|
||||
@@ -57,7 +79,7 @@ Verify the issue contains enough information to reproduce and fix:
|
||||
- [ ] Error messages or logs
|
||||
- [ ] Expected vs actual behavior
|
||||
|
||||
#### 4b. If Information Is INSUFFICIENT
|
||||
#### 5b. If Information Is INSUFFICIENT
|
||||
|
||||
Call the `/issue-triage` workflow (located at `~/.gemini/antigravity/global_workflows/issue-triage.md`):
|
||||
// turbo
|
||||
@@ -66,18 +88,19 @@ Call the `/issue-triage` workflow (located at `~/.gemini/antigravity/global_work
|
||||
- Add `needs-info` label using `gh issue edit`
|
||||
- Mark this issue as **DEFERRED** and move to the next one
|
||||
|
||||
#### 4c. If Information Is SUFFICIENT
|
||||
#### 5c. If Information Is SUFFICIENT
|
||||
|
||||
Proceed with resolution:
|
||||
Proceed with resolution **on the release branch**:
|
||||
|
||||
1. **Create a fix branch** — `git checkout -b fix/issue-<NUMBER>-<short-description>`
|
||||
2. **Research** — Search the codebase for files related to the issue
|
||||
3. **Root Cause** — Identify the root cause by reading the relevant source files
|
||||
4. **Implement Fix** — Apply the fix following existing code patterns and conventions
|
||||
5. **Test** — Build the project and run tests to verify the fix
|
||||
6. **Commit** — Commit with message format: `fix: <description> (#<issue_number>)`
|
||||
1. **Research** — Search the codebase for files related to the issue
|
||||
2. **Root Cause** — Identify the root cause by reading the relevant source files
|
||||
3. **Implement Fix** — Apply the fix following existing code patterns and conventions
|
||||
4. **Test** — Build the project and run tests to verify the fix
|
||||
5. **Commit** — Commit with message format: `fix: <description> (#<issue_number>)`
|
||||
|
||||
### 5. Generate Report & Wait for Validation
|
||||
> **⚠️ Do NOT create a separate branch.** All commits go directly on the release branch.
|
||||
|
||||
### 6. Generate Report & Wait for Validation
|
||||
|
||||
Present a summary report to the user via `notify_user` with `BlockedOnUser: true`:
|
||||
|
||||
@@ -90,41 +113,37 @@ Present a summary report to the user via `notify_user` with `BlockedOnUser: true
|
||||
> **⚠️ IMPORTANT**: Do NOT commit, close issues, or generate releases at this step.
|
||||
> Wait for the user to review the changes and respond with **OK** before proceeding.
|
||||
|
||||
- If the user says **OK** or approves → Proceed to step 6
|
||||
- If the user says **OK** or approves → Proceed to step 7
|
||||
- If the user requests changes → Apply the requested adjustments first, then present the report again
|
||||
- If the user rejects → Revert the changes and stop
|
||||
|
||||
### 6. Commit & Push Fix Branch (only after user approval)
|
||||
### 7. Commit & Push (only after user approval)
|
||||
|
||||
After the user validates:
|
||||
|
||||
- Commit each fix individually with message format: `fix: <description> (#<issue_number>)`
|
||||
- Push the fix branch: `git push origin fix/issue-<NUMBER>-<short-description>`
|
||||
- Create a PR: `gh pr create --title "fix: <description> (#<issue_number>)" --body "<details>" --base main`
|
||||
- Commit each fix individually on the release branch with message format: `fix: <description> (#<issue_number>)`
|
||||
- Push the release branch: `git push origin release/vX.Y.Z`
|
||||
- **Update CHANGELOG.md** with all new bug fix entries
|
||||
|
||||
### 7. 🛑 WAIT — Notify User & Await PR Verification
|
||||
### 8. 🛑 WAIT — Notify User & Await Verification
|
||||
|
||||
**This is a mandatory stop point.** Use `notify_user` with `BlockedOnUser: true`:
|
||||
|
||||
- Inform the user that the PR was created and is **awaiting their verification**
|
||||
- Include the PR number, URL, and a summary of what was changed
|
||||
- Inform the user that fixes have been **committed and pushed to the release branch**
|
||||
- Include summary of fixes, test status, and files changed
|
||||
- **DO NOT merge, close issues, generate releases, or deploy until the user confirms**
|
||||
|
||||
Wait for the user to respond:
|
||||
|
||||
- **User confirms** → Proceed to step 8
|
||||
- **User confirms** → Proceed to step 9
|
||||
- **User requests changes** → Apply changes, push to the same branch, notify again
|
||||
- **User rejects** → Close the PR and stop
|
||||
- **User rejects** → Revert and stop
|
||||
|
||||
### 8. Merge, Close Issues & Release (only after user confirms PR)
|
||||
### 9. Close Issues & Finalize (only after user confirms)
|
||||
|
||||
After the user confirms the PR:
|
||||
After the user confirms:
|
||||
|
||||
1. **Merge** the PR: `gh pr merge <NUMBER> --merge --repo <owner>/<repo>` or via local merge
|
||||
2. **Close** resolved issues with a comment: `gh issue close <NUMBER> --repo <owner>/<repo> --comment "Fixed in <commit_hash>. The fix will be included in the next release."`
|
||||
3. **Switch to main**: `git checkout main && git pull`
|
||||
4. Run the `/update-docs` workflow (at `~/.gemini/antigravity/global_workflows/update-docs.md`) to update CHANGELOG and README
|
||||
5. Run the `/generate-release` workflow (at `.agents/workflows/generate-release.md`) to bump version, tag, and publish
|
||||
6. Deploy to local VPS: `ssh root@192.168.0.15 "npm install -g omniroute@<VERSION> && pm2 restart omniroute"`
|
||||
1. **Close** resolved issues with a comment: `gh issue close <NUMBER> --repo <owner>/<repo> --comment "Fixed in release/vX.Y.Z. The fix will be included in the next release."`
|
||||
2. Run `/generate-release` workflow Phase 1 steps 7–10 (tests → commit → push → open PR to main → wait for user)
|
||||
|
||||
If NO fixes were committed, skip this step and just present the report.
|
||||
|
||||
@@ -6,7 +6,9 @@ description: Analyze open Pull Requests from the project's GitHub repository, ge
|
||||
|
||||
## Overview
|
||||
|
||||
This workflow fetches all open PRs from the project's GitHub repository, performs a critical analysis of each one, generates a detailed report, and waits for user approval before proceeding with implementation. **All improvements are committed on top of the PR branch** and the user must verify before merge.
|
||||
This workflow fetches all open PRs from the project's GitHub repository, performs a critical analysis of each one, generates a detailed report, and waits for user approval before proceeding with implementation. **All improvements are committed on the current release branch** (`release/vX.Y.Z`).
|
||||
|
||||
> **BRANCH RULE**: All work MUST happen on the current `release/vX.Y.Z` branch. Never create separate feature or fix branches. If no release branch exists yet, create one first using `/generate-release` Phase 1 steps 1–5.
|
||||
|
||||
## Steps
|
||||
|
||||
@@ -16,24 +18,45 @@ This workflow fetches all open PRs from the project's GitHub repository, perform
|
||||
// turbo
|
||||
- Run: `git -C <project_root> remote get-url origin` to extract the owner/repo
|
||||
|
||||
### 2. Fetch Open Pull Requests
|
||||
### 2. Ensure Release Branch Exists
|
||||
|
||||
// turbo
|
||||
|
||||
Before doing any work, ensure you are on the current release branch:
|
||||
|
||||
```bash
|
||||
# Check current branch
|
||||
git branch --show-current
|
||||
|
||||
# If on main, determine next version and create the release branch
|
||||
VERSION=$(node -p "require('./package.json').version")
|
||||
# Bump patch: e.g. 3.3.11 → 3.3.12
|
||||
NEXT=$(node -p "const [a,b,c]=('$VERSION').split('.').map(Number); c>=9?a+'.'+(b+1)+'.0':a+'.'+b+'.'+(c+1)")
|
||||
git checkout -b release/v$NEXT
|
||||
npm version patch --no-git-tag-version
|
||||
npm install
|
||||
```
|
||||
|
||||
If already on a `release/vX.Y.Z` branch, continue working there.
|
||||
|
||||
### 3. Fetch Open Pull Requests
|
||||
|
||||
// turbo-all
|
||||
|
||||
**⚠️ CRITICAL**: The JSON output of `gh pr list` can be truncated by the tool, silently hiding PRs. You MUST use the two-step approach below to guarantee **all** PRs are fetched.
|
||||
|
||||
**Step 2a — Get PR numbers only** (small output, never truncated):
|
||||
**Step 3a — Get PR numbers only** (small output, never truncated):
|
||||
|
||||
- Run: `gh pr list --repo <owner>/<repo> --state open --limit 500 --json number --jq '.[].number'`
|
||||
- This outputs one PR number per line. Count them and confirm total.
|
||||
|
||||
**Step 2b — Fetch full metadata for each PR** (one call per PR):
|
||||
**Step 3b — Fetch full metadata for each PR** (one call per PR):
|
||||
|
||||
- For each PR number from step 2a, run:
|
||||
- For each PR number from step 3a, run:
|
||||
`gh pr view <NUMBER> --repo <owner>/<repo> --json number,title,author,headRefName,body,createdAt,additions,deletions,files`
|
||||
- You may batch these into parallel calls (up to 4 at a time).
|
||||
|
||||
**Step 2c — Fetch diffs for each PR** (one call per PR, saved to /tmp):
|
||||
**Step 3c — Fetch diffs for each PR** (one call per PR, saved to /tmp):
|
||||
|
||||
- For each PR number, run:
|
||||
`gh pr diff <NUMBER> --repo <owner>/<repo> > /tmp/pr<NUMBER>.diff`
|
||||
@@ -45,44 +68,44 @@ This workflow fetches all open PRs from the project's GitHub repository, perform
|
||||
- Files changed (diff)
|
||||
- Existing review comments (from bots or humans)
|
||||
|
||||
**Verification**: Confirm the count of PRs analyzed matches the count from step 2a before proceeding.
|
||||
**Verification**: Confirm the count of PRs analyzed matches the count from step 3a before proceeding.
|
||||
|
||||
### 3. Analyze Each PR — For each open PR, perform the following analysis:
|
||||
### 4. Analyze Each PR — For each open PR, perform the following analysis:
|
||||
|
||||
#### 3a. Feature Assessment
|
||||
#### 4a. Feature Assessment
|
||||
|
||||
- **Does it make sense?** Evaluate if the feature fills a real gap or solves a valid problem
|
||||
- **Alignment** — Check if it aligns with the project's architecture and roadmap
|
||||
- **Complexity** — Assess if the scope is reasonable or if it should be split
|
||||
|
||||
#### 3b. Code Quality Review
|
||||
#### 4b. Code Quality Review
|
||||
|
||||
- Check for code duplication
|
||||
- Evaluate error handling patterns (consistent with existing codebase?)
|
||||
- Check naming conventions and code style
|
||||
- Verify TypeScript types (any `any` usage, missing types?)
|
||||
|
||||
#### 3c. Security Review
|
||||
#### 4c. Security Review
|
||||
|
||||
- Check for missing authentication/authorization on new endpoints
|
||||
- Check for injection vulnerabilities (URL params, SQL, XSS)
|
||||
- Verify input validation on all user-controlled data
|
||||
- Check for hardcoded secrets or credentials
|
||||
|
||||
#### 3d. Architecture Review
|
||||
#### 4d. Architecture Review
|
||||
|
||||
- Does the change follow existing patterns?
|
||||
- Are there any breaking changes to public APIs?
|
||||
- Is the database schema affected? Migration needed?
|
||||
- Impact on performance (N+1 queries, missing indexes?)
|
||||
|
||||
#### 3e. Test Coverage
|
||||
#### 4e. Test Coverage
|
||||
|
||||
- Does the PR include tests?
|
||||
- Are edge cases covered?
|
||||
- Would existing tests break?
|
||||
|
||||
#### 3f. Cross-Layer (Global) Analysis
|
||||
#### 4f. Cross-Layer (Global) Analysis
|
||||
|
||||
Perform a **global impact assessment** to verify whether the PR changes are complete across all layers of the application:
|
||||
|
||||
@@ -97,7 +120,7 @@ Perform a **global impact assessment** to verify whether the PR changes are comp
|
||||
- **Cross-cutting concerns**: Check shared layers (types, DTOs, validation schemas, routes, middleware) for completeness
|
||||
- **Document gaps** — If missing layers are detected, list them as **IMPORTANT** issues in the report with concrete suggestions for what should be added
|
||||
|
||||
### 4. Generate Report — Create a markdown report for each PR including:
|
||||
### 5. Generate Report — Create a markdown report for each PR including:
|
||||
|
||||
- **PR Summary** — What it does, files affected, commit count
|
||||
- **Improvements/Benefits** — Numbered list with impact level (HIGH/MEDIUM/LOW)
|
||||
@@ -106,45 +129,35 @@ Perform a **global impact assessment** to verify whether the PR changes are comp
|
||||
- **Verdict** — Ready to merge? With mandatory vs optional fixes
|
||||
- **Next Steps** — What will happen if approved
|
||||
|
||||
### 5. Present to User
|
||||
### 6. Present to User
|
||||
|
||||
- Show the report via `notify_user` with `BlockedOnUser: true`
|
||||
- Wait for user decision:
|
||||
- **Approved** → Proceed to step 6
|
||||
- **Approved** → Proceed to step 7
|
||||
- **Approved with changes** → Implement the fixes and corrections before merging
|
||||
- **Rejected** → Close the PR or leave a review comment
|
||||
|
||||
### 6. Implementation (if approved)
|
||||
### 7. Implementation (if approved)
|
||||
|
||||
- Checkout the PR branch: `gh pr checkout <NUMBER>`
|
||||
- Implement any required fixes identified in the analysis
|
||||
- If the Cross-Layer Analysis (3f) identified missing frontend/backend counterparts, implement them
|
||||
- **Commit improvements on top of the PR branch** with descriptive commit messages
|
||||
> **⚠️ ALL work happens on the release branch, NOT the PR branch.**
|
||||
|
||||
- Cherry-pick or merge the PR's changes into the current release branch:
|
||||
|
||||
```bash
|
||||
# Option A: Merge PR branch into release branch
|
||||
git merge --no-ff <pr-branch> -m "Merge PR #<NUMBER>: <title>"
|
||||
|
||||
# Option B: Cherry-pick if cleaner
|
||||
git cherry-pick <commit-hash>
|
||||
```
|
||||
|
||||
- Implement any required fixes identified in the analysis **on the release branch**
|
||||
- If the Cross-Layer Analysis (4f) identified missing frontend/backend counterparts, implement them
|
||||
- Run the project's test suite to verify nothing breaks
|
||||
// turbo
|
||||
- Run: `npm test` or equivalent test command
|
||||
- Build the project to verify compilation
|
||||
// turbo
|
||||
- Run: `npm run build` or equivalent build command
|
||||
- Push the updated branch: `git push origin <branch-name>`
|
||||
|
||||
### 7. 🛑 WAIT — Notify User & Await PR Verification
|
||||
|
||||
**This is a mandatory stop point.** Use `notify_user` with `BlockedOnUser: true`:
|
||||
|
||||
- Inform the user that the PR has been **improved and pushed**, and is **awaiting their verification**
|
||||
- Include:
|
||||
- PR number and URL
|
||||
- Summary of improvements/fixes applied
|
||||
- Build/test status
|
||||
- List of files changed
|
||||
- **DO NOT merge, generate releases, or deploy until the user confirms**
|
||||
|
||||
Wait for the user to respond:
|
||||
|
||||
- **User confirms** → Proceed to step 8
|
||||
- **User requests more changes** → Apply changes, push to the same branch, notify again
|
||||
- **User rejects** → Leave a review comment and stop
|
||||
- Commit improvements with descriptive messages
|
||||
- Push the release branch: `git push origin release/vX.Y.Z`
|
||||
|
||||
### 8. Thank the Contributor
|
||||
|
||||
@@ -152,16 +165,21 @@ Wait for the user to respond:
|
||||
- The message should:
|
||||
- Thank the author by name/username for their contribution
|
||||
- Briefly mention what the PR accomplishes and any improvements applied
|
||||
- Note it will be included in the upcoming release
|
||||
- Be friendly, professional, and encouraging
|
||||
- Example: _"Thanks @author for this great contribution! 🎉 The [feature/fix] is now merged and will be part of the next release. We appreciate your effort!"_
|
||||
- Example: _"Thanks @author for this great contribution! 🎉 The [feature/fix] has been integrated into the release/vX.Y.Z branch and will be part of the next release. We appreciate your effort!"_
|
||||
|
||||
### 9. Merge & Release (only after user confirms PR)
|
||||
### 9. Close the Original PR
|
||||
|
||||
After the user confirms the PR:
|
||||
- Close the original PR with a comment explaining it was integrated into the release branch:
|
||||
```bash
|
||||
gh pr close <NUMBER> --repo <owner>/<repo> --comment "Integrated into release/vX.Y.Z. Will be released as part of v3.X.Y. Thank you!"
|
||||
```
|
||||
|
||||
1. **Merge** the PR into main (local merge with `--no-ff` or via `gh pr merge`)
|
||||
2. **Push** to main: `git push origin main`
|
||||
3. **Clean up** the feature branch: `git branch -d <branch-name>`
|
||||
4. **Update CHANGELOG.md** with the new feature/fix
|
||||
5. Run the `/generate-release` workflow (at `.agents/workflows/generate-release.md`) to bump version, tag, and publish
|
||||
6. Deploy to local VPS: `ssh root@192.168.0.15 "npm install -g omniroute@<VERSION> && pm2 restart omniroute"`
|
||||
### 10. Continue or Finalize
|
||||
|
||||
After processing all approved PRs:
|
||||
|
||||
- If more PRs remain, go back to step 7
|
||||
- When all PRs are processed, **update CHANGELOG.md** on the release branch with all new entries
|
||||
- Run `/generate-release` workflow Phase 1 steps 7–10 (tests → commit → push → open PR to main → wait for user)
|
||||
|
||||
+4
-3
@@ -21,6 +21,7 @@ STORAGE_ENCRYPTION_KEY_VERSION=v1
|
||||
LOG_RETENTION_DAYS=90
|
||||
SQLITE_MAX_SIZE_MB=2048
|
||||
SQLITE_CLEAN_LEGACY_FILES=true
|
||||
DISABLE_SQLITE_AUTO_BACKUP=false
|
||||
|
||||
# Recommended runtime variables
|
||||
# Canonical/base port (keeps backward compatibility)
|
||||
@@ -128,8 +129,8 @@ GEMINI_CLI_OAUTH_CLIENT_SECRET=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
|
||||
# CODEX_OAUTH_CLIENT_ID=
|
||||
# CODEX_OAUTH_CLIENT_SECRET=
|
||||
# QWEN_OAUTH_CLIENT_ID=
|
||||
# IFLOW_OAUTH_CLIENT_ID=
|
||||
IFLOW_OAUTH_CLIENT_SECRET=4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW
|
||||
# QODER_OAUTH_CLIENT_ID=
|
||||
QODER_OAUTH_CLIENT_SECRET=4Z3YjXycVsQvyGF1etiNlIBB4RsqSDtW
|
||||
|
||||
# ─────────────────────────────────────────────────────────────────────────────
|
||||
# Provider User-Agent Overrides (optional — customize per-provider UA headers)
|
||||
@@ -142,7 +143,7 @@ CODEX_USER_AGENT=codex-cli/0.92.0 (Windows 10.0.26100; x64)
|
||||
GITHUB_USER_AGENT=GitHubCopilotChat/0.26.7
|
||||
ANTIGRAVITY_USER_AGENT=antigravity/1.104.0 darwin/arm64
|
||||
KIRO_USER_AGENT=AWS-SDK-JS/3.0.0 kiro-ide/1.0.0
|
||||
IFLOW_USER_AGENT=iFlow-Cli
|
||||
QODER_USER_AGENT=Qoder-Cli
|
||||
QWEN_USER_AGENT=QwenCode/0.12.3 (linux; x64)
|
||||
CURSOR_USER_AGENT=connect-es/1.6.1
|
||||
GEMINI_CLI_USER_AGENT=google-api-nodejs-client/9.15.1
|
||||
|
||||
@@ -135,3 +135,6 @@ vscode-extension/
|
||||
|
||||
# Compiled npm-package build artifact (not source, should not be in git)
|
||||
/app
|
||||
|
||||
# IDEA
|
||||
.idea/
|
||||
+88
-7
@@ -2,6 +2,87 @@
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
> [!WARNING]
|
||||
> **BREAKING CHANGE: request logging, retention, and logging environment variables have been redesigned.**
|
||||
> On the first startup after upgrading, OmniRoute archives legacy request logs from `DATA_DIR/logs/`, legacy `DATA_DIR/call_logs/`, and `DATA_DIR/log.txt` into `DATA_DIR/log_archives/*.zip`, then removes the deprecated layout and switches to the new unified artifact format under `DATA_DIR/call_logs/`.
|
||||
|
||||
### ✨ New Features
|
||||
|
||||
- **Unified Request Log Artifacts:** Request logging now stores one SQLite index row plus one JSON artifact per request under `DATA_DIR/call_logs/`, with optional pipeline capture embedded in the same file.
|
||||
- **Language:** Improved the Chinese translation (#855)
|
||||
- **Opencode-Zen Models:** Added 4 free models to opencode-zen registry (#854)
|
||||
- **Tests:** Added unit and E2E tests for settings toggles and bug fixes (#850)
|
||||
|
||||
### 🐛 Bug Fixes
|
||||
|
||||
- **429 Quota Parsing:** Parsed long quota reset times from error bodies to honor correct backoffs and prevent rate-limited account bans (#859)
|
||||
- **Prompt Caching:** Preserved client `cache_control` headers for all Claude-protocol providers (like Minimax, GLM, and Bailian), correctly recognizing caching support (#856)
|
||||
- **Model Sync Logs:** Reduced log spam by recording `sync-models` only when the channel actually modifies the list (#853)
|
||||
- **Provider Quota & Token Parsing:** Switched Antigravity limits to use `retrieveUserQuota` natively and correctly mapped Claude token refresh payloads to URL-encoded forms (#862)
|
||||
- **Rate-Limiting Stability:** Universalized the 429 Retry-After parsing architecture to cap provider-induced cooldowns at 24 hours max (#862)
|
||||
- **Dashboard Limit Rendering:** Re-architected `/dashboard/limits` quota mapping to render immediately inside chunks, fixing a major UI freezing delay on accounts exceeding 70 active connections (#784)
|
||||
|
||||
### ⚠️ Breaking Changes
|
||||
|
||||
- **Request Log Layout:** Removed the old multi-file `DATA_DIR/logs/` request log sessions and the `DATA_DIR/log.txt` summary file. New requests are written as single JSON artifacts in `DATA_DIR/call_logs/YYYY-MM-DD/`.
|
||||
- **Logging Environment Variables:** Replaced `LOG_*`, `ENABLE_REQUEST_LOGS`, `CALL_LOGS_MAX`, `CALL_LOG_PAYLOAD_MODE`, and `PROXY_LOG_MAX_ENTRIES` with the new `APP_LOG_*` and `CALL_LOG_RETENTION_DAYS` configuration model.
|
||||
- **Pipeline Toggle Setting:** Replaced the legacy `detailed_logs_enabled` setting with `call_log_pipeline_enabled`. New pipeline details are embedded inside the request artifact instead of being stored as separate `request_detail_logs` records.
|
||||
|
||||
### 🛠️ Maintenance
|
||||
|
||||
- **Legacy Request Log Upgrade Backup:** Upgrades now archive old `data/logs/`, legacy `data/call_logs/`, and `data/log.txt` layouts into `DATA_DIR/log_archives/*.zip` before removing the deprecated structure.
|
||||
- **Streaming Usage Persistence:** Streaming requests now write a single `usage_history` row on completion instead of emitting a duplicate in-progress usage row with empty status metadata.
|
||||
|
||||
---
|
||||
|
||||
## [3.3.11] - 2026-03-31
|
||||
|
||||
### 🚀 Features
|
||||
|
||||
- **Subscription Utilization Analytics:** Added quota snapshot time-series tracking, Provider Utilization and Combo Health tabs with recharts visualizations, and corresponding API endpoints (#847)
|
||||
- **SQLite Backup Control:** New `OMNIROUTE_DISABLE_AUTO_BACKUP` env flag to disable automatic SQLite backups (#846)
|
||||
- **Model Registry Update:** Injected `gpt-5.4-mini` into the Codex provider's array of models (#756)
|
||||
- **Provider Limit Tracking:** Track and display when provider rate limits were last refreshed per account (#843)
|
||||
|
||||
### 🐛 Bug Fixes
|
||||
|
||||
- **Qwen Auth Routing:** Re-routed Qwen OAuth completions from the DashScope API to the Web Inference API (`chat.qwen.ai`), resolving authorization failures (#844, #807, #832)
|
||||
- **Qwen Auto-Retry Loop:** Added targeted 429 Quota Exceeded backoff handling inside `chatCore` protecting burst requests
|
||||
- **Codex OAuth Fallback:** Modern browser popup blocking no longer traps the user; it automatically falls back to manual URL entry (#808)
|
||||
- **Claude Token Refresh:** Anthropic's strict `application/json` boundaries are now respected during token generation instead of encoded URLs (#836)
|
||||
- **Codex Messages Schema:** Stripped purist `messages` injects from native passthrough requests to avoid structural rejections from the ChatGPT upstream (#806)
|
||||
- **CLI Detection Size Limit:** Safely bumped the Node binary scanning upper bound from 100MB to 350MB, allowing heavy standalone tools like Claude Code (229MB) and OpenCode (153MB) to be correctly detected by the VPS runtime (#809)
|
||||
- **CLI Runtime Environment:** Restored ability for CLI configurations to respect user override paths (`CLI_{PROVIDER}_BIN`) bypassing strict path-bound discovery rules
|
||||
- **Nvidia Header Conflicts:** Removed `prompt_cache_key` properties from upstream headers when calling non-Anthropic providers (#848)
|
||||
- **Codex Fast Tier Toggle:** Restored Codex service tier toggle contrast in light mode (#842)
|
||||
- **Test Infrastructure:** Updated `t28-model-catalog-updates` test that incorrectly expected the outdated DashScope endpoint for the Qwen native registry
|
||||
|
||||
---
|
||||
|
||||
## [3.3.9] - 2026-03-31
|
||||
|
||||
### 🐛 Bug Fixes
|
||||
|
||||
- **Custom Provider Rotation:** Integrated `getRotatingApiKey` internally inside DefaultExecutor, ensuring `extraApiKeys` rotation triggers correctly for custom and compatible upstream providers (#815)
|
||||
|
||||
---
|
||||
|
||||
## [3.3.8] - 2026-03-30
|
||||
|
||||
### 🚀 Features
|
||||
|
||||
- **Models API Filtering:** Endpoint `/v1/models` now dynamically filters its list based on the permissions tied to the `Authorization: Bearer <token>` when restricted access is on (#781)
|
||||
- **Qoder Integration:** Native integration for Qoder AI natively replacing the legacy iFlow platform mappings (#660)
|
||||
- **Prompt Cache Tracking:** Added tracking capabilities and frontend visualization (Stats card) for semantic and prompt caching in the Dashboard UI
|
||||
|
||||
### 🐛 Bug Fixes
|
||||
|
||||
- **Cache Dashboard Sizing:** Improved the UI layout sizes and context headers for the advanced cache pages (#835)
|
||||
- **Debug Sidebar Visibility:** Fixed an issue where the debug toggle wouldn't correctly show/hide sidebar debug details (#834)
|
||||
- **Gemini Model Prefixing:** Modified the namespace fallback to properly route via `gemini-cli/` instead of `gc/` to respect upstream specs (#831)
|
||||
- **OpenRouter Sync:** Improved compatibility synchronization to automatically ingest the available models catalog correctly from OpenRouter (#830)
|
||||
- **Streaming Payloads Mapping:** Reserialization of reasoning fields natively resolves conflict alias paths when output is streaming to edge devices
|
||||
|
||||
---
|
||||
|
||||
## [3.3.7] - 2026-03-30
|
||||
@@ -1981,7 +2062,7 @@ OmniRoute now automatically refreshes model lists for connected providers every
|
||||
|
||||
- **fix(media)**: ComfyUI and SD WebUI no longer appear in the Media page provider list when unconfigured — fetches `/api/providers` on mount and hides local providers with no connections (#390)
|
||||
- **fix(auth)**: Round-robin no longer re-selects rate-limited accounts immediately after cooldown — `backoffLevel` is now used as primary sort key in the LRU rotation (#340)
|
||||
- **fix(oauth)**: iFlow (and other providers that redirect to their own UI) no longer leave the OAuth modal stuck at "Waiting for Authorization" — popup-closed detector auto-transitions to manual URL input mode (#344)
|
||||
- **fix(oauth)**: Qoder (and other providers that redirect to their own UI) no longer leave the OAuth modal stuck at "Waiting for Authorization" — popup-closed detector auto-transitions to manual URL input mode (#344)
|
||||
- **fix(logs)**: Request log table is now readable in light mode — status badges, token counts, and combo tags use adaptive `dark:` color classes (#378)
|
||||
|
||||
### ✨ Features
|
||||
@@ -2133,7 +2214,7 @@ OmniRoute now automatically refreshes model lists for connected providers every
|
||||
### ✨ New Features
|
||||
|
||||
- **Fill-First & P2C Routing Strategies**: Added `fill-first` (drain quota before moving on) and `p2c` (Power-of-Two-Choices low-latency selection) to combo strategy picker, with full guidance panels and color-coded badges.
|
||||
- **Free Stack Preset Models**: Creating a combo with the Free Stack template now auto-fills 7 best-in-class free provider models (Gemini CLI, Kiro, iFlow×2, Qwen, NVIDIA NIM, Groq). Users just activate the providers and get a $0/month combo out-of-the-box.
|
||||
- **Free Stack Preset Models**: Creating a combo with the Free Stack template now auto-fills 7 best-in-class free provider models (Gemini CLI, Kiro, Qoder×2, Qwen, NVIDIA NIM, Groq). Users just activate the providers and get a $0/month combo out-of-the-box.
|
||||
- **Wider Combo Modal**: Create/Edit combo modal now uses `max-w-4xl` for comfortable editing of large combos.
|
||||
|
||||
### 🐛 Bug Fixes
|
||||
@@ -2199,7 +2280,7 @@ OmniRoute now automatically refreshes model lists for connected providers every
|
||||
|
||||
### ✨ Features
|
||||
|
||||
- **Combos: Free Stack template** — New 4th template "Free Stack ($0)" using round-robin across Kiro + iFlow + Qwen + Gemini CLI. Suggests the pre-built zero-cost combo on first use.
|
||||
- **Combos: Free Stack template** — New 4th template "Free Stack ($0)" using round-robin across Kiro + Qoder + Qwen + Gemini CLI. Suggests the pre-built zero-cost combo on first use.
|
||||
- **Media/Transcription: Deepgram as default** — Deepgram (Nova 3, $200 free) is now the default transcription provider. AssemblyAI ($50 free) and Groq Whisper (free forever) shown with free credit badges.
|
||||
- **README: "Start Free" section** — New early-README 5-step table showing how to set up zero-cost AI in minutes.
|
||||
- **README: Free Transcription Combo** — New section with Deepgram/AssemblyAI/Groq combo suggestion and per-provider free credit details.
|
||||
@@ -2211,9 +2292,9 @@ OmniRoute now automatically refreshes model lists for connected providers every
|
||||
### 📖 Documentation
|
||||
|
||||
- **README: 44+ Providers** — Updated all 3 occurrences of "36+ providers" to "44+" reflecting the actual codebase count (44 providers in providers.ts)
|
||||
- **README: New Section "🆓 Free Models — What You Actually Get"** — Added 7-provider table with per-model rate limits for: Kiro (Claude unlimited via AWS Builder ID), iFlow (5 models unlimited), Qwen (4 models unlimited), Gemini CLI (180K/mo), NVIDIA NIM (~40 RPM dev-forever), Cerebras (1M tok/day / 60K TPM), Groq (30 RPM / 14.4K RPD). Includes the \/usr/bin/bash Ultimate Free Stack combo recommendation.
|
||||
- **README: Pricing Table Updated** — Added Cerebras to API KEY tier, fixed NVIDIA from "1000 credits" to "dev-forever free", updated iFlow/Qwen model counts and names
|
||||
- **README: iFlow 8→5 models** (named: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2)
|
||||
- **README: New Section "🆓 Free Models — What You Actually Get"** — Added 7-provider table with per-model rate limits for: Kiro (Claude unlimited via AWS Builder ID), Qoder (5 models unlimited), Qwen (4 models unlimited), Gemini CLI (180K/mo), NVIDIA NIM (~40 RPM dev-forever), Cerebras (1M tok/day / 60K TPM), Groq (30 RPM / 14.4K RPD). Includes the \/usr/bin/bash Ultimate Free Stack combo recommendation.
|
||||
- **README: Pricing Table Updated** — Added Cerebras to API KEY tier, fixed NVIDIA from "1000 credits" to "dev-forever free", updated Qoder/Qwen model counts and names
|
||||
- **README: Qoder 8→5 models** (named: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2)
|
||||
- **README: Qwen 3→4 models** (named: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model)
|
||||
|
||||
## [2.3.15] - 2026-03-13
|
||||
@@ -2227,7 +2308,7 @@ OmniRoute now automatically refreshes model lists for connected providers every
|
||||
|
||||
### 🐛 Bug Fixes
|
||||
|
||||
- **iFlow OAuth (#339)**: Restored the valid default `clientSecret` — was previously an empty string, causing "Bad client credentials" on every connect attempt. The public credential is now the default fallback (overridable via `IFLOW_OAUTH_CLIENT_SECRET` env var).
|
||||
- **Qoder OAuth (#339)**: Restored the valid default `clientSecret` — was previously an empty string, causing "Bad client credentials" on every connect attempt. The public credential is now the default fallback (overridable via `QODER_OAUTH_CLIENT_SECRET` env var).
|
||||
- **MITM server not found (#335)**: `prepublish.mjs` now compiles `src/mitm/*.ts` to JavaScript using `tsc` before copying to the npm bundle. Previously only raw `.ts` files were copied — meaning `server.js` never existed in npm/Volta global installs.
|
||||
- **GeminiCLI missing projectId (#338)**: Instead of throwing a hard 500 error when `projectId` is missing from stored credentials (e.g. after Docker restart), OmniRoute now logs a warning and attempts the request — returning a meaningful provider-side error instead of an OmniRoute crash.
|
||||
- **Electron version mismatch (#323)**: Synced `electron/package.json` version to `2.3.13` (was `2.0.13`) so the desktop binary version matches the npm package.
|
||||
|
||||
@@ -41,6 +41,17 @@ Key variables for development:
|
||||
| `INITIAL_PASSWORD` | `123456` | First login password |
|
||||
| `ENABLE_REQUEST_LOGS` | `false` | Enable debug request logs |
|
||||
|
||||
### Dashboard Settings
|
||||
|
||||
The dashboard provides UI toggles for features that can also be configured via environment variables:
|
||||
|
||||
| Setting Location | Toggle | Description |
|
||||
| ------------------- | ------------------ | ------------------------------ |
|
||||
| Settings → Advanced | Debug Mode | Enable debug request logs (UI) |
|
||||
| Settings → General | Sidebar Visibility | Show/hide sidebar sections |
|
||||
|
||||
These settings are stored in the database and persist across restarts, overriding env var defaults when set.
|
||||
|
||||
### Running Locally
|
||||
|
||||
```bash
|
||||
|
||||
+12
-12
@@ -199,7 +199,7 @@ _قم بتوصيل أي أداة IDE أو CLI مدعومة بالذكاء الا
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
يؤدي هذا إلى إنشاء `system-info.txt` مع إصدار Node.js، وإصدار OmniRoute، وتفاصيل نظام التشغيل، وأدوات CLI المثبتة (iflow، وgemini، و claude، وcodex، وantigravity، وdroid، وما إلى ذلك)، وحالة Docker/PM2، وحزم النظام - كل ما نحتاجه لإعادة إنتاج مشكلتك بسرعة. قم بإرفاق الملف مباشرة بمشكلة GitHub الخاصة بك.
|
||||
يؤدي هذا إلى إنشاء `system-info.txt` مع إصدار Node.js، وإصدار OmniRoute، وتفاصيل نظام التشغيل، وأدوات CLI المثبتة (qoder، وgemini، و claude، وcodex، وantigravity، وdroid، وما إلى ذلك)، وحالة Docker/PM2، وحزم النظام - كل ما نحتاجه لإعادة إنتاج مشكلتك بسرعة. قم بإرفاق الملف مباشرة بمشكلة GitHub الخاصة بك.
|
||||
|
||||
---
|
||||
|
||||
@@ -225,7 +225,7 @@ npm run system-info
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -292,7 +292,7 @@ Result: Never stop coding, minimal cost
|
||||
|
||||
**كيف يحل OmniRoute المشكلة:**
|
||||
|
||||
- **موفرو الطبقة المجانية المضمنون** — دعم أصلي لمقدمي الخدمة المجانية بنسبة 100%: iFlow (5 نماذج غير محدودة عبر OAuth: kimi-k2-thinking، qwen3-coder-plus، Deepseek-r1، minimax-m2، kimi-k2)، Qwen (4 نماذج غير محدودة: qwen3-coder-plus، qwen3-coder-flash، qwen3-coder-next، Vision-model)، Kiro (Claude + AWS Builder ID مجانًا)، Gemini CLI (180 ألف رمز مميز شهريًا مجانًا)
|
||||
- **موفرو الطبقة المجانية المضمنون** — دعم أصلي لمقدمي الخدمة المجانية بنسبة 100%: Qoder (5 نماذج غير محدودة عبر OAuth: kimi-k2-thinking، qwen3-coder-plus، Deepseek-r1، minimax-m2، kimi-k2)، Qwen (4 نماذج غير محدودة: qwen3-coder-plus، qwen3-coder-flash، qwen3-coder-next، Vision-model)، Kiro (Claude + AWS Builder ID مجانًا)، Gemini CLI (180 ألف رمز مميز شهريًا مجانًا)
|
||||
- **Ollama Cloud** — نماذج Ollama المستضافة على السحابة في `api.ollama.com` مع فئة "الاستخدام الخفيف" مجانًا؛ استخدم البادئة `ollamacloud/<model>`
|
||||
- **المجموعات المجانية فقط** — السلسلة `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = 0 USD/الشهر بدون أي توقف عن العمل
|
||||
- **NVIDIA NIM Free Access** — ~40 دورة في الدقيقة وصول مجاني للأبد إلى أكثر من 70 نموذجًا على build.nvidia.com (الانتقال من الاعتمادات إلى حدود المعدل النقي)
|
||||
@@ -356,7 +356,7 @@ Claude Code، وCodex، وGemini CLI، وCopilot — جميعهم يستخدمو
|
||||
**كيف يحل OmniRoute المشكلة:**
|
||||
|
||||
- **التحديث التلقائي للرمز المميز** — يتم تحديث رموز OAuth المميزة في الخلفية قبل انتهاء الصلاحية
|
||||
- **OAuth 2.0 (PKCE) مدمج** — التدفق التلقائي لـ Claude Code وCodex وGemini CLI وCopilot وKiro وQwen وiFlow
|
||||
- **OAuth 2.0 (PKCE) مدمج** — التدفق التلقائي لـ Claude Code وCodex وGemini CLI وCopilot وKiro وQwen وQoder
|
||||
- **OAuth متعدد الحسابات** — حسابات متعددة لكل مزود عبر استخراج الرمز المميز JWT/ID
|
||||
- **OAuth LAN/Remote Fix** — اكتشاف IP الخاص لـ `redirect_uri` + وضع URL اليدوي للخوادم البعيدة
|
||||
- **OAuth Behind Nginx** — يستخدم `window.location.origin` للتوافق العكسي مع الوكيل
|
||||
@@ -733,7 +733,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| خطوة | العمل | مقدمي الخدمات مقفلة |
|
||||
| ---- | -------------------------------------------------- | ------------------------------------------------------------------ |
|
||||
| 1 | الاتصال **Kiro** (معرف AWS Builder OAuth) | كلود سونيت 4.5، هايكو 4.5 — **غير محدود** |
|
||||
| 2 | ربط **iFlow** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, Deepseek-r1... — **غير محدود** |
|
||||
| 2 | ربط **Qoder** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, Deepseek-r1... — **غير محدود** |
|
||||
| 3 | ربط **كوين** (رمز الجهاز) | qwen3-coder-plus، qwen3-coder-flash... — **غير محدود** |
|
||||
| 4 | الاتصال **Gemini CLI** (Google OAuth) | gemini-3-flash,gemini-2.5-pro — **180 ألف/الشهر مجانًا** |
|
||||
| 5 | `/dashboard/combos` → **قالب المكدس المجاني ($0)** | جولة روبن لجميع مقدمي الخدمات المجانية تلقائيًا |
|
||||
@@ -957,7 +957,7 @@ npm run electron:build:linux # Linux (.AppImage)
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -987,7 +987,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **غير محدود** | لم يتم الإبلاغ عن الحد الأقصى اليومي |
|
||||
| `claude-opus-4.6` | `kr/` | **غير محدود** | أحدث أعمال أوبوس عبر كيرو |
|
||||
|
||||
### 🟢 نماذج IFLOW (بروتوكول OAuth مجاني — بدون بطاقة ائتمان)
|
||||
### 🟢 نماذج QODER (بروتوكول OAuth مجاني — بدون بطاقة ائتمان)
|
||||
|
||||
| نموذج | البادئة | الحد | حد السعر |
|
||||
| ------------------ | ------- | ------------- | ----------------------------- |
|
||||
@@ -1086,7 +1086,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1536,11 +1536,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 موفرو الخدمة المجانية (النسخ الاحتياطي في حالات الطوارئ)</b></summary>
|
||||
|
||||
### iFlow (5 نماذج مجانية عبر OAuth)
|
||||
### Qoder (5 نماذج مجانية عبر OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1738,7 +1738,7 @@ opencode
|
||||
|
||||
- التحقق من إحصائيات الاستخدام في لوحة المعلومات → التكاليف
|
||||
- تبديل النموذج الأساسي إلى GLM/MiniMax
|
||||
- استخدم الطبقة المجانية (Gemini CLI، iFlow) للمهام غير الحرجة
|
||||
- استخدم الطبقة المجانية (Gemini CLI، Qoder) للمهام غير الحرجة
|
||||
|
||||
**منافذ لوحة المعلومات/واجهة برمجة التطبيقات غير صحيحة**
|
||||
|
||||
|
||||
+13
-13
@@ -199,7 +199,7 @@ _Свържете всеки базиран на AI IDE или CLI инстру
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Това генерира `system-info.txt` с вашата версия на Node.js, версия на OmniRoute, подробности за операционната система, инсталирани CLI инструменти (iflow, gemini, claude, codex, antigravity, droid и т.н.), състояние на Docker/PM2 и системни пакети — всичко, от което се нуждаем, за да възпроизведем бързо проблема ви. Прикачете файла директно към вашия проблем с GitHub.
|
||||
Това генерира `system-info.txt` с вашата версия на Node.js, версия на OmniRoute, подробности за операционната система, инсталирани CLI инструменти (qoder, gemini, claude, codex, antigravity, droid и т.н.), състояние на Docker/PM2 и системни пакети — всичко, от което се нуждаем, за да възпроизведем бързо проблема ви. Прикачете файла директно към вашия проблем с GitHub.
|
||||
|
||||
---
|
||||
|
||||
@@ -225,7 +225,7 @@ npm run system-info
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -292,7 +292,7 @@ OpenAI използва един формат, Claude (Anthropic) използв
|
||||
|
||||
**Как OmniRoute го решава:**
|
||||
|
||||
- **Вградени доставчици на безплатни нива** — Вградена поддръжка за 100% безплатни доставчици: iFlow (5 неограничени модела чрез OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 неограничени модела: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID безплатно), Gemini CLI (180K токена/месец безплатно)
|
||||
- **Вградени доставчици на безплатни нива** — Вградена поддръжка за 100% безплатни доставчици: Qoder (5 неограничени модела чрез OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 неограничени модела: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID безплатно), Gemini CLI (180K токена/месец безплатно)
|
||||
- **Ollama Cloud** — Хоствани в облака Ollama модели на `api.ollama.com` с безплатно ниво „Light usage“; използвайте префикс `ollamacloud/<model>`
|
||||
- **Безплатни само комбинации** — Верига `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = $0/месец с нулев престой
|
||||
- **NVIDIA NIM безплатен достъп** — ~40 RPM dev-вечно безплатен достъп до 70+ модела на build.nvidia.com (преход от кредити към чисти лимити на скоростта)
|
||||
@@ -356,7 +356,7 @@ Claude Code, Codex, Gemini CLI, Copilot — всички използват OAut
|
||||
**Как OmniRoute го решава:**
|
||||
|
||||
- **Auto Token Refresh** — OAuth токените се опресняват във фонов режим преди изтичане
|
||||
- **OAuth 2.0 (PKCE) Вграден** — Автоматичен поток за Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **OAuth 2.0 (PKCE) Вграден** — Автоматичен поток за Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **Multi-Account OAuth** — Множество акаунти на доставчик чрез JWT/ID извличане на токени
|
||||
- **OAuth LAN/Remote Fix** — Частно IP откриване за `redirect_uri` + ръчен URL режим за отдалечени сървъри
|
||||
- **OAuth зад Nginx** — Използва `window.location.origin` за обратна прокси съвместимост
|
||||
@@ -733,7 +733,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Стъпка | Действие | Отключени доставчици |
|
||||
| ------ | ---------------------------------------------------- | ------------------------------------------------------------------- |
|
||||
| 1 | Свържете **Kiro** (AWS Builder ID OAuth) | Клод Сонет 4.5, Хайку 4.5 — **неограничен** |
|
||||
| 2 | Свържете **iFlow** (Google OAuth) | kimi-k2-мислене, qwen3-coder-plus, deepseek-r1... — **неограничен** |
|
||||
| 2 | Свържете **Qoder** (Google OAuth) | kimi-k2-мислене, qwen3-coder-plus, deepseek-r1... — **неограничен** |
|
||||
| 3 | Свържете **Qwen** (Код на устройството) | qwen3-coder-plus, qwen3-coder-flash... — **неограничен** |
|
||||
| 4 | Свържете **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180K/мес безплатно** |
|
||||
| 5 | `/dashboard/combos` → **Безплатен стек ($0)** шаблон | Кръгово обвързване на всички безплатни доставчици автоматично |
|
||||
@@ -942,7 +942,7 @@ npm run electron:build:linux # Linux (.AppImage)
|
||||
| | MiniMax M2.1 | $0,2/1 милион | 5-часово търкаляне | Най-евтиният вариант |
|
||||
| | Kimi K2.5 (Moonshot API) 🆕 | Плащане при използване | Няма | Директен достъп до API на Moonshot |
|
||||
| | Кими К2 | $9/месец апартамент | 10 милиона токена/месец | Предвидими разходи |
|
||||
| **🆓 БЕЗПЛАТНО** | iFlow | **$0** | Неограничен | 5 модела неограничено |
|
||||
| **🆓 БЕЗПЛАТНО** | Qoder | **$0** | Неограничен | 5 модела неограничено |
|
||||
| | Куен | **$0** | Неограничен | 4 модела неограничено |
|
||||
| | Киро | **$0** | Неограничен | Клод Сонет/Хайку (AWS Builder) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (50M ток/ден 🔥) | 1 RPS | Най-голямата безплатна квота на Земята |
|
||||
@@ -957,7 +957,7 @@ npm run electron:build:linux # Linux (.AppImage)
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -987,7 +987,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Неограничен** | Няма отчетено дневно ограничение |
|
||||
| `claude-opus-4.6` | `kr/` | **Неограничен** | Най-новият Opus чрез Kiro |
|
||||
|
||||
### 🟢 IFLOW МОДЕЛИ (Безплатен OAuth — Без кредитна карта)
|
||||
### 🟢 QODER МОДЕЛИ (Безплатен OAuth — Без кредитна карта)
|
||||
|
||||
| Модел | Префикс | Лимит | Ограничение на скоростта |
|
||||
| ------------------ | ------- | --------------- | ------------------------- |
|
||||
@@ -1086,7 +1086,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 БЕЗПЛАТНИ доставчици (Спешно архивиране)</b></summary>
|
||||
|
||||
### iFlow (5 БЕЗПЛАТНИ модела чрез OAuth)
|
||||
### Qoder (5 БЕЗПЛАТНИ модела чрез OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- Проверете статистическите данни за използването в Табло → Разходи
|
||||
- Превключете основния модел към GLM/MiniMax
|
||||
- Използвайте безплатно ниво (Gemini CLI, iFlow) за некритични задачи
|
||||
- Използвайте безплатно ниво (Gemini CLI, Qoder) за некритични задачи
|
||||
|
||||
**Портовете на таблото/API са грешни**
|
||||
|
||||
|
||||
+13
-13
@@ -200,7 +200,7 @@ Při otevírání problému spusťte příkaz system-info a připojte vygenerova
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Tím se vygeneruje `system-info.txt` s vaší verzí Node.js, verzí OmniRoute, podrobnostmi OS, nainstalovanými nástroji CLI (iflow, gemini, claude, codex, antigravity, droid atd.), stavem Docker/PM2 a systémovými balíčky – vše, co potřebujeme k rychlé reprodukci vašeho problému. Připojte soubor přímo k vašemu problému na GitHubu.
|
||||
Tím se vygeneruje `system-info.txt` s vaší verzí Node.js, verzí OmniRoute, podrobnostmi OS, nainstalovanými nástroji CLI (qoder, gemini, claude, codex, antigravity, droid atd.), stavem Docker/PM2 a systémovými balíčky – vše, co potřebujeme k rychlé reprodukci vašeho problému. Připojte soubor přímo k vašemu problému na GitHubu.
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +226,7 @@ Tím se vygeneruje `system-info.txt` s vaší verzí Node.js, verzí OmniRoute,
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -294,7 +294,7 @@ Ne každý může platit 20–200 $ měsíčně za předplatné AI. Studenti, v
|
||||
|
||||
**Jak to řeší OmniRoute:**
|
||||
|
||||
- **Vestavění poskytovatelé bezplatných úrovní** — Nativní podpora pro 100% bezplatné poskytovatele: iFlow (5 neomezených modelů přes OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 neomezené modely: qwen3-qwender-lash, qwen3-qwender-lash qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID zdarma), Gemini CLI (180 000 tokenů/měsíc zdarma)
|
||||
- **Vestavění poskytovatelé bezplatných úrovní** — Nativní podpora pro 100% bezplatné poskytovatele: Qoder (5 neomezených modelů přes OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 neomezené modely: qwen3-qwender-lash, qwen3-qwender-lash qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID zdarma), Gemini CLI (180 000 tokenů/měsíc zdarma)
|
||||
- **Ollama Cloud** – modely Ollama hostované v cloudu na `api.ollama.com` s bezplatnou úrovní „Light use“; použijte předponu `ollamacloud/<model>`
|
||||
- **Pouze bezplatná komba** — Řetězec `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = 0 $/měsíc s nulovými prostoji
|
||||
- **Volný přístup NVIDIA NIM** — ~40 RPM pro vývojáře - navždy bezplatný přístup k více než 70 modelům na build.nvidia.com (přechod z kreditů na limity čisté sazby)
|
||||
@@ -359,7 +359,7 @@ Claude Code, Codex, Gemini CLI, Copilot – všechny používají OAuth 2.0 s ko
|
||||
**Jak to řeší OmniRoute:**
|
||||
|
||||
- **Automatické obnovení tokenu** – Tokeny OAuth se před vypršením platnosti obnovují na pozadí
|
||||
- **Vestavěný OAuth 2.0 (PKCE)** — Automatický tok pro Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **Vestavěný OAuth 2.0 (PKCE)** — Automatický tok pro Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
– **Multi-Account OAuth** – Více účtů na poskytovatele prostřednictvím extrakce tokenů JWT/ID
|
||||
- **OAuth LAN/Remote Fix** — Detekce privátní IP adresy pro `redirect_uri` + ruční režim URL pro vzdálené servery
|
||||
- **OAuth Behind Nginx** - Používá `window.location.origin` pro reverzní kompatibilitu proxy
|
||||
@@ -739,7 +739,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Krok | Akce | Poskytovatelé odemčeni |
|
||||
| ---- | ---------------------------------------------------- | -------------------------------------------------------------------- |
|
||||
| 1 | Connect **Kiro** (AWS Builder ID OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **neomezeno** |
|
||||
| 2 | Připojte **iFlow** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **bez omezení** |
|
||||
| 2 | Připojte **Qoder** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **bez omezení** |
|
||||
| 3 | Připojte **Qwen** (kód zařízení) | qwen3-coder-plus, qwen3-coder-flash... — **bez omezení** |
|
||||
| 4 | Připojte **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180 000/měsíc zdarma** |
|
||||
| 5 | `/dashboard/combos` → Šablona **Stack zdarma (0 $)** | Round-robin všechny bezplatné poskytovatele automaticky |
|
||||
@@ -948,7 +948,7 @@ Když je minimalizován, OmniRoute žije v systémové liště s rychlými akcem
|
||||
| | MiniMax M2.1 | 0,2 $/1 mil. | 5hodinové válcování | Nejlevnější varianta |
|
||||
| | Kimi K2.5 (Moonshot API) 🆕 | Platba za použití | Žádné | Přímý přístup Moonshot API |
|
||||
| | Kimi K2 | 9 $/měsíc byt | 10 milionů tokenů/měsíc | Předvídatelné náklady |
|
||||
| **🆓 ZDARMA** | iFlow | **$0** | Neomezené | 5 modelů neomezeně |
|
||||
| **🆓 ZDARMA** | Qoder | **$0** | Neomezené | 5 modelů neomezeně |
|
||||
| | Qwen | **$0** | Neomezené | 4 modely neomezeně |
|
||||
| | Kiro | **$0** | Neomezené | Claude Sonnet/Haiku (stavitel AWS) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (50 milionů toku/den 🔥) | 1 RPS | Největší bezplatná kvóta na Zemi |
|
||||
@@ -963,7 +963,7 @@ Když je minimalizován, OmniRoute žije v systémové liště s rychlými akcem
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -993,7 +993,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Neomezeno** | Žádný hlášený denní limit |
|
||||
| `claude-opus-4.6` | `kr/` | **Neomezeno** | Nejnovější Opus přes Kiro |
|
||||
|
||||
### 🢢 MODELY IFLOW (bezplatný protokol OAuth – žádná kreditní karta)
|
||||
### 🢢 MODELY QODER (bezplatný protokol OAuth – žádná kreditní karta)
|
||||
|
||||
| Model | Předpona | Limit | Limit sazby |
|
||||
| ------------------ | -------- | ------------- | --------------------- |
|
||||
@@ -1092,7 +1092,7 @@ Dostupné zdarma: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama-3.1-70b-
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1542,11 +1542,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 ZDARMA poskytovatelé (nouzová záloha)</b></summary>
|
||||
|
||||
### iFlow (5 ZDARMA modelů přes OAuth)
|
||||
### Qoder (5 ZDARMA modelů přes OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1744,7 +1744,7 @@ opencode
|
||||
|
||||
- Zkontrolujte statistiky využití v Dashboard → Náklady
|
||||
- Přepněte primární model na GLM/MiniMax
|
||||
- Používejte bezplatnou vrstvu (Gemini CLI, iFlow) pro nekritické úkoly
|
||||
- Používejte bezplatnou vrstvu (Gemini CLI, Qoder) pro nekritické úkoly
|
||||
|
||||
**Porty řídicího panelu/API jsou chybné**
|
||||
|
||||
|
||||
+13
-13
@@ -199,7 +199,7 @@ When opening an issue, please run the system-info command and attach the generat
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Dette genererer en `system-info.txt` med din Node.js-version, OmniRoute-version, OS-detaljer, installerede CLI-værktøjer (iflow, gemini, claude, codex, antigravity, droid osv.), Docker/PM2-status og systempakker - alt hvad vi behøver for hurtigt at genskabe dit problem. Vedhæft filen direkte til dit GitHub-problem.
|
||||
Dette genererer en `system-info.txt` med din Node.js-version, OmniRoute-version, OS-detaljer, installerede CLI-værktøjer (qoder, gemini, claude, codex, antigravity, droid osv.), Docker/PM2-status og systempakker - alt hvad vi behøver for hurtigt at genskabe dit problem. Vedhæft filen direkte til dit GitHub-problem.
|
||||
|
||||
---
|
||||
|
||||
@@ -225,7 +225,7 @@ Dette genererer en `system-info.txt` med din Node.js-version, OmniRoute-version,
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -292,7 +292,7 @@ Ikke alle kan betale $20-200/måned for AI-abonnementer. Studerende, udviklere f
|
||||
|
||||
**Sådan løser OmniRoute det:**
|
||||
|
||||
- **Free Tier Providers Indbygget** — Indbygget understøttelse af 100 % gratis udbydere: iFlow (5 ubegrænsede modeller via OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 unlimited-modeller,-r-modeller) qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID gratis), Gemini CLI (180K tokens/måned gratis)
|
||||
- **Free Tier Providers Indbygget** — Indbygget understøttelse af 100 % gratis udbydere: Qoder (5 ubegrænsede modeller via OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 unlimited-modeller,-r-modeller) qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID gratis), Gemini CLI (180K tokens/måned gratis)
|
||||
- **Ollama Cloud** — Cloud-hostede Ollama-modeller på `api.ollama.com` med gratis "Light usage"-niveau; brug præfikset `ollamacloud/<model>`
|
||||
- **Kun gratis kombinationer** — Kæde `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = $0/måned uden nedetid
|
||||
- **NVIDIA NIM Free Access** — ~40 RPM dev-forever gratis adgang til 70+ modeller på build.nvidia.com (overgang fra kreditter til rene hastighedsgrænser)
|
||||
@@ -356,7 +356,7 @@ Claude Code, Codex, Gemini CLI, Copilot - alle bruger OAuth 2.0 med udløbende t
|
||||
**Sådan løser OmniRoute det:**
|
||||
|
||||
- **Automatisk tokenopdatering** — OAuth-tokens opdateres i baggrunden før udløb
|
||||
- **OAuth 2.0 (PKCE) Indbygget** — Automatisk flow for Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **OAuth 2.0 (PKCE) Indbygget** — Automatisk flow for Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **Multi-Account OAuth** — Flere konti pr. udbyder via JWT/ID-tokenudtrækning
|
||||
- **OAuth LAN/Remote Fix** — Privat IP-detektering for `redirect_uri` + manuel URL-tilstand til fjernservere
|
||||
- **OAuth Behind Nginx** — Bruger `window.location.origin` til omvendt proxykompatibilitet
|
||||
@@ -733,7 +733,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Trin | Handling | Udbydere ulåst |
|
||||
| ---- | --------------------------------------------------- | ------------------------------------------------------------------- |
|
||||
| 1 | Tilslut **Kiro** (AWS Builder ID OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **ubegrænset** |
|
||||
| 2 | Tilslut **iFlow** (Google OAuth) | kimi-k2-tænkning, qwen3-coder-plus, deepseek-r1... — **ubegrænset** |
|
||||
| 2 | Tilslut **Qoder** (Google OAuth) | kimi-k2-tænkning, qwen3-coder-plus, deepseek-r1... — **ubegrænset** |
|
||||
| 3 | Tilslut **Qwen** (enhedskode) | qwen3-coder-plus, qwen3-coder-flash... — **ubegrænset** |
|
||||
| 4 | Tilslut **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180K/md gratis** |
|
||||
| 5 | `/dashboard/combos` → **Gratis stak ($0)** skabelon | Round-robin alle gratis udbydere automatisk |
|
||||
@@ -942,7 +942,7 @@ Når den er minimeret, lever OmniRoute i din procesbakke med hurtige handlinger:
|
||||
| | MiniMax M2.1 | $0,2/1 mio. | 5-timers rullende | Billigste mulighed |
|
||||
| | Kimi K2.5 (Moonshot API) 🆕 | Betal pr. brug | Ingen | Direkte Moonshot API-adgang |
|
||||
| | Kimi K2 | 9 USD/md. lejlighed | 10M tokens/md. | Forudsigelige omkostninger |
|
||||
| **🆓 GRATIS** | iFlow | **$0** | Ubegrænset | 5 modeller ubegrænset |
|
||||
| **🆓 GRATIS** | Qoder | **$0** | Ubegrænset | 5 modeller ubegrænset |
|
||||
| | Qwen | **$0** | Ubegrænset | 4 modeller ubegrænset |
|
||||
| | Kiro | **$0** | Ubegrænset | Claude Sonnet/Haiku (AWS Builder) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (50 mio. tok/dag 🔥) | 1 RPS | Største gratis kvote på jorden |
|
||||
@@ -957,7 +957,7 @@ Når den er minimeret, lever OmniRoute i din procesbakke med hurtige handlinger:
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -987,7 +987,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Ubegrænset** | Ingen rapporteret dagligt loft |
|
||||
| `claude-opus-4.6` | `kr/` | **Ubegrænset** | Seneste Opus via Kiro |
|
||||
|
||||
### IFLOW MODELLER (gratis OAuth — intet kreditkort)
|
||||
### QODER MODELLER (gratis OAuth — intet kreditkort)
|
||||
|
||||
| Model | Præfiks | Grænse | Satsgrænse |
|
||||
| ------------------ | ------- | -------------- | ---------------------- |
|
||||
@@ -1086,7 +1086,7 @@ Tilgængelig gratis: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama-3.1-7
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 GRATIS udbydere (nødbackup)</b></summary>
|
||||
|
||||
### iFlow (5 GRATIS modeller via OAuth)
|
||||
### Qoder (5 GRATIS modeller via OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- Tjek brugsstatistik i Dashboard → Omkostninger
|
||||
- Skift primær model til GLM/MiniMax
|
||||
- Brug gratis niveau (Gemini CLI, iFlow) til ikke-kritiske opgaver
|
||||
- Brug gratis niveau (Gemini CLI, Qoder) til ikke-kritiske opgaver
|
||||
|
||||
**Dashboard/API-porte er forkerte**
|
||||
|
||||
|
||||
+13
-13
@@ -200,7 +200,7 @@ Kun avaat ongelman, suorita system-info-komento ja liitä luotu tiedosto:
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Tämä luo `system-info.txt`, jossa on Node.js-versiosi, OmniRoute-versiosi, käyttöjärjestelmätiedot, asennetut CLI-työkalut (iflow, gemini, claude, codex, antigravity, droidi jne.), Docker/PM2-tila ja järjestelmäpaketit – kaikki, mitä tarvitsemme ongelmasi nopeaan toistamiseen. Liitä tiedosto suoraan GitHub-ongelmaasi.
|
||||
Tämä luo `system-info.txt`, jossa on Node.js-versiosi, OmniRoute-versiosi, käyttöjärjestelmätiedot, asennetut CLI-työkalut (qoder, gemini, claude, codex, antigravity, droidi jne.), Docker/PM2-tila ja järjestelmäpaketit – kaikki, mitä tarvitsemme ongelmasi nopeaan toistamiseen. Liitä tiedosto suoraan GitHub-ongelmaasi.
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +226,7 @@ Tämä luo `system-info.txt`, jossa on Node.js-versiosi, OmniRoute-versiosi, kä
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -293,7 +293,7 @@ Kaikki eivät voi maksaa 20–200 dollaria kuukaudessa tekoälytilauksista. Opis
|
||||
|
||||
**Kuinka OmniRoute ratkaisee sen:**
|
||||
|
||||
- **Free Tier Providers Built-in** — Natiivituki 100 % ilmaisille palveluntarjoajille: iFlow (5 rajoittamaton mallia OAuthin kautta: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen-mallit: 4 unqlim-plus3 qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID ilmaiseksi), Gemini CLI (180 000 tokenia / kuukausi ilmaiseksi)
|
||||
- **Free Tier Providers Built-in** — Natiivituki 100 % ilmaisille palveluntarjoajille: Qoder (5 rajoittamaton mallia OAuthin kautta: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen-mallit: 4 unqlim-plus3 qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID ilmaiseksi), Gemini CLI (180 000 tokenia / kuukausi ilmaiseksi)
|
||||
- **Ollama Cloud** — pilvipalvelussa isännöityjä Ollama-malleja osoitteessa `api.ollama.com` ilmaisella "kevytkäyttö"-tasolla; käytä `ollamacloud/<model>`-etuliitettä
|
||||
- **Vain ilmaiset yhdistelmät** — ketju `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = 0 $/kk ilman seisokkeja
|
||||
- **NVIDIA NIM Free Access** - ~40 RPM:n kehittäjä - ikuisesti ilmainen pääsy yli 70 malliin osoitteessa build.nvidia.com (siirrytään hyvityksistä puhtaisiin hintarajoihin)
|
||||
@@ -357,7 +357,7 @@ Claude Code, Codex, Gemini CLI, Copilot – kaikki käyttävät OAuth 2.0:aa van
|
||||
**Kuinka OmniRoute ratkaisee sen:**
|
||||
|
||||
- **Automaattinen tunnuksen päivitys** - OAuth-tunnukset päivittyvät taustalla ennen vanhenemista
|
||||
- **Sisäänrakennettu OAuth 2.0 (PKCE)** - Automaattinen kulku Claude Codelle, Codexille, Gemini CLI:lle, Copilotille, Kirolle, Qwenille, iFlowille
|
||||
- **Sisäänrakennettu OAuth 2.0 (PKCE)** - Automaattinen kulku Claude Codelle, Codexille, Gemini CLI:lle, Copilotille, Kirolle, Qwenille, Qoderille
|
||||
- **Multi-Account OAuth** - Useita tilejä palveluntarjoajaa kohden JWT/ID-tunnuksen purkamisen kautta
|
||||
- **OAuth LAN/Remote Fix** - Yksityinen IP-tunnistus kohteelle `redirect_uri` + manuaalinen URL-tila etäpalvelimille
|
||||
- **OAuth Nginxin takana** - Käyttää `window.location.origin` käänteisen välityspalvelimen yhteensopivuutta varten
|
||||
@@ -734,7 +734,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Vaihe | Toiminta | Palveluntarjoajat avattu |
|
||||
| ----- | -------------------------------------------------- | ---------------------------------------------------------------------- |
|
||||
| 1 | Yhdistä **Kiro** (AWS Builder ID OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **rajaton** |
|
||||
| 2 | Yhdistä **iFlow** (Google OAuth) | kimi-k2-ajattelu, qwen3-coder-plus, deepseek-r1... — **rajoittamaton** |
|
||||
| 2 | Yhdistä **Qoder** (Google OAuth) | kimi-k2-ajattelu, qwen3-coder-plus, deepseek-r1... — **rajoittamaton** |
|
||||
| 3 | Yhdistä **Qwen** (laitekoodi) | qwen3-coder-plus, qwen3-coder-flash... — **rajoittamaton** |
|
||||
| 4 | Yhdistä **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180K/kk ilmaiseksi** |
|
||||
| 5 | `/dashboard/combos` → **Ilmainen pino ($0)** malli | Round-robin kaikki ilmaiset palveluntarjoajat automaattisesti |
|
||||
@@ -943,7 +943,7 @@ Kun OmniRoute on minimoitu, se elää ilmaisinalueellasi nopeilla toimilla:
|
||||
| | MiniMax M2.1 | 0,2 $/1 milj. | 5 tunnin rullaus | Halvin vaihtoehto |
|
||||
| | Kimi K2.5 (Moonshot API) 🆕 | Maksu per käyttö | Ei yhtään | Suora Moonshot API -käyttö |
|
||||
| | Kimi K2 | 9 dollaria/kk asunto | 10 milj. rahakkeita/kk | Ennustettavat kustannukset |
|
||||
| **🆓 ILMAINEN** | iFlow | **0 $** | Rajoittamaton | 5 mallia rajoittamaton |
|
||||
| **🆓 ILMAINEN** | Qoder | **0 $** | Rajoittamaton | 5 mallia rajoittamaton |
|
||||
| | Qwen | **0 $** | Rajoittamaton | 4 mallia rajoittamaton |
|
||||
| | Kiro | **0 $** | Rajoittamaton | Claude Sonnet/Haiku (AWS Builder) |
|
||||
| | LongCat Flash-Lite 🆕 | **0 $** (50 milj. tok/päivä 🔥) | 1 RPS | Suurin ilmainen kiintiö maailmassa |
|
||||
@@ -958,7 +958,7 @@ Kun OmniRoute on minimoitu, se elää ilmaisinalueellasi nopeilla toimilla:
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -988,7 +988,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Rajoittamaton** | Ei raportoitu päivittäistä ylärajaa |
|
||||
| `claude-opus-4.6` | `kr/` | **Rajoittamaton** | Uusin Opus kautta Kiro |
|
||||
|
||||
### 🟢 IFLOW-MALLIT (ilmainen OAuth – ei luottokorttia)
|
||||
### 🟢 QODER-MALLIT (ilmainen OAuth – ei luottokorttia)
|
||||
|
||||
| Malli | Etuliite | Raja | Hintarajoitus |
|
||||
| ------------------ | -------- | ----------------- | --------------------- |
|
||||
@@ -1087,7 +1087,7 @@ Saatavilla ilmaiseksi: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama-3.1
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 ILMAISIA palveluntarjoajia (hätävarmuuskopio)</b></summary>
|
||||
|
||||
### iFlow (5 ILMAISTA mallia OAuthin kautta)
|
||||
### Qoder (5 ILMAISTA mallia OAuthin kautta)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- Tarkista käyttötilastot kohdassa Dashboard → Costs
|
||||
- Vaihda ensisijaiseksi malliksi GLM/MiniMax
|
||||
- Use free tier (Gemini CLI, iFlow) for non-critical tasks
|
||||
- Use free tier (Gemini CLI, Qoder) for non-critical tasks
|
||||
|
||||
**Kojelauta/API-portit ovat väärin**
|
||||
|
||||
|
||||
+13
-13
@@ -200,7 +200,7 @@ _חבר כל כלי IDE או CLI המופעל על ידי AI דרך OmniRoute -
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
זה יוצר `system-info.txt` עם גרסת Node.js, גרסת OmniRoute, פרטי מערכת ההפעלה, כלי CLI מותקנים (iflow, gemini, claude, codex, antigravity, droid וכו'), סטטוס Docker/PM2 וחבילות מערכת - כל מה שאנחנו צריכים כדי לשחזר את הבעיה במהירות. צרף את הקובץ ישירות לבעיית GitHub שלך.
|
||||
זה יוצר `system-info.txt` עם גרסת Node.js, גרסת OmniRoute, פרטי מערכת ההפעלה, כלי CLI מותקנים (qoder, gemini, claude, codex, antigravity, droid וכו'), סטטוס Docker/PM2 וחבילות מערכת - כל מה שאנחנו צריכים כדי לשחזר את הבעיה במהירות. צרף את הקובץ ישירות לבעיית GitHub שלך.
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +226,7 @@ npm run system-info
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -293,7 +293,7 @@ OpenAI משתמש בפורמט אחד, קלוד (אנתרופיק) משתמש ב
|
||||
|
||||
**איך OmniRoute פותר את זה:**
|
||||
|
||||
- **ספקי שכבת חינם מובנית** - תמיכה מקורית עבור 100% ספקים חינמיים: iFlow (5 דגמים ללא הגבלה דרך OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 unlimited-qwens,-rs) qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (קלוד + AWS Builder ID בחינם), Gemini CLI (180K אסימונים/חודש חינם)
|
||||
- **ספקי שכבת חינם מובנית** - תמיכה מקורית עבור 100% ספקים חינמיים: Qoder (5 דגמים ללא הגבלה דרך OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 unlimited-qwens,-rs) qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (קלוד + AWS Builder ID בחינם), Gemini CLI (180K אסימונים/חודש חינם)
|
||||
- **Ollama Cloud** - דגמי Ollama המתארחים בענן ב-`api.ollama.com` עם שכבת "שימוש קל" בחינם; השתמש בקידומת `ollamacloud/<model>`
|
||||
- **שילובים בחינם בלבד** — שרשרת `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = $0 לחודש עם אפס זמן השבתה
|
||||
- **גישה חופשית ל-NVIDIA NIM** - גישה חופשית של ~40 RPM ל-dev-forever ל-70+ דגמים בכתובת build.nvidia.com (מעבר מנקודות זכות למגבלות תעריף טהורות)
|
||||
@@ -357,7 +357,7 @@ Claude Code, Codex, Gemini CLI, Copilot - כולם משתמשים ב-OAuth 2.0
|
||||
**איך OmniRoute פותר את זה:**
|
||||
|
||||
- **רענון אסימון אוטומטי** - אסימוני OAuth מתרעננים ברקע לפני פקיעת תוקף
|
||||
- **OAuth 2.0 (PKCE) מובנה** - זרימה אוטומטית עבור Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **OAuth 2.0 (PKCE) מובנה** - זרימה אוטומטית עבור Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- ** OAuth מרובה חשבונות** - מספר חשבונות לכל ספק באמצעות חילוץ אסימון JWT/ID
|
||||
- **OAuth LAN/תיקון מרחוק** - זיהוי IP פרטי עבור `redirect_uri` + מצב כתובת URL ידני עבור שרתים מרוחקים
|
||||
- **OAuth Behind Nginx** - משתמש ב-`window.location.origin` לתאימות פרוקסי הפוכה
|
||||
@@ -734,7 +734,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| שלב | פעולה | ספקים לא נעולים |
|
||||
| --- | ----------------------------------------------- | ------------------------------------------------------------------ |
|
||||
| 1 | התחבר **Kiro** (AWS Builder ID OAuth) | קלוד סונטה 4.5, הייקו 4.5 — **ללא הגבלה** |
|
||||
| 2 | חבר את **iFlow** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **ללא הגבלה** |
|
||||
| 2 | חבר את **Qoder** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **ללא הגבלה** |
|
||||
| 3 | חבר **Qwen** (קוד מכשיר) | qwen3-coder-plus, qwen3-coder-flash... — **ללא הגבלה** |
|
||||
| 4 | חבר את **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180K/mo חינם** |
|
||||
| 5 | `/dashboard/combos` → תבנית ערימה חינם ($0)\*\* | Round-robin כל הספקים בחינם אוטומטית |
|
||||
@@ -943,7 +943,7 @@ npm run electron:build:linux # Linux (.AppImage)
|
||||
| | MiniMax M2.1 | $0.2/1 מיליון | גלגול של 5 שעות | האפשרות הזולה ביותר |
|
||||
| | Kimi K2.5 (Moonshot API) 🆕 | תשלום לפי שימוש | אין | גישה ישירה ל-Monshot API |
|
||||
| | קימי K2 | 9 $ לחודש דירה | 10 מיליון אסימונים לחודש | עלות צפויה |
|
||||
| **🆓 חינם** | iFlow | **$0** | ללא הגבלה | 5 דגמים ללא הגבלה |
|
||||
| **🆓 חינם** | Qoder | **$0** | ללא הגבלה | 5 דגמים ללא הגבלה |
|
||||
| | קוון | **$0** | ללא הגבלה | 4 דגמים ללא הגבלה |
|
||||
| | קירו | **$0** | ללא הגבלה | קלוד סונטה/הייקו (AWS Builder) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (50 מיליון טוקי ליום 🔥) | 1 RPS | המכסה החינמית הגדולה ביותר על פני כדור הארץ |
|
||||
@@ -958,7 +958,7 @@ npm run electron:build:linux # Linux (.AppImage)
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -988,7 +988,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **ללא הגבלה** | אין מכסה יומית מדווחת |
|
||||
| `claude-opus-4.6` | `kr/` | **ללא הגבלה** | אופוס אחרון דרך קירו |
|
||||
|
||||
### דגמי IFLOW (OAuth בחינם - ללא כרטיס אשראי)
|
||||
### דגמי QODER (OAuth בחינם - ללא כרטיס אשראי)
|
||||
|
||||
| דגם | קידומת | הגבלה | מגבלת שיעור |
|
||||
| ------------------ | ------ | ------------- | -------------- |
|
||||
@@ -1087,7 +1087,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 FREE Providers (Emergency Backup)</b></summary>
|
||||
|
||||
### iFlow (5 דגמים בחינם באמצעות OAuth)
|
||||
### Qoder (5 דגמים בחינם באמצעות OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- בדוק סטטיסטיקת שימוש בלוח המחוונים ← עלויות
|
||||
- החלף את הדגם הראשי ל-GLM/MiniMax
|
||||
- השתמש בשכבה חינמית (Gemini CLI, iFlow) עבור משימות לא קריטיות
|
||||
- השתמש בשכבה חינמית (Gemini CLI, Qoder) עבור משימות לא קריטיות
|
||||
|
||||
**יציאות לוח המחוונים/API שגויות**
|
||||
|
||||
|
||||
+13
-13
@@ -200,7 +200,7 @@ Egy probléma megnyitásakor futtassa a system-info parancsot, és csatolja a ge
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Ez létrehoz egy `system-info.txt`-t a Node.js verziójával, az OmniRoute verziójával, az operációs rendszer részleteivel, a telepített CLI-eszközökkel (iflow, gemini, claude, codex, antigravitáció, droid stb.), Docker/PM2 állapottal és rendszercsomagokkal – mindennel, amire szükségünk van a probléma gyors reprodukálásához. Csatolja a fájlt közvetlenül a GitHub-problémához.
|
||||
Ez létrehoz egy `system-info.txt`-t a Node.js verziójával, az OmniRoute verziójával, az operációs rendszer részleteivel, a telepített CLI-eszközökkel (qoder, gemini, claude, codex, antigravitáció, droid stb.), Docker/PM2 állapottal és rendszercsomagokkal – mindennel, amire szükségünk van a probléma gyors reprodukálásához. Csatolja a fájlt közvetlenül a GitHub-problémához.
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +226,7 @@ Ez létrehoz egy `system-info.txt`-t a Node.js verziójával, az OmniRoute verzi
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -293,7 +293,7 @@ Nem mindenki fizethet havi 20–200 dollárt az AI-előfizetésekért. A feltör
|
||||
|
||||
**Hogyan oldja meg az OmniRoute:**
|
||||
|
||||
- **Beépített ingyenes szolgáltatók** - Natív támogatás a 100%-ban ingyenes szolgáltatókhoz: iFlow (5 korlátlan modell az OAuth-on keresztül: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen-modellek: 4 unqlim-plus3 qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID ingyen), Gemini CLI (180 000 token/hónap ingyenes)
|
||||
- **Beépített ingyenes szolgáltatók** - Natív támogatás a 100%-ban ingyenes szolgáltatókhoz: Qoder (5 korlátlan modell az OAuth-on keresztül: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen-modellek: 4 unqlim-plus3 qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID ingyen), Gemini CLI (180 000 token/hónap ingyenes)
|
||||
- **Ollama Cloud** – Felhőben tárolt Ollama modellek a `api.ollama.com` címen ingyenes „Light usage” szinttel; használja az `ollamacloud/<model>` előtagot
|
||||
- **Csak ingyenes kombók** - Lánc `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = 0 USD/hó nulla állásidővel
|
||||
- **NVIDIA NIM ingyenes hozzáférés** – ~40 RPM fejlesztői örökké ingyenes hozzáférés több mint 70 modellhez a build.nvidia.com oldalon (áttérés a kreditekről a tiszta sebességkorlátokra)
|
||||
@@ -357,7 +357,7 @@ Claude Code, Codex, Gemini CLI, Copilot – mindegyik az OAuth 2.0-t használja
|
||||
**Hogyan oldja meg az OmniRoute:**
|
||||
|
||||
- **Automatikus tokenfrissítés** - Az OAuth-tokenek a háttérben frissülnek a lejárat előtt
|
||||
- **OAuth 2.0 (PKCE) beépített** - Automatikus áramlás Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow számára
|
||||
- **OAuth 2.0 (PKCE) beépített** - Automatikus áramlás Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder számára
|
||||
- **Multi-Account OAuth** - Több fiók szolgáltatónként a JWT/ID token kivonattal
|
||||
- **OAuth LAN/Távoli javítás** - Privát IP-észlelés a `redirect_uri` számára + kézi URL mód távoli szerverekhez
|
||||
- **OAuth az Nginx mögött** - A `window.location.origin` kódot használja a fordított proxy kompatibilitáshoz
|
||||
@@ -734,7 +734,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| lépés | Akció | Szolgáltatók feloldva |
|
||||
| ----- | ---------------------------------------------------- | --------------------------------------------------------------------- |
|
||||
| 1 | Csatlakozás **Kiro** (AWS Builder ID OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **korlátlan** |
|
||||
| 2 | Csatlakoztassa az **iFlow-t** (Google OAuth) | kimi-k2-gondolkodás, qwen3-coder-plus, deepseek-r1... — **korlátlan** |
|
||||
| 2 | Csatlakoztassa az **Qoder-t** (Google OAuth) | kimi-k2-gondolkodás, qwen3-coder-plus, deepseek-r1... — **korlátlan** |
|
||||
| 3 | Csatlakoztassa a **Qwen** (eszközkód) | qwen3-coder-plus, qwen3-coder-flash... — **korlátlan** |
|
||||
| 4 | Csatlakozás **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro – **180K/hó ingyenes** |
|
||||
| 5 | `/dashboard/combos` → **Ingyenes köteg ($0)** sablon | Körbe-körbe minden ingyenes szolgáltató automatikusan |
|
||||
@@ -943,7 +943,7 @@ Ha minimalizálja, az OmniRoute a tálcán él, gyors műveletekkel:
|
||||
| | MiniMax M2.1 | 0,2 USD/1M | 5 órás gurulás | Legolcsóbb lehetőség |
|
||||
| | Kimi K2.5 (Moonshot API) 🆕 | Felhasználásonkénti fizetés | Nincs | Közvetlen Moonshot API hozzáférés |
|
||||
| | Kimi K2 | 9 USD/hó lakás | 10 millió token/hó | Előrelátható költség |
|
||||
| **🆓 INGYENES** | iFlow | **0 USD** | Korlátlan | 5 modell korlátlan |
|
||||
| **🆓 INGYENES** | Qoder | **0 USD** | Korlátlan | 5 modell korlátlan |
|
||||
| | Qwen | **0 USD** | Korlátlan | 4 modell korlátlan |
|
||||
| | Kiro | **0 USD** | Korlátlan | Claude Sonnet/Haiku (AWS Builder) |
|
||||
| | LongCat Flash-Lite 🆕 | **0 USD** (50 millió tok/nap 🔥) | 1 RPS | A legnagyobb ingyenes kvóta a Földön |
|
||||
@@ -958,7 +958,7 @@ Ha minimalizálja, az OmniRoute a tálcán él, gyors műveletekkel:
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -988,7 +988,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Korlátlan** | Nincs bejelentett napi felső határ |
|
||||
| `claude-opus-4.6` | `kr/` | **Korlátlan** | Legújabb Opus via Kiro |
|
||||
|
||||
### IFLOW MODELLEK (ingyenes OAuth – hitelkártya nélkül)
|
||||
### QODER MODELLEK (ingyenes OAuth – hitelkártya nélkül)
|
||||
|
||||
| Modell | Előtag | Limit | Rate Limit |
|
||||
| ------------------ | ------ | ------------- | ----------------------------- |
|
||||
@@ -1087,7 +1087,7 @@ Ingyenesen elérhető: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama-3.1
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 INGYENES szolgáltatók (vészhelyzeti biztonsági mentés)</b></summary>
|
||||
|
||||
### iFlow (5 INGYENES modell OAuth-on keresztül)
|
||||
### Qoder (5 INGYENES modell OAuth-on keresztül)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- Ellenőrizze a használati statisztikákat az Irányítópult → Költségek menüpontban
|
||||
- Állítsa át az elsődleges modellt GLM/MiniMax-ra
|
||||
- Használjon ingyenes réteget (Gemini CLI, iFlow) a nem kritikus feladatokhoz
|
||||
- Használjon ingyenes réteget (Gemini CLI, Qoder) a nem kritikus feladatokhoz
|
||||
|
||||
**Az irányítópult/API portok hibásak**
|
||||
|
||||
|
||||
+13
-13
@@ -200,7 +200,7 @@ Saat membuka masalah, jalankan perintah info sistem dan lampirkan file yang diha
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Ini menghasilkan `system-info.txt` dengan versi Node.js, versi OmniRoute, detail OS, alat CLI yang diinstal (iflow, gemini, claude, codex, antigravity, droid, dll.), status Docker/PM2, dan paket sistem — semua yang kami perlukan untuk mereproduksi masalah Anda dengan cepat. Lampirkan file langsung ke masalah GitHub Anda.
|
||||
Ini menghasilkan `system-info.txt` dengan versi Node.js, versi OmniRoute, detail OS, alat CLI yang diinstal (qoder, gemini, claude, codex, antigravity, droid, dll.), status Docker/PM2, dan paket sistem — semua yang kami perlukan untuk mereproduksi masalah Anda dengan cepat. Lampirkan file langsung ke masalah GitHub Anda.
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +226,7 @@ Ini menghasilkan `system-info.txt` dengan versi Node.js, versi OmniRoute, detail
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -293,7 +293,7 @@ Tidak semua orang mampu membayar $20–200/bulan untuk berlangganan AI. Pelajar,
|
||||
|
||||
**Bagaimana OmniRoute menyelesaikannya:**
|
||||
|
||||
- **Penyedia Tingkat Gratis Bawaan** — Dukungan asli untuk 100% penyedia gratis: iFlow (5 model tak terbatas melalui OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 model tak terbatas: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID gratis), Gemini CLI (gratis 180 ribu token/bulan)
|
||||
- **Penyedia Tingkat Gratis Bawaan** — Dukungan asli untuk 100% penyedia gratis: Qoder (5 model tak terbatas melalui OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 model tak terbatas: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID gratis), Gemini CLI (gratis 180 ribu token/bulan)
|
||||
- **Ollama Cloud** — Model Ollama yang dihosting cloud di `api.ollama.com` dengan tingkat "Penggunaan ringan" gratis; gunakan awalan `ollamacloud/<model>`
|
||||
- **Kombo Khusus Gratis** — Rantai `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = $0/bulan tanpa downtime
|
||||
- **Akses Gratis NVIDIA NIM** — akses gratis dev-selamanya ~40 RPM ke 70+ model di build.nvidia.com (beralih dari kredit ke batas tarif murni)
|
||||
@@ -357,7 +357,7 @@ Claude Code, Codex, Gemini CLI, Copilot — semuanya menggunakan OAuth 2.0 denga
|
||||
**Bagaimana OmniRoute menyelesaikannya:**
|
||||
|
||||
- **Penyegaran Token Otomatis** — Penyegaran token OAuth di latar belakang sebelum masa berlakunya habis
|
||||
- **OAuth 2.0 (PKCE) Bawaan** — Aliran otomatis untuk Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **OAuth 2.0 (PKCE) Bawaan** — Aliran otomatis untuk Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **OAuth Multi-Akun** — Beberapa akun per penyedia melalui ekstraksi token JWT/ID
|
||||
- **OAuth LAN/Remote Fix** — Deteksi IP pribadi untuk `redirect_uri` + mode URL manual untuk server jarak jauh
|
||||
- **OAuth Dibalik Nginx** — Menggunakan `window.location.origin` untuk kompatibilitas proxy terbalik
|
||||
@@ -734,7 +734,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Langkah | Aksi | Penyedia Tidak Terkunci |
|
||||
| ------- | ------------------------------------------------------ | ------------------------------------------------------------------------ |
|
||||
| 1 | Hubungkan **Kiro** (AWS Builder ID OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **tidak terbatas** |
|
||||
| 2 | Hubungkan **iFlow** (Google OAuth) | pemikiran kimi-k2, qwen3-coder-plus, deepseek-r1... — **tidak terbatas** |
|
||||
| 2 | Hubungkan **Qoder** (Google OAuth) | pemikiran kimi-k2, qwen3-coder-plus, deepseek-r1... — **tidak terbatas** |
|
||||
| 3 | Hubungkan **Qwen** (Kode Perangkat) | qwen3-coder-plus, qwen3-coder-flash... — **tidak terbatas** |
|
||||
| 4 | Hubungkan **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180K/bln gratis** |
|
||||
| 5 | `/dashboard/combos` → **Templat Tumpukan Gratis ($0)** | Round-robin semua penyedia gratis secara otomatis |
|
||||
@@ -943,7 +943,7 @@ Saat diminimalkan, OmniRoute ada di baki sistem Anda dengan tindakan cepat:
|
||||
| | MiniMax M2.1 | $0,2/1 juta | 5 jam bergulir | Pilihan termurah |
|
||||
| | Kimi K2.5 (API Moonshot) 🆕 | Bayar per penggunaan | Tidak ada | Akses langsung Moonshot API |
|
||||
| | Kimi K2 | $9/bln tetap | 10 juta token/bln | Biaya yang dapat diprediksi |
|
||||
| **🆓 GRATIS** | iFlow | **$0** | Tidak terbatas | 5 model tidak terbatas |
|
||||
| **🆓 GRATIS** | Qoder | **$0** | Tidak terbatas | 5 model tidak terbatas |
|
||||
| | Qwen | **$0** | Tidak terbatas | 4 model tidak terbatas |
|
||||
| | Kiro | **$0** | Tidak terbatas | Claude Soneta/Haiku (Pembuat AWS) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (50 juta tok/hari 🔥) | 1RPS | Kuota gratis terbesar di dunia |
|
||||
@@ -958,7 +958,7 @@ Saat diminimalkan, OmniRoute ada di baki sistem Anda dengan tindakan cepat:
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -988,7 +988,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Tidak terbatas** | Tidak ada batas harian yang dilaporkan |
|
||||
| `claude-opus-4.6` | `kr/` | **Tidak terbatas** | Opus Terbaru melalui Kiro |
|
||||
|
||||
### 🟢 MODEL IFLOW (OAuth Gratis — Tanpa Kartu Kredit)
|
||||
### 🟢 MODEL QODER (OAuth Gratis — Tanpa Kartu Kredit)
|
||||
|
||||
| Model | Awalan | Batasi | Batas Tarif |
|
||||
| ------------------ | ------ | ------------------ | ------------------------------- |
|
||||
@@ -1087,7 +1087,7 @@ Tersedia gratis: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama-3.1-70b-i
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 Penyedia GRATIS (Cadangan Darurat)</b></summary>
|
||||
|
||||
### iFlow (5 model GRATIS melalui OAuth)
|
||||
### Qoder (5 model GRATIS melalui OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- Periksa statistik penggunaan di Dashboard → Biaya
|
||||
- Ganti model utama ke GLM/MiniMax
|
||||
- Gunakan tingkat gratis (Gemini CLI, iFlow) untuk tugas-tugas yang tidak penting
|
||||
- Gunakan tingkat gratis (Gemini CLI, Qoder) untuk tugas-tugas yang tidak penting
|
||||
|
||||
**Port dasbor/API salah**
|
||||
|
||||
|
||||
+8
-8
@@ -201,7 +201,7 @@ _OmniRoute के माध्यम से किसी भी AI-संचा
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
यह आपके Node.js संस्करण, ओमनीरूट संस्करण, OS विवरण, स्थापित CLI उपकरण (iflow, जेमिनी, क्लाउड, कोडेक्स, एंटीग्रेविटी, ड्रॉइड, आदि), Docker/PM2 स्थिति और सिस्टम पैकेज के साथ एक `system-info.txt` उत्पन्न करता है - वह सब कुछ जो हमें आपकी समस्या को शीघ्रता से पुन: उत्पन्न करने के लिए चाहिए। फ़ाइल को सीधे अपने GitHub मुद्दे से संलग्न करें।
|
||||
यह आपके Node.js संस्करण, ओमनीरूट संस्करण, OS विवरण, स्थापित CLI उपकरण (qoder, जेमिनी, क्लाउड, कोडेक्स, एंटीग्रेविटी, ड्रॉइड, आदि), Docker/PM2 स्थिति और सिस्टम पैकेज के साथ एक `system-info.txt` उत्पन्न करता है - वह सब कुछ जो हमें आपकी समस्या को शीघ्रता से पुन: उत्पन्न करने के लिए चाहिए। फ़ाइल को सीधे अपने GitHub मुद्दे से संलग्न करें।
|
||||
|
||||
---
|
||||
|
||||
@@ -275,7 +275,7 @@ OpenAI/Codex जैसे प्रदाता कुछ भौगोलिक
|
||||
|
||||
**ओम्नीरूट इसे कैसे हल करता है:**
|
||||
|
||||
- **फ्री टियर प्रोवाइडर बिल्ट-इन** - 100% फ्री प्रदाताओं के लिए मूल समर्थन: iFlow (OAuth के माध्यम से 5 असीमित मॉडल: किमी-के2-थिंकिंग, क्वेन3-कोडर-प्लस, डीपसीक-आर1, मिनिमैक्स-एम2, किमी-के2), क्वेन (4 असीमित मॉडल: क्वेन3-कोडर-प्लस, क्वेन3-कोडर-फ्लैश, क्वेन3-कोडर-नेक्स्ट, विज़न-मॉडल), किरो (क्लाउड + एडब्ल्यूएस बिल्डर आईडी मुफ़्त), जेमिनी सीएलआई (180K टोकन/माह मुफ़्त)
|
||||
- **फ्री टियर प्रोवाइडर बिल्ट-इन** - 100% फ्री प्रदाताओं के लिए मूल समर्थन: Qoder (OAuth के माध्यम से 5 असीमित मॉडल: किमी-के2-थिंकिंग, क्वेन3-कोडर-प्लस, डीपसीक-आर1, मिनिमैक्स-एम2, किमी-के2), क्वेन (4 असीमित मॉडल: क्वेन3-कोडर-प्लस, क्वेन3-कोडर-फ्लैश, क्वेन3-कोडर-नेक्स्ट, विज़न-मॉडल), किरो (क्लाउड + एडब्ल्यूएस बिल्डर आईडी मुफ़्त), जेमिनी सीएलआई (180K टोकन/माह मुफ़्त)
|
||||
- **ओलामा क्लाउड** - निःशुल्क "लाइट उपयोग" स्तर के साथ `api.ollama.com` पर क्लाउड-होस्टेड ओलामा मॉडल; `ollamacloud/<model>` उपसर्ग का उपयोग करें
|
||||
- **केवल-निःशुल्क कॉम्बो** — चेन `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = $0/माह, शून्य डाउनटाइम के साथ
|
||||
- **एनवीडिया एनआईएम फ्री एक्सेस** - ~40 आरपीएम डेव-बिल्ड.एनवीडिया.कॉम पर 70+ मॉडलों तक हमेशा के लिए मुफ्त एक्सेस (क्रेडिट से शुद्ध दर सीमा तक संक्रमण)
|
||||
@@ -728,7 +728,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| कदम | कार्रवाई | प्रदाता अनलॉक |
|
||||
| --- | ------------------------------------------------------ | ---------------------------------------------------------- |
|
||||
| 1 | कनेक्ट **किरो** (AWS बिल्डर आईडी OAuth) | क्लाउड सॉनेट 4.5, हाइकु 4.5 - **असीमित** |
|
||||
| 2 | कनेक्ट करें **iFlow** (Google OAuth) | किमी-के2-सोच, क्वेन3-कोडर-प्लस, डीपसीक-आर1... — **असीमित** |
|
||||
| 2 | कनेक्ट करें **Qoder** (Google OAuth) | किमी-के2-सोच, क्वेन3-कोडर-प्लस, डीपसीक-आर1... — **असीमित** |
|
||||
| 3 | कनेक्ट **क्वेन** (डिवाइस कोड) | qwen3-कोडर-प्लस, qwen3-कोडर-फ़्लैश... — **असीमित** |
|
||||
| 4 | कनेक्ट **मिथुन सीएलआई** (Google OAuth) | जेमिनी-3-फ़्लैश, जेमिनी-2.5-प्रो — **180K/महीना मुफ़्त** |
|
||||
| 5 | `/dashboard/combos` → **निःशुल्क स्टैक ($0)** टेम्पलेट | सभी मुफ़्त प्रदाताओं को स्वचालित रूप से राउंड-रॉबिन करें |
|
||||
@@ -917,7 +917,7 @@ omniroute --mcp
|
||||
| `claude-haiku-4.5` | `kr/` | **असीमित** | कोई रिपोर्ट नहीं की गई दैनिक सीमा |
|
||||
| `claude-opus-4.6` | `kr/` | **असीमित** | किरो के माध्यम से नवीनतम रचना |
|
||||
|
||||
### 🟢 IFLOW मॉडल (निःशुल्क OAuth - कोई क्रेडिट कार्ड नहीं)
|
||||
### 🟢 QODER मॉडल (निःशुल्क OAuth - कोई क्रेडिट कार्ड नहीं)
|
||||
|
||||
| मॉडल | उपसर्ग | सीमा | दर सीमा |
|
||||
| ------------------ | ------ | ---------- | --------------------------- |
|
||||
@@ -1016,7 +1016,7 @@ omniroute --mcp
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1450,11 +1450,11 @@ Models:
|
||||
|
||||
<summary><b>🆓 मुफ़्त प्रदाता (आपातकालीन बैकअप)</b></summary>
|
||||
|
||||
### iFlow (OAuth के माध्यम से 5 निःशुल्क मॉडल)
|
||||
### Qoder (OAuth के माध्यम से 5 निःशुल्क मॉडल)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
|
||||
+13
-13
@@ -200,7 +200,7 @@ _AI を活用した IDE または CLI ツールを、無制限のコーディン
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
これにより、Node.js のバージョン、OmniRoute のバージョン、OS の詳細、インストールされている CLI ツール (iflow、gemini、claude、codex、antigravity、droid など)、Docker/PM2 のステータス、システム パッケージなど、問題を迅速に再現するために必要なものすべてを含む `system-info.txt` が生成されます。ファイルを GitHub の問題に直接添付します。
|
||||
これにより、Node.js のバージョン、OmniRoute のバージョン、OS の詳細、インストールされている CLI ツール (qoder、gemini、claude、codex、antigravity、droid など)、Docker/PM2 のステータス、システム パッケージなど、問題を迅速に再現するために必要なものすべてを含む `system-info.txt` が生成されます。ファイルを GitHub の問題に直接添付します。
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +226,7 @@ npm run system-info
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -293,7 +293,7 @@ OpenAI/Codex などのプロバイダーは、特定の地理的地域からの
|
||||
|
||||
**OmniRoute がそれを解決する方法:**
|
||||
|
||||
- **無料利用枠プロバイダーの組み込み** — 100% 無料プロバイダーのネイティブ サポート: iFlow (OAuth 経由の 5 つの無制限のモデル: kimi-k2- Thinking、qwen3-coder-plus、deepseek-r1、minimax-m2、kimi-k2)、Qwen (4 つの無制限のモデル: qwen3-coder-plus、qwen3-coder-flash、qwen3-coder-next、 vision-model)、Kiro (Claude + AWS Builder ID は無料)、Gemini CLI (180,000 トークン/月は無料)
|
||||
- **無料利用枠プロバイダーの組み込み** — 100% 無料プロバイダーのネイティブ サポート: Qoder (OAuth 経由の 5 つの無制限のモデル: kimi-k2- Thinking、qwen3-coder-plus、deepseek-r1、minimax-m2、kimi-k2)、Qwen (4 つの無制限のモデル: qwen3-coder-plus、qwen3-coder-flash、qwen3-coder-next、 vision-model)、Kiro (Claude + AWS Builder ID は無料)、Gemini CLI (180,000 トークン/月は無料)
|
||||
- **Ollama Cloud** — 無料の「ライト使用量」レベルの `api.ollama.com` のクラウド ホスト型 Ollama モデル。 `ollamacloud/<model>` プレフィックスを使用する
|
||||
- **無料のみのコンボ** — チェーン `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = 月額 0 ドル、ダウンタイムなし
|
||||
- **NVIDIA NIM 無料アクセス** — ~40 RPM 開発 - build.nvidia.com で 70 以上のモデルに永久に無料アクセス (クレジットから純粋なレート制限に移行)
|
||||
@@ -357,7 +357,7 @@ Claude Code、Codex、Gemini CLI、Copilot — すべては有効期限切れの
|
||||
**OmniRoute がそれを解決する方法:**
|
||||
|
||||
- **自動トークン更新** — OAuth トークンは有効期限が切れる前にバックグラウンドで更新されます。
|
||||
- **OAuth 2.0 (PKCE) ビルトイン** — Claude Code、Codex、Gemini CLI、Copilot、Kiro、Qwen、iFlow の自動フロー
|
||||
- **OAuth 2.0 (PKCE) ビルトイン** — Claude Code、Codex、Gemini CLI、Copilot、Kiro、Qwen、Qoder の自動フロー
|
||||
- **マルチアカウント OAuth** — JWT/ID トークン抽出によるプロバイダーごとの複数のアカウント
|
||||
- **OAuth LAN/リモート修正** — `redirect_uri` のプライベート IP 検出 + リモート サーバーの手動 URL モード
|
||||
- **Nginx の背後にある OAuth** — リバース プロキシの互換性のために `window.location.origin` を使用します
|
||||
@@ -734,7 +734,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| ステップ | アクション | プロバイダーのロックが解除されました |
|
||||
| -------- | -------------------------------------------------------- | ---------------------------------------------------------------- |
|
||||
| 1 | **Kiro** に接続 (AWS ビルダー ID OAuth) | Claude Sonnet 4.5、Haiku 4.5 — **無制限** |
|
||||
| 2 | **iFlow** に接続する (Google OAuth) | kimi-k2- Thinking、qwen3-coder-plus、deepseek-r1... — **無制限** |
|
||||
| 2 | **Qoder** に接続する (Google OAuth) | kimi-k2- Thinking、qwen3-coder-plus、deepseek-r1... — **無制限** |
|
||||
| 3 | **Qwen** を接続 (デバイス コード) | qwen3-coder-plus、qwen3-coder-flash... — **無制限** |
|
||||
| 4 | **Gemini CLI** に接続する (Google OAuth) | gemini-3-flash、gemini-2.5-pro — **180K/月無料** |
|
||||
| 5 | `/dashboard/combos` → **無料スタック ($0)** テンプレート | すべての無料プロバイダーを自動的にラウンドロビンします。 |
|
||||
@@ -943,7 +943,7 @@ npm run electron:build:linux # Linux (.AppImage)
|
||||
| | ミニマックス M2.1 | $0.2/100万 | 5時間ローリング | 最も安いオプション |
|
||||
| | キミ K2.5 (ムーンショット API) 🆕 | 従量課金制 | なし | Moonshot API への直接アクセス |
|
||||
| | キミ K2 | 月額 9 ドルのフラット | 1,000 万トークン/月 | 予測可能なコスト |
|
||||
| **🆓 無料** | iFlow | **$0** | 無制限 | 5モデル無制限 |
|
||||
| **🆓 無料** | Qoder | **$0** | 無制限 | 5モデル無制限 |
|
||||
| | クウェン | **$0** | 無制限 | 4モデル無制限 |
|
||||
| | キロ | **$0** | 無制限 | クロード・ソネット/俳句 (AWS ビルダー) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (5,000 万トーク/日 🔥) | 1 RPS | 地球上で最大の無料割り当て |
|
||||
@@ -958,7 +958,7 @@ npm run electron:build:linux # Linux (.AppImage)
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -988,7 +988,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **無制限** | 1 日あたりの上限は報告されていません |
|
||||
| `claude-opus-4.6` | `kr/` | **無制限** | Kiro 経由の最新作品 |
|
||||
|
||||
### 🟢 IFLOW モデル (無料 OAuth — クレジット カードなし)
|
||||
### 🟢 QODER モデル (無料 OAuth — クレジット カードなし)
|
||||
|
||||
| モデル | プレフィックス | 制限 | レート制限 |
|
||||
| ------------------ | -------------- | ---------- | -------------------------- |
|
||||
@@ -1087,7 +1087,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1536,11 +1536,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 無料プロバイダー (緊急バックアップ)</b></summary>
|
||||
|
||||
### iFlow (OAuth 経由の 5 つの無料モデル)
|
||||
### Qoder (OAuth 経由の 5 つの無料モデル)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1738,7 +1738,7 @@ opencode
|
||||
|
||||
- [ダッシュボード] → [コスト] で使用状況の統計を確認します。
|
||||
- プライマリ モデルを GLM/MiniMax に切り替えます
|
||||
- 重要ではないタスクには無料枠 (Gemini CLI、iFlow) を使用する
|
||||
- 重要ではないタスクには無料枠 (Gemini CLI、Qoder) を使用する
|
||||
|
||||
**ダッシュボード/API ポートが間違っています**
|
||||
|
||||
|
||||
+12
-12
@@ -200,7 +200,7 @@ When opening an issue, please run the system-info command and attach the generat
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
그러면 Node.js 버전, OmniRoute 버전, OS 세부 정보, 설치된 CLI 도구(iflow, gemini, claude, codex, antigravity, droid 등), Docker/PM2 상태, 시스템 패키지 등 문제를 신속하게 재현하는 데 필요한 모든 항목이 포함된 `system-info.txt`이 생성됩니다. GitHub 문제에 직접 파일을 첨부하세요.
|
||||
그러면 Node.js 버전, OmniRoute 버전, OS 세부 정보, 설치된 CLI 도구(qoder, gemini, claude, codex, antigravity, droid 등), Docker/PM2 상태, 시스템 패키지 등 문제를 신속하게 재현하는 데 필요한 모든 항목이 포함된 `system-info.txt`이 생성됩니다. GitHub 문제에 직접 파일을 첨부하세요.
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +226,7 @@ npm run system-info
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -293,7 +293,7 @@ Not everyone can pay $20–200/month for AI subscriptions. Students, devs from e
|
||||
|
||||
**OmniRoute가 이를 해결하는 방법:**
|
||||
|
||||
- **무료 계층 제공자 내장** — 100% 무료 제공자에 대한 기본 지원: iFlow(OAuth를 통한 5개의 무제한 모델: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen(4개의 무제한 모델: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, Vision-model), Kiro (Claude + AWS Builder ID for free), Gemini CLI (180K tokens/month free)
|
||||
- **무료 계층 제공자 내장** — 100% 무료 제공자에 대한 기본 지원: Qoder(OAuth를 통한 5개의 무제한 모델: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen(4개의 무제한 모델: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, Vision-model), Kiro (Claude + AWS Builder ID for free), Gemini CLI (180K tokens/month free)
|
||||
- **Ollama Cloud** — Cloud-hosted Ollama models at `api.ollama.com` with free "Light usage" tier; `ollamacloud/<model>` 접두사 사용
|
||||
- **Free-Only Combos** — Chain `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = $0/month with zero downtime
|
||||
- **NVIDIA NIM 무료 액세스** — ~40RPM 개발 - build.nvidia.com에서 70개 이상의 모델에 영원히 무료 액세스(크레딧에서 순수 속도 제한으로 전환)
|
||||
@@ -357,7 +357,7 @@ Claude Code, Codex, Gemini CLI, Copilot — all use OAuth 2.0 with expiring toke
|
||||
**OmniRoute가 이를 해결하는 방법:**
|
||||
|
||||
- **Auto Token Refresh** — OAuth tokens refresh in background before expiration
|
||||
- **OAuth 2.0 (PKCE) Built-in** — Automatic flow for Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **OAuth 2.0 (PKCE) Built-in** — Automatic flow for Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **Multi-Account OAuth** — Multiple accounts per provider via JWT/ID token extraction
|
||||
- **OAuth LAN/Remote Fix** — Private IP detection for `redirect_uri` + manual URL mode for remote servers
|
||||
- **OAuth Behind Nginx** — Uses `window.location.origin` for reverse proxy compatibility
|
||||
@@ -734,7 +734,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| 단계 | 액션 | 제공자 잠금 해제 |
|
||||
| ---- | ---------------------------------------------- | --------------------------------------------------------------- |
|
||||
| 1 | **Kiro** 연결(AWS Builder ID OAuth) | 클로드 소네트 4.5, 하이쿠 4.5 — **무제한** |
|
||||
| 2 | **iFlow** 연결(Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **무제한** |
|
||||
| 2 | **Qoder** 연결(Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **무제한** |
|
||||
| 3 | 연결 **Qwen**(장치 코드) | qwen3-coder-plus, qwen3-coder-flash... — **무제한** |
|
||||
| 4 | **Gemini CLI**(Google OAuth) 연결 | gemini-3-flash, gemini-2.5-pro — **180K/월 무료** |
|
||||
| 5 | `/dashboard/combos` → **무료 스택($0)** 템플릿 | 모든 무료 공급자를 자동으로 라운드 로빈 |
|
||||
@@ -958,7 +958,7 @@ npm run electron:build:linux # Linux (.AppImage)
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -988,7 +988,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **무제한** | 보고된 일일 한도 없음 |
|
||||
| `claude-opus-4.6` | `kr/` | **무제한** | Kiro를 통한 최신 Opus |
|
||||
|
||||
### 🟢 IFLOW 모델(무료 OAuth — 신용카드 없음)
|
||||
### 🟢 QODER 모델(무료 OAuth — 신용카드 없음)
|
||||
|
||||
| 모델 | 접두사 | 한도 | 비율 제한 |
|
||||
| ------------------ | ------ | ---------- | ---------------- |
|
||||
@@ -1087,7 +1087,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 무료 제공업체(긴급 백업)</b></summary>
|
||||
|
||||
### iFlow(OAuth를 통한 5개 무료 모델)
|
||||
### Qoder(OAuth를 통한 5개 무료 모델)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- 대시보드 → 비용에서 사용 통계를 확인하세요.
|
||||
- 기본 모델을 GLM/MiniMax로 전환
|
||||
- 중요하지 않은 작업에는 무료 계층(Gemini CLI, iFlow)을 사용합니다.
|
||||
- 중요하지 않은 작업에는 무료 계층(Gemini CLI, Qoder)을 사용합니다.
|
||||
|
||||
**대시보드/API 포트가 잘못되었습니다**
|
||||
|
||||
|
||||
@@ -26,6 +26,30 @@ _Your universal API proxy — one endpoint, 67+ providers, zero downtime. Now wi
|
||||
|
||||
---
|
||||
|
||||
## Breaking Change: Unified Logging Upgrade
|
||||
|
||||
> [!WARNING]
|
||||
> **This release changes both the on-disk request log layout and the logging environment variables.**
|
||||
>
|
||||
> If you are upgrading an existing instance:
|
||||
>
|
||||
> - Request logs now live in `DATA_DIR/call_logs/YYYY-MM-DD/` as **one JSON artifact per request**.
|
||||
> - The old `DATA_DIR/logs/` session folders and `DATA_DIR/log.txt` summary file are removed.
|
||||
> - On the first startup after upgrading, OmniRoute creates a safety backup at `DATA_DIR/log_archives/*.zip` before removing the deprecated request log layout.
|
||||
> - Legacy logging env vars such as `LOG_TO_FILE`, `LOG_FILE_PATH`, `LOG_MAX_FILE_SIZE`, `LOG_RETENTION_DAYS`, `LOG_LEVEL`, `LOG_FORMAT`, `ENABLE_REQUEST_LOGS`, `CALL_LOGS_MAX`, `CALL_LOG_PAYLOAD_MODE`, and `PROXY_LOG_MAX_ENTRIES` are no longer supported.
|
||||
> - Use the new env model instead:
|
||||
> - `APP_LOG_TO_FILE`
|
||||
> - `APP_LOG_FILE_PATH`
|
||||
> - `APP_LOG_MAX_FILE_SIZE`
|
||||
> - `APP_LOG_RETENTION_DAYS`
|
||||
> - `APP_LOG_LEVEL`
|
||||
> - `APP_LOG_FORMAT`
|
||||
> - `CALL_LOG_RETENTION_DAYS`
|
||||
>
|
||||
> For release details and upgrade notes, see the [CHANGELOG](CHANGELOG.md).
|
||||
|
||||
---
|
||||
|
||||
## 🆕 What's New in v3.0.0
|
||||
|
||||
> **Upgrading from v2.9.5?** — See the [full CHANGELOG](CHANGELOG.md#300--2026-03-22-release-candidate--not-yet-merged-to-main) for all changes.
|
||||
@@ -199,7 +223,7 @@ When opening an issue, please run the system-info command and attach the generat
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
This generates a `system-info.txt` with your Node.js version, OmniRoute version, OS details, installed CLI tools (iflow, gemini, claude, codex, antigravity, droid, etc.), Docker/PM2 status, and system packages — everything we need to reproduce your issue quickly. Attach the file directly to your GitHub issue.
|
||||
This generates a `system-info.txt` with your Node.js version, OmniRoute version, OS details, installed CLI tools (qoder, gemini, claude, codex, antigravity, droid, etc.), Docker/PM2 status, and system packages — everything we need to reproduce your issue quickly. Attach the file directly to your GitHub issue.
|
||||
|
||||
---
|
||||
|
||||
@@ -225,7 +249,7 @@ This generates a `system-info.txt` with your Node.js version, OmniRoute version,
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -292,7 +316,7 @@ Not everyone can pay $20–200/month for AI subscriptions. Students, devs from e
|
||||
|
||||
**How OmniRoute solves it:**
|
||||
|
||||
- **Free Tier Providers Built-in** — Native support for 100% free providers: iFlow (5 unlimited models via OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 unlimited models: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID for free), Gemini CLI (180K tokens/month free)
|
||||
- **Free Tier Providers Built-in** — Native support for 100% free providers: Qoder (5 unlimited models via OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 unlimited models: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID for free), Gemini CLI (180K tokens/month free)
|
||||
- **Ollama Cloud** — Cloud-hosted Ollama models at `api.ollama.com` with free "Light usage" tier; use `ollamacloud/<model>` prefix
|
||||
- **Free-Only Combos** — Chain `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = $0/month with zero downtime
|
||||
- **NVIDIA NIM Free Access** — ~40 RPM dev-forever free access to 70+ models at build.nvidia.com (transitioning from credits to pure rate limits)
|
||||
@@ -356,7 +380,7 @@ Claude Code, Codex, Gemini CLI, Copilot — all use OAuth 2.0 with expiring toke
|
||||
**How OmniRoute solves it:**
|
||||
|
||||
- **Auto Token Refresh** — OAuth tokens refresh in background before expiration
|
||||
- **OAuth 2.0 (PKCE) Built-in** — Automatic flow for Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **OAuth 2.0 (PKCE) Built-in** — Automatic flow for Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **Multi-Account OAuth** — Multiple accounts per provider via JWT/ID token extraction
|
||||
- **OAuth LAN/Remote Fix** — Private IP detection for `redirect_uri` + manual URL mode for remote servers
|
||||
- **OAuth Behind Nginx** — Uses `window.location.origin` for reverse proxy compatibility
|
||||
@@ -409,7 +433,7 @@ Installing, configuring, and maintaining an AI proxy across different environmen
|
||||
- **Electron Desktop App** — Native app for Windows/macOS/Linux with system tray, auto-start, offline mode
|
||||
- **Split-Port Mode** — API and Dashboard on separate ports for advanced scenarios (reverse proxy, container networking)
|
||||
- **Cloud Sync** — Config synchronization across devices via Cloudflare Workers
|
||||
- **DB Backups** — Automatic backup, restore, export and import of all settings
|
||||
- **DB Backups** — Automatic backup, restore, export and import of all settings, with `DISABLE_SQLITE_AUTO_BACKUP` for externally managed backups
|
||||
|
||||
</details>
|
||||
|
||||
@@ -733,7 +757,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Step | Action | Providers Unlocked |
|
||||
| ---- | -------------------------------------------------- | ------------------------------------------------------------------ |
|
||||
| 1 | Connect **Kiro** (AWS Builder ID OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **unlimited** |
|
||||
| 2 | Connect **iFlow** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **unlimited** |
|
||||
| 2 | Connect **Qoder** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **unlimited** |
|
||||
| 3 | Connect **Qwen** (Device Code) | qwen3-coder-plus, qwen3-coder-flash... — **unlimited** |
|
||||
| 4 | Connect **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180K/mo free** |
|
||||
| 5 | `/dashboard/combos` → **Free Stack ($0)** template | Round-robin all free providers automatically |
|
||||
@@ -980,7 +1004,7 @@ When minimized, OmniRoute lives in your system tray with quick actions:
|
||||
| | MiniMax M2.1 | $0.2/1M | 5-hour rolling | Cheapest option |
|
||||
| | Kimi K2.5 (Moonshot API) 🆕 | Pay-per-use | None | Direct Moonshot API access |
|
||||
| | Kimi K2 | $9/mo flat | 10M tokens/mo | Predictable cost |
|
||||
| **🆓 FREE** | iFlow | **$0** | Unlimited | 5 models unlimited |
|
||||
| **🆓 FREE** | Qoder | **$0** | Unlimited | 5 models unlimited |
|
||||
| | Qwen | **$0** | Unlimited | 4 models unlimited |
|
||||
| | Kiro | **$0** | Unlimited | Claude Sonnet/Haiku (AWS Builder) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (50M tok/day 🔥) | 1 RPS | Largest free quota on Earth |
|
||||
@@ -995,7 +1019,7 @@ When minimized, OmniRoute lives in your system tray with quick actions:
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -1025,7 +1049,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Unlimited** | No reported daily cap |
|
||||
| `claude-opus-4.6` | `kr/` | **Unlimited** | Latest Opus via Kiro |
|
||||
|
||||
### 🟢 IFLOW MODELS (Free OAuth — No Credit Card)
|
||||
### 🟢 QODER MODELS (Free OAuth — No Credit Card)
|
||||
|
||||
| Model | Prefix | Limit | Rate Limit |
|
||||
| ------------------ | ------ | ------------- | --------------- |
|
||||
@@ -1124,7 +1148,7 @@ Available free: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama-3.1-70b-in
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1276,21 +1300,22 @@ OmniRoute v2.0 is built as an operational platform, not just a relay proxy.
|
||||
|
||||
### ☁️ Deployment & Platform
|
||||
|
||||
| Feature | What It Does |
|
||||
| ----------------------------- | --------------------------------------------------------- |
|
||||
| 🌐 **Deploy Anywhere** | Localhost, VPS, Docker, Cloud environments |
|
||||
| 🚇 **Cloudflare Tunnel** 🆕 | One-click Quick Tunnel integration from the dashboard |
|
||||
| 💾 **Cloud Sync** | Configuration sync via cloud worker |
|
||||
| 🔄 **Backup/Restore** | Export/import and disaster recovery flows |
|
||||
| 🧙 **Onboarding Wizard** | First-run guided setup |
|
||||
| 🔧 **CLI Tools Dashboard** | One-click setup for popular coding tools |
|
||||
| 🎮 **Model Playground** | Test any provider/model/endpoint from the dashboard |
|
||||
| 🔏 **CLI Fingerprint Toggle** | Per-provider fingerprint matching in Settings > Security |
|
||||
| 🌐 **i18n (30 languages)** | Full dashboard + docs language support with RTL coverage |
|
||||
| 🧹 **Clear All Models** | One-click model list clearing in provider details |
|
||||
| 👁️ **Sidebar Controls** 🆕 | Hide components and integrations from Appearance Settings |
|
||||
| 📋 **Issue Templates** | Standardized GitHub templates for bugs and features |
|
||||
| 📂 **Custom Data Directory** | `DATA_DIR` override for storage location |
|
||||
| Feature | What It Does |
|
||||
| ------------------------------ | --------------------------------------------------------------------- |
|
||||
| 🌐 **Deploy Anywhere** | Localhost, VPS, Docker, Cloud environments |
|
||||
| 🚇 **Cloudflare Tunnel** 🆕 | One-click Quick Tunnel integration from the dashboard |
|
||||
| 🔑 **API Key Model Filtering** | Native /v1/models response filtered via assigned Bearer context roles |
|
||||
| ⚡ **Smart Cache Bypass** | Configurable TTL heuristics and forced refetch controls |
|
||||
| 🔄 **Backup/Restore** | Export/import and disaster recovery flows |
|
||||
| 🧙 **Onboarding Wizard** | First-run guided setup |
|
||||
| 🔧 **CLI Tools Dashboard** | One-click setup for popular coding tools |
|
||||
| 🎮 **Model Playground** | Test any provider/model/endpoint from the dashboard |
|
||||
| 🔏 **CLI Fingerprint Toggle** | Per-provider fingerprint matching in Settings > Security |
|
||||
| 🌐 **i18n (30 languages)** | Full dashboard + docs language support with RTL coverage |
|
||||
| 🧹 **Clear All Models** | One-click model list clearing in provider details |
|
||||
| 👁️ **Sidebar Controls** 🆕 | Hide components and integrations from Appearance Settings |
|
||||
| 📋 **Issue Templates** | Standardized GitHub templates for bugs and features |
|
||||
| 📂 **Custom Data Directory** | `DATA_DIR` override for storage location |
|
||||
|
||||
### Feature Deep Dive
|
||||
|
||||
@@ -1542,6 +1567,8 @@ Models:
|
||||
|
||||
**Models:** Access 100+ models from all major providers through a single API key.
|
||||
|
||||
**Dashboard behavior:** OpenRouter models are managed from **Available Models**. Manual add, import, and auto-sync all update the same list.
|
||||
|
||||
</details>
|
||||
|
||||
<details>
|
||||
@@ -1584,11 +1611,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 FREE Providers (Emergency Backup)</b></summary>
|
||||
|
||||
### iFlow (5 FREE models via OAuth)
|
||||
### Qoder (5 FREE models via OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1786,7 +1813,7 @@ opencode
|
||||
|
||||
- Check usage stats in Dashboard → Costs
|
||||
- Switch primary model to GLM/MiniMax
|
||||
- Use free tier (Gemini CLI, iFlow) for non-critical tasks
|
||||
- Use free tier (Gemini CLI, Qoder) for non-critical tasks
|
||||
|
||||
**Dashboard/API ports are wrong**
|
||||
|
||||
@@ -1808,7 +1835,9 @@ opencode
|
||||
|
||||
**No request logs**
|
||||
|
||||
- Set `ENABLE_REQUEST_LOGS=true` in `.env`
|
||||
- Request artifacts are written to `DATA_DIR/call_logs/` as one JSON file per request
|
||||
- Enable pipeline capture from Dashboard → Logs → Request Logs if you need detailed per-stage payloads
|
||||
- Set `APP_LOG_TO_FILE=true` if you also want application console logs in `logs/application/app.log`
|
||||
|
||||
**Connection test shows "Invalid" for OpenAI-compatible providers**
|
||||
|
||||
|
||||
+13
-13
@@ -200,7 +200,7 @@ Apabila membuka isu, sila jalankan arahan maklumat sistem dan lampirkan fail yan
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Ini menjana `system-info.txt` dengan versi Node.js anda, versi OmniRoute, butiran OS, alat CLI yang dipasang (iflow, gemini, claude, codex, antigravity, droid, dll.), status Docker/PM2 dan pakej sistem — semua yang kami perlukan untuk mengeluarkan semula isu anda dengan cepat. Lampirkan fail terus pada isu GitHub anda.
|
||||
Ini menjana `system-info.txt` dengan versi Node.js anda, versi OmniRoute, butiran OS, alat CLI yang dipasang (qoder, gemini, claude, codex, antigravity, droid, dll.), status Docker/PM2 dan pakej sistem — semua yang kami perlukan untuk mengeluarkan semula isu anda dengan cepat. Lampirkan fail terus pada isu GitHub anda.
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +226,7 @@ Ini menjana `system-info.txt` dengan versi Node.js anda, versi OmniRoute, butira
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -293,7 +293,7 @@ Tidak semua orang boleh membayar $20–200/bulan untuk langganan AI. Pelajar, pe
|
||||
|
||||
**Cara OmniRoute menyelesaikannya:**
|
||||
|
||||
- **Pembekal Peringkat Percuma Terbina dalam** — Sokongan asli untuk penyedia percuma 100%: iFlow (5 model tanpa had melalui OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 model tanpa had: qwender3-coder3,-coplus qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID secara percuma), Gemini CLI (180K token/bulan percuma)
|
||||
- **Pembekal Peringkat Percuma Terbina dalam** — Sokongan asli untuk penyedia percuma 100%: Qoder (5 model tanpa had melalui OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 model tanpa had: qwender3-coder3,-coplus qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID secara percuma), Gemini CLI (180K token/bulan percuma)
|
||||
- **Ollama Cloud** — Model Ollama dihoskan awan di `api.ollama.com` dengan peringkat "Penggunaan cahaya" percuma; gunakan awalan `ollamacloud/<model>`
|
||||
- **Kombo Percuma-Sahaja** — Rantaian `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = $0/bulan tanpa masa berhenti sifar
|
||||
- **Akses Percuma NVIDIA NIM** — ~40 RPM dev-forever akses percuma kepada 70+ model di build.nvidia.com (peralihan daripada kredit kepada had kadar tulen)
|
||||
@@ -357,7 +357,7 @@ Kod Claude, Codex, Gemini CLI, Copilot — semuanya menggunakan OAuth 2.0 dengan
|
||||
**Cara OmniRoute menyelesaikannya:**
|
||||
|
||||
- **Muat Semula Token Auto** — Token OAuth dimuat semula di latar belakang sebelum tamat tempoh
|
||||
- **OAuth 2.0 (PKCE) Terbina dalam** — Aliran automatik untuk Kod Claude, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **OAuth 2.0 (PKCE) Terbina dalam** — Aliran automatik untuk Kod Claude, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **OAuth Berbilang Akaun** — Berbilang akaun bagi setiap pembekal melalui pengekstrakan token JWT/ID
|
||||
- **OAuth LAN/Remote Fix** — Pengesanan IP peribadi untuk `redirect_uri` + mod URL manual untuk pelayan jauh
|
||||
- **OAuth Behind Nginx** — Menggunakan `window.location.origin` untuk keserasian proksi terbalik
|
||||
@@ -734,7 +734,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Langkah | Tindakan | Pembekal Dibuka Kunci |
|
||||
| ------- | ------------------------------------------------------- | ------------------------------------------------------------------ |
|
||||
| 1 | Sambung **Kiro** (AWS Builder ID OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **tanpa had** |
|
||||
| 2 | Sambung **iFlow** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **tanpa had** |
|
||||
| 2 | Sambung **Qoder** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **tanpa had** |
|
||||
| 3 | Sambung **Qwen** (Kod Peranti) | qwen3-coder-plus, qwen3-coder-flash... — **tanpa had** |
|
||||
| 4 | Sambung **Gemini CLI** (Google OAuth) | gemini-3-flash, Gemini-2.5-pro — **180K/bln percuma** |
|
||||
| 5 | `/dashboard/combos` → **Templat Timbunan Percuma ($0)** | Round-robin semua pembekal percuma secara automatik |
|
||||
@@ -943,7 +943,7 @@ Apabila diminimumkan, OmniRoute tinggal dalam dulang sistem anda dengan tindakan
|
||||
| | MiniMax M2.1 | $0.2/1J | 5 jam bergolek | Pilihan termurah |
|
||||
| | Kimi K2.5 (Moonshot API) 🆕 | Bayar setiap penggunaan | Tiada | Akses langsung Moonshot API |
|
||||
| | Kimi K2 | $9/bln flat | 10 juta token/bln | Kos yang boleh diramal |
|
||||
| **🆓 PERCUMA** | iFlow | **$0** | tanpa had | 5 model tanpa had |
|
||||
| **🆓 PERCUMA** | Qoder | **$0** | tanpa had | 5 model tanpa had |
|
||||
| | Qwen | **$0** | tanpa had | 4 model tanpa had |
|
||||
| | Kiro | **$0** | tanpa had | Claude Sonnet/Haiku (Pembina AWS) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (50J tok/hari 🔥) | 1 RPS | Kuota percuma terbesar di Bumi |
|
||||
@@ -958,7 +958,7 @@ Apabila diminimumkan, OmniRoute tinggal dalam dulang sistem anda dengan tindakan
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -988,7 +988,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Tidak terhad** | Tiada had harian dilaporkan |
|
||||
| `claude-opus-4.6` | `kr/` | **Tidak terhad** | Opus terkini melalui Kiro |
|
||||
|
||||
### 🟢 MODEL IFLOW (OAuth Percuma — Tiada Kad Kredit)
|
||||
### 🟢 MODEL QODER (OAuth Percuma — Tiada Kad Kredit)
|
||||
|
||||
| Model | Awalan | Had | Had Kadar |
|
||||
| ------------------ | ------ | ---------------- | ------------------------- |
|
||||
@@ -1087,7 +1087,7 @@ Tersedia secara percuma: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama-3
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 Pembekal PERCUMA (Sandaran Kecemasan)</b></summary>
|
||||
|
||||
### iFlow (5 model PERCUMA melalui OAuth)
|
||||
### Qoder (5 model PERCUMA melalui OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- Semak statistik penggunaan dalam Papan Pemuka → Kos
|
||||
- Tukar model utama kepada GLM/MiniMax
|
||||
- Gunakan peringkat percuma (Gemini CLI, iFlow) untuk tugasan yang tidak kritikal
|
||||
- Gunakan peringkat percuma (Gemini CLI, Qoder) untuk tugasan yang tidak kritikal
|
||||
|
||||
**Port papan pemuka/API salah**
|
||||
|
||||
|
||||
+13
-13
@@ -200,7 +200,7 @@ Wanneer u een probleem opent, voert u de opdracht system-info uit en voegt u het
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Dit genereert een `system-info.txt` met uw Node.js-versie, OmniRoute-versie, OS-details, geïnstalleerde CLI-tools (iflow, gemini, claude, codex, antigravity, droid, enz.), Docker/PM2-status en systeempakketten - alles wat we nodig hebben om uw probleem snel te reproduceren. Voeg het bestand rechtstreeks toe aan uw GitHub-probleem.
|
||||
Dit genereert een `system-info.txt` met uw Node.js-versie, OmniRoute-versie, OS-details, geïnstalleerde CLI-tools (qoder, gemini, claude, codex, antigravity, droid, enz.), Docker/PM2-status en systeempakketten - alles wat we nodig hebben om uw probleem snel te reproduceren. Voeg het bestand rechtstreeks toe aan uw GitHub-probleem.
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +226,7 @@ Dit genereert een `system-info.txt` met uw Node.js-versie, OmniRoute-versie, OS-
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -293,7 +293,7 @@ Niet iedereen kan $ 20-200 per maand betalen voor AI-abonnementen. Studenten, on
|
||||
|
||||
**Hoe OmniRoute het oplost:**
|
||||
|
||||
- **Free Tier Providers ingebouwd** — Native ondersteuning voor 100% gratis providers: iFlow (5 onbeperkte modellen via OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 onbeperkte modellen: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID gratis), Gemini CLI (180K tokens/maand gratis)
|
||||
- **Free Tier Providers ingebouwd** — Native ondersteuning voor 100% gratis providers: Qoder (5 onbeperkte modellen via OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 onbeperkte modellen: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID gratis), Gemini CLI (180K tokens/maand gratis)
|
||||
- **Ollama Cloud** — In de cloud gehoste Ollama-modellen op `api.ollama.com` met gratis laag "Licht gebruik"; gebruik het voorvoegsel `ollamacloud/<model>`
|
||||
- **Alleen gratis combo's** — Chain `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = $0/maand zonder downtime
|
||||
- **NVIDIA NIM Free Access** — ~40 RPM ontwikkelaars-voor altijd gratis toegang tot meer dan 70 modellen op build.nvidia.com (overgang van credits naar pure tarieflimieten)
|
||||
@@ -357,7 +357,7 @@ Claude Code, Codex, Gemini CLI, Copilot: ze gebruiken allemaal OAuth 2.0 met afl
|
||||
**Hoe OmniRoute het oplost:**
|
||||
|
||||
- **Automatische tokenvernieuwing**: OAuth-tokens worden op de achtergrond vernieuwd voordat ze verlopen
|
||||
- **OAuth 2.0 (PKCE) ingebouwd** — Automatische stroom voor Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **OAuth 2.0 (PKCE) ingebouwd** — Automatische stroom voor Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **Multi-Account OAuth** — Meerdere accounts per provider via JWT/ID-tokenextractie
|
||||
- **OAuth LAN/Remote Fix** — Privé-IP-detectie voor `redirect_uri` + handmatige URL-modus voor externe servers
|
||||
- **OAuth achter Nginx** — Gebruikt `window.location.origin` voor reverse proxy-compatibiliteit
|
||||
@@ -734,7 +734,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Stap | Actie | Aanbieders ontgrendeld |
|
||||
| ---- | ----------------------------------------------------- | ------------------------------------------------------------------ |
|
||||
| 1 | Verbind **Kiro** (AWS Builder ID OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **onbeperkt** |
|
||||
| 2 | **iFlow** (Google OAuth) verbinden | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **onbeperkt** |
|
||||
| 2 | **Qoder** (Google OAuth) verbinden | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **onbeperkt** |
|
||||
| 3 | Verbind **Qwen** (apparaatcode) | qwen3-coder-plus, qwen3-coder-flash... — **onbeperkt** |
|
||||
| 4 | **Gemini CLI** verbinden (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180K/maand gratis** |
|
||||
| 5 | `/dashboard/combos` → **Gratis stapel ($0)**-sjabloon | Round-robin alle gratis aanbieders automatisch |
|
||||
@@ -943,7 +943,7 @@ Wanneer geminimaliseerd, blijft OmniRoute in uw systeemvak staan met snelle acti
|
||||
| | MiniMax M2.1 | $ 0,2/1 miljoen | 5-uurs rollen | Goedkoopste optie |
|
||||
| | Kimi K2.5 (Moonshot-API) 🆕 | Betalen per gebruik | Geen | Directe Moonshot API-toegang |
|
||||
| | Kimi K2 | $ 9/maand plat | 10 miljoen tokens/maand | Voorspelbare kosten |
|
||||
| **🆓 GRATIS** | iFlow | **$0** | Onbeperkt | 5 modellen onbeperkt |
|
||||
| **🆓 GRATIS** | Qoder | **$0** | Onbeperkt | 5 modellen onbeperkt |
|
||||
| | Qwen | **$0** | Onbeperkt | 4 modellen onbeperkt |
|
||||
| | Kiro | **$0** | Onbeperkt | Claude Sonnet/Haiku (AWS-bouwer) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (50 miljoen tok/dag 🔥) | 1 RPS | Grootste gratis quotum ter wereld |
|
||||
@@ -958,7 +958,7 @@ Wanneer geminimaliseerd, blijft OmniRoute in uw systeemvak staan met snelle acti
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -988,7 +988,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Onbeperkt** | Geen gerapporteerde dagelijkse limiet |
|
||||
| `claude-opus-4.6` | `kr/` | **Onbeperkt** | Nieuwste opus via Kiro |
|
||||
|
||||
### 🟢 IFLOW-MODELLEN (gratis OAuth — geen creditcard)
|
||||
### 🟢 QODER-MODELLEN (gratis OAuth — geen creditcard)
|
||||
|
||||
| Model | Voorvoegsel | Limiet | Tarieflimiet |
|
||||
| ------------------ | ----------- | ------------- | -------------------------- |
|
||||
@@ -1087,7 +1087,7 @@ Gratis verkrijgbaar: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama-3.1-7
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 GRATIS providers (noodback-up)</b></summary>
|
||||
|
||||
### iFlow (5 GRATIS modellen via OAuth)
|
||||
### Qoder (5 GRATIS modellen via OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- Controleer gebruiksstatistieken in Dashboard → Kosten
|
||||
- Schakel het primaire model over naar GLM/MiniMax
|
||||
- Gebruik de gratis laag (Gemini CLI, iFlow) voor niet-kritieke taken
|
||||
- Gebruik de gratis laag (Gemini CLI, Qoder) voor niet-kritieke taken
|
||||
|
||||
**Dashboard-/API-poorten zijn verkeerd**
|
||||
|
||||
|
||||
+13
-13
@@ -199,7 +199,7 @@ Når du åpner et problem, kjør systeminfo-kommandoen og legg ved den genererte
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Dette genererer en `system-info.txt` med Node.js-versjonen, OmniRoute-versjonen, OS-detaljer, installerte CLI-verktøy (iflow, gemini, claude, codex, antigravity, droid, etc.), Docker/PM2-status og systempakker – alt vi trenger for å gjenskape problemet raskt. Legg ved filen direkte til GitHub-problemet ditt.
|
||||
Dette genererer en `system-info.txt` med Node.js-versjonen, OmniRoute-versjonen, OS-detaljer, installerte CLI-verktøy (qoder, gemini, claude, codex, antigravity, droid, etc.), Docker/PM2-status og systempakker – alt vi trenger for å gjenskape problemet raskt. Legg ved filen direkte til GitHub-problemet ditt.
|
||||
|
||||
---
|
||||
|
||||
@@ -225,7 +225,7 @@ Dette genererer en `system-info.txt` med Node.js-versjonen, OmniRoute-versjonen,
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -292,7 +292,7 @@ Ikke alle kan betale $20–200 per måned for AI-abonnementer. Studenter, utvikl
|
||||
|
||||
**Hvordan OmniRoute løser det:**
|
||||
|
||||
- **Gratis-tilbydere innebygd** — Innebygd støtte for 100 % gratis leverandører: iFlow (5 ubegrensede modeller via OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen: 4 qwen3-modeller,-r qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID gratis), Gemini CLI (180K tokens/måned gratis)
|
||||
- **Gratis-tilbydere innebygd** — Innebygd støtte for 100 % gratis leverandører: Qoder (5 ubegrensede modeller via OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen: 4 qwen3-modeller,-r qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID gratis), Gemini CLI (180K tokens/måned gratis)
|
||||
- **Ollama Cloud** — Ollama-modeller med skyvert hos `api.ollama.com` med gratis «Lett bruk»-lag; bruk `ollamacloud/<model>` prefiks
|
||||
- **Kun gratis kombinasjoner** — Kjede `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = $0/måned med null nedetid
|
||||
- **NVIDIA NIM Free Access** — ~40 RPM dev-forever gratis tilgang til 70+ modeller på build.nvidia.com (overgang fra kreditter til rene rategrenser)
|
||||
@@ -356,7 +356,7 @@ Claude Code, Codex, Gemini CLI, Copilot – alle bruker OAuth 2.0 med tokens som
|
||||
**Hvordan OmniRoute løser det:**
|
||||
|
||||
- **Automatisk oppdatering av token** — OAuth-tokener oppdateres i bakgrunnen før utløp
|
||||
- **OAuth 2.0 (PKCE) innebygd** — Automatisk flyt for Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **OAuth 2.0 (PKCE) innebygd** — Automatisk flyt for Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **Multi-Account OAuth** - Flere kontoer per leverandør via JWT/ID-tokenutvinning
|
||||
- **OAuth LAN/Remote Fix** — Privat IP-deteksjon for `redirect_uri` + manuell URL-modus for eksterne servere
|
||||
- **OAuth Behind Nginx** — Bruker `window.location.origin` for omvendt proxy-kompatibilitet
|
||||
@@ -733,7 +733,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Trinn | Handling | Leverandører ulåst |
|
||||
| ----- | ------------------------------------------------ | ------------------------------------------------------------------- |
|
||||
| 1 | Koble til **Kiro** (AWS Builder ID OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **ubegrenset** |
|
||||
| 2 | Koble til **iFlow** (Google OAuth) | kimi-k2-tenkning, qwen3-coder-plus, deepseek-r1... — **ubegrenset** |
|
||||
| 2 | Koble til **Qoder** (Google OAuth) | kimi-k2-tenkning, qwen3-coder-plus, deepseek-r1... — **ubegrenset** |
|
||||
| 3 | Koble til **Qwen** (enhetskode) | qwen3-coder-pluss, qwen3-coder-flash... — **ubegrenset** |
|
||||
| 4 | Koble til **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180K/mnd gratis** |
|
||||
| 5 | `/dashboard/combos` → **Gratis stabel ($0)** mal | Round-robin alle gratisleverandører automatisk |
|
||||
@@ -942,7 +942,7 @@ Når den er minimert, lever OmniRoute i systemstatusfeltet med raske handlinger:
|
||||
| | MiniMax M2.1 | $0,2/1M | 5-timers rullende | Billigste alternativ |
|
||||
| | Kimi K2.5 (Moonshot API) 🆕 | Betal per bruk | Ingen | Direkte Moonshot API-tilgang |
|
||||
| | Kimi K2 | $9/md leilighet | 10M tokens/md | Forutsigbar kostnad |
|
||||
| **🆓 GRATIS** | iFlow | **$0** | Ubegrenset | 5 modeller ubegrenset |
|
||||
| **🆓 GRATIS** | Qoder | **$0** | Ubegrenset | 5 modeller ubegrenset |
|
||||
| | Qwen | **$0** | Ubegrenset | 4 modeller ubegrenset |
|
||||
| | Kiro | **$0** | Ubegrenset | Claude Sonnet/Haiku (AWS-bygger) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (50 millioner tok/dag 🔥) | 1 RPS | Største gratis kvote på jorden |
|
||||
@@ -957,7 +957,7 @@ Når den er minimert, lever OmniRoute i systemstatusfeltet med raske handlinger:
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -987,7 +987,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Ubegrenset** | Ingen rapportert daglig tak |
|
||||
| `claude-opus-4.6` | `kr/` | **Ubegrenset** | Siste Opus via Kiro |
|
||||
|
||||
### IFLOW-MODELLER (gratis OAuth – uten kredittkort)
|
||||
### QODER-MODELLER (gratis OAuth – uten kredittkort)
|
||||
|
||||
| Modell | Prefiks | Grens | Satsgrense |
|
||||
| ------------------ | ------- | -------------- | -------------------- |
|
||||
@@ -1086,7 +1086,7 @@ Gratis tilgjengelig: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama-3.1-7
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 GRATIS Leverandører (Emergency Backup)</b></summary>
|
||||
|
||||
### iFlow (5 GRATIS modeller via OAuth)
|
||||
### Qoder (5 GRATIS modeller via OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- Sjekk bruksstatistikk i Dashboard → Kostnader
|
||||
- Bytt primærmodell til GLM/MiniMax
|
||||
- Bruk gratis nivå (Gemini CLI, iFlow) for ikke-kritiske oppgaver
|
||||
- Bruk gratis nivå (Gemini CLI, Qoder) for ikke-kritiske oppgaver
|
||||
|
||||
**Dashboard/API-porter er feil**
|
||||
|
||||
|
||||
+13
-13
@@ -199,7 +199,7 @@ Kapag nagbubukas ng isyu, mangyaring patakbuhin ang system-info command at ilaki
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Bumubuo ito ng `system-info.txt` gamit ang iyong bersyon ng Node.js, bersyon ng OmniRoute, mga detalye ng OS, mga naka-install na tool sa CLI (iflow, gemini, claude, codex, antigravity, droid, atbp.), status ng Docker/PM2, at mga system package — lahat ng kailangan namin para mabilis na ma-reproduce ang iyong isyu. Direktang ilakip ang file sa iyong isyu sa GitHub.
|
||||
Bumubuo ito ng `system-info.txt` gamit ang iyong bersyon ng Node.js, bersyon ng OmniRoute, mga detalye ng OS, mga naka-install na tool sa CLI (qoder, gemini, claude, codex, antigravity, droid, atbp.), status ng Docker/PM2, at mga system package — lahat ng kailangan namin para mabilis na ma-reproduce ang iyong isyu. Direktang ilakip ang file sa iyong isyu sa GitHub.
|
||||
|
||||
---
|
||||
|
||||
@@ -225,7 +225,7 @@ Bumubuo ito ng `system-info.txt` gamit ang iyong bersyon ng Node.js, bersyon ng
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -292,7 +292,7 @@ Hindi lahat ay maaaring magbayad ng $20–200/buwan para sa mga subscription sa
|
||||
|
||||
**Paano ito niresolba ng OmniRoute:**
|
||||
|
||||
- **Libreng Tier Provider Built-in** — Native na suporta para sa 100% libreng provider: iFlow (5 unlimited na mga modelo sa pamamagitan ng OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 unlimited models: qwender3-wenlash3-coplus qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID nang libre), Gemini CLI (180K token/buwan libre)
|
||||
- **Libreng Tier Provider Built-in** — Native na suporta para sa 100% libreng provider: Qoder (5 unlimited na mga modelo sa pamamagitan ng OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 unlimited models: qwender3-wenlash3-coplus qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID nang libre), Gemini CLI (180K token/buwan libre)
|
||||
- **Ollama Cloud** — Cloud-hosted Ollama models sa `api.ollama.com` na may libreng "Light usage" tier; gumamit ng `ollamacloud/<model>` prefix
|
||||
- **Free-Only Combos** — Chain `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = $0/buwan na walang downtime
|
||||
- **NVIDIA NIM Free Access** — ~40 RPM dev-forever na libreng access sa 70+ na modelo sa build.nvidia.com (paglilipat mula sa mga credit patungo sa mga purong limitasyon sa rate)
|
||||
@@ -356,7 +356,7 @@ Claude Code, Codex, Gemini CLI, Copilot — lahat ay gumagamit ng OAuth 2.0 na m
|
||||
**Paano ito niresolba ng OmniRoute:**
|
||||
|
||||
- **Auto Token Refresh** — Ang mga token ng OAuth ay nagre-refresh sa background bago mag-expire
|
||||
- **OAuth 2.0 (PKCE) Built-in** — Awtomatikong daloy para sa Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **OAuth 2.0 (PKCE) Built-in** — Awtomatikong daloy para sa Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **Multi-Account OAuth** — Maramihang account bawat provider sa pamamagitan ng pagkuha ng token ng JWT/ID
|
||||
- **OAuth LAN/Remote Fix** — Pribadong IP detection para sa `redirect_uri` + manu-manong URL mode para sa mga malalayong server
|
||||
- **OAuth Behind Nginx** — Gumagamit ng `window.location.origin` para sa reverse proxy compatibility
|
||||
@@ -733,7 +733,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Hakbang | Aksyon | Na-unlock ang Mga Provider |
|
||||
| ------- | ----------------------------------------------------- | ------------------------------------------------------------------ |
|
||||
| 1 | Ikonekta ang **Kiro** (AWS Builder ID OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **walang limitasyon** |
|
||||
| 2 | Ikonekta ang **iFlow** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **unlimited** |
|
||||
| 2 | Ikonekta ang **Qoder** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **unlimited** |
|
||||
| 3 | Ikonekta ang **Qwen** (Device Code) | qwen3-coder-plus, qwen3-coder-flash... — **walang limitasyon** |
|
||||
| 4 | Ikonekta ang **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180K/mo libre** |
|
||||
| 5 | `/dashboard/combos` → **Libreng Stack ($0)** template | Awtomatikong round-robin lahat ng libreng provider |
|
||||
@@ -942,7 +942,7 @@ Kapag pinaliit, nakatira ang OmniRoute sa iyong system tray na may mabilis na pa
|
||||
| | MiniMax M2.1 | $0.2/1M | 5 oras na rolling | Pinaka murang opsyon |
|
||||
| | Kimi K2.5 (Moonshot API) 🆕 | Pay-per-use | Wala | Direktang Moonshot API access |
|
||||
| | Kimi K2 | $9/buwan flat | 10M token/buwan | Nahuhulaang gastos |
|
||||
| **🆓 LIBRE** | iFlow | **$0** | Walang limitasyong | 5 mga modelong walang limitasyon |
|
||||
| **🆓 LIBRE** | Qoder | **$0** | Walang limitasyong | 5 mga modelong walang limitasyon |
|
||||
| | Qwen | **$0** | Walang limitasyong | 4 na modelong walang limitasyon |
|
||||
| | Kiro | **$0** | Walang limitasyong | Claude Sonnet/Haiku (AWS Builder) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (50M tok/araw 🔥) | 1 RPS | Pinakamalaking libreng quota sa Earth |
|
||||
@@ -957,7 +957,7 @@ Kapag pinaliit, nakatira ang OmniRoute sa iyong system tray na may mabilis na pa
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -987,7 +987,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Walang limitasyon** | Walang iniulat na pang-araw-araw na cap |
|
||||
| `claude-opus-4.6` | `kr/` | **Walang limitasyon** | Pinakabagong Opus sa pamamagitan ng Kiro |
|
||||
|
||||
### 🟢 MGA MODELONG IFLOW (Libreng OAuth — Walang Credit Card)
|
||||
### 🟢 MGA MODELONG QODER (Libreng OAuth — Walang Credit Card)
|
||||
|
||||
| Modelo | Prefix | Limitahan | Hangganan ng Rate |
|
||||
| ------------------ | ------ | --------------------- | --------------------- |
|
||||
@@ -1086,7 +1086,7 @@ Available nang libre: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama-3.1-
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 LIBRENG Provider (Emergency Backup)</b></summary>
|
||||
|
||||
### iFlow (5 LIBRENG modelo sa pamamagitan ng OAuth)
|
||||
### Qoder (5 LIBRENG modelo sa pamamagitan ng OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- Suriin ang mga istatistika ng paggamit sa Dashboard → Mga Gastos
|
||||
- Ilipat ang pangunahing modelo sa GLM/MiniMax
|
||||
- Gumamit ng libreng tier (Gemini CLI, iFlow) para sa mga hindi kritikal na gawain
|
||||
- Gumamit ng libreng tier (Gemini CLI, Qoder) para sa mga hindi kritikal na gawain
|
||||
|
||||
**Mali ang mga dashboard/API port**
|
||||
|
||||
|
||||
+13
-13
@@ -200,7 +200,7 @@ Otwierając zgłoszenie, uruchom komendę system-info i załącz wygenerowany pl
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Spowoduje to wygenerowanie pliku `system-info.txt` z wersją Node.js, wersją OmniRoute, szczegółami systemu operacyjnego, zainstalowanymi narzędziami CLI (iflow, gemini, claude, codex, antygrawitacja, droid itp.), statusem Docker/PM2 i pakietami systemowymi — wszystko, czego potrzebujemy, aby szybko odtworzyć problem. Dołącz plik bezpośrednio do swojego zgłoszenia w GitHubie.
|
||||
Spowoduje to wygenerowanie pliku `system-info.txt` z wersją Node.js, wersją OmniRoute, szczegółami systemu operacyjnego, zainstalowanymi narzędziami CLI (qoder, gemini, claude, codex, antygrawitacja, droid itp.), statusem Docker/PM2 i pakietami systemowymi — wszystko, czego potrzebujemy, aby szybko odtworzyć problem. Dołącz plik bezpośrednio do swojego zgłoszenia w GitHubie.
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +226,7 @@ Spowoduje to wygenerowanie pliku `system-info.txt` z wersją Node.js, wersją Om
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -293,7 +293,7 @@ Nie każdy może zapłacić 20–200 USD miesięcznie za subskrypcje AI. Studenc
|
||||
|
||||
**Jak rozwiązuje to OmniRoute:**
|
||||
|
||||
- **Wbudowani dostawcy Free Tier** — Natywne wsparcie dla w 100% darmowych dostawców: iFlow (5 nieograniczonych modeli przez OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 nieograniczone modele: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, Vision-model), Kiro (Claude + AWS Builder ID za darmo), Gemini CLI (180 tys. tokenów miesięcznie za darmo)
|
||||
- **Wbudowani dostawcy Free Tier** — Natywne wsparcie dla w 100% darmowych dostawców: Qoder (5 nieograniczonych modeli przez OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 nieograniczone modele: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, Vision-model), Kiro (Claude + AWS Builder ID za darmo), Gemini CLI (180 tys. tokenów miesięcznie za darmo)
|
||||
- **Ollama Cloud** — modele Ollama hostowane w chmurze pod adresem `api.ollama.com` z bezpłatnym poziomem „Lekkie użycie”; użyj przedrostka `ollamacloud/<model>`
|
||||
- **Kombinacje dostępne wyłącznie bezpłatnie** — Łańcuch `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = 0 USD/miesiąc z zerowymi przestojami
|
||||
- **Bezpłatny dostęp do NVIDIA NIM** — bezpłatny dostęp dla deweloperów przy ~40 obr./min na zawsze do ponad 70 modeli na stronie build.nvidia.com (przejście z kredytów na same limity szybkości)
|
||||
@@ -357,7 +357,7 @@ Claude Code, Codex, Gemini CLI, Copilot — wszystkie korzystają z OAuth 2.0 z
|
||||
**Jak rozwiązuje to OmniRoute:**
|
||||
|
||||
- **Automatyczne odświeżanie tokenu** — tokeny OAuth odświeżają się w tle przed wygaśnięciem
|
||||
- **Wbudowany OAuth 2.0 (PKCE)** — Automatyczny przepływ dla Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **Wbudowany OAuth 2.0 (PKCE)** — Automatyczny przepływ dla Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **Wielokontowy OAuth** — wiele kont na dostawcę poprzez ekstrakcję tokenów JWT/ID
|
||||
- **OAuth LAN/Remote Fix** — Wykrywanie prywatnego adresu IP dla `redirect_uri` + ręczny tryb adresu URL dla serwerów zdalnych
|
||||
- **OAuth Behind Nginx** — Używa `window.location.origin` w celu zapewnienia zgodności z odwrotnym proxy
|
||||
@@ -734,7 +734,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Krok | Akcja | Dostawcy odblokowani |
|
||||
| ---- | --------------------------------------------------------- | ----------------------------------------------------------------------- |
|
||||
| 1 | Połącz **Kiro** (identyfikator AWS Builder OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **bez ograniczeń** |
|
||||
| 2 | Połącz **iFlow** (Google OAuth) | myślenie kimi-k2, qwen3-coder-plus, deepseek-r1... — **bez ograniczeń** |
|
||||
| 2 | Połącz **Qoder** (Google OAuth) | myślenie kimi-k2, qwen3-coder-plus, deepseek-r1... — **bez ograniczeń** |
|
||||
| 3 | Połącz **Qwen** (kod urządzenia) | qwen3-coder-plus, qwen3-coder-flash... — **bez ograniczeń** |
|
||||
| 4 | Połącz **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180 tys./mc za darmo** |
|
||||
| 5 | `/dashboard/combos` → **Szablon darmowego stosu (0 USD)** | Automatycznie okrężnie wszystkich bezpłatnych dostawców |
|
||||
@@ -943,7 +943,7 @@ Po zminimalizowaniu OmniRoute znajduje się w zasobniku systemowym i oferuje szy
|
||||
| | MiniMax M2.1 | 0,2 USD/1 mln | 5-godzinne toczenie | Najtańsza opcja |
|
||||
| | Kimi K2.5 (Moonshot API) 🆕 | Płatność za użycie | Brak | Bezpośredni dostęp do API Moonshot |
|
||||
| | Kimi K2 | 9 USD miesięcznie | 10 mln tokenów/mies. | Przewidywalny koszt |
|
||||
| **🆓 DARMOWE** | iFlow | **$0** | Nieograniczony | 5 modeli bez ograniczeń |
|
||||
| **🆓 DARMOWE** | Qoder | **$0** | Nieograniczony | 5 modeli bez ograniczeń |
|
||||
| | Qwen | **$0** | Nieograniczony | 4 modele bez ograniczeń |
|
||||
| | Kiro | **$0** | Nieograniczony | Claude Sonnet/Haiku (konstruktor AWS) |
|
||||
| | LongCat Flash-Lite 🆕 | **0 $** (50 mln tok/dzień 🔥) | 1 RPS | Największy darmowy limit na Ziemi |
|
||||
@@ -958,7 +958,7 @@ Po zminimalizowaniu OmniRoute znajduje się w zasobniku systemowym i oferuje szy
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -988,7 +988,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Nieograniczony** | Brak raportu dziennego limitu |
|
||||
| `claude-opus-4.6` | `kr/` | **Nieograniczony** | Najnowsze Opus przez Kiro |
|
||||
|
||||
### 🟢 MODELE IFLOW (bezpłatny OAuth — bez karty kredytowej)
|
||||
### 🟢 MODELE QODER (bezpłatny OAuth — bez karty kredytowej)
|
||||
|
||||
| Modelka | Przedrostek | Limit | Limit stawki |
|
||||
| ------------------ | ----------- | ------------------ | ----------------------- |
|
||||
@@ -1087,7 +1087,7 @@ Dostępne bezpłatnie: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama-3.1
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 BEZPŁATNI dostawcy (awaryjna kopia zapasowa)</b></summary>
|
||||
|
||||
### iFlow (5 DARMOWYCH modeli przez OAuth)
|
||||
### Qoder (5 DARMOWYCH modeli przez OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- Sprawdź statystyki użytkowania w Panelu → Koszty
|
||||
- Zmień model podstawowy na GLM/MiniMax
|
||||
- Korzystaj z bezpłatnej warstwy (Gemini CLI, iFlow) do zadań niekrytycznych
|
||||
- Korzystaj z bezpłatnej warstwy (Gemini CLI, Qoder) do zadań niekrytycznych
|
||||
|
||||
**Porty pulpitu nawigacyjnego/API są nieprawidłowe**
|
||||
|
||||
|
||||
+13
-13
@@ -200,7 +200,7 @@ Ao abrir um problema, execute o comando system-info e anexe o arquivo gerado:
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Isso gera um `system-info.txt` com sua versão do Node.js, versão do OmniRoute, detalhes do sistema operacional, ferramentas CLI instaladas (iflow, gemini, claude, codex, antigravity, droid, etc.), status do Docker/PM2 e pacotes do sistema — tudo o que precisamos para reproduzir seu problema rapidamente. Anexe o arquivo diretamente ao seu problema do GitHub.
|
||||
Isso gera um `system-info.txt` com sua versão do Node.js, versão do OmniRoute, detalhes do sistema operacional, ferramentas CLI instaladas (qoder, gemini, claude, codex, antigravity, droid, etc.), status do Docker/PM2 e pacotes do sistema — tudo o que precisamos para reproduzir seu problema rapidamente. Anexe o arquivo diretamente ao seu problema do GitHub.
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +226,7 @@ Isso gera um `system-info.txt` com sua versão do Node.js, versão do OmniRoute,
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -293,7 +293,7 @@ Nem todos podem pagar US$ 20–200/mês por assinaturas de IA. Estudantes, desen
|
||||
|
||||
**Como o OmniRoute resolve isso:**
|
||||
|
||||
- **Provedores de nível gratuito integrados** — Suporte nativo para provedores 100% gratuitos: iFlow (5 modelos ilimitados via OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 modelos ilimitados: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID gratuitamente), Gemini CLI (180 mil tokens/mês grátis)
|
||||
- **Provedores de nível gratuito integrados** — Suporte nativo para provedores 100% gratuitos: Qoder (5 modelos ilimitados via OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 modelos ilimitados: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID gratuitamente), Gemini CLI (180 mil tokens/mês grátis)
|
||||
- **Ollama Cloud** — Modelos Ollama hospedados na nuvem em `api.ollama.com` com nível gratuito de "uso leve"; use o prefixo `ollamacloud/<model>`
|
||||
- **Combos somente gratuitos** — Cadeia `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = US$ 0/mês com tempo de inatividade zero
|
||||
- **NVIDIA NIM Free Access** — ~40 RPM de acesso gratuito para desenvolvedores para sempre a mais de 70 modelos em build.nvidia.com (transição de créditos para limites de taxa pura)
|
||||
@@ -357,7 +357,7 @@ Claude Code, Codex, Gemini CLI, Copilot — todos usam OAuth 2.0 com tokens expi
|
||||
**Como o OmniRoute resolve isso:**
|
||||
|
||||
- **Atualização automática de token** — Os tokens OAuth são atualizados em segundo plano antes da expiração
|
||||
- **OAuth 2.0 (PKCE) integrado ** — Fluxo automático para Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **OAuth 2.0 (PKCE) integrado ** — Fluxo automático para Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **OAuth de várias contas** — Várias contas por provedor por meio de extração de token JWT/ID
|
||||
- **OAuth LAN/Remote Fix** — Detecção de IP privado para `redirect_uri` + modo URL manual para servidores remotos
|
||||
- **OAuth por trás do Nginx** — Usa `window.location.origin` para compatibilidade de proxy reverso
|
||||
@@ -734,7 +734,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Etapa | Ação | Provedores desbloqueados |
|
||||
| ----- | -------------------------------------------------- | ------------------------------------------------------------------ |
|
||||
| 1 | Conectar **Kiro** (ID do AWS Builder OAuth) | Claude Soneto 4.5, Haiku 4.5 — **ilimitado** |
|
||||
| 2 | Conecte **iFlow** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **ilimitado** |
|
||||
| 2 | Conecte **Qoder** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **ilimitado** |
|
||||
| 3 | Conecte **Qwen** (código do dispositivo) | qwen3-coder-plus, qwen3-coder-flash... — **ilimitado** |
|
||||
| 4 | Conecte **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180K/mês grátis** |
|
||||
| 5 | `/dashboard/combos` → **Pilha grátis ($0)** modelo | Round-robin todos os provedores gratuitos automaticamente |
|
||||
@@ -943,7 +943,7 @@ Quando minimizado, o OmniRoute fica na bandeja do sistema com ações rápidas:
|
||||
| | MiniMax M2.1 | US$ 0,2/1 milhão | Rolamento de 5 horas | Opção mais barata |
|
||||
| | Kimi K2.5 (API Moonshot) 🆕 | Pagamento conforme uso | Nenhum | Acesso direto à API Moonshot |
|
||||
| | Kimi K2 | $ 9 / mês fixo | 10 milhões de tokens/mês | Custo previsível |
|
||||
| **🆓 GRÁTIS** | iFlow | **$0** | Ilimitado | 5 modelos ilimitados |
|
||||
| **🆓 GRÁTIS** | Qoder | **$0** | Ilimitado | 5 modelos ilimitados |
|
||||
| | Qwen | **$0** | Ilimitado | 4 modelos ilimitados |
|
||||
| | Kiro | **$0** | Ilimitado | Claude Sonnet/Haiku (Construtor AWS) |
|
||||
| | LongCat Flash Lite 🆕 | **$0** (50 milhões de dólares/dia 🔥) | 1RPS | Maior cota gratuita do planeta |
|
||||
@@ -958,7 +958,7 @@ Quando minimizado, o OmniRoute fica na bandeja do sistema com ações rápidas:
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -988,7 +988,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Ilimitado** | Nenhum limite diário comunicado |
|
||||
| `claude-opus-4.6` | `kr/` | **Ilimitado** | Último Opus via Kiro |
|
||||
|
||||
### 🟢 MODELOS IFLOW (OAuth grátis — sem cartão de crédito)
|
||||
### 🟢 MODELOS QODER (OAuth grátis — sem cartão de crédito)
|
||||
|
||||
| Modelo | Prefixo | Limite | Limite de taxa |
|
||||
| ------------------ | ------- | ------------- | ------------------------------- |
|
||||
@@ -1087,7 +1087,7 @@ Disponível gratuitamente: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 Provedores GRATUITOS (backup de emergência)</b></summary>
|
||||
|
||||
### iFlow (5 modelos GRATUITOS via OAuth)
|
||||
### Qoder (5 modelos GRATUITOS via OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- Verifique as estatísticas de uso em Painel → Custos
|
||||
- Mude o modelo primário para GLM/MiniMax
|
||||
- Use o nível gratuito (Gemini CLI, iFlow) para tarefas não críticas
|
||||
- Use o nível gratuito (Gemini CLI, Qoder) para tarefas não críticas
|
||||
|
||||
**As portas do painel/API estão erradas**
|
||||
|
||||
|
||||
+13
-13
@@ -200,7 +200,7 @@ Când deschideți o problemă, rulați comanda system-info și atașați fișier
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Aceasta generează un `system-info.txt` cu versiunea dvs. Node.js, versiunea OmniRoute, detaliile sistemului de operare, instrumentele CLI instalate (iflow, gemini, claude, codex, antigravity, droid etc.), starea Docker/PM2 și pachetele de sistem - tot ce avem nevoie pentru a reproduce problema rapid. Atașați fișierul direct la problema dvs. GitHub.
|
||||
Aceasta generează un `system-info.txt` cu versiunea dvs. Node.js, versiunea OmniRoute, detaliile sistemului de operare, instrumentele CLI instalate (qoder, gemini, claude, codex, antigravity, droid etc.), starea Docker/PM2 și pachetele de sistem - tot ce avem nevoie pentru a reproduce problema rapid. Atașați fișierul direct la problema dvs. GitHub.
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +226,7 @@ Aceasta generează un `system-info.txt` cu versiunea dvs. Node.js, versiunea Omn
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -293,7 +293,7 @@ Nu toată lumea poate plăti 20–200 USD/lună pentru abonamentele AI. Studenț
|
||||
|
||||
**Cum o rezolvă OmniRoute:**
|
||||
|
||||
- **Free Tier Providers Built-in** — Suport nativ pentru furnizori 100% gratuiti: iFlow (5 modele nelimitate prin OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 modele nelimitate: q-coder-3-fwen: qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID gratuit), Gemini CLI (180.000 de jetoane/lună gratuit)
|
||||
- **Free Tier Providers Built-in** — Suport nativ pentru furnizori 100% gratuiti: Qoder (5 modele nelimitate prin OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 modele nelimitate: q-coder-3-fwen: qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID gratuit), Gemini CLI (180.000 de jetoane/lună gratuit)
|
||||
- **Ollama Cloud** — Modele Ollama găzduite în cloud la `api.ollama.com` cu nivelul gratuit „Utilizare ușoară”; utilizați prefixul `ollamacloud/<model>`
|
||||
- **Combo-uri numai gratuite** — Lanț `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = 0 USD/lună fără timp de nefuncționare
|
||||
- **NVIDIA NIM Free Access** — ~40 RPM dev-forever acces gratuit la peste 70 de modele la build.nvidia.com (tranziție de la credite la limitele de rate pur)
|
||||
@@ -357,7 +357,7 @@ Claude Code, Codex, Gemini CLI, Copilot - toate folosesc OAuth 2.0 cu token-uri
|
||||
**Cum o rezolvă OmniRoute:**
|
||||
|
||||
- **Reîmprospătare automată a simbolurilor** — jetoanele OAuth se reîmprospătează în fundal înainte de expirare
|
||||
- **OAuth 2.0 (PKCE) încorporat** — Flux automat pentru Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **OAuth 2.0 (PKCE) încorporat** — Flux automat pentru Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **OAuth cu mai multe conturi** — Conturi multiple per furnizor prin extragerea jetonului JWT/ID
|
||||
- **OAuth LAN/Remediere la distanță** — Detectare IP privată pentru `redirect_uri` + modul URL manual pentru servere la distanță
|
||||
- **OAuth în spatele Nginx** — Utilizează `window.location.origin` pentru compatibilitatea cu proxy invers
|
||||
@@ -734,7 +734,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Pasul | Acțiune | Furnizori deblocați |
|
||||
| ----- | ---------------------------------------------------- | ------------------------------------------------------------------ |
|
||||
| 1 | Conectați **Kiro** (AWS Builder ID OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **nelimitat** |
|
||||
| 2 | Conectați **iFlow** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **nelimitat** |
|
||||
| 2 | Conectați **Qoder** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **nelimitat** |
|
||||
| 3 | Conectați **Qwen** (Codul dispozitivului) | qwen3-coder-plus, qwen3-coder-flash... — **nelimitat** |
|
||||
| 4 | Conectați **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180K/lună gratuit** |
|
||||
| 5 | `/dashboard/combos` → șablon **Stiva gratuită ($0)** | Round-robin toți furnizorii gratuiti în mod automat |
|
||||
@@ -943,7 +943,7 @@ Când este minimizat, OmniRoute se află în bara de sistem cu acțiuni rapide:
|
||||
| | MiniMax M2.1 | 0,2 USD/1 milion | rulare de 5 ore | Cea mai ieftină opțiune |
|
||||
| | Kimi K2.5 (API Moonshot) 🆕 | Plată-pe-utilizare | Niciuna | Acces direct API Moonshot |
|
||||
| | Kimi K2 | 9 USD/lună plat | 10 milioane de jetoane/lună | Cost previzibil |
|
||||
| **🆓 GRATUIT** | iFlow | **$0** | Nelimitat | 5 modele nelimitat |
|
||||
| **🆓 GRATUIT** | Qoder | **$0** | Nelimitat | 5 modele nelimitat |
|
||||
| | Qwen | **$0** | Nelimitat | 4 modele nelimitat |
|
||||
| | Kiro | **$0** | Nelimitat | Claude Sonnet/Haiku (AWS Builder) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (50 M tok/zi 🔥) | 1 RPS | Cea mai mare cotă gratuită de pe Pământ |
|
||||
@@ -958,7 +958,7 @@ Când este minimizat, OmniRoute se află în bara de sistem cu acțiuni rapide:
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -988,7 +988,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Nelimitat** | Niciun plafon zilnic raportat |
|
||||
| `claude-opus-4.6` | `kr/` | **Nelimitat** | Ultimul Opus prin Kiro |
|
||||
|
||||
### 🟢 MODELE IFLOW (OAuth gratuit — fără card de credit)
|
||||
### 🟢 MODELE QODER (OAuth gratuit — fără card de credit)
|
||||
|
||||
| Model | Prefix | Limită | Limită de rată |
|
||||
| ------------------ | ------ | ------------- | ---------------------- |
|
||||
@@ -1087,7 +1087,7 @@ Disponibil gratuit: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama-3.1-70
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 Furnizori GRATUITI (Backup de urgență)</b></summary>
|
||||
|
||||
### iFlow (5 modele GRATUITE prin OAuth)
|
||||
### Qoder (5 modele GRATUITE prin OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- Verificați statisticile de utilizare în Tabloul de bord → Costuri
|
||||
- Comutați modelul principal la GLM/MiniMax
|
||||
- Utilizați nivelul gratuit (Gemini CLI, iFlow) pentru sarcini necritice
|
||||
- Utilizați nivelul gratuit (Gemini CLI, Qoder) pentru sarcini necritice
|
||||
|
||||
**Tabloul de bord/porturile API sunt greșite**
|
||||
|
||||
|
||||
+13
-13
@@ -200,7 +200,7 @@ Pri otváraní problému spustite príkaz system-info a pripojte vygenerovaný s
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Toto vygeneruje `system-info.txt` s vašou verziou Node.js, verziou OmniRoute, podrobnosťami o OS, nainštalovanými nástrojmi CLI (iflow, gemini, claude, codex, antigravity, droid atď.), stavom Docker/PM2 a systémovými balíkmi – všetko, čo potrebujeme na rýchlu reprodukciu vášho problému. Pripojte súbor priamo k vášmu problému na GitHub.
|
||||
Toto vygeneruje `system-info.txt` s vašou verziou Node.js, verziou OmniRoute, podrobnosťami o OS, nainštalovanými nástrojmi CLI (qoder, gemini, claude, codex, antigravity, droid atď.), stavom Docker/PM2 a systémovými balíkmi – všetko, čo potrebujeme na rýchlu reprodukciu vášho problému. Pripojte súbor priamo k vášmu problému na GitHub.
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +226,7 @@ Toto vygeneruje `system-info.txt` s vašou verziou Node.js, verziou OmniRoute, p
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -293,7 +293,7 @@ Nie každý môže platiť 20 – 200 $ mesačne za predplatné AI. Študenti, v
|
||||
|
||||
**Ako to rieši OmniRoute:**
|
||||
|
||||
- **Zabudovaní poskytovatelia bezplatnej úrovne** — Natívna podpora pre 100 % bezplatných poskytovateľov: iFlow (5 neobmedzených modelov cez OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 neobmedzené modely: qco,3-qwender-lash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID zadarmo), Gemini CLI (180 000 tokenov mesačne zadarmo)
|
||||
- **Zabudovaní poskytovatelia bezplatnej úrovne** — Natívna podpora pre 100 % bezplatných poskytovateľov: Qoder (5 neobmedzených modelov cez OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 neobmedzené modely: qco,3-qwender-lash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID zadarmo), Gemini CLI (180 000 tokenov mesačne zadarmo)
|
||||
- **Ollama Cloud** – modely Ollama hostené v cloude na `api.ollama.com` s bezplatnou úrovňou „Light use“; použite predponu `ollamacloud/<model>`
|
||||
– **len bezplatné kombá** – reťazec `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = 0 USD mesačne s nulovými prestojmi
|
||||
- **Voľný prístup NVIDIA NIM** — ~40 RPM pre vývojárov - navždy bezplatný prístup k viac ako 70 modelom na stránke build.nvidia.com (prechod z kreditov na limity čistej sadzby)
|
||||
@@ -358,7 +358,7 @@ Claude Code, Codex, Gemini CLI, Copilot – všetky používajú OAuth 2.0 s tok
|
||||
**Ako to rieši OmniRoute:**
|
||||
|
||||
- **Automatická obnova tokenov** – Tokeny OAuth sa pred vypršaním platnosti obnovujú na pozadí
|
||||
- **Vstavaný OAuth 2.0 (PKCE)** – Automatický tok pre Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **Vstavaný OAuth 2.0 (PKCE)** – Automatický tok pre Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
– **Multi-Auth OAuth** – Viaceré účty na poskytovateľa prostredníctvom extrakcie tokenov JWT/ID
|
||||
- **OAuth LAN/Remote Fix** — Detekcia súkromnej adresy IP pre `redirect_uri` + manuálny režim adresy URL pre vzdialené servery
|
||||
– **OAuth Behind Nginx** – Používa `window.location.origin` na reverznú kompatibilitu proxy
|
||||
@@ -740,7 +740,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Krok | Akcia | Poskytovatelia odblokovaní |
|
||||
| ---- | --------------------------------------------------------- | -------------------------------------------------------------------- |
|
||||
| 1 | Pripojiť **Kiro** (AWS Builder ID OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **neobmedzene** |
|
||||
| 2 | Pripojte **iFlow** (Google OAuth) | kimi-k2-myslenie, qwen3-coder-plus, deepseek-r1... — **neobmedzené** |
|
||||
| 2 | Pripojte **Qoder** (Google OAuth) | kimi-k2-myslenie, qwen3-coder-plus, deepseek-r1... — **neobmedzené** |
|
||||
| 3 | Pripojte **Qwen** (kód zariadenia) | qwen3-coder-plus, qwen3-coder-flash... — **neobmedzene** |
|
||||
| 4 | Pripojte **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180 000/mesiac zadarmo** |
|
||||
| 5 | `/dashboard/combos` → Šablóna **Bezplatný balík (0 USD)** | Round-robin všetkých bezplatných poskytovateľov automaticky |
|
||||
@@ -949,7 +949,7 @@ Keď je minimalizovaný, OmniRoute žije vo vašej systémovej lište s rýchlym
|
||||
| | MiniMax M2.1 | 0,2 USD/1 milión | 5-hodinové valcovanie | Najlacnejšia možnosť |
|
||||
| | Kimi K2.5 (Moonshot API) 🆕 | Platba za použitie | Žiadne | Priamy prístup Moonshot API |
|
||||
| | Kimi K2 | 9 USD/mesiac byt | 10 miliónov tokenov/mesiac | Predvídateľné náklady |
|
||||
| **🆓 ZDARMA** | iFlow | **$0** | Neobmedzené | 5 modelov neobmedzene |
|
||||
| **🆓 ZDARMA** | Qoder | **$0** | Neobmedzené | 5 modelov neobmedzene |
|
||||
| | Qwen | **$0** | Neobmedzené | 4 modely neobmedzene |
|
||||
| | Kiro | **$0** | Neobmedzené | Claude Sonnet/Haiku (staviteľ AWS) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (50 miliónov tok/deň 🔥) | 1 RPS | Najväčšia bezplatná kvóta na Zemi |
|
||||
@@ -964,7 +964,7 @@ Keď je minimalizovaný, OmniRoute žije vo vašej systémovej lište s rýchlym
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -994,7 +994,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Neobmedzené** | Žiadny hlásený denný limit |
|
||||
| `claude-opus-4.6` | `kr/` | **Neobmedzené** | Najnovší Opus cez Kiro |
|
||||
|
||||
### 🢢 MODELY IFLOW (bezplatný protokol OAuth – žiadna kreditná karta)
|
||||
### 🢢 MODELY QODER (bezplatný protokol OAuth – žiadna kreditná karta)
|
||||
|
||||
| Model | Predpona | Limit | Limit sadzby |
|
||||
| ------------------ | -------- | --------------- | ---------------------- |
|
||||
@@ -1093,7 +1093,7 @@ Dostupné zadarmo: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama-3.1-70b
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1543,11 +1543,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 BEZPLATNÍ poskytovatelia (núdzové zálohovanie)</b></summary>
|
||||
|
||||
### iFlow (5 BEZPLATNÝCH modelov cez OAuth)
|
||||
### Qoder (5 BEZPLATNÝCH modelov cez OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1745,7 +1745,7 @@ opencode
|
||||
|
||||
- Skontrolujte štatistiky používania v hlavnom paneli → Náklady
|
||||
- Prepnite primárny model na GLM/MiniMax
|
||||
- Používajte bezplatnú vrstvu (Gemini CLI, iFlow) pre nekritické úlohy
|
||||
- Používajte bezplatnú vrstvu (Gemini CLI, Qoder) pre nekritické úlohy
|
||||
|
||||
**Porty palubnej dosky/API sú nesprávne**
|
||||
|
||||
|
||||
+13
-13
@@ -199,7 +199,7 @@ När du öppnar ett problem, kör kommandot system-info och bifoga den genererad
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Detta genererar en `system-info.txt` med din Node.js-version, OmniRoute-version, OS-detaljer, installerade CLI-verktyg (iflow, gemini, claude, codex, antigravity, droid, etc.), Docker/PM2-status och systempaket – allt vi behöver för att snabbt återskapa ditt problem. Bifoga filen direkt till ditt GitHub-problem.
|
||||
Detta genererar en `system-info.txt` med din Node.js-version, OmniRoute-version, OS-detaljer, installerade CLI-verktyg (qoder, gemini, claude, codex, antigravity, droid, etc.), Docker/PM2-status och systempaket – allt vi behöver för att snabbt återskapa ditt problem. Bifoga filen direkt till ditt GitHub-problem.
|
||||
|
||||
---
|
||||
|
||||
@@ -225,7 +225,7 @@ Detta genererar en `system-info.txt` med din Node.js-version, OmniRoute-version,
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -292,7 +292,7 @@ Alla kan inte betala $20–200/månad för AI-prenumerationer. Studenter, utveck
|
||||
|
||||
**Hur OmniRoute löser det:**
|
||||
|
||||
- **Gratis leverantörer inbyggda** — Inbyggt stöd för 100 % gratis leverantörer: iFlow (5 obegränsade modeller via OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen: 4 unlimited-modeller,-r qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID gratis), Gemini CLI (180K tokens/månad gratis)
|
||||
- **Gratis leverantörer inbyggda** — Inbyggt stöd för 100 % gratis leverantörer: Qoder (5 obegränsade modeller via OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen: 4 unlimited-modeller,-r qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID gratis), Gemini CLI (180K tokens/månad gratis)
|
||||
- **Ollama Cloud** — Molnvärdade Ollama-modeller på `api.ollama.com` med gratis nivå "Lätt användning"; använd `ollamacloud/<model>` prefix
|
||||
- **Free-Only Combos** — Chain `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = $0/månad utan stilleståndstid
|
||||
- **NVIDIA NIM fri tillgång** — ~40 RPM dev-för evigt fri tillgång till 70+ modeller på build.nvidia.com (övergång från krediter till rena hastighetsgränser)
|
||||
@@ -356,7 +356,7 @@ Claude Code, Codex, Gemini CLI, Copilot — alla använder OAuth 2.0 med utgåen
|
||||
**Hur OmniRoute löser det:**
|
||||
|
||||
- **Automatisk uppdatering av token** — OAuth-tokens uppdateras i bakgrunden innan de löper ut
|
||||
- **OAuth 2.0 (PKCE) Inbyggd** — Automatiskt flöde för Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **OAuth 2.0 (PKCE) Inbyggd** — Automatiskt flöde för Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **Multi-Account OAuth** — Flera konton per leverantör via JWT/ID-tokenextraktion
|
||||
- **OAuth LAN/Remote Fix** — Privat IP-detektering för `redirect_uri` + manuellt URL-läge för fjärrservrar
|
||||
- **OAuth Behind Nginx** — Använder `window.location.origin` för omvänd proxykompatibilitet
|
||||
@@ -733,7 +733,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Steg | Åtgärd | Leverantörer olåsta |
|
||||
| ---- | ------------------------------------------------ | ------------------------------------------------------------------- |
|
||||
| 1 | Anslut **Kiro** (AWS Builder ID OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **obegränsad** |
|
||||
| 2 | Anslut **iFlow** (Google OAuth) | kimi-k2-tänkande, qwen3-coder-plus, deepseek-r1... — **obegränsat** |
|
||||
| 2 | Anslut **Qoder** (Google OAuth) | kimi-k2-tänkande, qwen3-coder-plus, deepseek-r1... — **obegränsat** |
|
||||
| 3 | Anslut **Qwen** (enhetskod) | qwen3-coder-plus, qwen3-coder-flash... — **obegränsat** |
|
||||
| 4 | Anslut **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180K/månad gratis** |
|
||||
| 5 | `/dashboard/combos` → **Gratis stack ($0)** mall | Round-robin alla gratis leverantörer automatiskt |
|
||||
@@ -942,7 +942,7 @@ När den är minimerad, finns OmniRoute i systemfältet med snabba åtgärder:
|
||||
| | MiniMax M2.1 | $0,2/1M | 5-timmars rullande | Billigaste alternativet |
|
||||
| | Kimi K2.5 (Moonshot API) 🆕 | Betala per användning | Inga | Direkt åtkomst till Moonshot API |
|
||||
| | Kimi K2 | 9 USD/mån lägenhet | 10 miljoner tokens/mån | Förutsägbar kostnad |
|
||||
| **🆓 GRATIS** | iFlow | **$0** | Obegränsad | 5 modeller obegränsat |
|
||||
| **🆓 GRATIS** | Qoder | **$0** | Obegränsad | 5 modeller obegränsat |
|
||||
| | Qwen | **$0** | Obegränsad | 4 modeller obegränsat |
|
||||
| | Kiro | **$0** | Obegränsad | Claude Sonnet/Haiku (AWS Builder) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (50 miljoner tok/dag 🔥) | 1 RPS | Största gratiskvoten på jorden |
|
||||
@@ -957,7 +957,7 @@ När den är minimerad, finns OmniRoute i systemfältet med snabba åtgärder:
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -987,7 +987,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Obegränsat** | Inget rapporterat dagligt tak |
|
||||
| `claude-opus-4.6` | `kr/` | **Obegränsat** | Senaste Opus via Kiro |
|
||||
|
||||
### IFLOW-MODELLER (gratis OAuth – inget kreditkort)
|
||||
### QODER-MODELLER (gratis OAuth – inget kreditkort)
|
||||
|
||||
| Modell | Prefix | Begränsa | Prisgräns |
|
||||
| ------------------ | ------ | -------------- | --------------------- |
|
||||
@@ -1086,7 +1086,7 @@ Tillgänglig gratis: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama-3.1-7
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 GRATIS leverantörer (nödbackup)</b></summary>
|
||||
|
||||
### iFlow (5 GRATIS modeller via OAuth)
|
||||
### Qoder (5 GRATIS modeller via OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- Kontrollera användningsstatistik i Dashboard → Kostnader
|
||||
- Byt primär modell till GLM/MiniMax
|
||||
- Använd gratis nivå (Gemini CLI, iFlow) för icke-kritiska uppgifter
|
||||
- Använd gratis nivå (Gemini CLI, Qoder) för icke-kritiska uppgifter
|
||||
|
||||
**Dashboard/API-portar är fel**
|
||||
|
||||
|
||||
+12
-12
@@ -200,7 +200,7 @@ _เชื่อมต่อเครื่องมือ IDE หรือ CLI
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
สิ่งนี้จะสร้าง `system-info.txt` ด้วยเวอร์ชัน Node.js ของคุณ เวอร์ชัน OmniRoute รายละเอียดระบบปฏิบัติการ เครื่องมือ CLI ที่ติดตั้ง (iflow, gemini, claude, codex, antigravity, droid ฯลฯ) สถานะ Docker/PM2 และแพ็คเกจระบบ ทุกสิ่งที่เราต้องการในการทำซ้ำปัญหาของคุณอย่างรวดเร็ว แนบไฟล์โดยตรงกับปัญหา GitHub ของคุณ
|
||||
สิ่งนี้จะสร้าง `system-info.txt` ด้วยเวอร์ชัน Node.js ของคุณ เวอร์ชัน OmniRoute รายละเอียดระบบปฏิบัติการ เครื่องมือ CLI ที่ติดตั้ง (qoder, gemini, claude, codex, antigravity, droid ฯลฯ) สถานะ Docker/PM2 และแพ็คเกจระบบ ทุกสิ่งที่เราต้องการในการทำซ้ำปัญหาของคุณอย่างรวดเร็ว แนบไฟล์โดยตรงกับปัญหา GitHub ของคุณ
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +226,7 @@ npm run system-info
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -293,7 +293,7 @@ OpenAI ใช้รูปแบบหนึ่ง Claude (Anthropic) ใช้
|
||||
|
||||
**OmniRoute แก้ปัญหาอย่างไร:**
|
||||
|
||||
- **Free Tier Providers ในตัว** — รองรับเนทิฟสำหรับผู้ให้บริการฟรี 100%: iFlow (5 โมเดลไม่จำกัดผ่าน OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 โมเดลไม่จำกัด: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model) Kiro (Claude + AWS Builder ID ฟรี), Gemini CLI (ฟรี 180,000 โทเค็น/เดือน)
|
||||
- **Free Tier Providers ในตัว** — รองรับเนทิฟสำหรับผู้ให้บริการฟรี 100%: Qoder (5 โมเดลไม่จำกัดผ่าน OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 โมเดลไม่จำกัด: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model) Kiro (Claude + AWS Builder ID ฟรี), Gemini CLI (ฟรี 180,000 โทเค็น/เดือน)
|
||||
- **Ollama Cloud** — โมเดล Ollama ที่โฮสต์บนคลาวด์ที่ `api.ollama.com` พร้อมระดับ "การใช้งานระดับเบา" ฟรี ใช้คำนำหน้า `ollamacloud/<model>`
|
||||
- **คอมโบฟรีเท่านั้น** — Chain `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = $0/เดือน โดยไม่มีการหยุดทำงาน
|
||||
- **NVIDIA NIM Free Access** — ~40 RPM dev-เข้าถึงฟรีตลอดกาลสำหรับโมเดลกว่า 70 รุ่นที่ build.nvidia.com (เปลี่ยนจากเครดิตเป็นการจำกัดอัตราที่แท้จริง)
|
||||
@@ -357,7 +357,7 @@ Claude Code, Codex, Gemini CLI, Copilot — ทั้งหมดใช้ OAuth
|
||||
**OmniRoute แก้ปัญหาอย่างไร:**
|
||||
|
||||
- **รีเฟรชโทเค็นอัตโนมัติ** — โทเค็น OAuth รีเฟรชในพื้นหลังก่อนหมดอายุ
|
||||
- **OAuth 2.0 (PKCE) ในตัว** — โฟลว์อัตโนมัติสำหรับ Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **OAuth 2.0 (PKCE) ในตัว** — โฟลว์อัตโนมัติสำหรับ Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **OAuth หลายบัญชี** — หลายบัญชีต่อผู้ให้บริการผ่านการดึงโทเค็น JWT/ID
|
||||
- **OAuth LAN/Remote Fix** — การตรวจจับ IP ส่วนตัวสำหรับ `redirect_uri` + โหมด URL แบบกำหนดเองสำหรับเซิร์ฟเวอร์ระยะไกล
|
||||
- **OAuth หลัง Nginx** — ใช้ `window.location.origin` สำหรับความเข้ากันได้ของพร็อกซีย้อนกลับ
|
||||
@@ -734,7 +734,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| ขั้นตอน | การกระทำ | ผู้ให้บริการปลดล็อคแล้ว |
|
||||
| ------- | ----------------------------------------------- | ------------------------------------------------------------ |
|
||||
| 1 | เชื่อมต่อ **Kiro** (AWS Builder ID OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **ไม่จำกัด** |
|
||||
| 2 | เชื่อมต่อ **iFlow** (Google OAuth) | kimi-k2-คิด, qwen3-coder-plus, deepseek-r1... — **ไม่จำกัด** |
|
||||
| 2 | เชื่อมต่อ **Qoder** (Google OAuth) | kimi-k2-คิด, qwen3-coder-plus, deepseek-r1... — **ไม่จำกัด** |
|
||||
| 3 | เชื่อมต่อ **Qwen** (รหัสอุปกรณ์) | qwen3-coder-plus, qwen3-coder-flash... — **ไม่จำกัด** |
|
||||
| 4 | เชื่อมต่อ **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **ฟรี 180K/เดือน** |
|
||||
| 5 | `/dashboard/combos` → **สแต็คฟรี ($0)** เทมเพลต | Round-robin ผู้ให้บริการฟรีทั้งหมดโดยอัตโนมัติ |
|
||||
@@ -958,7 +958,7 @@ npm run electron:build:linux # Linux (.AppImage)
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -988,7 +988,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **ไม่จำกัด** | ไม่มีรายงานสูงสุดรายวัน |
|
||||
| `claude-opus-4.6` | `kr/` | **ไม่จำกัด** | บทประพันธ์ล่าสุดผ่าน Kiro |
|
||||
|
||||
### 🟢 IFLOW MODELS (OAuth ฟรี — ไม่มีบัตรเครดิต)
|
||||
### 🟢 QODER MODELS (OAuth ฟรี — ไม่มีบัตรเครดิต)
|
||||
|
||||
| รุ่น | คำนำหน้า | ขีดจำกัด | ขีดจำกัดอัตรา |
|
||||
| ------------------ | -------- | ------------ | --------------- |
|
||||
@@ -1087,7 +1087,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 ผู้ให้บริการฟรี (การสำรองข้อมูลฉุกเฉิน)</b>OMNI_TOKEN_688__
|
||||
|
||||
### iFlow (5 รุ่นฟรีผ่าน OAuth)
|
||||
### Qoder (5 รุ่นฟรีผ่าน OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- ตรวจสอบสถิติการใช้งานในแดชบอร์ด → ต้นทุน
|
||||
- เปลี่ยนโมเดลหลักเป็น GLM/MiniMax
|
||||
- ใช้ระดับฟรี (Gemini CLI, iFlow) สำหรับงานที่ไม่สำคัญ
|
||||
- ใช้ระดับฟรี (Gemini CLI, Qoder) สำหรับงานที่ไม่สำคัญ
|
||||
|
||||
**พอร์ตแดชบอร์ด/API ไม่ถูกต้อง**
|
||||
|
||||
|
||||
+13
-13
@@ -199,7 +199,7 @@ _Підключіть будь-який інструмент IDE або CLI на
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Це генерує `system-info.txt` з вашою версією Node.js, версією OmniRoute, деталями ОС, встановленими інструментами CLI (iflow, gemini, claude, codex, antigravity, droid тощо), статусом Docker/PM2 і системними пакетами — усім, що нам потрібно для швидкого відтворення вашої проблеми. Прикріпіть файл безпосередньо до свого випуску GitHub.
|
||||
Це генерує `system-info.txt` з вашою версією Node.js, версією OmniRoute, деталями ОС, встановленими інструментами CLI (qoder, gemini, claude, codex, antigravity, droid тощо), статусом Docker/PM2 і системними пакетами — усім, що нам потрібно для швидкого відтворення вашої проблеми. Прикріпіть файл безпосередньо до свого випуску GitHub.
|
||||
|
||||
---
|
||||
|
||||
@@ -225,7 +225,7 @@ npm run system-info
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -292,7 +292,7 @@ OpenAI використовує один формат, Claude (Anthropic) вик
|
||||
|
||||
**Як це вирішує OmniRoute:**
|
||||
|
||||
- **Вбудовані безкоштовні постачальники рівня** — Вбудована підтримка 100% безкоштовних постачальників: iFlow (5 необмежених моделей через OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 необмежені моделі: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID безкоштовно), Gemini CLI (180K токенів/місяць безкоштовно)
|
||||
- **Вбудовані безкоштовні постачальники рівня** — Вбудована підтримка 100% безкоштовних постачальників: Qoder (5 необмежених моделей через OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 необмежені моделі: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID безкоштовно), Gemini CLI (180K токенів/місяць безкоштовно)
|
||||
- **Ollama Cloud** — хмарні моделі Ollama на `api.ollama.com` з безкоштовним рівнем «Light usage»; використовуйте префікс `ollamacloud/<model>`
|
||||
- **Безкоштовні комбінації** — ланцюжок `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = 0 доларів США на місяць без простоїв
|
||||
- **Безкоштовний доступ до NVIDIA NIM** — ~40 об./хв. для розробників назавжди безкоштовний доступ до 70+ моделей на build.nvidia.com (перехід від кредитів до чистих обмежень швидкості)
|
||||
@@ -356,7 +356,7 @@ Claude Code, Codex, Gemini CLI, Copilot — усі використовують
|
||||
**Як це вирішує OmniRoute:**
|
||||
|
||||
- **Auto Token Refresh** — маркери OAuth оновлюються у фоновому режимі до завершення терміну дії
|
||||
- **Вбудований OAuth 2.0 (PKCE)** — автоматичний потік для Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **Вбудований OAuth 2.0 (PKCE)** — автоматичний потік для Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **Multi-Account OAuth** — кілька облікових записів на постачальника за допомогою вилучення токенів JWT/ID
|
||||
- **OAuth LAN/Remote Fix** — виявлення приватної IP-адреси для `redirect_uri` + ручний режим URL-адреси для віддалених серверів
|
||||
- **OAuth за Nginx** — використовує `window.location.origin` для зворотної сумісності проксі
|
||||
@@ -736,7 +736,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Крок | Дія | Постачальники розблоковано |
|
||||
| ---- | ------------------------------------------------------- | ------------------------------------------------------------------- |
|
||||
| 1 | Підключіть **Kiro** (AWS Builder ID OAuth) | Клод Сонет 4.5, Хайку 4.5 — **необмежений** |
|
||||
| 2 | Підключіть **iFlow** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **необмежено** |
|
||||
| 2 | Підключіть **Qoder** (Google OAuth) | kimi-k2-thinking, qwen3-coder-plus, deepseek-r1... — **необмежено** |
|
||||
| 3 | Підключіть **Qwen** (код пристрою) | qwen3-coder-plus, qwen3-coder-flash... — **необмежено** |
|
||||
| 4 | Підключіть **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180K/міс безкоштовно** |
|
||||
| 5 | `/dashboard/combos` → Шаблон **Безкоштовний стек ($0)** | Циклічний цикл усіх безкоштовних постачальників автоматично |
|
||||
@@ -945,7 +945,7 @@ npm run electron:build:linux # Linux (.AppImage)
|
||||
| | MiniMax M2.1 | $0,2/1 млн | 5-годинний роликовий | Найдешевший варіант |
|
||||
| | Kimi K2.5 (Moonshot API) 🆕 | Оплата за використання | Жодного | Прямий доступ до Moonshot API |
|
||||
| | Кімі К2 | 9 $/міс квартира | 10 млн токенів/міс | Передбачувана вартість |
|
||||
| **🆓 БЕЗКОШТОВНО** | iFlow | **$0** | Необмежений | 5 моделей без обмежень |
|
||||
| **🆓 БЕЗКОШТОВНО** | Qoder | **$0** | Необмежений | 5 моделей без обмежень |
|
||||
| | Квен | **$0** | Необмежений | 4 моделі без обмежень |
|
||||
| | Кіро | **$0** | Необмежений | Клод Сонет/Хайку (AWS Builder) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (50 млн ток/день 🔥) | 1 RPS | Найбільша безкоштовна квота на Землі |
|
||||
@@ -960,7 +960,7 @@ npm run electron:build:linux # Linux (.AppImage)
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -990,7 +990,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Необмежений** | Немає повідомлень про щоденне обмеження |
|
||||
| `claude-opus-4.6` | `kr/` | **Необмежений** | Останній Opus через Kiro |
|
||||
|
||||
### 🟢 МОДЕЛІ IFLOW (безкоштовний OAuth — без кредитної картки)
|
||||
### 🟢 МОДЕЛІ QODER (безкоштовний OAuth — без кредитної картки)
|
||||
|
||||
| Модель | Префікс | Ліміт | Обмеження швидкості |
|
||||
| ------------------ | ------- | --------------- | ------------------------------- |
|
||||
@@ -1089,7 +1089,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1540,11 +1540,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 БЕЗКОШТОВНІ постачальники (аварійне резервне копіювання)</b></summary>
|
||||
|
||||
### iFlow (5 БЕЗКОШТОВНИХ моделей через OAuth)
|
||||
### Qoder (5 БЕЗКОШТОВНИХ моделей через OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1744,7 +1744,7 @@ opencode
|
||||
|
||||
- Перевірте статистику використання в Інформаційній панелі → Витрати
|
||||
- Переключіть основну модель на GLM/MiniMax
|
||||
- Використовуйте безкоштовний рівень (Gemini CLI, iFlow) для некритичних завдань
|
||||
- Використовуйте безкоштовний рівень (Gemini CLI, Qoder) для некритичних завдань
|
||||
|
||||
**Порти приладової панелі/API неправильні**
|
||||
|
||||
|
||||
+13
-13
@@ -200,7 +200,7 @@ Khi mở một vấn đề, vui lòng chạy lệnh system-info và đính kèm
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Điều này tạo ra `system-info.txt` với phiên bản Node.js, phiên bản OmniRoute, chi tiết hệ điều hành, các công cụ CLI đã cài đặt (iflow, gemini, claude, codex, antiGravity, droid, v.v.), trạng thái Docker/PM2 và các gói hệ thống — mọi thứ chúng tôi cần để tái tạo vấn đề của bạn một cách nhanh chóng. Đính kèm tệp trực tiếp vào vấn đề GitHub của bạn.
|
||||
Điều này tạo ra `system-info.txt` với phiên bản Node.js, phiên bản OmniRoute, chi tiết hệ điều hành, các công cụ CLI đã cài đặt (qoder, gemini, claude, codex, antiGravity, droid, v.v.), trạng thái Docker/PM2 và các gói hệ thống — mọi thứ chúng tôi cần để tái tạo vấn đề của bạn một cách nhanh chóng. Đính kèm tệp trực tiếp vào vấn đề GitHub của bạn.
|
||||
|
||||
---
|
||||
|
||||
@@ -226,7 +226,7 @@ npm run system-info
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -293,7 +293,7 @@ Không phải ai cũng có thể trả 20–200 USD/tháng để đăng ký AI.
|
||||
|
||||
**Cách OmniRoute giải quyết vấn đề này:**
|
||||
|
||||
- **Tích hợp sẵn nhà cung cấp cấp miễn phí** — Hỗ trợ riêng cho nhà cung cấp miễn phí 100%: iFlow (5 mô hình không giới hạn qua OAuth: kimi-k2-thinking, qwen3-code-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 mô hình không giới hạn: qwen3-code-plus, qwen3-code-flash, qwen3-code-next, Vision-model), Kiro (Claude + AWS Builder ID miễn phí), Gemini CLI (miễn phí 180K token/tháng)
|
||||
- **Tích hợp sẵn nhà cung cấp cấp miễn phí** — Hỗ trợ riêng cho nhà cung cấp miễn phí 100%: Qoder (5 mô hình không giới hạn qua OAuth: kimi-k2-thinking, qwen3-code-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 mô hình không giới hạn: qwen3-code-plus, qwen3-code-flash, qwen3-code-next, Vision-model), Kiro (Claude + AWS Builder ID miễn phí), Gemini CLI (miễn phí 180K token/tháng)
|
||||
- **Ollama Cloud** — Các mô hình Ollama được lưu trữ trên đám mây tại `api.ollama.com` với bậc "Sử dụng nhẹ" miễn phí; sử dụng tiền tố `ollamacloud/<model>`
|
||||
- **Combo chỉ miễn phí** — Chuỗi `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = $0/tháng mà không có thời gian ngừng hoạt động
|
||||
- **Truy cập miễn phí NVIDIA NIM** — ~40 RPM dành cho nhà phát triển - truy cập miễn phí vĩnh viễn vào hơn 70 mẫu tại build.nvidia.com (chuyển từ tín dụng sang giới hạn tỷ lệ thuần túy)
|
||||
@@ -357,7 +357,7 @@ Claude Code, Codex, Gemini CLI, Copilot — tất cả đều sử dụng OAuth
|
||||
**Cách OmniRoute giải quyết vấn đề này:**
|
||||
|
||||
- **Tự động làm mới mã thông báo** — Làm mới mã thông báo OAuth ở chế độ nền trước khi hết hạn
|
||||
- **Tích hợp OAuth 2.0 (PKCE)** — Luồng tự động cho Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **Tích hợp OAuth 2.0 (PKCE)** — Luồng tự động cho Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **OAuth nhiều tài khoản** — Nhiều tài khoản cho mỗi nhà cung cấp thông qua trích xuất mã thông báo JWT/ID
|
||||
- **OAuth LAN/Remote Fix** — Phát hiện IP riêng cho `redirect_uri` + chế độ URL thủ công cho máy chủ từ xa
|
||||
- **OAuth đằng sau Nginx** — Sử dụng `window.location.origin` để tương thích với proxy ngược
|
||||
@@ -734,7 +734,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Bước | Hành động | Nhà cung cấp đã được mở khóa |
|
||||
| ---- | ---------------------------------------------------- | ---------------------------------------------------------------------- |
|
||||
| 1 | Kết nối **Kiro** (ID AWS Builder OAuth) | Claude Sonnet 4.5, Haiku 4.5 — **không giới hạn** |
|
||||
| 2 | Kết nối **iFlow** (Google OAuth) | kimi-k2-thinking, qwen3-code-plus, deepseek-r1... — **không giới hạn** |
|
||||
| 2 | Kết nối **Qoder** (Google OAuth) | kimi-k2-thinking, qwen3-code-plus, deepseek-r1... — **không giới hạn** |
|
||||
| 3 | Kết nối **Qwen** (Mã thiết bị) | qwen3-code-plus, qwen3-code-flash... — **không giới hạn** |
|
||||
| 4 | Kết nối **Gemini CLI** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180K/tháng miễn phí** |
|
||||
| 5 | `/dashboard/combos` → **Mẫu ngăn xếp miễn phí ($0)** | Tự động quay vòng tất cả các nhà cung cấp miễn phí |
|
||||
@@ -943,7 +943,7 @@ Khi được thu nhỏ, OmniRoute sẽ tồn tại trong khay hệ thống của
|
||||
| | MiniMax M2.1 | 0,2 USD/1 triệu USD | lăn 5 giờ | Lựa chọn rẻ nhất |
|
||||
| | Kimi K2.5 (API Moonshot) 🆕 | Trả tiền cho mỗi lần sử dụng | Không có | Truy cập API Moonshot trực tiếp |
|
||||
| | Kimi K2 | $9/tháng căn hộ | 10 triệu token/tháng | Chi phí dự đoán |
|
||||
| **🆓 MIỄN PHÍ** | iFlow | **$0** | Không giới hạn | 5 mẫu không giới hạn |
|
||||
| **🆓 MIỄN PHÍ** | Qoder | **$0** | Không giới hạn | 5 mẫu không giới hạn |
|
||||
| | Qwen | **$0** | Không giới hạn | 4 mẫu không giới hạn |
|
||||
| | Kiro | **$0** | Không giới hạn | Claude Sonnet/Haiku (Người xây dựng AWS) |
|
||||
| | LongCat Flash-Lite 🆕 | **$0** (50 triệu tok/ngày 🔥) | 1 RPS | Hạn ngạch miễn phí lớn nhất trên Trái đất |
|
||||
@@ -958,7 +958,7 @@ Khi được thu nhỏ, OmniRoute sẽ tồn tại trong khay hệ thống của
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -988,7 +988,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Không giới hạn** | Không có giới hạn hàng ngày được báo cáo |
|
||||
| `claude-opus-4.6` | `kr/` | **Không giới hạn** | Opus mới nhất qua Kiro |
|
||||
|
||||
### 🟢 MÔ HÌNH IFLOW (OAuth miễn phí - Không có thẻ tín dụng)
|
||||
### 🟢 MÔ HÌNH QODER (OAuth miễn phí - Không có thẻ tín dụng)
|
||||
|
||||
| Người mẫu | Tiền tố | Giới hạn | Giới hạn tỷ lệ |
|
||||
| ------------------ | ------- | ------------------ | ------------------------------ |
|
||||
@@ -1087,7 +1087,7 @@ Có sẵn miễn phí: `qwen3-235b-a22b-instruct-2507` (Qwen3 235B!), `llama-3.1
|
||||
>
|
||||
> ```
|
||||
> Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
> iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
> LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
> Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
> Qwen (qw/) → qwen3-coder models UNLIMITED
|
||||
@@ -1537,11 +1537,11 @@ Models:
|
||||
<details>
|
||||
<summary><b>🆓 Nhà cung cấp MIỄN PHÍ (Dự phòng khẩn cấp)</b></summary>
|
||||
|
||||
### iFlow (5 mô hình MIỄN PHÍ qua OAuth)
|
||||
### Qoder (5 mô hình MIỄN PHÍ qua OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1739,7 +1739,7 @@ opencode
|
||||
|
||||
- Kiểm tra số liệu thống kê sử dụng trong Bảng điều khiển → Chi phí
|
||||
- Chuyển mô hình chính sang GLM/MiniMax
|
||||
- Sử dụng bậc miễn phí (Gemini CLI, iFlow) cho các tác vụ không quan trọng
|
||||
- Sử dụng bậc miễn phí (Gemini CLI, Qoder) cho các tác vụ không quan trọng
|
||||
|
||||
**Cổng bảng điều khiển/API bị sai**
|
||||
|
||||
|
||||
+23
-23
@@ -106,7 +106,7 @@ flowchart LR
|
||||
end
|
||||
|
||||
subgraph Upstreams[Upstream Providers]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/iFlow/GitHub/Kiro/Cursor/Antigravity]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/Qoder/GitHub/Kiro/Cursor/Antigravity]
|
||||
P2[API Key Providers\nOpenAI/Anthropic/OpenRouter/GLM/Kimi/MiniMax\nDeepSeek/Groq/xAI/Mistral/Perplexity\nTogether/Fireworks/Cerebras/Cohere/NVIDIA]
|
||||
P3[Compatible Nodes\nOpenAI-compatible / Anthropic-compatible]
|
||||
end
|
||||
@@ -240,7 +240,7 @@ Domain layer modules:
|
||||
OAuth provider modules (12 individual files under `src/lib/oauth/providers/`):
|
||||
|
||||
- Registry index: `src/lib/oauth/providers/index.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `iflow.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `qoder.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Thin wrapper: `src/lib/oauth/providers.ts` — re-exports from individual modules
|
||||
|
||||
## 3) Persistence Layer
|
||||
@@ -614,7 +614,7 @@ Each provider has a specialized executor extending `BaseExecutor` (in `open-sse/
|
||||
|
||||
| Executor | Provider(s) | Special Handling |
|
||||
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------- |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, iFlow, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, Qoder, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `AntigravityExecutor` | Google Antigravity | Custom project/session IDs, Retry-After parsing |
|
||||
| `CodexExecutor` | OpenAI Codex | Injects system instructions, forces reasoning effort |
|
||||
| `CursorExecutor` | Cursor IDE | ConnectRPC protocol, Protobuf encoding, request signing via checksum |
|
||||
@@ -638,7 +638,7 @@ All other providers (including custom compatible nodes) use the `DefaultExecutor
|
||||
| Cursor | cursor | Custom checksum | ✅ | ✅ | ❌ | ❌ |
|
||||
| Kiro | kiro | AWS SSO OIDC | ✅ (EventStream) | ❌ | ✅ | ✅ Usage limits |
|
||||
| Qwen | openai | OAuth | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| iFlow | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| Qoder | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| OpenRouter | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| GLM/Kimi/MiniMax | claude | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| DeepSeek | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
@@ -686,25 +686,25 @@ Additional processing layers in the translation pipeline:
|
||||
|
||||
## Supported API Endpoints
|
||||
|
||||
| Endpoint | Format | Handler |
|
||||
| -------------------------------------------------- | ------------------ | ---------------------------------------------------- |
|
||||
| `POST /v1/chat/completions` | OpenAI Chat | `src/sse/handlers/chat.ts` |
|
||||
| `POST /v1/messages` | Claude Messages | Same handler (auto-detected) |
|
||||
| `POST /v1/responses` | OpenAI Responses | `open-sse/handlers/responsesHandler.ts` |
|
||||
| `POST /v1/embeddings` | OpenAI Embeddings | `open-sse/handlers/embeddings.ts` |
|
||||
| `GET /v1/embeddings` | Model listing | API route |
|
||||
| `POST /v1/images/generations` | OpenAI Images | `open-sse/handlers/imageGeneration.ts` |
|
||||
| `GET /v1/images/generations` | Model listing | API route |
|
||||
| `POST /v1/providers/{provider}/chat/completions` | OpenAI Chat | Dedicated per-provider with model validation |
|
||||
| `POST /v1/providers/{provider}/embeddings` | OpenAI Embeddings | Dedicated per-provider with model validation |
|
||||
| `POST /v1/providers/{provider}/images/generations` | OpenAI Images | Dedicated per-provider with model validation |
|
||||
| `POST /v1/messages/count_tokens` | Claude Token Count | API route |
|
||||
| `GET /v1/models` | OpenAI Models list | API route (chat + embedding + image + custom models) |
|
||||
| `GET /api/models/catalog` | Catalog | All models grouped by provider + type |
|
||||
| `POST /v1beta/models/*:streamGenerateContent` | Gemini native | API route |
|
||||
| `GET/PUT/DELETE /api/settings/proxy` | Proxy Config | Network proxy configuration |
|
||||
| `POST /api/settings/proxy/test` | Proxy Connectivity | Proxy health/connectivity test endpoint |
|
||||
| `GET/POST/DELETE /api/provider-models` | Custom Models | Custom model management per provider |
|
||||
| Endpoint | Format | Handler |
|
||||
| -------------------------------------------------- | ------------------ | ------------------------------------------------------------------- |
|
||||
| `POST /v1/chat/completions` | OpenAI Chat | `src/sse/handlers/chat.ts` |
|
||||
| `POST /v1/messages` | Claude Messages | Same handler (auto-detected) |
|
||||
| `POST /v1/responses` | OpenAI Responses | `open-sse/handlers/responsesHandler.ts` |
|
||||
| `POST /v1/embeddings` | OpenAI Embeddings | `open-sse/handlers/embeddings.ts` |
|
||||
| `GET /v1/embeddings` | Model listing | API route |
|
||||
| `POST /v1/images/generations` | OpenAI Images | `open-sse/handlers/imageGeneration.ts` |
|
||||
| `GET /v1/images/generations` | Model listing | API route |
|
||||
| `POST /v1/providers/{provider}/chat/completions` | OpenAI Chat | Dedicated per-provider with model validation |
|
||||
| `POST /v1/providers/{provider}/embeddings` | OpenAI Embeddings | Dedicated per-provider with model validation |
|
||||
| `POST /v1/providers/{provider}/images/generations` | OpenAI Images | Dedicated per-provider with model validation |
|
||||
| `POST /v1/messages/count_tokens` | Claude Token Count | API route |
|
||||
| `GET /v1/models` | OpenAI Models list | API route (chat + embedding + image + custom models) |
|
||||
| `GET /api/models/catalog` | Catalog | All models grouped by provider + type |
|
||||
| `POST /v1beta/models/*:streamGenerateContent` | Gemini native | API route |
|
||||
| `GET/PUT/DELETE /api/settings/proxy` | Proxy Config | Network proxy configuration |
|
||||
| `POST /api/settings/proxy/test` | Proxy Connectivity | Proxy health/connectivity test endpoint |
|
||||
| `GET/POST/DELETE /api/provider-models` | Provider Models | Provider model metadata backing custom and managed available models |
|
||||
|
||||
## Bypass Handler
|
||||
|
||||
|
||||
@@ -267,7 +267,7 @@ Business logic that supports the handlers and executors.
|
||||
| `provider.ts` | **Format detection** (`detectFormat`): analyzes request body structure to identify Claude/OpenAI/Gemini/Antigravity/Responses formats (includes `max_tokens` heuristic for Claude). Also: URL building, header building, thinking config normalization. Supports `openai-compatible-*` and `anthropic-compatible-*` dynamic providers. |
|
||||
| `model.ts` | Model string parsing (`claude/model-name` → `{provider: "claude", model: "model-name"}`), alias resolution with collision detection, input sanitization (rejects path traversal/control chars), and model info resolution with async alias getter support. |
|
||||
| `accountFallback.ts` | Rate-limit handling: exponential backoff (1s → 2s → 4s → max 2min), account cooldown management, error classification (which errors trigger fallback vs. not). |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, iFlow, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, Qoder, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `combo.ts` | **Combo models**: chains of fallback models. If model A fails with a fallback-eligible error, try model B, then C, etc. Returns actual upstream status codes. |
|
||||
| `usage.ts` | Fetches quota/usage data from provider APIs (GitHub Copilot quotas, Antigravity model quotas, Codex rate limits, Kiro usage breakdowns, Claude settings). |
|
||||
| `accountSelector.ts` | Smart account selection with scoring algorithm: considers priority, health status, round-robin position, and cooldown state to pick the optimal account for each request. |
|
||||
@@ -539,7 +539,7 @@ A 2000-token buffer is added to reported usage to prevent clients from hitting c
|
||||
| Kiro (AWS) | AWS SSO OIDC or Social | Kiro | Binary EventStream parsing |
|
||||
| Cursor IDE | Checksum auth | Cursor | Protobuf encoding, SHA-256 checksums |
|
||||
| Qwen | OAuth | Default | Standard auth |
|
||||
| iFlow | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| Qoder | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| OpenRouter | API key | Default | Standard Bearer auth |
|
||||
| GLM, Kimi, MiniMax | API key | Default | Claude-compatible, use `x-api-key` |
|
||||
| `openai-compatible-*` | API key | Default | Dynamic: any OpenAI-compatible endpoint |
|
||||
|
||||
+1
-1
@@ -8,7 +8,7 @@ Visual guide to every section of the OmniRoute dashboard.
|
||||
|
||||
## 🔌 Providers
|
||||
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (iFlow, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (Qoder, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
|
||||

|
||||
|
||||
|
||||
+9
-9
@@ -38,16 +38,16 @@ See [IDE Configs](integrations/ide-configs.md) for Antigravity, Cursor, Copilot,
|
||||
|
||||
## Advanced Tools (8)
|
||||
|
||||
| Tool | Description |
|
||||
| :--------------------------------- | :---------------------------------------------- |
|
||||
| `omniroute_simulate_route` | Dry-run routing simulation with fallback tree |
|
||||
| `omniroute_set_budget_guard` | Session budget with degrade/block/alert actions |
|
||||
| `omniroute_set_resilience_profile` | Apply conservative/balanced/aggressive preset |
|
||||
| Tool | Description |
|
||||
| :--------------------------------- | :---------------------------------------------------------- |
|
||||
| `omniroute_simulate_route` | Dry-run routing simulation with fallback tree |
|
||||
| `omniroute_set_budget_guard` | Session budget with degrade/block/alert actions |
|
||||
| `omniroute_set_resilience_profile` | Apply conservative/balanced/aggressive preset |
|
||||
| `omniroute_test_combo` | Live-test all models in a combo via a real upstream request |
|
||||
| `omniroute_get_provider_metrics` | Detailed metrics for one provider |
|
||||
| `omniroute_best_combo_for_task` | Task-fitness recommendation with alternatives |
|
||||
| `omniroute_explain_route` | Explain a past routing decision |
|
||||
| `omniroute_get_session_snapshot` | Full session state: costs, tokens, errors |
|
||||
| `omniroute_get_provider_metrics` | Detailed metrics for one provider |
|
||||
| `omniroute_best_combo_for_task` | Task-fitness recommendation with alternatives |
|
||||
| `omniroute_explain_route` | Explain a past routing decision |
|
||||
| `omniroute_get_session_snapshot` | Full session state: costs, tokens, errors |
|
||||
|
||||
## Authentication
|
||||
|
||||
|
||||
@@ -97,7 +97,7 @@ curl -s http://localhost:20128/api/cli-tools/openclaw-settings | jq '{installed,
|
||||
|
||||
1. Check usage stats in Dashboard → Usage
|
||||
2. Switch primary model to GLM/MiniMax
|
||||
3. Use free tier (Gemini CLI, iFlow) for non-critical tasks
|
||||
3. Use free tier (Gemini CLI, Qoder) for non-critical tasks
|
||||
4. Set cost budgets per API key: Dashboard → API Keys → Budget
|
||||
|
||||
---
|
||||
|
||||
+35
-29
@@ -39,11 +39,11 @@ Complete guide for configuring providers, creating combos, integrating CLI tools
|
||||
| **💰 CHEAP** | GLM-4.7 | $0.6/1M | Daily 10AM | Budget backup |
|
||||
| | MiniMax M2.1 | $0.2/1M | 5-hour rolling | Cheapest option |
|
||||
| | Kimi K2 | $9/mo flat | 10M tokens/mo | Predictable cost |
|
||||
| **🆓 FREE** | iFlow | $0 | Unlimited | 8 models free |
|
||||
| **🆓 FREE** | Qoder | $0 | Unlimited | 8 models free |
|
||||
| | Qwen | $0 | Unlimited | 3 models free |
|
||||
| | Kiro | $0 | Unlimited | Claude free |
|
||||
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + iFlow (unlimited free) combo = $0 cost!
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + Qoder (unlimited free) combo = $0 cost!
|
||||
|
||||
---
|
||||
|
||||
@@ -193,10 +193,10 @@ Models:
|
||||
|
||||
### 🆓 FREE Providers
|
||||
|
||||
#### iFlow (8 FREE models)
|
||||
#### Qoder (8 FREE models)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow → OAuth login → Unlimited usage
|
||||
Dashboard → Connect Qoder → OAuth login → Unlimited usage
|
||||
|
||||
Models: if/kimi-k2-thinking, if/qwen3-coder-plus, if/glm-4.7, if/minimax-m2, if/deepseek-r1
|
||||
```
|
||||
@@ -507,25 +507,26 @@ post_install() {
|
||||
|
||||
### Environment Variables
|
||||
|
||||
| Variable | Default | Description |
|
||||
| ------------------------- | ------------------------------------ | ---------------------------------------------------------------- |
|
||||
| `JWT_SECRET` | `omniroute-default-secret-change-me` | JWT signing secret (**change in production**) |
|
||||
| `INITIAL_PASSWORD` | `123456` | First login password |
|
||||
| `DATA_DIR` | `~/.omniroute` | Data directory (db, usage, logs) |
|
||||
| `PORT` | framework default | Service port (`20128` in examples) |
|
||||
| `HOSTNAME` | framework default | Bind host (Docker defaults to `0.0.0.0`) |
|
||||
| `NODE_ENV` | runtime default | Set `production` for deploy |
|
||||
| `BASE_URL` | `http://localhost:20128` | Server-side internal base URL |
|
||||
| `CLOUD_URL` | `https://omniroute.dev` | Cloud sync endpoint base URL |
|
||||
| `API_KEY_SECRET` | `endpoint-proxy-api-key-secret` | HMAC secret for generated API keys |
|
||||
| `REQUIRE_API_KEY` | `false` | Enforce Bearer API key on `/v1/*` |
|
||||
| `ALLOW_API_KEY_REVEAL` | `false` | Allow Api Manager to copy full API keys on demand |
|
||||
| `ENABLE_REQUEST_LOGS` | `false` | Enables request/response logs |
|
||||
| `AUTH_COOKIE_SECURE` | `false` | Force `Secure` auth cookie (behind HTTPS reverse proxy) |
|
||||
| `CLOUDFLARED_BIN` | unset | Use an existing `cloudflared` binary instead of managed download |
|
||||
| `OMNIROUTE_MEMORY_MB` | `512` | Node.js heap limit in MB |
|
||||
| `PROMPT_CACHE_MAX_SIZE` | `50` | Max prompt cache entries |
|
||||
| `SEMANTIC_CACHE_MAX_SIZE` | `100` | Max semantic cache entries |
|
||||
| Variable | Default | Description |
|
||||
| -------------------------------------- | ------------------------------------ | ------------------------------------------------------------------------------------------ |
|
||||
| `JWT_SECRET` | `omniroute-default-secret-change-me` | JWT signing secret (**change in production**) |
|
||||
| `INITIAL_PASSWORD` | `123456` | First login password |
|
||||
| `DATA_DIR` | `~/.omniroute` | Data directory (db, usage, logs) |
|
||||
| `PORT` | framework default | Service port (`20128` in examples) |
|
||||
| `HOSTNAME` | framework default | Bind host (Docker defaults to `0.0.0.0`) |
|
||||
| `NODE_ENV` | runtime default | Set `production` for deploy |
|
||||
| `BASE_URL` | `http://localhost:20128` | Server-side internal base URL |
|
||||
| `CLOUD_URL` | `https://omniroute.dev` | Cloud sync endpoint base URL |
|
||||
| `API_KEY_SECRET` | `endpoint-proxy-api-key-secret` | HMAC secret for generated API keys |
|
||||
| `REQUIRE_API_KEY` | `false` | Enforce Bearer API key on `/v1/*` |
|
||||
| `ALLOW_API_KEY_REVEAL` | `false` | Allow Api Manager to copy full API keys on demand |
|
||||
| `DISABLE_SQLITE_AUTO_BACKUP` | `false` | Disable automatic SQLite snapshots before writes/import/restore; manual backups still work |
|
||||
| `ENABLE_REQUEST_LOGS` | `false` | Enables request/response logs |
|
||||
| `AUTH_COOKIE_SECURE` | `false` | Force `Secure` auth cookie (behind HTTPS reverse proxy) |
|
||||
| `CLOUDFLARED_BIN` | unset | Use an existing `cloudflared` binary instead of managed download |
|
||||
| `OMNIROUTE_MEMORY_MB` | `512` | Node.js heap limit in MB |
|
||||
| `PROMPT_CACHE_MAX_SIZE` | `50` | Max prompt cache entries |
|
||||
| `SEMANTIC_CACHE_MAX_SIZE` | `100` | Max semantic cache entries |
|
||||
|
||||
For the full environment variable reference, see the [README](../README.md).
|
||||
|
||||
@@ -548,7 +549,7 @@ For the full environment variable reference, see the [README](../README.md).
|
||||
|
||||
**MiniMax (`minimax/`)** — $0.2/1M: `minimax/MiniMax-M2.1`
|
||||
|
||||
**iFlow (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
**Qoder (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
|
||||
**Qwen (`qw/`)** — FREE: `qw/qwen3-coder-plus`, `qw/qwen3-coder-flash`
|
||||
|
||||
@@ -596,6 +597,11 @@ curl -X POST http://localhost:20128/api/provider-models \
|
||||
|
||||
Or use Dashboard: **Providers → [Provider] → Custom Models**.
|
||||
|
||||
Notes:
|
||||
|
||||
- OpenRouter and OpenAI/Anthropic-compatible providers are managed from **Available Models** only. Manual add, import, and auto-sync all land in the same available-model list, so there is no separate Custom Models section for those providers.
|
||||
- The **Custom Models** section is intended for providers that do not expose managed available-model imports.
|
||||
|
||||
### Dedicated Provider Routes
|
||||
|
||||
Route requests directly to a specific provider with model validation:
|
||||
@@ -763,11 +769,11 @@ OmniRoute implements provider-level resilience with four components:
|
||||
|
||||
Manage database backups in **Dashboard → Settings → System & Storage**.
|
||||
|
||||
| Action | Description |
|
||||
| ------------------------ | ------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| **Export Database** | Downloads the current SQLite database as a `.sqlite` file |
|
||||
| **Export All (.tar.gz)** | Downloads a full backup archive including: database, settings, combos, provider connections (no credentials), API key metadata |
|
||||
| **Import Database** | Upload a `.sqlite` file to replace the current database. A pre-import backup is automatically created |
|
||||
| Action | Description |
|
||||
| ------------------------ | -------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
||||
| **Export Database** | Downloads the current SQLite database as a `.sqlite` file |
|
||||
| **Export All (.tar.gz)** | Downloads a full backup archive including: database, settings, combos, provider connections (no credentials), API key metadata |
|
||||
| **Import Database** | Upload a `.sqlite` file to replace the current database. A pre-import backup is automatically created unless `DISABLE_SQLITE_AUTO_BACKUP=true` |
|
||||
|
||||
```bash
|
||||
# API: Export database
|
||||
|
||||
@@ -90,7 +90,7 @@ flowchart LR
|
||||
end
|
||||
|
||||
subgraph Upstreams[Upstream Providers]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/iFlow/GitHub/Kiro/Cursor/Antigravity]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/Qoder/GitHub/Kiro/Cursor/Antigravity]
|
||||
P2[API Key Providers\nOpenAI/Anthropic/OpenRouter/GLM/Kimi/MiniMax\nDeepSeek/Groq/xAI/Mistral/Perplexity\nTogether/Fireworks/Cerebras/Cohere/NVIDIA]
|
||||
P3[Compatible Nodes\nOpenAI-compatible / Anthropic-compatible]
|
||||
end
|
||||
@@ -224,7 +224,7 @@ Domain layer modules:
|
||||
OAuth provider modules (12 individual files under `src/lib/oauth/providers/`):
|
||||
|
||||
- Registry index: `src/lib/oauth/providers/index.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `iflow.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `qoder.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Thin wrapper: `src/lib/oauth/providers.ts` — re-exports from individual modules
|
||||
|
||||
## 3) Persistence Layer
|
||||
@@ -597,7 +597,7 @@ Each provider has a specialized executor extending `BaseExecutor` (in `open-sse/
|
||||
|
||||
| Executor | Provider(s) | Special Handling |
|
||||
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------- |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, iFlow, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, Qoder, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `AntigravityExecutor` | Google Antigravity | Custom project/session IDs, Retry-After parsing |
|
||||
| `CodexExecutor` | OpenAI Codex | Injects system instructions, forces reasoning effort |
|
||||
| `CursorExecutor` | Cursor IDE | ConnectRPC protocol, Protobuf encoding, request signing via checksum |
|
||||
@@ -621,7 +621,7 @@ All other providers (including custom compatible nodes) use the `DefaultExecutor
|
||||
| Cursor | cursor | Custom checksum | ✅ | ✅ | ❌ | ❌ |
|
||||
| Kiro | kiro | AWS SSO OIDC | ✅ (EventStream) | ❌ | ✅ | ✅ Usage limits |
|
||||
| Qwen | openai | OAuth | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| iFlow | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| Qoder | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| OpenRouter | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| GLM/Kimi/MiniMax | claude | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| DeepSeek | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -271,7 +271,7 @@ Business logic that supports the handlers and executors.
|
||||
| `provider.ts` | **Format detection** (`detectFormat`): analyzes request body structure to identify Claude/OpenAI/Gemini/Antigravity/Responses formats (includes `max_tokens` heuristic for Claude). Also: URL building, header building, thinking config normalization. Supports `openai-compatible-*` and `anthropic-compatible-*` dynamic providers. |
|
||||
| `model.ts` | Model string parsing (`claude/model-name` → `{provider: "claude", model: "model-name"}`), alias resolution with collision detection, input sanitization (rejects path traversal/control chars), and model info resolution with async alias getter support. |
|
||||
| `accountFallback.ts` | Rate-limit handling: exponential backoff (1s → 2s → 4s → max 2min), account cooldown management, error classification (which errors trigger fallback vs. not). |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, iFlow, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, Qoder, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `combo.ts` | **Combo models**: chains of fallback models. If model A fails with a fallback-eligible error, try model B, then C, etc. Returns actual upstream status codes. |
|
||||
| `usage.ts` | Fetches quota/usage data from provider APIs (GitHub Copilot quotas, Antigravity model quotas, Codex rate limits, Kiro usage breakdowns, Claude settings). |
|
||||
| `accountSelector.ts` | Smart account selection with scoring algorithm: considers priority, health status, round-robin position, and cooldown state to pick the optimal account for each request. |
|
||||
@@ -543,7 +543,7 @@ A 2000-token buffer is added to reported usage to prevent clients from hitting c
|
||||
| Kiro (AWS) | AWS SSO OIDC or Social | Kiro | Binary EventStream parsing |
|
||||
| Cursor IDE | Checksum auth | Cursor | Protobuf encoding, SHA-256 checksums |
|
||||
| Qwen | OAuth | Default | Standard auth |
|
||||
| iFlow | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| Qoder | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| OpenRouter | API key | Default | Standard Bearer auth |
|
||||
| GLM, Kimi, MiniMax | API key | Default | Claude-compatible, use `x-api-key` |
|
||||
| `openai-compatible-*` | API key | Default | Dynamic: any OpenAI-compatible endpoint |
|
||||
|
||||
@@ -12,7 +12,7 @@ Visual guide to every section of the OmniRoute dashboard.
|
||||
|
||||
## 🔌 Providers
|
||||
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (iFlow, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (Qoder, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
|
||||

|
||||
|
||||
|
||||
@@ -101,7 +101,7 @@ curl -s http://localhost:20128/api/cli-tools/openclaw-settings | jq '{installed,
|
||||
|
||||
1. Check usage stats in Dashboard → Usage
|
||||
2. Switch primary model to GLM/MiniMax
|
||||
3. Use free tier (Gemini CLI, iFlow) for non-critical tasks
|
||||
3. Use free tier (Gemini CLI, Qoder) for non-critical tasks
|
||||
4. Set cost budgets per API key: Dashboard → API Keys → Budget
|
||||
|
||||
---
|
||||
|
||||
@@ -43,11 +43,11 @@ Complete guide for configuring providers, creating combos, integrating CLI tools
|
||||
| **💰 CHEAP** | GLM-4.7 | $0.6/1M | Daily 10AM | Budget backup |
|
||||
| | MiniMax M2.1 | $0.2/1M | 5-hour rolling | Cheapest option |
|
||||
| | Kimi K2 | $9/mo flat | 10M tokens/mo | Predictable cost |
|
||||
| **🆓 FREE** | iFlow | $0 | Unlimited | 8 models free |
|
||||
| **🆓 FREE** | Qoder | $0 | Unlimited | 8 models free |
|
||||
| | Qwen | $0 | Unlimited | 3 models free |
|
||||
| | Kiro | $0 | Unlimited | Claude free |
|
||||
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + iFlow (unlimited free) combo = $0 cost!
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + Qoder (unlimited free) combo = $0 cost!
|
||||
|
||||
---
|
||||
|
||||
@@ -197,10 +197,10 @@ Models:
|
||||
|
||||
### 🆓 FREE Providers
|
||||
|
||||
#### iFlow (8 FREE models)
|
||||
#### Qoder (8 FREE models)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow → OAuth login → Unlimited usage
|
||||
Dashboard → Connect Qoder → OAuth login → Unlimited usage
|
||||
|
||||
Models: if/kimi-k2-thinking, if/qwen3-coder-plus, if/glm-4.7, if/minimax-m2, if/deepseek-r1
|
||||
```
|
||||
@@ -550,7 +550,7 @@ For the full environment variable reference, see the [README](../README.md).
|
||||
|
||||
**MiniMax (`minimax/`)** — $0.2/1M: `minimax/MiniMax-M2.1`
|
||||
|
||||
**iFlow (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
**Qoder (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
|
||||
**Qwen (`qw/`)** — FREE: `qw/qwen3-coder-plus`, `qw/qwen3-coder-flash`
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ flowchart LR
|
||||
end
|
||||
|
||||
subgraph Upstreams[Upstream Providers]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/iFlow/GitHub/Kiro/Cursor/Antigravity]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/Qoder/GitHub/Kiro/Cursor/Antigravity]
|
||||
P2[API Key Providers\nOpenAI/Anthropic/OpenRouter/GLM/Kimi/MiniMax\nDeepSeek/Groq/xAI/Mistral/Perplexity\nTogether/Fireworks/Cerebras/Cohere/NVIDIA]
|
||||
P3[Compatible Nodes\nOpenAI-compatible / Anthropic-compatible]
|
||||
end
|
||||
@@ -224,7 +224,7 @@ Domain layer modules:
|
||||
OAuth provider modules (12 individual files under `src/lib/oauth/providers/`):
|
||||
|
||||
- Registry index: `src/lib/oauth/providers/index.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `iflow.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `qoder.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Thin wrapper: `src/lib/oauth/providers.ts` — re-exports from individual modules
|
||||
|
||||
## 3) Persistence Layer
|
||||
@@ -597,7 +597,7 @@ Each provider has a specialized executor extending `BaseExecutor` (in `open-sse/
|
||||
|
||||
| Executor | Provider(s) | Special Handling |
|
||||
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------- |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, iFlow, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, Qoder, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `AntigravityExecutor` | Google Antigravity | Custom project/session IDs, Retry-After parsing |
|
||||
| `CodexExecutor` | OpenAI Codex | Injects system instructions, forces reasoning effort |
|
||||
| `CursorExecutor` | Cursor IDE | ConnectRPC protocol, Protobuf encoding, request signing via checksum |
|
||||
@@ -621,7 +621,7 @@ All other providers (including custom compatible nodes) use the `DefaultExecutor
|
||||
| Cursor | cursor | Custom checksum | ✅ | ✅ | ❌ | ❌ |
|
||||
| Kiro | kiro | AWS SSO OIDC | ✅ (EventStream) | ❌ | ✅ | ✅ Usage limits |
|
||||
| Qwen | openai | OAuth | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| iFlow | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| Qoder | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| OpenRouter | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| GLM/Kimi/MiniMax | claude | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| DeepSeek | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -271,7 +271,7 @@ Business logic that supports the handlers and executors.
|
||||
| `provider.ts` | **Format detection** (`detectFormat`): analyzes request body structure to identify Claude/OpenAI/Gemini/Antigravity/Responses formats (includes `max_tokens` heuristic for Claude). Also: URL building, header building, thinking config normalization. Supports `openai-compatible-*` and `anthropic-compatible-*` dynamic providers. |
|
||||
| `model.ts` | Model string parsing (`claude/model-name` → `{provider: "claude", model: "model-name"}`), alias resolution with collision detection, input sanitization (rejects path traversal/control chars), and model info resolution with async alias getter support. |
|
||||
| `accountFallback.ts` | Rate-limit handling: exponential backoff (1s → 2s → 4s → max 2min), account cooldown management, error classification (which errors trigger fallback vs. not). |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, iFlow, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, Qoder, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `combo.ts` | **Combo models**: chains of fallback models. If model A fails with a fallback-eligible error, try model B, then C, etc. Returns actual upstream status codes. |
|
||||
| `usage.ts` | Fetches quota/usage data from provider APIs (GitHub Copilot quotas, Antigravity model quotas, Codex rate limits, Kiro usage breakdowns, Claude settings). |
|
||||
| `accountSelector.ts` | Smart account selection with scoring algorithm: considers priority, health status, round-robin position, and cooldown state to pick the optimal account for each request. |
|
||||
@@ -543,7 +543,7 @@ A 2000-token buffer is added to reported usage to prevent clients from hitting c
|
||||
| Kiro (AWS) | AWS SSO OIDC or Social | Kiro | Binary EventStream parsing |
|
||||
| Cursor IDE | Checksum auth | Cursor | Protobuf encoding, SHA-256 checksums |
|
||||
| Qwen | OAuth | Default | Standard auth |
|
||||
| iFlow | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| Qoder | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| OpenRouter | API key | Default | Standard Bearer auth |
|
||||
| GLM, Kimi, MiniMax | API key | Default | Claude-compatible, use `x-api-key` |
|
||||
| `openai-compatible-*` | API key | Default | Dynamic: any OpenAI-compatible endpoint |
|
||||
|
||||
@@ -12,7 +12,7 @@ Visual guide to every section of the OmniRoute dashboard.
|
||||
|
||||
## 🔌 Providers
|
||||
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (iFlow, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (Qoder, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
|
||||

|
||||
|
||||
|
||||
@@ -101,7 +101,7 @@ curl -s http://localhost:20128/api/cli-tools/openclaw-settings | jq '{installed,
|
||||
|
||||
1. Check usage stats in Dashboard → Usage
|
||||
2. Switch primary model to GLM/MiniMax
|
||||
3. Use free tier (Gemini CLI, iFlow) for non-critical tasks
|
||||
3. Use free tier (Gemini CLI, Qoder) for non-critical tasks
|
||||
4. Set cost budgets per API key: Dashboard → API Keys → Budget
|
||||
|
||||
---
|
||||
|
||||
@@ -43,11 +43,11 @@ Complete guide for configuring providers, creating combos, integrating CLI tools
|
||||
| **💰 CHEAP** | GLM-4.7 | $0.6/1M | Daily 10AM | Budget backup |
|
||||
| | MiniMax M2.1 | $0.2/1M | 5-hour rolling | Cheapest option |
|
||||
| | Kimi K2 | $9/mo flat | 10M tokens/mo | Predictable cost |
|
||||
| **🆓 FREE** | iFlow | $0 | Unlimited | 8 models free |
|
||||
| **🆓 FREE** | Qoder | $0 | Unlimited | 8 models free |
|
||||
| | Qwen | $0 | Unlimited | 3 models free |
|
||||
| | Kiro | $0 | Unlimited | Claude free |
|
||||
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + iFlow (unlimited free) combo = $0 cost!
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + Qoder (unlimited free) combo = $0 cost!
|
||||
|
||||
---
|
||||
|
||||
@@ -197,10 +197,10 @@ Models:
|
||||
|
||||
### 🆓 FREE Providers
|
||||
|
||||
#### iFlow (8 FREE models)
|
||||
#### Qoder (8 FREE models)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow → OAuth login → Unlimited usage
|
||||
Dashboard → Connect Qoder → OAuth login → Unlimited usage
|
||||
|
||||
Models: if/kimi-k2-thinking, if/qwen3-coder-plus, if/glm-4.7, if/minimax-m2, if/deepseek-r1
|
||||
```
|
||||
@@ -550,7 +550,7 @@ For the full environment variable reference, see the [README](../README.md).
|
||||
|
||||
**MiniMax (`minimax/`)** — $0.2/1M: `minimax/MiniMax-M2.1`
|
||||
|
||||
**iFlow (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
**Qoder (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
|
||||
**Qwen (`qw/`)** — FREE: `qw/qwen3-coder-plus`, `qw/qwen3-coder-flash`
|
||||
|
||||
|
||||
@@ -85,7 +85,7 @@ flowchart LR
|
||||
end
|
||||
|
||||
subgraph Upstreams[Upstream Providers]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/iFlow/GitHub/Kiro/Cursor/Antigravity]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/Qoder/GitHub/Kiro/Cursor/Antigravity]
|
||||
P2[API Key Providers\nOpenAI/Anthropic/OpenRouter/GLM/Kimi/MiniMax\nDeepSeek/Groq/xAI/Mistral/Perplexity\nTogether/Fireworks/Cerebras/Cohere/NVIDIA]
|
||||
P3[Compatible Nodes\nOpenAI-compatible / Anthropic-compatible]
|
||||
end
|
||||
@@ -219,7 +219,7 @@ Moduly doménové vrstvy:
|
||||
Moduly poskytovatelů OAuth (12 jednotlivých souborů v adresáři `src/lib/oauth/providers/` ):
|
||||
|
||||
- Index registru: `src/lib/oauth/providers/index.ts`
|
||||
- Jednotliví poskytovatelé: `claude.ts` , `codex.ts` , `gemini.ts` , `antigravity.ts` , `iflow.ts` , `qwen.ts` , `kimi-coding.ts` , `github.ts` , `kiro.ts` , `cursor.ts` , `kilocode.ts` , `cline.ts`
|
||||
- Jednotliví poskytovatelé: `claude.ts` , `codex.ts` , `gemini.ts` , `antigravity.ts` , `qoder.ts` , `qwen.ts` , `kimi-coding.ts` , `github.ts` , `kiro.ts` , `cursor.ts` , `kilocode.ts` , `cline.ts`
|
||||
- Thin wrapper: `src/lib/oauth/providers.ts` — reexporty z jednotlivých modulů
|
||||
|
||||
## 3) Vrstva perzistence
|
||||
@@ -592,7 +592,7 @@ Každý poskytovatel má specializovaný exekutor rozšiřující `BaseExecutor`
|
||||
|
||||
| Vykonavatel | Poskytovatel(é) | Speciální manipulace |
|
||||
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------------------------- |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, iFlow, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Konfigurace dynamické adresy URL/záhlaví pro každého poskytovatele |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, Qoder, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Konfigurace dynamické adresy URL/záhlaví pro každého poskytovatele |
|
||||
| `AntigravityExecutor` | Google Antigravity | Vlastní ID projektů/relací, analýza Opakování po |
|
||||
| `CodexExecutor` | OpenAI Codex | Vkládá systémové instrukce, vynucuje úsilí k uvažování |
|
||||
| `CursorExecutor` | IDE kurzoru | Protokol ConnectRPC, kódování Protobuf, podepisování požadavků pomocí kontrolního součtu |
|
||||
@@ -616,7 +616,7 @@ Všichni ostatní poskytovatelé (včetně uzlů kompatibilních s vlastními fu
|
||||
| Kurzor | kurzor | Vlastní kontrolní součet | ✅ | ✅ | ❌ | ❌ |
|
||||
| Kiro | Kiro | OIDC pro jednotné přihlašování AWS | ✅ (Stream událostí) | ❌ | ✅ | ✅ Limity použití |
|
||||
| Qwen | otevřeno | OAuth | ✅ | ✅ | ✅ | ⚠️ Na vyžádání |
|
||||
| iFlow | otevřeno | OAuth (základní) | ✅ | ✅ | ✅ | ⚠️ Na vyžádání |
|
||||
| Qoder | otevřeno | OAuth (základní) | ✅ | ✅ | ✅ | ⚠️ Na vyžádání |
|
||||
| OpenRouter | otevřeno | Klíč API | ✅ | ✅ | ❌ | ❌ |
|
||||
| GLM/Kimi/MiniMax | Claude | Klíč API | ✅ | ✅ | ❌ | ❌ |
|
||||
| Hluboké vyhledávání | otevřeno | Klíč API | ✅ | ✅ | ❌ | ❌ |
|
||||
|
||||
+50
-50
@@ -52,11 +52,11 @@
|
||||
### 🚀 Vlastnosti
|
||||
|
||||
- **feat(search)** : Přidáno hřiště pro vyhledávání (10. koncový bod), stránka s nástroji pro vyhledávání s porovnáním poskytovatelů/kanálovým přeřazením/historií vyhledávání, lokální směrování pro přeřazení, ochrana autorizace ve vyhledávacím API (#443 od @Regis-RCR)
|
||||
- Nová trasa: `/dashboard/search-tools`
|
||||
- Položka postranního panelu v sekci Ladění
|
||||
- `GET /api/search/providers` a `GET /api/search/stats` s ochranou autorizace
|
||||
- Lokální směrování provider_nodes pro `/v1/rerank`
|
||||
- 30+ klíčů i18n ve vyhledávacím jmenném prostoru
|
||||
- Nová trasa: `/dashboard/search-tools`
|
||||
- Položka postranního panelu v sekci Ladění
|
||||
- `GET /api/search/providers` a `GET /api/search/stats` s ochranou autorizace
|
||||
- Lokální směrování provider_nodes pro `/v1/rerank`
|
||||
- 30+ klíčů i18n ve vyhledávacím jmenném prostoru
|
||||
|
||||
### 🐛 Opravy chyb
|
||||
|
||||
@@ -74,9 +74,9 @@
|
||||
### 🐛 Opravy chyb
|
||||
|
||||
- **oprava(codex)** : Blokování týdenních vyčerpávajících účtů v přímém záložním rozhraní API (#440)
|
||||
- Porovnávání prefixů `resolveQuotaWindow()` : `"weekly"` nyní odpovídá klíčům mezipaměti `"weekly (7d)"`
|
||||
- `applyCodexWindowPolicy()` správně vynucuje přepínání `useWeekly` / `use5h`
|
||||
- 4 nové regresní testy (celkem 766)
|
||||
- Porovnávání prefixů `resolveQuotaWindow()` : `"weekly"` nyní odpovídá klíčům mezipaměti `"weekly (7d)"`
|
||||
- `applyCodexWindowPolicy()` správně vynucuje přepínání `useWeekly` / `use5h`
|
||||
- 4 nové regresní testy (celkem 766)
|
||||
|
||||
---
|
||||
|
||||
@@ -87,8 +87,8 @@
|
||||
### 🐛 Opravy chyb
|
||||
|
||||
- **fix(logs)** : Oprava kontrastu světelného režimu v protokolech požadavků, tlačítek filtrů a kombinovaného odznaku (#378)
|
||||
- Tlačítka filtrů Chyba/Úspěch/Kombinace jsou nyní čitelná i ve světlém režimu.
|
||||
- Odznak kombinované řady používá ve světlém režimu silnější fialovou barvu
|
||||
- Tlačítka filtrů Chyba/Úspěch/Kombinace jsou nyní čitelná i ve světlém režimu.
|
||||
- Odznak kombinované řady používá ve světlém režimu silnější fialovou barvu
|
||||
|
||||
---
|
||||
|
||||
@@ -99,32 +99,32 @@
|
||||
### ✨ Nové funkce
|
||||
|
||||
- **feat(search)** : Sjednocené směrování webového vyhledávání — `POST /v1/search` s 5 poskytovateli (Serper, Brave, Perplexity, Exa, Tavily)
|
||||
- Automatické přepnutí napříč poskytovateli, více než 6 500 bezplatných vyhledávání/měsíc
|
||||
- Mezipaměť v paměti se slučováním požadavků (konfigurovatelné TTL)
|
||||
- Dashboard: Karta Analytika vyhledávání v `/dashboard/analytics` s rozpisem poskytovatelů, mírou zásahů do mezipaměti a sledováním nákladů
|
||||
- Nové API: `GET /api/v1/search/analytics` pro statistiky vyhledávacích požadavků
|
||||
- Migrace databáze: sloupec `request_type` v `call_logs` pro sledování požadavků mimo chat
|
||||
- Ověření Zod ( `v1SearchSchema` ), chráněné autorizací, náklady zaznamenány pomocí `recordCost()`
|
||||
- Automatické přepnutí napříč poskytovateli, více než 6 500 bezplatných vyhledávání/měsíc
|
||||
- Mezipaměť v paměti se slučováním požadavků (konfigurovatelné TTL)
|
||||
- Dashboard: Karta Analytika vyhledávání v `/dashboard/analytics` s rozpisem poskytovatelů, mírou zásahů do mezipaměti a sledováním nákladů
|
||||
- Nové API: `GET /api/v1/search/analytics` pro statistiky vyhledávacích požadavků
|
||||
- Migrace databáze: sloupec `request_type` v `call_logs` pro sledování požadavků mimo chat
|
||||
- Ověření Zod ( `v1SearchSchema` ), chráněné autorizací, náklady zaznamenány pomocí `recordCost()`
|
||||
|
||||
### 🔒 Bezpečnost
|
||||
|
||||
- **deps** : Next.js 16.1.6 → 16.1.7 — opravuje 6 CVE:
|
||||
- **Kritické** : CVE-2026-29057 (pašování HTTP požadavků přes http-proxy)
|
||||
- **Vysoká** : CVE-2026-27977, CVE-2026-27978 (WebSocket + akce serveru)
|
||||
- **Médium** : CVE-2026-27979, CVE-2026-27980, CVE-2026-jcc7
|
||||
- **Kritické** : CVE-2026-29057 (pašování HTTP požadavků přes http-proxy)
|
||||
- **Vysoká** : CVE-2026-27977, CVE-2026-27978 (WebSocket + akce serveru)
|
||||
- **Médium** : CVE-2026-27979, CVE-2026-27980, CVE-2026-jcc7
|
||||
|
||||
### 📁 Nové soubory
|
||||
|
||||
Soubor | Účel
|
||||
--- | ---
|
||||
`open-sse/handlers/search.ts` | Vyhledávací obslužná rutina s routováním 5 poskytovatelů
|
||||
`open-sse/config/searchRegistry.ts` | Registr poskytovatelů (autorizace, náklady, kvóta, TTL)
|
||||
`open-sse/services/searchCache.ts` | Mezipaměť v paměti se slučováním požadavků
|
||||
`src/app/api/v1/search/route.ts` | Trasa Next.js (POST + GET)
|
||||
`src/app/api/v1/search/analytics/route.ts` | API pro statistiky vyhledávání
|
||||
`src/app/(dashboard)/dashboard/analytics/SearchAnalyticsTab.tsx` | Karta analytického panelu
|
||||
`src/lib/db/migrations/007_search_request_type.sql` | Migrace databáze
|
||||
`tests/unit/search-registry.test.mjs` | 277 řádků jednotkových testů
|
||||
| Soubor | Účel |
|
||||
| ---------------------------------------------------------------- | -------------------------------------------------------- |
|
||||
| `open-sse/handlers/search.ts` | Vyhledávací obslužná rutina s routováním 5 poskytovatelů |
|
||||
| `open-sse/config/searchRegistry.ts` | Registr poskytovatelů (autorizace, náklady, kvóta, TTL) |
|
||||
| `open-sse/services/searchCache.ts` | Mezipaměť v paměti se slučováním požadavků |
|
||||
| `src/app/api/v1/search/route.ts` | Trasa Next.js (POST + GET) |
|
||||
| `src/app/api/v1/search/analytics/route.ts` | API pro statistiky vyhledávání |
|
||||
| `src/app/(dashboard)/dashboard/analytics/SearchAnalyticsTab.tsx` | Karta analytického panelu |
|
||||
| `src/lib/db/migrations/007_search_request_type.sql` | Migrace databáze |
|
||||
| `tests/unit/search-registry.test.mjs` | 277 řádků jednotkových testů |
|
||||
|
||||
---
|
||||
|
||||
@@ -283,10 +283,10 @@ Soubor | Účel
|
||||
### 🐛 Opravy chyb
|
||||
|
||||
- **fix(providers)** : Odstraněny neexistující názvy modelů u 5 poskytovatelů:
|
||||
- **gemini / gemini-cli** : odstraněny `gemini-3.1-pro/flash` a `gemini-3-*-preview` (neexistují v Google API v1beta); nahrazeny `gemini-2.5-pro` , `gemini-2.5-flash` , `gemini-2.0-flash` , `gemini-1.5-pro/flash`
|
||||
- **antigravity** : odstraněny `gemini-3.1-pro-high/low` a `gemini-3-flash` (neplatné interní aliasy); nahrazeny skutečnými modely z verze 2.x
|
||||
- **github (Copilot)** : odstraněny `gemini-3-flash-preview` a `gemini-3-pro-preview` ; nahrazeny `gemini-2.5-flash`
|
||||
- **nvidia** : opraveno `nvidia/llama-3.3-70b-instruct` → `meta/llama-3.3-70b-instruct` (NVIDIA NIM používá pro modely Meta jmenný prostor `meta/` /); přidány `nvidia/llama-3.1-70b-instruct` a `nvidia/llama-3.1-405b-instruct`
|
||||
- **gemini / gemini-cli** : odstraněny `gemini-3.1-pro/flash` a `gemini-3-*-preview` (neexistují v Google API v1beta); nahrazeny `gemini-2.5-pro` , `gemini-2.5-flash` , `gemini-2.0-flash` , `gemini-1.5-pro/flash`
|
||||
- **antigravity** : odstraněny `gemini-3.1-pro-high/low` a `gemini-3-flash` (neplatné interní aliasy); nahrazeny skutečnými modely z verze 2.x
|
||||
- **github (Copilot)** : odstraněny `gemini-3-flash-preview` a `gemini-3-pro-preview` ; nahrazeny `gemini-2.5-flash`
|
||||
- **nvidia** : opraveno `nvidia/llama-3.3-70b-instruct` → `meta/llama-3.3-70b-instruct` (NVIDIA NIM používá pro modely Meta jmenný prostor `meta/` /); přidány `nvidia/llama-3.1-70b-instruct` a `nvidia/llama-3.1-405b-instruct`
|
||||
- **fix(db/combo)** : Aktualizováno `free-stack` combo na vzdálené databázi: odstraněno `qw/qwen3-coder-plus` (prošlý obnovovací token), opraveno `nvidia/llama-3.3-70b-instruct` → `nvidia/meta/llama-3.3-70b-instruct` , opraveno `gemini/gemini-3.1-flash` → `gemini/gemini-2.5-flash` , přidáno `if/deepseek-v3.2`
|
||||
|
||||
---
|
||||
@@ -356,7 +356,7 @@ Soubor | Účel
|
||||
|
||||
- **oprava(média)** : ComfyUI a SD WebUI se již nezobrazují v seznamu poskytovatelů na stránce Média, pokud nejsou nakonfigurovány — při připojení načtou `/api/providers` a skryjí lokální poskytovatele bez připojení (#390)
|
||||
- **oprava(auth)** : Round-robin již po zpoždění znovu nevybírá účty s omezenou rychlostí ihned – `backoffLevel` se nyní používá jako primární třídicí klíč v rotaci LRU (#340)
|
||||
- **oprava(oauth)** : iFlow (a další poskytovatelé, kteří přesměrovávají na své vlastní uživatelské rozhraní) již nenechávají modální okno OAuth zaseknuté na „Čekání na autorizaci“ – detektor zavřených vyskakovacích oken automaticky přechází do režimu ručního zadávání URL (#344)
|
||||
- **oprava(oauth)** : Qoder (a další poskytovatelé, kteří přesměrovávají na své vlastní uživatelské rozhraní) již nenechávají modální okno OAuth zaseknuté na „Čekání na autorizaci“ – detektor zavřených vyskakovacích oken automaticky přechází do režimu ručního zadávání URL (#344)
|
||||
- **oprava(logy)** : Tabulka protokolů požadavků je nyní čitelná ve světlém režimu – stavové odznaky, počty tokenů a kombinované tagy používají adaptivní `dark:` barevné třídy (#378)
|
||||
|
||||
### ✨ Funkce
|
||||
@@ -508,7 +508,7 @@ Soubor | Účel
|
||||
### ✨ Nové funkce
|
||||
|
||||
- **Strategie směrování Fill-First a P2C** : Do výběru kombinované strategie přidány strategie `fill-first` (vyčerpání kvóty před přesunem) a `p2c` (výběr Power-of-Two-Choices s nízkou latencí) s kompletními panely s pokyny a barevně odlišenými odznaky.
|
||||
- **Přednastavené modely Free Stack** : Vytvoření kombinace pomocí šablony Free Stack nyní automaticky vyplní 7 nejlepších modelů bezplatných poskytovatelů ve své třídě (Gemini CLI, Kiro, iFlow×2, Qwen, NVIDIA NIM, Groq). Uživatelé stačí aktivovat poskytovatele a ihned získají kombinaci 0 $/měsíc.
|
||||
- **Přednastavené modely Free Stack** : Vytvoření kombinace pomocí šablony Free Stack nyní automaticky vyplní 7 nejlepších modelů bezplatných poskytovatelů ve své třídě (Gemini CLI, Kiro, Qoder×2, Qwen, NVIDIA NIM, Groq). Uživatelé stačí aktivovat poskytovatele a ihned získají kombinaci 0 $/měsíc.
|
||||
- **Širší kombo modální okno** : Modální okno pro vytvoření/úpravu komba nyní používá `max-w-4xl` pro pohodlnou úpravu velkých komb.
|
||||
|
||||
### 🐛 Opravy chyb
|
||||
@@ -554,13 +554,13 @@ Soubor | Účel
|
||||
|
||||
### 📁 Nové soubory
|
||||
|
||||
Soubor | Účel
|
||||
--- | ---
|
||||
`open-sse/services/taskAwareRouter.ts` | Logika směrování s ohledem na úlohy (7 typů úloh)
|
||||
`src/app/api/settings/task-routing/route.ts` | API pro konfiguraci směrování úloh
|
||||
`src/app/api/providers/[id]/refresh/route.ts` | Ruční aktualizace tokenu OAuth
|
||||
`src/lib/db/readCache.ts` | Efektivní mezipaměť pro čtení databáze
|
||||
`src/shared/utils/clipboard.ts` | Zpevněná schránka s funkcí
|
||||
| Soubor | Účel |
|
||||
| --------------------------------------------- | ------------------------------------------------- |
|
||||
| `open-sse/services/taskAwareRouter.ts` | Logika směrování s ohledem na úlohy (7 typů úloh) |
|
||||
| `src/app/api/settings/task-routing/route.ts` | API pro konfiguraci směrování úloh |
|
||||
| `src/app/api/providers/[id]/refresh/route.ts` | Ruční aktualizace tokenu OAuth |
|
||||
| `src/lib/db/readCache.ts` | Efektivní mezipaměť pro čtení databáze |
|
||||
| `src/shared/utils/clipboard.ts` | Zpevněná schránka s funkcí |
|
||||
|
||||
## [2.4.1] - 13. 3. 2026
|
||||
|
||||
@@ -574,7 +574,7 @@ Soubor | Účel
|
||||
|
||||
### ✨ Funkce
|
||||
|
||||
- **Kombinace: Šablona Free Stack** — Nová 4. šablona „Free Stack (0 $)“ využívající round-robin napříč Kiro + iFlow + Qwen + Gemini CLI. Při prvním použití doporučuje předpřipravenou kombinaci s nulovými náklady.
|
||||
- **Kombinace: Šablona Free Stack** — Nová 4. šablona „Free Stack (0 $)“ využívající round-robin napříč Kiro + Qoder + Qwen + Gemini CLI. Při prvním použití doporučuje předpřipravenou kombinaci s nulovými náklady.
|
||||
- **Média/Přepis: Deepgram jako výchozí** – Deepgram (Nova 3, 200 dolarů zdarma) je nyní výchozím poskytovatelem přepisu. AssemblyAI (50 dolarů zdarma) a Groq Whisper (navždy zdarma) jsou zobrazeny s odznaky bezplatného kreditu.
|
||||
- **README: Sekce „Začít zdarma“** – Nová tabulka s 5 kroky v předběžném souboru README, která ukazuje, jak nastavit umělou inteligenci s nulovými náklady během několika minut.
|
||||
- **README: Kombinace bezplatného přepisu** – Nová sekce s návrhem kombinací Deepgram/AssemblyAI/Groq a informacemi o bezplatném kreditu pro každého poskytovatele.
|
||||
@@ -586,9 +586,9 @@ Soubor | Účel
|
||||
### 📖 Dokumentace
|
||||
|
||||
- **README: 44+ poskytovatelů** — Všechny 3 výskyty výrazu „36+ poskytovatelů“ byly aktualizovány na „44+“, což odráží skutečný počet kódové základny (44 poskytovatelů v souboru providers.ts).
|
||||
- **README: Nová sekce „🆓 Bezplatné modely – Co skutečně získáte“** – Přidána tabulka 7 poskytovatelů s limity rychlosti pro každý model pro: Kiro (Claude neomezeně přes AWS Builder ID), iFlow (5 modelů neomezeně), Qwen (4 modely neomezeně), Gemini CLI (180K/měsíc), NVIDIA NIM (~40 RPM dev-forever), Cerebras (1M tok/den / 60K TPM), Groq (30 RPM / 14.4K RPD). Zahrnuje doporučení pro kombinaci /usr/bin/bash Ultimate Free Stack.
|
||||
- **Soubor README: Aktualizace cenové tabulky** – přidán Cerebras do úrovně API KEY, opravena změna NVIDIA z „1000 kreditů“ na „navždy zdarma pro vývojáře“, aktualizovány počty a názvy modelů iFlow/Qwen
|
||||
- **README: Modely iFlow 8→5** (s názvy: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2)
|
||||
- **README: Nová sekce „🆓 Bezplatné modely – Co skutečně získáte“** – Přidána tabulka 7 poskytovatelů s limity rychlosti pro každý model pro: Kiro (Claude neomezeně přes AWS Builder ID), Qoder (5 modelů neomezeně), Qwen (4 modely neomezeně), Gemini CLI (180K/měsíc), NVIDIA NIM (~40 RPM dev-forever), Cerebras (1M tok/den / 60K TPM), Groq (30 RPM / 14.4K RPD). Zahrnuje doporučení pro kombinaci /usr/bin/bash Ultimate Free Stack.
|
||||
- **Soubor README: Aktualizace cenové tabulky** – přidán Cerebras do úrovně API KEY, opravena změna NVIDIA z „1000 kreditů“ na „navždy zdarma pro vývojáře“, aktualizovány počty a názvy modelů Qoder/Qwen
|
||||
- **README: Modely Qoder 8→5** (s názvy: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2)
|
||||
- **README: Modely Qwen 3→4** (s názvy: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model)
|
||||
|
||||
## [2.3.15] - 13. 3. 2026
|
||||
@@ -602,7 +602,7 @@ Soubor | Účel
|
||||
|
||||
### 🐛 Opravy chyb
|
||||
|
||||
- **iFlow OAuth (#339)** : Obnoven platný výchozí `clientSecret` – dříve to byl prázdný řetězec, který při každém pokusu o připojení způsoboval chybu „Chybné přihlašovací údaje klienta“. Veřejné přihlašovací údaje jsou nyní výchozím záložním nastavením (lze je přepsat pomocí proměnné prostředí `IFLOW_OAUTH_CLIENT_SECRET` ).
|
||||
- **Qoder OAuth (#339)** : Obnoven platný výchozí `clientSecret` – dříve to byl prázdný řetězec, který při každém pokusu o připojení způsoboval chybu „Chybné přihlašovací údaje klienta“. Veřejné přihlašovací údaje jsou nyní výchozím záložním nastavením (lze je přepsat pomocí proměnné prostředí `QODER_OAUTH_CLIENT_SECRET` ).
|
||||
- **MITM server nenalezen (#335)** : `prepublish.mjs` nyní kompiluje `src/mitm/*.ts` do JavaScriptu pomocí `tsc` před zkopírováním do npm balíčku. Dříve se kopírovaly pouze nezpracované soubory `.ts` – což znamenalo, že `server.js` nikdy neexistoval v globálních instalacích npm/Volta.
|
||||
- **Chybí projectId v GeminiCLI (#338)** : Namísto vyvolání hardwarové chyby 500, když v uložených přihlašovacích údajích chybí `projectId` (např. po restartu Dockeru), OmniRoute nyní zaznamená varování a pokusí se o požadavek – vrátí smysluplnou chybu na straně poskytovatele místo pádu OmniRoute.
|
||||
- **Neshoda verzí balíčku Electron (#323)** : Synchronizována verze `electron/package.json` s verzí `2.3.13` (dříve `2.0.13` ), takže binární verze pro stolní počítače odpovídá balíčku npm.
|
||||
@@ -640,9 +640,9 @@ Soubor | Účel
|
||||
|
||||
### 📁 Nové soubory
|
||||
|
||||
Soubor | Účel
|
||||
--- | ---
|
||||
`open-sse/services/modelFamilyFallback.ts` | Definice modelových rodin a logika záložních řešení v rámci rodiny
|
||||
| Soubor | Účel |
|
||||
| ------------------------------------------ | ------------------------------------------------------------------ |
|
||||
| `open-sse/services/modelFamilyFallback.ts` | Definice modelových rodin a logika záložních řešení v rámci rodiny |
|
||||
|
||||
### Opraveno
|
||||
|
||||
|
||||
@@ -267,7 +267,7 @@ Obchodní logika, která podporuje obslužné rutiny a vykonavatele.
|
||||
| `provider.ts` | **Detekce formátu** ( `detectFormat` ): analyzuje strukturu těla požadavku a identifikuje formáty Claude/OpenAI/Gemini/Antigravity/Responses (včetně heuristiky `max_tokens` pro Claude). Dále: tvorba URL, tvorba hlaviček, normalizace konfigurace thinking. Podporuje dynamické poskytovatele kompatibilní `openai-compatible-*` a `anthropic-compatible-*` . |
|
||||
| `model.ts` | Analýza řetězců modelu ( `claude/model-name` → `{provider: "claude", model: "model-name"}` ), rozlišení aliasů s detekcí kolizí, sanitizace vstupu (odmítá průchod cestou/řídicí znaky) a rozlišení informací o modelu s podporou asynchronních metod pro získávání aliasů. |
|
||||
| `accountFallback.ts` | Ovládání limitů rychlosti: exponenciální upomínka (1 s → 2 s → 4 s → max. 2 min), správa doby zpoždění účtu, klasifikace chyb (které chyby spouštějí fallback a které ne). |
|
||||
| `tokenRefresh.ts` | Aktualizace tokenu OAuth pro **všechny poskytovatele** : Google (Gemini, Antigravity), Claude, Codex, Qwen, iFlow, GitHub (duální token OAuth + Copilot), Kiro (AWS SSO OIDC + sociální ověřování). Zahrnuje mezipaměť deduplikace promise za provozu a opakování s exponenciálním zpožděním. |
|
||||
| `tokenRefresh.ts` | Aktualizace tokenu OAuth pro **všechny poskytovatele** : Google (Gemini, Antigravity), Claude, Codex, Qwen, Qoder, GitHub (duální token OAuth + Copilot), Kiro (AWS SSO OIDC + sociální ověřování). Zahrnuje mezipaměť deduplikace promise za provozu a opakování s exponenciálním zpožděním. |
|
||||
| `combo.ts` | **Kombinované modely** : řetězce záložních modelů. Pokud model A selže s chybou způsobilou pro záložní model, zkuste model B, poté C atd. Vrací skutečné stavové kódy upstreamu. |
|
||||
| `usage.ts` | Načítá data o kvótách/využití z API poskytovatelů (kvóty GitHub Copilot, kvóty modelu Antigravity, limity rychlosti Codexu, rozpisy využití Kiro, nastavení Claude). |
|
||||
| `accountSelector.ts` | Inteligentní výběr účtu s algoritmem bodování: pro výběr optimálního účtu pro každý požadavek se zohledňuje priorita, zdravotní stav, pozice v systému round robin a stav ochlazování. |
|
||||
@@ -539,7 +539,7 @@ K hlášenému využití je přidána vyrovnávací paměť o kapacitě 2000 tok
|
||||
| Kiro (AWS) | AWS SSO OIDC nebo Social | Kiro | Analýza binárního EventStreamu |
|
||||
| Cursor IDE | Checksum auth | Cursor | Kódování Protobuf, kontrolní součty SHA-256 |
|
||||
| Qwen | OAuth | Výchozí | Standardní ověřování |
|
||||
| iFlow | OAuth (Basic + Bearer) | Výchozí | Duální hlavička pro autorizaci |
|
||||
| Qoder | OAuth (Basic + Bearer) | Výchozí | Duální hlavička pro autorizaci |
|
||||
| OpenRouter | API klíč | Výchozí | Autorizace standardního nosiče |
|
||||
| GLM, Kimi, MiniMax | API klíč | Výchozí | Kompatibilní s Claude, použijte `x-api-key` |
|
||||
| `openai-compatible-*` | API klíč | Výchozí | Dynamické: jakýkoli OpenAI kompatibilní |
|
||||
|
||||
@@ -8,7 +8,7 @@ Vizuální průvodce všemi částmi ovládacího panelu OmniRoute.
|
||||
|
||||
## 🔌 Poskytovatelé
|
||||
|
||||
Spravujte připojení poskytovatelů AI: poskytovatelé OAuth (Claude Code, Codex, Gemini CLI), poskytovatelé klíčů API (Groq, DeepSeek, OpenRouter) a bezplatní poskytovatelé (iFlow, Qwen, Kiro). Účty Kiro zahrnují sledování zůstatku kreditů – zbývající kredity, celkový limit a datum obnovení jsou viditelné v Dashboard → Usage.
|
||||
Spravujte připojení poskytovatelů AI: poskytovatelé OAuth (Claude Code, Codex, Gemini CLI), poskytovatelé klíčů API (Groq, DeepSeek, OpenRouter) a bezplatní poskytovatelé (Qoder, Qwen, Kiro). Účty Kiro zahrnují sledování zůstatku kreditů – zbývající kredity, celkový limit a datum obnovení jsou viditelné v Dashboard → Usage.
|
||||
|
||||

|
||||
|
||||
@@ -46,13 +46,13 @@ Monitorování v reálném čase: dostupnost, paměť, verze, percentily latence
|
||||
|
||||
---
|
||||
|
||||
## 🎮 Modelové hřiště *(v2.0.9+)*
|
||||
## 🎮 Modelové hřiště _(v2.0.9+)_
|
||||
|
||||
Otestujte libovolný model přímo z řídicího panelu. Vyberte poskytovatele, model a koncový bod, pište výzvy pomocí editoru Monaco, streamujte odpovědi v reálném čase, přerušte stream a zobrazte metriky časování.
|
||||
|
||||
---
|
||||
|
||||
## 🎨 Témata *(v2.0.5+)*
|
||||
## 🎨 Témata _(v2.0.5+)_
|
||||
|
||||
Přizpůsobitelná barevná témata pro celý dashboard. Vyberte si ze 7 přednastavených barev (korálová, modrá, červená, zelená, fialová, oranžová, azurová) nebo si vytvořte vlastní téma výběrem libovolné hexadecimální barvy. Podporuje světlý, tmavý a systémový režim.
|
||||
|
||||
@@ -81,7 +81,7 @@ Konfigurace nástrojů pro kódování s umělou inteligencí jedním kliknutím
|
||||
|
||||
---
|
||||
|
||||
## 🤖 Agenti CLI *(v2.0.11+)*
|
||||
## 🤖 Agenti CLI _(v2.0.11+)_
|
||||
|
||||
Ovládací panel pro vyhledávání a správu agentů CLI. Zobrazuje mřížku 14 vestavěných agentů (Codex, Claude, Goose, Gemini CLI, OpenClaw, Aider, OpenCode, Cline, Qwen Code, ForgeCode, Amazon Q, Open Interpreter, Cursor CLI, Warp) s:
|
||||
|
||||
@@ -92,7 +92,7 @@ Ovládací panel pro vyhledávání a správu agentů CLI. Zobrazuje mřížku 1
|
||||
|
||||
---
|
||||
|
||||
## 🖼️ Média *(v2.0.3+)*
|
||||
## 🖼️ Média _(v2.0.3+)_
|
||||
|
||||
Generujte obrázky, videa a hudbu z řídicího panelu. Podporuje OpenAI, xAI, Together, Hyperbolic, SD WebUI, ComfyUI, AnimateDiff, Stable Audio Open a MusicGen.
|
||||
|
||||
|
||||
+13
-13
@@ -135,7 +135,7 @@ Při otevírání problému spusťte příkaz system-info a přiložte vygenerov
|
||||
npm run system-info
|
||||
```
|
||||
|
||||
Tím se vygeneruje soubor `system-info.txt` s verzí Node.js, verzí OmniRoute, podrobnostmi o operačním systému, nainstalovanými nástroji CLI (iflow, gemini, claude, codex, antigravity, droid atd.), stavem Dockeru/PM2 a systémovými balíčky – vše, co potřebujeme k rychlé reprodukci vašeho problému. Soubor přiložte přímo k vašemu problému na GitHubu.
|
||||
Tím se vygeneruje soubor `system-info.txt` s verzí Node.js, verzí OmniRoute, podrobnostmi o operačním systému, nainstalovanými nástroji CLI (qoder, gemini, claude, codex, antigravity, droid atd.), stavem Dockeru/PM2 a systémovými balíčky – vše, co potřebujeme k rychlé reprodukci vašeho problému. Soubor přiložte přímo k vašemu problému na GitHubu.
|
||||
|
||||
---
|
||||
|
||||
@@ -161,7 +161,7 @@ Tím se vygeneruje soubor `system-info.txt` s verzí Node.js, verzí OmniRoute,
|
||||
│ ↓ budget limit
|
||||
├─→ [Tier 3: CHEAP] GLM ($0.6/1M), MiniMax ($0.2/1M)
|
||||
│ ↓ budget limit
|
||||
└─→ [Tier 4: FREE] iFlow, Qwen, Kiro (unlimited)
|
||||
└─→ [Tier 4: FREE] Qoder, Qwen, Kiro (unlimited)
|
||||
|
||||
Result: Never stop coding, minimal cost
|
||||
```
|
||||
@@ -226,7 +226,7 @@ Ne každý si může dovolit zaplatit 20–200 dolarů měsíčně za předplatn
|
||||
|
||||
**Jak to OmniRoute řeší:**
|
||||
|
||||
- **Vestavění poskytovatelé bezplatné úrovně** — Nativní podpora pro 100% bezplatné poskytovatele: iFlow (5 neomezených modelů přes OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 neomezené modely: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID zdarma), Gemini CLI (180 tisíc tokenů/měsíc zdarma)
|
||||
- **Vestavění poskytovatelé bezplatné úrovně** — Nativní podpora pro 100% bezplatné poskytovatele: Qoder (5 neomezených modelů přes OAuth: kimi-k2-thinking, qwen3-coder-plus, deepseek-r1, minimax-m2, kimi-k2), Qwen (4 neomezené modely: qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next, vision-model), Kiro (Claude + AWS Builder ID zdarma), Gemini CLI (180 tisíc tokenů/měsíc zdarma)
|
||||
- **Ollama Cloud** — Cloudově hostované modely Ollama na `api.ollama.com` s bezplatnou úrovní „Light usage“; použijte prefix `ollamacloud/<model>`
|
||||
- **Kombinace pouze zdarma** — Chain `gc/gemini-3-flash → if/kimi-k2-thinking → qw/qwen3-coder-plus` = 0 $/měsíc s nulovými prostoji
|
||||
- **NVIDIA NIM Free Access** — ~40 RPM developerský přístup k více než 70 modelům na build.nvidia.com (přechod z kreditů na čisté limity rychlosti)
|
||||
@@ -286,7 +286,7 @@ Claude Code, Codex, Gemini CLI, Copilot – všechny používají OAuth 2.0 s to
|
||||
**Jak to OmniRoute řeší:**
|
||||
|
||||
- **Automatická aktualizace tokenů** – Tokeny OAuth se obnovují na pozadí před vypršením platnosti.
|
||||
- **Vestavěný OAuth 2.0 (PKCE)** – Automatický tok pro Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, iFlow
|
||||
- **Vestavěný OAuth 2.0 (PKCE)** – Automatický tok pro Claude Code, Codex, Gemini CLI, Copilot, Kiro, Qwen, Qoder
|
||||
- **Multi-Account OAuth** — Více účtů na poskytovatele prostřednictvím extrakce tokenů JWT/ID
|
||||
- **OAuth LAN/Remote Fix** — Detekce privátní IP adresy pro `redirect_uri` + manuální režim URL pro vzdálené servery
|
||||
- **OAuth Behind Nginx** — Používá `window.location.origin` pro kompatibilitu s reverzní proxy
|
||||
@@ -639,7 +639,7 @@ Outcome: deep fallback depth for deadline-critical workloads
|
||||
| Krok | Akce | Poskytovatelé odemčeni |
|
||||
| ---- | -------------------------------------------------------------- | ----------------------------------------------------------------- |
|
||||
| 1 | Připojení **Kiro** (AWS Builder ID OAuth) | Claude Sonnet 4.5, Haiku 4.5 – **neomezeně** |
|
||||
| 2 | Připojení k **iFlow** (Google OAuth) | kimi-k2-myšlení, qwen3-coder-plus, deepseek-r1... — **neomezeně** |
|
||||
| 2 | Připojení k **Qoder** (Google OAuth) | kimi-k2-myšlení, qwen3-coder-plus, deepseek-r1... — **neomezeně** |
|
||||
| 3 | Připojení **Qwen** (kód zařízení) | qwen3-coder-plus, qwen3-coder-flash... — **neomezeně** |
|
||||
| 4 | Připojení **rozhraní příkazového řádku Gemini** (Google OAuth) | gemini-3-flash, gemini-2.5-pro — **180 000 GBP/měsíc zdarma** |
|
||||
| 5 | `/dashboard/combos` → Šablona **Free Stack (0 $)** | Automatické zařazení všech bezplatných poskytovatelů do routingu |
|
||||
@@ -848,7 +848,7 @@ Po minimalizaci se OmniRoute nachází v systémové liště a nabízí rychlé
|
||||
| MiniMax M2.1 | 0,2 USD/1 milion | 5hodinové válcování | Nejlevnější varianta |
|
||||
| Kimi K2.5 (Moonshot API) 🆕 | Platba za použití | Žádný | Přímý přístup k Moonshot API |
|
||||
| Kimi K2 | 9 dolarů měsíčně bez závazků | 10 milionů tokenů/měsíc | Předvídatelné náklady |
|
||||
| **🆓 ZDARMA** | iFlow | **0 dolarů** | Neomezený | 5 modelů neomezeně |
|
||||
| **🆓 ZDARMA** | Qoder | **0 dolarů** | Neomezený | 5 modelů neomezeně |
|
||||
| Qwen | **0 dolarů** | Neomezený | 4 modely neomezeně |
|
||||
| Kiro | **0 dolarů** | Neomezený | Claude Sonnet/Haiku (tvorce AWS) |
|
||||
|
||||
@@ -859,7 +859,7 @@ Po minimalizaci se OmniRoute nachází v systémové liště a nabízí rychlé
|
||||
```
|
||||
# 🆓 Ultimate Free Stack 2026 — 11 Providers, $0 Forever
|
||||
Kiro (kr/) → Claude Sonnet/Haiku UNLIMITED
|
||||
iFlow (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
Qoder (if/) → kimi-k2-thinking, qwen3-coder-plus, deepseek-r1 UNLIMITED
|
||||
LongCat Lite (lc/) → LongCat-Flash-Lite — 50M tokens/day 🔥
|
||||
Pollinations (pol/) → GPT-5, Claude, DeepSeek, Llama 4 — no key needed
|
||||
Qwen (qw/) → qwen3-coder-plus, qwen3-coder-flash, qwen3-coder-next UNLIMITED
|
||||
@@ -889,7 +889,7 @@ Cerebras (cerebras/) → Llama/Qwen world-fastest — 1M tok/day
|
||||
| `claude-haiku-4.5` | `kr/` | **Neomezený** | Žádný hlášený denní limit |
|
||||
| `claude-opus-4.6` | `kr/` | **Neomezený** | Nejnovější opus od Kira |
|
||||
|
||||
### 🟢 MODELY IFLOW (Bezplatné OAuth — bez nutnosti platit kreditní kartou)
|
||||
### 🟢 MODELY QODER (Bezplatné OAuth — bez nutnosti platit kreditní kartou)
|
||||
|
||||
| Model | Předpona | Omezit | Limit rychlosti |
|
||||
| ------------------ | -------- | ------------- | ------------------- |
|
||||
@@ -943,7 +943,7 @@ K dispozici zdarma: `llama-3.3-70b-versatile` , `gemma2-9b-it` , `mixtral-8x7b`
|
||||
>
|
||||
> ```
|
||||
> Kiro (Claude, unlimited)
|
||||
> → iFlow (5 models, unlimited)
|
||||
> → Qoder (5 models, unlimited)
|
||||
> → Qwen (4 models, unlimited)
|
||||
> → Gemini CLI (180K/mo)
|
||||
> → Cerebras (1M tok/day)
|
||||
@@ -1361,11 +1361,11 @@ Models:
|
||||
<summary><b>🆓 BEZPLATNÍ poskytovatelé (nouzové zálohování)</b></summary>
|
||||
</details>
|
||||
|
||||
### iFlow (5 BEZPLATNÝCH modelů přes OAuth)
|
||||
### Qoder (5 BEZPLATNÝCH modelů přes OAuth)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow
|
||||
→ iFlow OAuth login
|
||||
Dashboard → Connect Qoder
|
||||
→ Qoder OAuth login
|
||||
→ Unlimited usage
|
||||
|
||||
Models:
|
||||
@@ -1560,7 +1560,7 @@ opencode
|
||||
|
||||
- Zkontrolujte statistiky využití v sekci Nástěnka → Náklady
|
||||
- Přepnout primární model na GLM/MiniMax
|
||||
- Pro nekritické úlohy použijte bezplatnou úroveň (Gemini CLI, iFlow).
|
||||
- Pro nekritické úlohy použijte bezplatnou úroveň (Gemini CLI, Qoder).
|
||||
|
||||
**Porty řídicího panelu/API jsou nesprávné**
|
||||
|
||||
|
||||
@@ -8,13 +8,13 @@ Běžné problémy a řešení pro OmniRoute.
|
||||
|
||||
## Rychlé opravy
|
||||
|
||||
Problém | Řešení
|
||||
--- | ---
|
||||
První přihlášení nefunguje | Nastavit `INITIAL_PASSWORD` v `.env` (bez pevně zakódovaného výchozího nastavení)
|
||||
Dashboard se otevírá na nesprávném portu | Nastavte `PORT=20128` a `NEXT_PUBLIC_BASE_URL=http://localhost:20128`
|
||||
Žádné protokoly požadavků v sekci `logs/` | Nastavte `ENABLE_REQUEST_LOGS=true`
|
||||
PŘÍSTUP: povolení zamítnuto | Nastavením `DATA_DIR=/path/to/writable/dir` přepíšete `~/.omniroute`
|
||||
Strategie směrování se neukládá | Aktualizace na v1.4.11+ (oprava schématu Zod pro perzistenci nastavení)
|
||||
| Problém | Řešení |
|
||||
| ----------------------------------------- | --------------------------------------------------------------------------------- |
|
||||
| První přihlášení nefunguje | Nastavit `INITIAL_PASSWORD` v `.env` (bez pevně zakódovaného výchozího nastavení) |
|
||||
| Dashboard se otevírá na nesprávném portu | Nastavte `PORT=20128` a `NEXT_PUBLIC_BASE_URL=http://localhost:20128` |
|
||||
| Žádné protokoly požadavků v sekci `logs/` | Nastavte `ENABLE_REQUEST_LOGS=true` |
|
||||
| PŘÍSTUP: povolení zamítnuto | Nastavením `DATA_DIR=/path/to/writable/dir` přepíšete `~/.omniroute` |
|
||||
| Strategie směrování se neukládá | Aktualizace na v1.4.11+ (oprava schématu Zod pro perzistenci nastavení) |
|
||||
|
||||
---
|
||||
|
||||
@@ -97,7 +97,7 @@ curl -s http://localhost:20128/api/cli-tools/openclaw-settings | jq '{installed,
|
||||
|
||||
1. Zkontrolujte statistiky využití v sekci Nástěnka → Využití
|
||||
2. Přepnout primární model na GLM/MiniMax
|
||||
3. Pro nekritické úlohy použijte bezplatnou úroveň (Gemini CLI, iFlow).
|
||||
3. Pro nekritické úlohy použijte bezplatnou úroveň (Gemini CLI, Qoder).
|
||||
4. Nastavení rozpočtů nákladů pro každý klíč API: Dashboard → API klíče → Rozpočet
|
||||
|
||||
---
|
||||
@@ -169,12 +169,12 @@ Pokud poskytovatel opakovaně přechází do stavu OTEVŘENO:
|
||||
|
||||
Pro ladění problémů s překladem formátu použijte **Dashboard → Translator** :
|
||||
|
||||
Režim | Kdy použít
|
||||
--- | ---
|
||||
**Dětské hřiště** | Porovnejte vstupní/výstupní formáty vedle sebe – vložte neúspěšný požadavek a podívejte se, jak se přeloží
|
||||
**Tester chatu** | Odesílejte živé zprávy a kontrolujte kompletní datovou část požadavků/odpovědí včetně záhlaví
|
||||
**Zkušební stolice** | Spusťte dávkové testy napříč kombinacemi formátů a zjistěte, které překlady jsou poškozené.
|
||||
**Živý monitor** | Sledujte tok požadavků v reálném čase a zachyťte občasné problémy s překladem
|
||||
| Režim | Kdy použít |
|
||||
| -------------------- | ---------------------------------------------------------------------------------------------------------- |
|
||||
| **Dětské hřiště** | Porovnejte vstupní/výstupní formáty vedle sebe – vložte neúspěšný požadavek a podívejte se, jak se přeloží |
|
||||
| **Tester chatu** | Odesílejte živé zprávy a kontrolujte kompletní datovou část požadavků/odpovědí včetně záhlaví |
|
||||
| **Zkušební stolice** | Spusťte dávkové testy napříč kombinacemi formátů a zjistěte, které překlady jsou poškozené. |
|
||||
| **Živý monitor** | Sledujte tok požadavků v reálném čase a zachyťte občasné problémy s překladem |
|
||||
|
||||
### Běžné problémy s formátováním
|
||||
|
||||
@@ -230,9 +230,9 @@ Pokud chcete sdílenou slovní zásobu pro popis těchto selhání, můžete pou
|
||||
Myšlenka je jednoduchá:
|
||||
|
||||
1. Při vyšetřování špatné odpovědi zaznamenejte:
|
||||
- úkol a požadavek uživatele
|
||||
- Kombinace trasy nebo poskytovatele v OmniRoute
|
||||
- jakýkoli kontext RAG použitý v následných fázích (načtené dokumenty, volání nástrojů atd.)
|
||||
- úkol a požadavek uživatele
|
||||
- Kombinace trasy nebo poskytovatele v OmniRoute
|
||||
- jakýkoli kontext RAG použitý v následných fázích (načtené dokumenty, volání nástrojů atd.)
|
||||
2. Namapujte incident na jedno nebo dvě čísla z WFGY ProblemMap ( `No.1` … `No.16` ).
|
||||
3. Uložte číslo do vlastního řídicího panelu, runbooku nebo sledovače incidentů vedle protokolů OmniRoute.
|
||||
4. Pro rozhodnutí, zda je potřeba změnit RAG stack, retriever nebo směrovací strategii, použijte odpovídající stránku WFGY.
|
||||
|
||||
@@ -39,11 +39,11 @@ Kompletní průvodce konfigurací poskytovatelů, vytvářením kombinací, inte
|
||||
| **💰 LEVNÉ** | GLM-4.7 | $0.6/1M | Denně 10:00 | Levná záloha |
|
||||
| | MiniMax M2.1 | $0.2/1M | 5hodinové válcování | Nejlevnější varianta |
|
||||
| | Kimi K2 | 9 USD měsíc | 10M tokens/měsíc | Předvídatelné náklady |
|
||||
| **🆓 ZDARMA** | iFlow | $0 | Neomezený | 8 modelů zdarma |
|
||||
| **🆓 ZDARMA** | Qoder | $0 | Neomezený | 8 modelů zdarma |
|
||||
| | Qwen | $0 | Neomezený | 3 modely zdarma |
|
||||
| | Kiro | $0 | Neomezený | Claude zdarma |
|
||||
|
||||
**💡 Pro Tip:** Začněte s kombinací Gemini CLI (180K zdarma/měsíc) + iFlow (neomezeně zdarma) = $0!
|
||||
**💡 Pro Tip:** Začněte s kombinací Gemini CLI (180K zdarma/měsíc) + Qoder (neomezeně zdarma) = $0!
|
||||
|
||||
---
|
||||
|
||||
@@ -193,10 +193,10 @@ Models:
|
||||
|
||||
### 🆓 Poskytovatelé ZDARMA
|
||||
|
||||
#### iFlow (8 modelů ZDARMA)
|
||||
#### Qoder (8 modelů ZDARMA)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow → OAuth login → Unlimited usage
|
||||
Dashboard → Connect Qoder → OAuth login → Unlimited usage
|
||||
|
||||
Models: if/kimi-k2-thinking, if/qwen3-coder-plus, if/glm-4.7, if/minimax-m2, if/deepseek-r1
|
||||
```
|
||||
@@ -447,7 +447,7 @@ Informace o režimu integrovaném s hostitelem s binárními soubory CLI nalezne
|
||||
|
||||
**MiniMax ( `minimax/` )** — 0,2 USD/1 milion: `minimax/MiniMax-M2.1`
|
||||
|
||||
**iFlow ( `if/` )** — ZDARMA: `if/kimi-k2-thinking` , `if/qwen3-coder-plus` , `if/deepseek-r1`
|
||||
**Qoder ( `if/` )** — ZDARMA: `if/kimi-k2-thinking` , `if/qwen3-coder-plus` , `if/deepseek-r1`
|
||||
|
||||
**Qwen ( `qw/` )** — ZDARMA: `qw/qwen3-coder-plus` , `qw/qwen3-coder-flash`
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ flowchart LR
|
||||
end
|
||||
|
||||
subgraph Upstreams[Upstream Providers]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/iFlow/GitHub/Kiro/Cursor/Antigravity]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/Qoder/GitHub/Kiro/Cursor/Antigravity]
|
||||
P2[API Key Providers\nOpenAI/Anthropic/OpenRouter/GLM/Kimi/MiniMax\nDeepSeek/Groq/xAI/Mistral/Perplexity\nTogether/Fireworks/Cerebras/Cohere/NVIDIA]
|
||||
P3[Compatible Nodes\nOpenAI-compatible / Anthropic-compatible]
|
||||
end
|
||||
@@ -224,7 +224,7 @@ Domain layer modules:
|
||||
OAuth provider modules (12 individual files under `src/lib/oauth/providers/`):
|
||||
|
||||
- Registry index: `src/lib/oauth/providers/index.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `iflow.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `qoder.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Thin wrapper: `src/lib/oauth/providers.ts` — re-exports from individual modules
|
||||
|
||||
## 3) Persistence Layer
|
||||
@@ -597,7 +597,7 @@ Each provider has a specialized executor extending `BaseExecutor` (in `open-sse/
|
||||
|
||||
| Executor | Provider(s) | Special Handling |
|
||||
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------- |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, iFlow, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, Qoder, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `AntigravityExecutor` | Google Antigravity | Custom project/session IDs, Retry-After parsing |
|
||||
| `CodexExecutor` | OpenAI Codex | Injects system instructions, forces reasoning effort |
|
||||
| `CursorExecutor` | Cursor IDE | ConnectRPC protocol, Protobuf encoding, request signing via checksum |
|
||||
@@ -621,7 +621,7 @@ All other providers (including custom compatible nodes) use the `DefaultExecutor
|
||||
| Cursor | cursor | Custom checksum | ✅ | ✅ | ❌ | ❌ |
|
||||
| Kiro | kiro | AWS SSO OIDC | ✅ (EventStream) | ❌ | ✅ | ✅ Usage limits |
|
||||
| Qwen | openai | OAuth | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| iFlow | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| Qoder | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| OpenRouter | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| GLM/Kimi/MiniMax | claude | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| DeepSeek | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -271,7 +271,7 @@ Business logic that supports the handlers and executors.
|
||||
| `provider.ts` | **Format detection** (`detectFormat`): analyzes request body structure to identify Claude/OpenAI/Gemini/Antigravity/Responses formats (includes `max_tokens` heuristic for Claude). Also: URL building, header building, thinking config normalization. Supports `openai-compatible-*` and `anthropic-compatible-*` dynamic providers. |
|
||||
| `model.ts` | Model string parsing (`claude/model-name` → `{provider: "claude", model: "model-name"}`), alias resolution with collision detection, input sanitization (rejects path traversal/control chars), and model info resolution with async alias getter support. |
|
||||
| `accountFallback.ts` | Rate-limit handling: exponential backoff (1s → 2s → 4s → max 2min), account cooldown management, error classification (which errors trigger fallback vs. not). |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, iFlow, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, Qoder, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `combo.ts` | **Combo models**: chains of fallback models. If model A fails with a fallback-eligible error, try model B, then C, etc. Returns actual upstream status codes. |
|
||||
| `usage.ts` | Fetches quota/usage data from provider APIs (GitHub Copilot quotas, Antigravity model quotas, Codex rate limits, Kiro usage breakdowns, Claude settings). |
|
||||
| `accountSelector.ts` | Smart account selection with scoring algorithm: considers priority, health status, round-robin position, and cooldown state to pick the optimal account for each request. |
|
||||
@@ -543,7 +543,7 @@ A 2000-token buffer is added to reported usage to prevent clients from hitting c
|
||||
| Kiro (AWS) | AWS SSO OIDC or Social | Kiro | Binary EventStream parsing |
|
||||
| Cursor IDE | Checksum auth | Cursor | Protobuf encoding, SHA-256 checksums |
|
||||
| Qwen | OAuth | Default | Standard auth |
|
||||
| iFlow | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| Qoder | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| OpenRouter | API key | Default | Standard Bearer auth |
|
||||
| GLM, Kimi, MiniMax | API key | Default | Claude-compatible, use `x-api-key` |
|
||||
| `openai-compatible-*` | API key | Default | Dynamic: any OpenAI-compatible endpoint |
|
||||
|
||||
@@ -12,7 +12,7 @@ Visual guide to every section of the OmniRoute dashboard.
|
||||
|
||||
## 🔌 Providers
|
||||
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (iFlow, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (Qoder, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
|
||||

|
||||
|
||||
|
||||
@@ -101,7 +101,7 @@ curl -s http://localhost:20128/api/cli-tools/openclaw-settings | jq '{installed,
|
||||
|
||||
1. Check usage stats in Dashboard → Usage
|
||||
2. Switch primary model to GLM/MiniMax
|
||||
3. Use free tier (Gemini CLI, iFlow) for non-critical tasks
|
||||
3. Use free tier (Gemini CLI, Qoder) for non-critical tasks
|
||||
4. Set cost budgets per API key: Dashboard → API Keys → Budget
|
||||
|
||||
---
|
||||
|
||||
@@ -43,11 +43,11 @@ Complete guide for configuring providers, creating combos, integrating CLI tools
|
||||
| **💰 CHEAP** | GLM-4.7 | $0.6/1M | Daily 10AM | Budget backup |
|
||||
| | MiniMax M2.1 | $0.2/1M | 5-hour rolling | Cheapest option |
|
||||
| | Kimi K2 | $9/mo flat | 10M tokens/mo | Predictable cost |
|
||||
| **🆓 FREE** | iFlow | $0 | Unlimited | 8 models free |
|
||||
| **🆓 FREE** | Qoder | $0 | Unlimited | 8 models free |
|
||||
| | Qwen | $0 | Unlimited | 3 models free |
|
||||
| | Kiro | $0 | Unlimited | Claude free |
|
||||
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + iFlow (unlimited free) combo = $0 cost!
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + Qoder (unlimited free) combo = $0 cost!
|
||||
|
||||
---
|
||||
|
||||
@@ -197,10 +197,10 @@ Models:
|
||||
|
||||
### 🆓 FREE Providers
|
||||
|
||||
#### iFlow (8 FREE models)
|
||||
#### Qoder (8 FREE models)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow → OAuth login → Unlimited usage
|
||||
Dashboard → Connect Qoder → OAuth login → Unlimited usage
|
||||
|
||||
Models: if/kimi-k2-thinking, if/qwen3-coder-plus, if/glm-4.7, if/minimax-m2, if/deepseek-r1
|
||||
```
|
||||
@@ -550,7 +550,7 @@ For the full environment variable reference, see the [README](../README.md).
|
||||
|
||||
**MiniMax (`minimax/`)** — $0.2/1M: `minimax/MiniMax-M2.1`
|
||||
|
||||
**iFlow (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
**Qoder (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
|
||||
**Qwen (`qw/`)** — FREE: `qw/qwen3-coder-plus`, `qw/qwen3-coder-flash`
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ flowchart LR
|
||||
end
|
||||
|
||||
subgraph Upstreams[Upstream Providers]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/iFlow/GitHub/Kiro/Cursor/Antigravity]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/Qoder/GitHub/Kiro/Cursor/Antigravity]
|
||||
P2[API Key Providers\nOpenAI/Anthropic/OpenRouter/GLM/Kimi/MiniMax\nDeepSeek/Groq/xAI/Mistral/Perplexity\nTogether/Fireworks/Cerebras/Cohere/NVIDIA]
|
||||
P3[Compatible Nodes\nOpenAI-compatible / Anthropic-compatible]
|
||||
end
|
||||
@@ -224,7 +224,7 @@ Domain layer modules:
|
||||
OAuth provider modules (12 individual files under `src/lib/oauth/providers/`):
|
||||
|
||||
- Registry index: `src/lib/oauth/providers/index.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `iflow.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `qoder.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Thin wrapper: `src/lib/oauth/providers.ts` — re-exports from individual modules
|
||||
|
||||
## 3) Persistence Layer
|
||||
@@ -597,7 +597,7 @@ Each provider has a specialized executor extending `BaseExecutor` (in `open-sse/
|
||||
|
||||
| Executor | Provider(s) | Special Handling |
|
||||
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------- |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, iFlow, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, Qoder, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `AntigravityExecutor` | Google Antigravity | Custom project/session IDs, Retry-After parsing |
|
||||
| `CodexExecutor` | OpenAI Codex | Injects system instructions, forces reasoning effort |
|
||||
| `CursorExecutor` | Cursor IDE | ConnectRPC protocol, Protobuf encoding, request signing via checksum |
|
||||
@@ -621,7 +621,7 @@ All other providers (including custom compatible nodes) use the `DefaultExecutor
|
||||
| Cursor | cursor | Custom checksum | ✅ | ✅ | ❌ | ❌ |
|
||||
| Kiro | kiro | AWS SSO OIDC | ✅ (EventStream) | ❌ | ✅ | ✅ Usage limits |
|
||||
| Qwen | openai | OAuth | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| iFlow | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| Qoder | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| OpenRouter | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| GLM/Kimi/MiniMax | claude | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| DeepSeek | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -271,7 +271,7 @@ Business logic that supports the handlers and executors.
|
||||
| `provider.ts` | **Format detection** (`detectFormat`): analyzes request body structure to identify Claude/OpenAI/Gemini/Antigravity/Responses formats (includes `max_tokens` heuristic for Claude). Also: URL building, header building, thinking config normalization. Supports `openai-compatible-*` and `anthropic-compatible-*` dynamic providers. |
|
||||
| `model.ts` | Model string parsing (`claude/model-name` → `{provider: "claude", model: "model-name"}`), alias resolution with collision detection, input sanitization (rejects path traversal/control chars), and model info resolution with async alias getter support. |
|
||||
| `accountFallback.ts` | Rate-limit handling: exponential backoff (1s → 2s → 4s → max 2min), account cooldown management, error classification (which errors trigger fallback vs. not). |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, iFlow, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, Qoder, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `combo.ts` | **Combo models**: chains of fallback models. If model A fails with a fallback-eligible error, try model B, then C, etc. Returns actual upstream status codes. |
|
||||
| `usage.ts` | Fetches quota/usage data from provider APIs (GitHub Copilot quotas, Antigravity model quotas, Codex rate limits, Kiro usage breakdowns, Claude settings). |
|
||||
| `accountSelector.ts` | Smart account selection with scoring algorithm: considers priority, health status, round-robin position, and cooldown state to pick the optimal account for each request. |
|
||||
@@ -543,7 +543,7 @@ A 2000-token buffer is added to reported usage to prevent clients from hitting c
|
||||
| Kiro (AWS) | AWS SSO OIDC or Social | Kiro | Binary EventStream parsing |
|
||||
| Cursor IDE | Checksum auth | Cursor | Protobuf encoding, SHA-256 checksums |
|
||||
| Qwen | OAuth | Default | Standard auth |
|
||||
| iFlow | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| Qoder | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| OpenRouter | API key | Default | Standard Bearer auth |
|
||||
| GLM, Kimi, MiniMax | API key | Default | Claude-compatible, use `x-api-key` |
|
||||
| `openai-compatible-*` | API key | Default | Dynamic: any OpenAI-compatible endpoint |
|
||||
|
||||
@@ -12,7 +12,7 @@ Visual guide to every section of the OmniRoute dashboard.
|
||||
|
||||
## 🔌 Providers
|
||||
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (iFlow, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (Qoder, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
|
||||

|
||||
|
||||
|
||||
@@ -101,7 +101,7 @@ curl -s http://localhost:20128/api/cli-tools/openclaw-settings | jq '{installed,
|
||||
|
||||
1. Check usage stats in Dashboard → Usage
|
||||
2. Switch primary model to GLM/MiniMax
|
||||
3. Use free tier (Gemini CLI, iFlow) for non-critical tasks
|
||||
3. Use free tier (Gemini CLI, Qoder) for non-critical tasks
|
||||
4. Set cost budgets per API key: Dashboard → API Keys → Budget
|
||||
|
||||
---
|
||||
|
||||
@@ -43,11 +43,11 @@ Complete guide for configuring providers, creating combos, integrating CLI tools
|
||||
| **💰 CHEAP** | GLM-4.7 | $0.6/1M | Daily 10AM | Budget backup |
|
||||
| | MiniMax M2.1 | $0.2/1M | 5-hour rolling | Cheapest option |
|
||||
| | Kimi K2 | $9/mo flat | 10M tokens/mo | Predictable cost |
|
||||
| **🆓 FREE** | iFlow | $0 | Unlimited | 8 models free |
|
||||
| **🆓 FREE** | Qoder | $0 | Unlimited | 8 models free |
|
||||
| | Qwen | $0 | Unlimited | 3 models free |
|
||||
| | Kiro | $0 | Unlimited | Claude free |
|
||||
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + iFlow (unlimited free) combo = $0 cost!
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + Qoder (unlimited free) combo = $0 cost!
|
||||
|
||||
---
|
||||
|
||||
@@ -197,10 +197,10 @@ Models:
|
||||
|
||||
### 🆓 FREE Providers
|
||||
|
||||
#### iFlow (8 FREE models)
|
||||
#### Qoder (8 FREE models)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow → OAuth login → Unlimited usage
|
||||
Dashboard → Connect Qoder → OAuth login → Unlimited usage
|
||||
|
||||
Models: if/kimi-k2-thinking, if/qwen3-coder-plus, if/glm-4.7, if/minimax-m2, if/deepseek-r1
|
||||
```
|
||||
@@ -550,7 +550,7 @@ For the full environment variable reference, see the [README](../README.md).
|
||||
|
||||
**MiniMax (`minimax/`)** — $0.2/1M: `minimax/MiniMax-M2.1`
|
||||
|
||||
**iFlow (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
**Qoder (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
|
||||
**Qwen (`qw/`)** — FREE: `qw/qwen3-coder-plus`, `qw/qwen3-coder-flash`
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ flowchart LR
|
||||
end
|
||||
|
||||
subgraph Upstreams[Upstream Providers]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/iFlow/GitHub/Kiro/Cursor/Antigravity]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/Qoder/GitHub/Kiro/Cursor/Antigravity]
|
||||
P2[API Key Providers\nOpenAI/Anthropic/OpenRouter/GLM/Kimi/MiniMax\nDeepSeek/Groq/xAI/Mistral/Perplexity\nTogether/Fireworks/Cerebras/Cohere/NVIDIA]
|
||||
P3[Compatible Nodes\nOpenAI-compatible / Anthropic-compatible]
|
||||
end
|
||||
@@ -224,7 +224,7 @@ Domain layer modules:
|
||||
OAuth provider modules (12 individual files under `src/lib/oauth/providers/`):
|
||||
|
||||
- Registry index: `src/lib/oauth/providers/index.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `iflow.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `qoder.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Thin wrapper: `src/lib/oauth/providers.ts` — re-exports from individual modules
|
||||
|
||||
## 3) Persistence Layer
|
||||
@@ -597,7 +597,7 @@ Each provider has a specialized executor extending `BaseExecutor` (in `open-sse/
|
||||
|
||||
| Executor | Provider(s) | Special Handling |
|
||||
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------- |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, iFlow, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, Qoder, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `AntigravityExecutor` | Google Antigravity | Custom project/session IDs, Retry-After parsing |
|
||||
| `CodexExecutor` | OpenAI Codex | Injects system instructions, forces reasoning effort |
|
||||
| `CursorExecutor` | Cursor IDE | ConnectRPC protocol, Protobuf encoding, request signing via checksum |
|
||||
@@ -621,7 +621,7 @@ All other providers (including custom compatible nodes) use the `DefaultExecutor
|
||||
| Cursor | cursor | Custom checksum | ✅ | ✅ | ❌ | ❌ |
|
||||
| Kiro | kiro | AWS SSO OIDC | ✅ (EventStream) | ❌ | ✅ | ✅ Usage limits |
|
||||
| Qwen | openai | OAuth | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| iFlow | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| Qoder | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| OpenRouter | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| GLM/Kimi/MiniMax | claude | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| DeepSeek | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -271,7 +271,7 @@ Business logic that supports the handlers and executors.
|
||||
| `provider.ts` | **Format detection** (`detectFormat`): analyzes request body structure to identify Claude/OpenAI/Gemini/Antigravity/Responses formats (includes `max_tokens` heuristic for Claude). Also: URL building, header building, thinking config normalization. Supports `openai-compatible-*` and `anthropic-compatible-*` dynamic providers. |
|
||||
| `model.ts` | Model string parsing (`claude/model-name` → `{provider: "claude", model: "model-name"}`), alias resolution with collision detection, input sanitization (rejects path traversal/control chars), and model info resolution with async alias getter support. |
|
||||
| `accountFallback.ts` | Rate-limit handling: exponential backoff (1s → 2s → 4s → max 2min), account cooldown management, error classification (which errors trigger fallback vs. not). |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, iFlow, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, Qoder, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `combo.ts` | **Combo models**: chains of fallback models. If model A fails with a fallback-eligible error, try model B, then C, etc. Returns actual upstream status codes. |
|
||||
| `usage.ts` | Fetches quota/usage data from provider APIs (GitHub Copilot quotas, Antigravity model quotas, Codex rate limits, Kiro usage breakdowns, Claude settings). |
|
||||
| `accountSelector.ts` | Smart account selection with scoring algorithm: considers priority, health status, round-robin position, and cooldown state to pick the optimal account for each request. |
|
||||
@@ -543,7 +543,7 @@ A 2000-token buffer is added to reported usage to prevent clients from hitting c
|
||||
| Kiro (AWS) | AWS SSO OIDC or Social | Kiro | Binary EventStream parsing |
|
||||
| Cursor IDE | Checksum auth | Cursor | Protobuf encoding, SHA-256 checksums |
|
||||
| Qwen | OAuth | Default | Standard auth |
|
||||
| iFlow | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| Qoder | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| OpenRouter | API key | Default | Standard Bearer auth |
|
||||
| GLM, Kimi, MiniMax | API key | Default | Claude-compatible, use `x-api-key` |
|
||||
| `openai-compatible-*` | API key | Default | Dynamic: any OpenAI-compatible endpoint |
|
||||
|
||||
@@ -12,7 +12,7 @@ Visual guide to every section of the OmniRoute dashboard.
|
||||
|
||||
## 🔌 Providers
|
||||
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (iFlow, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (Qoder, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
|
||||

|
||||
|
||||
|
||||
@@ -101,7 +101,7 @@ curl -s http://localhost:20128/api/cli-tools/openclaw-settings | jq '{installed,
|
||||
|
||||
1. Check usage stats in Dashboard → Usage
|
||||
2. Switch primary model to GLM/MiniMax
|
||||
3. Use free tier (Gemini CLI, iFlow) for non-critical tasks
|
||||
3. Use free tier (Gemini CLI, Qoder) for non-critical tasks
|
||||
4. Set cost budgets per API key: Dashboard → API Keys → Budget
|
||||
|
||||
---
|
||||
|
||||
@@ -43,11 +43,11 @@ Complete guide for configuring providers, creating combos, integrating CLI tools
|
||||
| **💰 CHEAP** | GLM-4.7 | $0.6/1M | Daily 10AM | Budget backup |
|
||||
| | MiniMax M2.1 | $0.2/1M | 5-hour rolling | Cheapest option |
|
||||
| | Kimi K2 | $9/mo flat | 10M tokens/mo | Predictable cost |
|
||||
| **🆓 FREE** | iFlow | $0 | Unlimited | 8 models free |
|
||||
| **🆓 FREE** | Qoder | $0 | Unlimited | 8 models free |
|
||||
| | Qwen | $0 | Unlimited | 3 models free |
|
||||
| | Kiro | $0 | Unlimited | Claude free |
|
||||
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + iFlow (unlimited free) combo = $0 cost!
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + Qoder (unlimited free) combo = $0 cost!
|
||||
|
||||
---
|
||||
|
||||
@@ -197,10 +197,10 @@ Models:
|
||||
|
||||
### 🆓 FREE Providers
|
||||
|
||||
#### iFlow (8 FREE models)
|
||||
#### Qoder (8 FREE models)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow → OAuth login → Unlimited usage
|
||||
Dashboard → Connect Qoder → OAuth login → Unlimited usage
|
||||
|
||||
Models: if/kimi-k2-thinking, if/qwen3-coder-plus, if/glm-4.7, if/minimax-m2, if/deepseek-r1
|
||||
```
|
||||
@@ -550,7 +550,7 @@ For the full environment variable reference, see the [README](../README.md).
|
||||
|
||||
**MiniMax (`minimax/`)** — $0.2/1M: `minimax/MiniMax-M2.1`
|
||||
|
||||
**iFlow (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
**Qoder (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
|
||||
**Qwen (`qw/`)** — FREE: `qw/qwen3-coder-plus`, `qw/qwen3-coder-flash`
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ flowchart LR
|
||||
end
|
||||
|
||||
subgraph Upstreams[Upstream Providers]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/iFlow/GitHub/Kiro/Cursor/Antigravity]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/Qoder/GitHub/Kiro/Cursor/Antigravity]
|
||||
P2[API Key Providers\nOpenAI/Anthropic/OpenRouter/GLM/Kimi/MiniMax\nDeepSeek/Groq/xAI/Mistral/Perplexity\nTogether/Fireworks/Cerebras/Cohere/NVIDIA]
|
||||
P3[Compatible Nodes\nOpenAI-compatible / Anthropic-compatible]
|
||||
end
|
||||
@@ -224,7 +224,7 @@ Domain layer modules:
|
||||
OAuth provider modules (12 individual files under `src/lib/oauth/providers/`):
|
||||
|
||||
- Registry index: `src/lib/oauth/providers/index.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `iflow.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `qoder.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Thin wrapper: `src/lib/oauth/providers.ts` — re-exports from individual modules
|
||||
|
||||
## 3) Persistence Layer
|
||||
@@ -597,7 +597,7 @@ Each provider has a specialized executor extending `BaseExecutor` (in `open-sse/
|
||||
|
||||
| Executor | Provider(s) | Special Handling |
|
||||
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------- |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, iFlow, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, Qoder, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `AntigravityExecutor` | Google Antigravity | Custom project/session IDs, Retry-After parsing |
|
||||
| `CodexExecutor` | OpenAI Codex | Injects system instructions, forces reasoning effort |
|
||||
| `CursorExecutor` | Cursor IDE | ConnectRPC protocol, Protobuf encoding, request signing via checksum |
|
||||
@@ -621,7 +621,7 @@ All other providers (including custom compatible nodes) use the `DefaultExecutor
|
||||
| Cursor | cursor | Custom checksum | ✅ | ✅ | ❌ | ❌ |
|
||||
| Kiro | kiro | AWS SSO OIDC | ✅ (EventStream) | ❌ | ✅ | ✅ Usage limits |
|
||||
| Qwen | openai | OAuth | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| iFlow | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| Qoder | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| OpenRouter | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| GLM/Kimi/MiniMax | claude | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| DeepSeek | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -271,7 +271,7 @@ Business logic that supports the handlers and executors.
|
||||
| `provider.ts` | **Format detection** (`detectFormat`): analyzes request body structure to identify Claude/OpenAI/Gemini/Antigravity/Responses formats (includes `max_tokens` heuristic for Claude). Also: URL building, header building, thinking config normalization. Supports `openai-compatible-*` and `anthropic-compatible-*` dynamic providers. |
|
||||
| `model.ts` | Model string parsing (`claude/model-name` → `{provider: "claude", model: "model-name"}`), alias resolution with collision detection, input sanitization (rejects path traversal/control chars), and model info resolution with async alias getter support. |
|
||||
| `accountFallback.ts` | Rate-limit handling: exponential backoff (1s → 2s → 4s → max 2min), account cooldown management, error classification (which errors trigger fallback vs. not). |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, iFlow, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, Qoder, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `combo.ts` | **Combo models**: chains of fallback models. If model A fails with a fallback-eligible error, try model B, then C, etc. Returns actual upstream status codes. |
|
||||
| `usage.ts` | Fetches quota/usage data from provider APIs (GitHub Copilot quotas, Antigravity model quotas, Codex rate limits, Kiro usage breakdowns, Claude settings). |
|
||||
| `accountSelector.ts` | Smart account selection with scoring algorithm: considers priority, health status, round-robin position, and cooldown state to pick the optimal account for each request. |
|
||||
@@ -543,7 +543,7 @@ A 2000-token buffer is added to reported usage to prevent clients from hitting c
|
||||
| Kiro (AWS) | AWS SSO OIDC or Social | Kiro | Binary EventStream parsing |
|
||||
| Cursor IDE | Checksum auth | Cursor | Protobuf encoding, SHA-256 checksums |
|
||||
| Qwen | OAuth | Default | Standard auth |
|
||||
| iFlow | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| Qoder | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| OpenRouter | API key | Default | Standard Bearer auth |
|
||||
| GLM, Kimi, MiniMax | API key | Default | Claude-compatible, use `x-api-key` |
|
||||
| `openai-compatible-*` | API key | Default | Dynamic: any OpenAI-compatible endpoint |
|
||||
|
||||
@@ -12,7 +12,7 @@ Visual guide to every section of the OmniRoute dashboard.
|
||||
|
||||
## 🔌 Providers
|
||||
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (iFlow, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (Qoder, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
|
||||

|
||||
|
||||
|
||||
@@ -101,7 +101,7 @@ curl -s http://localhost:20128/api/cli-tools/openclaw-settings | jq '{installed,
|
||||
|
||||
1. Check usage stats in Dashboard → Usage
|
||||
2. Switch primary model to GLM/MiniMax
|
||||
3. Use free tier (Gemini CLI, iFlow) for non-critical tasks
|
||||
3. Use free tier (Gemini CLI, Qoder) for non-critical tasks
|
||||
4. Set cost budgets per API key: Dashboard → API Keys → Budget
|
||||
|
||||
---
|
||||
|
||||
@@ -43,11 +43,11 @@ Complete guide for configuring providers, creating combos, integrating CLI tools
|
||||
| **💰 CHEAP** | GLM-4.7 | $0.6/1M | Daily 10AM | Budget backup |
|
||||
| | MiniMax M2.1 | $0.2/1M | 5-hour rolling | Cheapest option |
|
||||
| | Kimi K2 | $9/mo flat | 10M tokens/mo | Predictable cost |
|
||||
| **🆓 FREE** | iFlow | $0 | Unlimited | 8 models free |
|
||||
| **🆓 FREE** | Qoder | $0 | Unlimited | 8 models free |
|
||||
| | Qwen | $0 | Unlimited | 3 models free |
|
||||
| | Kiro | $0 | Unlimited | Claude free |
|
||||
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + iFlow (unlimited free) combo = $0 cost!
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + Qoder (unlimited free) combo = $0 cost!
|
||||
|
||||
---
|
||||
|
||||
@@ -197,10 +197,10 @@ Models:
|
||||
|
||||
### 🆓 FREE Providers
|
||||
|
||||
#### iFlow (8 FREE models)
|
||||
#### Qoder (8 FREE models)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow → OAuth login → Unlimited usage
|
||||
Dashboard → Connect Qoder → OAuth login → Unlimited usage
|
||||
|
||||
Models: if/kimi-k2-thinking, if/qwen3-coder-plus, if/glm-4.7, if/minimax-m2, if/deepseek-r1
|
||||
```
|
||||
@@ -550,7 +550,7 @@ For the full environment variable reference, see the [README](../README.md).
|
||||
|
||||
**MiniMax (`minimax/`)** — $0.2/1M: `minimax/MiniMax-M2.1`
|
||||
|
||||
**iFlow (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
**Qoder (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
|
||||
**Qwen (`qw/`)** — FREE: `qw/qwen3-coder-plus`, `qw/qwen3-coder-flash`
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ flowchart LR
|
||||
end
|
||||
|
||||
subgraph Upstreams[Upstream Providers]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/iFlow/GitHub/Kiro/Cursor/Antigravity]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/Qoder/GitHub/Kiro/Cursor/Antigravity]
|
||||
P2[API Key Providers\nOpenAI/Anthropic/OpenRouter/GLM/Kimi/MiniMax\nDeepSeek/Groq/xAI/Mistral/Perplexity\nTogether/Fireworks/Cerebras/Cohere/NVIDIA]
|
||||
P3[Compatible Nodes\nOpenAI-compatible / Anthropic-compatible]
|
||||
end
|
||||
@@ -224,7 +224,7 @@ Domain layer modules:
|
||||
OAuth provider modules (12 individual files under `src/lib/oauth/providers/`):
|
||||
|
||||
- Registry index: `src/lib/oauth/providers/index.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `iflow.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `qoder.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Thin wrapper: `src/lib/oauth/providers.ts` — re-exports from individual modules
|
||||
|
||||
## 3) Persistence Layer
|
||||
@@ -597,7 +597,7 @@ Each provider has a specialized executor extending `BaseExecutor` (in `open-sse/
|
||||
|
||||
| Executor | Provider(s) | Special Handling |
|
||||
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------- |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, iFlow, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, Qoder, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `AntigravityExecutor` | Google Antigravity | Custom project/session IDs, Retry-After parsing |
|
||||
| `CodexExecutor` | OpenAI Codex | Injects system instructions, forces reasoning effort |
|
||||
| `CursorExecutor` | Cursor IDE | ConnectRPC protocol, Protobuf encoding, request signing via checksum |
|
||||
@@ -621,7 +621,7 @@ All other providers (including custom compatible nodes) use the `DefaultExecutor
|
||||
| Cursor | cursor | Custom checksum | ✅ | ✅ | ❌ | ❌ |
|
||||
| Kiro | kiro | AWS SSO OIDC | ✅ (EventStream) | ❌ | ✅ | ✅ Usage limits |
|
||||
| Qwen | openai | OAuth | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| iFlow | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| Qoder | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| OpenRouter | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| GLM/Kimi/MiniMax | claude | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| DeepSeek | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -271,7 +271,7 @@ Business logic that supports the handlers and executors.
|
||||
| `provider.ts` | **Format detection** (`detectFormat`): analyzes request body structure to identify Claude/OpenAI/Gemini/Antigravity/Responses formats (includes `max_tokens` heuristic for Claude). Also: URL building, header building, thinking config normalization. Supports `openai-compatible-*` and `anthropic-compatible-*` dynamic providers. |
|
||||
| `model.ts` | Model string parsing (`claude/model-name` → `{provider: "claude", model: "model-name"}`), alias resolution with collision detection, input sanitization (rejects path traversal/control chars), and model info resolution with async alias getter support. |
|
||||
| `accountFallback.ts` | Rate-limit handling: exponential backoff (1s → 2s → 4s → max 2min), account cooldown management, error classification (which errors trigger fallback vs. not). |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, iFlow, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, Qoder, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `combo.ts` | **Combo models**: chains of fallback models. If model A fails with a fallback-eligible error, try model B, then C, etc. Returns actual upstream status codes. |
|
||||
| `usage.ts` | Fetches quota/usage data from provider APIs (GitHub Copilot quotas, Antigravity model quotas, Codex rate limits, Kiro usage breakdowns, Claude settings). |
|
||||
| `accountSelector.ts` | Smart account selection with scoring algorithm: considers priority, health status, round-robin position, and cooldown state to pick the optimal account for each request. |
|
||||
@@ -543,7 +543,7 @@ A 2000-token buffer is added to reported usage to prevent clients from hitting c
|
||||
| Kiro (AWS) | AWS SSO OIDC or Social | Kiro | Binary EventStream parsing |
|
||||
| Cursor IDE | Checksum auth | Cursor | Protobuf encoding, SHA-256 checksums |
|
||||
| Qwen | OAuth | Default | Standard auth |
|
||||
| iFlow | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| Qoder | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| OpenRouter | API key | Default | Standard Bearer auth |
|
||||
| GLM, Kimi, MiniMax | API key | Default | Claude-compatible, use `x-api-key` |
|
||||
| `openai-compatible-*` | API key | Default | Dynamic: any OpenAI-compatible endpoint |
|
||||
|
||||
@@ -12,7 +12,7 @@ Visual guide to every section of the OmniRoute dashboard.
|
||||
|
||||
## 🔌 Providers
|
||||
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (iFlow, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (Qoder, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
|
||||

|
||||
|
||||
|
||||
@@ -101,7 +101,7 @@ curl -s http://localhost:20128/api/cli-tools/openclaw-settings | jq '{installed,
|
||||
|
||||
1. Check usage stats in Dashboard → Usage
|
||||
2. Switch primary model to GLM/MiniMax
|
||||
3. Use free tier (Gemini CLI, iFlow) for non-critical tasks
|
||||
3. Use free tier (Gemini CLI, Qoder) for non-critical tasks
|
||||
4. Set cost budgets per API key: Dashboard → API Keys → Budget
|
||||
|
||||
---
|
||||
|
||||
@@ -43,11 +43,11 @@ Complete guide for configuring providers, creating combos, integrating CLI tools
|
||||
| **💰 CHEAP** | GLM-4.7 | $0.6/1M | Daily 10AM | Budget backup |
|
||||
| | MiniMax M2.1 | $0.2/1M | 5-hour rolling | Cheapest option |
|
||||
| | Kimi K2 | $9/mo flat | 10M tokens/mo | Predictable cost |
|
||||
| **🆓 FREE** | iFlow | $0 | Unlimited | 8 models free |
|
||||
| **🆓 FREE** | Qoder | $0 | Unlimited | 8 models free |
|
||||
| | Qwen | $0 | Unlimited | 3 models free |
|
||||
| | Kiro | $0 | Unlimited | Claude free |
|
||||
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + iFlow (unlimited free) combo = $0 cost!
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + Qoder (unlimited free) combo = $0 cost!
|
||||
|
||||
---
|
||||
|
||||
@@ -197,10 +197,10 @@ Models:
|
||||
|
||||
### 🆓 FREE Providers
|
||||
|
||||
#### iFlow (8 FREE models)
|
||||
#### Qoder (8 FREE models)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow → OAuth login → Unlimited usage
|
||||
Dashboard → Connect Qoder → OAuth login → Unlimited usage
|
||||
|
||||
Models: if/kimi-k2-thinking, if/qwen3-coder-plus, if/glm-4.7, if/minimax-m2, if/deepseek-r1
|
||||
```
|
||||
@@ -550,7 +550,7 @@ For the full environment variable reference, see the [README](../README.md).
|
||||
|
||||
**MiniMax (`minimax/`)** — $0.2/1M: `minimax/MiniMax-M2.1`
|
||||
|
||||
**iFlow (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
**Qoder (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
|
||||
**Qwen (`qw/`)** — FREE: `qw/qwen3-coder-plus`, `qw/qwen3-coder-flash`
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ flowchart LR
|
||||
end
|
||||
|
||||
subgraph Upstreams[Upstream Providers]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/iFlow/GitHub/Kiro/Cursor/Antigravity]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/Qoder/GitHub/Kiro/Cursor/Antigravity]
|
||||
P2[API Key Providers\nOpenAI/Anthropic/OpenRouter/GLM/Kimi/MiniMax\nDeepSeek/Groq/xAI/Mistral/Perplexity\nTogether/Fireworks/Cerebras/Cohere/NVIDIA]
|
||||
P3[Compatible Nodes\nOpenAI-compatible / Anthropic-compatible]
|
||||
end
|
||||
@@ -224,7 +224,7 @@ Domain layer modules:
|
||||
OAuth provider modules (12 individual files under `src/lib/oauth/providers/`):
|
||||
|
||||
- Registry index: `src/lib/oauth/providers/index.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `iflow.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `qoder.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Thin wrapper: `src/lib/oauth/providers.ts` — re-exports from individual modules
|
||||
|
||||
## 3) Persistence Layer
|
||||
@@ -597,7 +597,7 @@ Each provider has a specialized executor extending `BaseExecutor` (in `open-sse/
|
||||
|
||||
| Executor | Provider(s) | Special Handling |
|
||||
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------- |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, iFlow, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, Qoder, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `AntigravityExecutor` | Google Antigravity | Custom project/session IDs, Retry-After parsing |
|
||||
| `CodexExecutor` | OpenAI Codex | Injects system instructions, forces reasoning effort |
|
||||
| `CursorExecutor` | Cursor IDE | ConnectRPC protocol, Protobuf encoding, request signing via checksum |
|
||||
@@ -621,7 +621,7 @@ All other providers (including custom compatible nodes) use the `DefaultExecutor
|
||||
| Cursor | cursor | Custom checksum | ✅ | ✅ | ❌ | ❌ |
|
||||
| Kiro | kiro | AWS SSO OIDC | ✅ (EventStream) | ❌ | ✅ | ✅ Usage limits |
|
||||
| Qwen | openai | OAuth | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| iFlow | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| Qoder | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| OpenRouter | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| GLM/Kimi/MiniMax | claude | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| DeepSeek | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -271,7 +271,7 @@ Business logic that supports the handlers and executors.
|
||||
| `provider.ts` | **Format detection** (`detectFormat`): analyzes request body structure to identify Claude/OpenAI/Gemini/Antigravity/Responses formats (includes `max_tokens` heuristic for Claude). Also: URL building, header building, thinking config normalization. Supports `openai-compatible-*` and `anthropic-compatible-*` dynamic providers. |
|
||||
| `model.ts` | Model string parsing (`claude/model-name` → `{provider: "claude", model: "model-name"}`), alias resolution with collision detection, input sanitization (rejects path traversal/control chars), and model info resolution with async alias getter support. |
|
||||
| `accountFallback.ts` | Rate-limit handling: exponential backoff (1s → 2s → 4s → max 2min), account cooldown management, error classification (which errors trigger fallback vs. not). |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, iFlow, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, Qoder, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `combo.ts` | **Combo models**: chains of fallback models. If model A fails with a fallback-eligible error, try model B, then C, etc. Returns actual upstream status codes. |
|
||||
| `usage.ts` | Fetches quota/usage data from provider APIs (GitHub Copilot quotas, Antigravity model quotas, Codex rate limits, Kiro usage breakdowns, Claude settings). |
|
||||
| `accountSelector.ts` | Smart account selection with scoring algorithm: considers priority, health status, round-robin position, and cooldown state to pick the optimal account for each request. |
|
||||
@@ -543,7 +543,7 @@ A 2000-token buffer is added to reported usage to prevent clients from hitting c
|
||||
| Kiro (AWS) | AWS SSO OIDC or Social | Kiro | Binary EventStream parsing |
|
||||
| Cursor IDE | Checksum auth | Cursor | Protobuf encoding, SHA-256 checksums |
|
||||
| Qwen | OAuth | Default | Standard auth |
|
||||
| iFlow | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| Qoder | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| OpenRouter | API key | Default | Standard Bearer auth |
|
||||
| GLM, Kimi, MiniMax | API key | Default | Claude-compatible, use `x-api-key` |
|
||||
| `openai-compatible-*` | API key | Default | Dynamic: any OpenAI-compatible endpoint |
|
||||
|
||||
@@ -12,7 +12,7 @@ Visual guide to every section of the OmniRoute dashboard.
|
||||
|
||||
## 🔌 Providers
|
||||
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (iFlow, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (Qoder, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
|
||||

|
||||
|
||||
|
||||
@@ -101,7 +101,7 @@ curl -s http://localhost:20128/api/cli-tools/openclaw-settings | jq '{installed,
|
||||
|
||||
1. Check usage stats in Dashboard → Usage
|
||||
2. Switch primary model to GLM/MiniMax
|
||||
3. Use free tier (Gemini CLI, iFlow) for non-critical tasks
|
||||
3. Use free tier (Gemini CLI, Qoder) for non-critical tasks
|
||||
4. Set cost budgets per API key: Dashboard → API Keys → Budget
|
||||
|
||||
---
|
||||
|
||||
@@ -43,11 +43,11 @@ Complete guide for configuring providers, creating combos, integrating CLI tools
|
||||
| **💰 CHEAP** | GLM-4.7 | $0.6/1M | Daily 10AM | Budget backup |
|
||||
| | MiniMax M2.1 | $0.2/1M | 5-hour rolling | Cheapest option |
|
||||
| | Kimi K2 | $9/mo flat | 10M tokens/mo | Predictable cost |
|
||||
| **🆓 FREE** | iFlow | $0 | Unlimited | 8 models free |
|
||||
| **🆓 FREE** | Qoder | $0 | Unlimited | 8 models free |
|
||||
| | Qwen | $0 | Unlimited | 3 models free |
|
||||
| | Kiro | $0 | Unlimited | Claude free |
|
||||
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + iFlow (unlimited free) combo = $0 cost!
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + Qoder (unlimited free) combo = $0 cost!
|
||||
|
||||
---
|
||||
|
||||
@@ -197,10 +197,10 @@ Models:
|
||||
|
||||
### 🆓 FREE Providers
|
||||
|
||||
#### iFlow (8 FREE models)
|
||||
#### Qoder (8 FREE models)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow → OAuth login → Unlimited usage
|
||||
Dashboard → Connect Qoder → OAuth login → Unlimited usage
|
||||
|
||||
Models: if/kimi-k2-thinking, if/qwen3-coder-plus, if/glm-4.7, if/minimax-m2, if/deepseek-r1
|
||||
```
|
||||
@@ -550,7 +550,7 @@ For the full environment variable reference, see the [README](../README.md).
|
||||
|
||||
**MiniMax (`minimax/`)** — $0.2/1M: `minimax/MiniMax-M2.1`
|
||||
|
||||
**iFlow (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
**Qoder (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
|
||||
**Qwen (`qw/`)** — FREE: `qw/qwen3-coder-plus`, `qw/qwen3-coder-flash`
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ flowchart LR
|
||||
end
|
||||
|
||||
subgraph Upstreams[Upstream Providers]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/iFlow/GitHub/Kiro/Cursor/Antigravity]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/Qoder/GitHub/Kiro/Cursor/Antigravity]
|
||||
P2[API Key Providers\nOpenAI/Anthropic/OpenRouter/GLM/Kimi/MiniMax\nDeepSeek/Groq/xAI/Mistral/Perplexity\nTogether/Fireworks/Cerebras/Cohere/NVIDIA]
|
||||
P3[Compatible Nodes\nOpenAI-compatible / Anthropic-compatible]
|
||||
end
|
||||
@@ -224,7 +224,7 @@ Domain layer modules:
|
||||
OAuth provider modules (12 individual files under `src/lib/oauth/providers/`):
|
||||
|
||||
- Registry index: `src/lib/oauth/providers/index.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `iflow.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `qoder.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Thin wrapper: `src/lib/oauth/providers.ts` — re-exports from individual modules
|
||||
|
||||
## 3) Persistence Layer
|
||||
@@ -597,7 +597,7 @@ Each provider has a specialized executor extending `BaseExecutor` (in `open-sse/
|
||||
|
||||
| Executor | Provider(s) | Special Handling |
|
||||
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------- |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, iFlow, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, Qoder, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `AntigravityExecutor` | Google Antigravity | Custom project/session IDs, Retry-After parsing |
|
||||
| `CodexExecutor` | OpenAI Codex | Injects system instructions, forces reasoning effort |
|
||||
| `CursorExecutor` | Cursor IDE | ConnectRPC protocol, Protobuf encoding, request signing via checksum |
|
||||
@@ -621,7 +621,7 @@ All other providers (including custom compatible nodes) use the `DefaultExecutor
|
||||
| Cursor | cursor | Custom checksum | ✅ | ✅ | ❌ | ❌ |
|
||||
| Kiro | kiro | AWS SSO OIDC | ✅ (EventStream) | ❌ | ✅ | ✅ Usage limits |
|
||||
| Qwen | openai | OAuth | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| iFlow | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| Qoder | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| OpenRouter | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| GLM/Kimi/MiniMax | claude | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| DeepSeek | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -271,7 +271,7 @@ Business logic that supports the handlers and executors.
|
||||
| `provider.ts` | **Format detection** (`detectFormat`): analyzes request body structure to identify Claude/OpenAI/Gemini/Antigravity/Responses formats (includes `max_tokens` heuristic for Claude). Also: URL building, header building, thinking config normalization. Supports `openai-compatible-*` and `anthropic-compatible-*` dynamic providers. |
|
||||
| `model.ts` | Model string parsing (`claude/model-name` → `{provider: "claude", model: "model-name"}`), alias resolution with collision detection, input sanitization (rejects path traversal/control chars), and model info resolution with async alias getter support. |
|
||||
| `accountFallback.ts` | Rate-limit handling: exponential backoff (1s → 2s → 4s → max 2min), account cooldown management, error classification (which errors trigger fallback vs. not). |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, iFlow, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `tokenRefresh.ts` | OAuth token refresh for **every provider**: Google (Gemini, Antigravity), Claude, Codex, Qwen, Qoder, GitHub (OAuth + Copilot dual-token), Kiro (AWS SSO OIDC + Social Auth). Includes in-flight promise deduplication cache and retry with exponential backoff. |
|
||||
| `combo.ts` | **Combo models**: chains of fallback models. If model A fails with a fallback-eligible error, try model B, then C, etc. Returns actual upstream status codes. |
|
||||
| `usage.ts` | Fetches quota/usage data from provider APIs (GitHub Copilot quotas, Antigravity model quotas, Codex rate limits, Kiro usage breakdowns, Claude settings). |
|
||||
| `accountSelector.ts` | Smart account selection with scoring algorithm: considers priority, health status, round-robin position, and cooldown state to pick the optimal account for each request. |
|
||||
@@ -543,7 +543,7 @@ A 2000-token buffer is added to reported usage to prevent clients from hitting c
|
||||
| Kiro (AWS) | AWS SSO OIDC or Social | Kiro | Binary EventStream parsing |
|
||||
| Cursor IDE | Checksum auth | Cursor | Protobuf encoding, SHA-256 checksums |
|
||||
| Qwen | OAuth | Default | Standard auth |
|
||||
| iFlow | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| Qoder | OAuth (Basic + Bearer) | Default | Dual auth header |
|
||||
| OpenRouter | API key | Default | Standard Bearer auth |
|
||||
| GLM, Kimi, MiniMax | API key | Default | Claude-compatible, use `x-api-key` |
|
||||
| `openai-compatible-*` | API key | Default | Dynamic: any OpenAI-compatible endpoint |
|
||||
|
||||
@@ -12,7 +12,7 @@ Visual guide to every section of the OmniRoute dashboard.
|
||||
|
||||
## 🔌 Providers
|
||||
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (iFlow, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
Manage AI provider connections: OAuth providers (Claude Code, Codex, Gemini CLI), API key providers (Groq, DeepSeek, OpenRouter), and free providers (Qoder, Qwen, Kiro). Kiro accounts include credit balance tracking — remaining credits, total allowance, and renewal date visible in Dashboard → Usage.
|
||||
|
||||

|
||||
|
||||
|
||||
@@ -101,7 +101,7 @@ curl -s http://localhost:20128/api/cli-tools/openclaw-settings | jq '{installed,
|
||||
|
||||
1. Check usage stats in Dashboard → Usage
|
||||
2. Switch primary model to GLM/MiniMax
|
||||
3. Use free tier (Gemini CLI, iFlow) for non-critical tasks
|
||||
3. Use free tier (Gemini CLI, Qoder) for non-critical tasks
|
||||
4. Set cost budgets per API key: Dashboard → API Keys → Budget
|
||||
|
||||
---
|
||||
|
||||
@@ -43,11 +43,11 @@ Complete guide for configuring providers, creating combos, integrating CLI tools
|
||||
| **💰 CHEAP** | GLM-4.7 | $0.6/1M | Daily 10AM | Budget backup |
|
||||
| | MiniMax M2.1 | $0.2/1M | 5-hour rolling | Cheapest option |
|
||||
| | Kimi K2 | $9/mo flat | 10M tokens/mo | Predictable cost |
|
||||
| **🆓 FREE** | iFlow | $0 | Unlimited | 8 models free |
|
||||
| **🆓 FREE** | Qoder | $0 | Unlimited | 8 models free |
|
||||
| | Qwen | $0 | Unlimited | 3 models free |
|
||||
| | Kiro | $0 | Unlimited | Claude free |
|
||||
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + iFlow (unlimited free) combo = $0 cost!
|
||||
**💡 Pro Tip:** Start with Gemini CLI (180K free/month) + Qoder (unlimited free) combo = $0 cost!
|
||||
|
||||
---
|
||||
|
||||
@@ -197,10 +197,10 @@ Models:
|
||||
|
||||
### 🆓 FREE Providers
|
||||
|
||||
#### iFlow (8 FREE models)
|
||||
#### Qoder (8 FREE models)
|
||||
|
||||
```bash
|
||||
Dashboard → Connect iFlow → OAuth login → Unlimited usage
|
||||
Dashboard → Connect Qoder → OAuth login → Unlimited usage
|
||||
|
||||
Models: if/kimi-k2-thinking, if/qwen3-coder-plus, if/glm-4.7, if/minimax-m2, if/deepseek-r1
|
||||
```
|
||||
@@ -550,7 +550,7 @@ For the full environment variable reference, see the [README](../README.md).
|
||||
|
||||
**MiniMax (`minimax/`)** — $0.2/1M: `minimax/MiniMax-M2.1`
|
||||
|
||||
**iFlow (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
**Qoder (`if/`)** — FREE: `if/kimi-k2-thinking`, `if/qwen3-coder-plus`, `if/deepseek-r1`
|
||||
|
||||
**Qwen (`qw/`)** — FREE: `qw/qwen3-coder-plus`, `qw/qwen3-coder-flash`
|
||||
|
||||
|
||||
@@ -90,7 +90,7 @@ flowchart LR
|
||||
end
|
||||
|
||||
subgraph Upstreams[Upstream Providers]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/iFlow/GitHub/Kiro/Cursor/Antigravity]
|
||||
P1[OAuth Providers\nClaude/Codex/Gemini/Qwen/Qoder/GitHub/Kiro/Cursor/Antigravity]
|
||||
P2[API Key Providers\nOpenAI/Anthropic/OpenRouter/GLM/Kimi/MiniMax\nDeepSeek/Groq/xAI/Mistral/Perplexity\nTogether/Fireworks/Cerebras/Cohere/NVIDIA]
|
||||
P3[Compatible Nodes\nOpenAI-compatible / Anthropic-compatible]
|
||||
end
|
||||
@@ -224,7 +224,7 @@ Domain layer modules:
|
||||
OAuth provider modules (12 individual files under `src/lib/oauth/providers/`):
|
||||
|
||||
- Registry index: `src/lib/oauth/providers/index.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `iflow.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Individual providers: `claude.ts`, `codex.ts`, `gemini.ts`, `antigravity.ts`, `qoder.ts`, `qwen.ts`, `kimi-coding.ts`, `github.ts`, `kiro.ts`, `cursor.ts`, `kilocode.ts`, `cline.ts`
|
||||
- Thin wrapper: `src/lib/oauth/providers.ts` — re-exports from individual modules
|
||||
|
||||
## 3) Persistence Layer
|
||||
@@ -597,7 +597,7 @@ Each provider has a specialized executor extending `BaseExecutor` (in `open-sse/
|
||||
|
||||
| Executor | Provider(s) | Special Handling |
|
||||
| --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | -------------------------------------------------------------------- |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, iFlow, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `DefaultExecutor` | OpenAI, Claude, Gemini, Qwen, Qoder, OpenRouter, GLM, Kimi, MiniMax, DeepSeek, Groq, xAI, Mistral, Perplexity, Together, Fireworks, Cerebras, Cohere, NVIDIA | Dynamic URL/header config per provider |
|
||||
| `AntigravityExecutor` | Google Antigravity | Custom project/session IDs, Retry-After parsing |
|
||||
| `CodexExecutor` | OpenAI Codex | Injects system instructions, forces reasoning effort |
|
||||
| `CursorExecutor` | Cursor IDE | ConnectRPC protocol, Protobuf encoding, request signing via checksum |
|
||||
@@ -621,7 +621,7 @@ All other providers (including custom compatible nodes) use the `DefaultExecutor
|
||||
| Cursor | cursor | Custom checksum | ✅ | ✅ | ❌ | ❌ |
|
||||
| Kiro | kiro | AWS SSO OIDC | ✅ (EventStream) | ❌ | ✅ | ✅ Usage limits |
|
||||
| Qwen | openai | OAuth | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| iFlow | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| Qoder | openai | OAuth (Basic) | ✅ | ✅ | ✅ | ⚠️ Per request |
|
||||
| OpenRouter | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| GLM/Kimi/MiniMax | claude | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
| DeepSeek | openai | API Key | ✅ | ✅ | ❌ | ❌ |
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user