Files
OmniRoute/docs/i18n/ka/docs/reference/CLI-TOOLS.md
Diego Rodrigues de Sa e Souza 58f88a83e4 feat(i18n): 7 new locales — Hausa, Yoruba, Igbo, Amharic, Uzbek, Georgian, Armenian (66 locales) (#13727)
Batch 3 (last) of the locale-expansion plan: ha, yo, ig, am, uz, ka, hy on every surface — dashboard catalog, docs mirror (22-file core + llm.txt + CHANGELOG), CLI catalog, README flag block, locale tables and 🌐 language bars. Also closes the key gap the batch-1 (43 keys) and batch-2 (10 keys) catalogs carried since their base merges, fixes the Igbo "Model" copy and allowlists the Uzbek cognate. Translation-ratio baseline covers 65 locales.

⚠️ base-red inherited: #12732
2026-09-15 09:50:01 -03:00

70 KiB
Raw Blame History

CLI-TOOLS (ქართული)

🌐 Languages: 🇺🇸 English · 🇪🇹 am · 🇸🇦 ar · 🇦🇿 az · 🇧🇬 bg · 🇧🇩 bn · 🇨🇿 cs · 🇩🇰 da · 🇩🇪 de · 🇬🇷 el · 🇪🇸 es · 🇪🇪 et · 🇮🇷 fa · 🇫🇮 fi · 🇫🇷 fr · 🇮🇪 ga · 🇮🇳 gu · 🇳🇬 ha · 🇮🇱 he · 🇮🇳 hi · 🇭🇷 hr · 🇭🇺 hu · 🇦🇲 hy · 🇮🇩 id · 🇳🇬 ig · 🇮🇹 it · 🇯🇵 ja · 🇰🇭 km · 🇮🇳 kn · 🇰🇷 ko · 🇱🇹 lt · 🇱🇻 lv · 🇮🇳 ml · 🇮🇳 mr · 🇲🇾 ms · 🇲🇹 mt · 🇲🇲 my · 🇳🇵 ne · 🇳🇱 nl · 🇳🇴 no · 🇮🇳 or · 🇮🇳 pa · 🇵🇭 phi · 🇵🇱 pl · 🇵🇹 pt · 🇧🇷 pt-BR · 🇷🇴 ro · 🇷🇺 ru · 🇱🇰 si · 🇸🇰 sk · 🇸🇮 sl · 🇷🇸 sr · 🇸🇪 sv · 🇰🇪 sw · 🇮🇳 ta · 🇮🇳 te · 🇹🇭 th · 🇹🇷 tr · 🇺🇦 uk-UA · 🇵🇰 ur · 🇺🇿 uz · 🇻🇳 vi · 🇳🇬 yo · 🇨🇳 zh-CN · 🇹🇼 zh-TW



title: "CLI ინსტრუმენტები — OmniRoute" version: 3.8.50 lastUpdated: 2026-08-23

CLI ინსტრუმენტები — OmniRoute

ბოლო განახლება: 2026-08-23

OmniRoute ინტეგრირდება CLI ინსტრუმენტების სამ კატეგორიასთან, რომლებიც დაფის სამ ცალკეულ გვერდზეა განაწილებული:

გვერდი მარშრუტი კონცეფცია რაოდენობა
CLI Code's /dashboard/cli-code პროგრამირების ინსტრუმენტები, რომლებსაც OmniRoute-ზე მიუთითებთ (კლიენტი → CLI → OmniRoute → პროვაიდერი) 26
CLI Agents /dashboard/cli-agents ავტონომიური აგენტები, რომლებსაც OmniRoute-ზე მიუთითებთ (იგივე ნაკადი, უფრო ფართო მოქმედების სფერო) 10
ACP Agents /dashboard/acp-agents CLI-ები, რომლებსაც OmniRoute stdio/ACP-ის მეშვეობით ბექენდად უშვებს (შებრუნებული ნაკადი) იხილეთ რეესტრი

მოძველებული მარშრუტები 308-ის მეშვეობით გადამისამართდება: /dashboard/cli-tools → /dashboard/cli-code, /dashboard/agents → /dashboard/acp-agents.


როგორ მუშაობს

CLI Code's / CLI Agents (მოხმარების ნაკადი):
Claude / Codex / OpenCode / Cline / KiloCode / Continue / Hermes Agent / Goose / ...
           │
           ▼  (ყველა OmniRoute-ზე მიუთითებს)
    http://YOUR_SERVER:20128/v1
           │
           ▼  (OmniRoute მოთხოვნას შესაბამის პროვაიდერთან მარშრუტიზებს)
    Anthropic / OpenAI / Gemini / DeepSeek / Groq / Mistral / ...

ACP Agents (შებრუნებული გაშვების ნაკადი):
    კლიენტის მოთხოვნა → OmniRoute → უშვებს CLI-ს stdio/ACP-ის მეშვეობით → პასუხი

უპირატესობები:

  • ერთი API გასაღები ყველა ინსტრუმენტის სამართავად
  • ხარჯების თვალყურის დევნება ყველა CLI-სთვის დაფაზე
  • მოდელების გადართვა თითოეული ინსტრუმენტის ხელახლა კონფიგურირების გარეშე
  • მუშაობს როგორც ლოკალურად, ისე დისტანციურ სერვერებზე (VPS, Docker, Akamai, Cloudflare Tunnel)

ავტომატური კონფიგურაცია setup-*-ით

არ არის საჭირო თითოეული ინსტრუმენტის კონფიგურაციის ხელით დაწერა. OmniRoute-ს მოჰყვება setup-* ბრძანება თითოეული მხარდაჭერილი CLI-სთვის, რომელიც გაშვებული OmniRoute-იდან (ლოკალურიდან ან დისტანციურიდან) მოდელების მოქმედ კატალოგს კითხულობს და თქვენს კომპიუტერზე თავად ინსტრუმენტის კონფიგურაციას წერს:

omniroute setup-codex        omniroute setup-claude       omniroute setup-opencode
omniroute setup-cline        omniroute setup-kilo         omniroute setup-continue
omniroute setup-cursor       omniroute setup-roo          omniroute setup-crush
omniroute setup-goose        omniroute setup-qwen         omniroute setup-aider
omniroute setup-5dive

თითოეული მათგანი იღებს --remote <url> --api-key <key> პარამეტრებს (ლოკალური ინსტრუმენტის დისტანციურ OmniRoute-თან კონფიგურაციისთვის), --dry-run-ს (ჩაწერის გარეშე წინასწარ სანახავად) და --port-ს. მოდელების ავტომატური აღმოჩენის გარეშე მომუშავე ინსტრუმენტები (Cline, Kilo, Roo, Goose, Aider, Qwen, 5dive) იღებენ --model <id>-ს (და --yes-ს არაინტერაქტიული გაშვებებისთვის). setup-5dive ერთადერთი რეცეპტია, რომელიც $HOME-ის ქვეშ არ წერს: ის 5dive-ის აგენტების ფლოტს აკონფიგურირებს ფლოტის ჰოსტზე root-ის კუთვნილი ავტორიზაციის პროფილის ჩაწერით, ამიტომ sudo-ს მეშვეობით ხელახლა ეშვება და საკუთარი დისტანციური რეჟიმი არ აქვს. CLI-ის სწორი გარემოს ცვლადებით გასაშვებად, ყოველგვარი კონფიგურაციის ჩაწერის გარეშე, გამოიყენეთ უნივერსალური omniroute run <target> გამშვები (claude, codex, aider, goose, opencode, qwen, gemini — სამიზნეები და ფსევდონიმები bin/cli/cli-manifest.mjs-დან მოდის); თითოეული ინსტრუმენტისთვის განკუთვნილი მოძველებული გამშვებები omniroute launch (Claude Code) და omniroute launch-codex (Codex) კვლავ ხელმისაწვდომია. Gemini CLI მხოლოდ გაშვებისთვისაა განკუთვნილი: ის omniroute run-ის სამიზნეა, თუმცა setup-*/configure რეცეპტი არ აქვს.

სრული ცნობარი: მთავარი ცხრილი — რას წერს თითოეული ბრძანება, ყველა პარამეტრი, ლოკალური და დისტანციური რეჟიმები და რომელ ინსტრუმენტებს სჭირდება /v1 სუფიქსი — ხელმისაწვდომია CLI ინტეგრაციებში.

მათი კონტეინერის შიგნით გაშვება

OmniRoute-ის კონტეინერის შიგნით შესრულებული setup-* ბრძანება კონტეინერის საკუთარ home დირექტორიაში წერს, რომელსაც ჰოსტის არცერთი CLI არ კითხულობს და რომელიც კონტეინერთან ერთად ქრება. OmniRoute ამას ამოიცნობს და ჩაწერის ნაცვლად ინსტრუქციებთან ერთად 2 კოდით ასრულებს მუშაობას. არსებობს ორი მხარდაჭერილი გზა — დააინსტალირეთ CLI ჰოსტზე და გამოიყენეთ omniroute connect კონტეინერთან დასაკავშირებლად, ან bind-mount-ით მიამაგრეთ კონფიგურაციის დირექტორიები და დააყენეთ CLI_CONFIG_HOME (host პროფილი compose-ში). ყოველი setup-* ბრძანება, ასევე omniroute configure და omniroute config set, იღებს --allow-container-write პარამეტრს, თუ სინამდვილეში კონტეინერის საკუთარი CLI-ების კონფიგურირება გსურთ; სერვერისთვის იმავეს აკეთებს OMNIROUTE_ALLOW_CONTAINER_CONFIG_WRITE=true. იხილეთ Docker-ის სახელმძღვანელო → ჰოსტის CLI ინსტრუმენტების კონფიგურაცია.

დაფის გამოყენების endpoint (POST /api/cli-tools/apply) იმავე დამცავ მექანიზმს აღასრულებს: კონტეინერში, თუ ჩაწერის სამიზნე ჰოსტიდან bind-mount-ით არ არის მიმაგრებული, პასუხად ბრუნდება 422 containerEphemeralTarget: true-ით, უსაფრთხო შეცდომის ტექსტით და — იმ ინსტრუმენტებისთვის, რომლებსაც ჰოსტის რეცეპტი აქვთ (claude, codex, opencode, cline, kilo, continue) — ჰოსტზე გასაშვები hostSetupCommand-ით (მაგ., omniroute setup-opencode); არაფერი ჩაიწერება. dryRun: true კონტეინერის რეჟიმშიც აგრძელებს მუშაობას და დისკზე შეხების გარეშე აბრუნებს გენერირებულ შიგთავსს + სამიზნე გზას, ამიტომ შეგიძლიათ წინასწარ ნახოთ დაფიდან და გამოიყენოთ ჰოსტზე. ეს ქცევა განზრახია და რეგრესიებისგან დაცულია tests/unit/api/cli-tools/apply-container-guard.test.ts-ით — არასოდეს „გამოასწოროთ“ 422 დამცავი მექანიზმის წაშლით.


ჭეშმარიტების წყარო

ერთიანი კატალოგი განთავსებულია src/shared/constants/cliTools.ts-ში, როგორც CLI_TOOLS: Record<string, CliCatalogEntry>.

თითოეული ჩანაწერი შეიცავს შემდეგ ველებს (განსაზღვრულია src/shared/schemas/cliCatalog.ts-ში):

ველი ტიპი აღწერა
category "code" | "agent" რომელ გვერდზე გამოჩნდება ინსტრუმენტი
vendor string ინსტრუმენტის წარმომავლობა ("Anthropic", "OSS (P. Gauthier)")
acpSpawnable boolean შესაძლებელია ACP Agent-ის სახით გამოყენებაც (ნაჩვენებია ნიშანი)
baseUrlSupport "full" | "partial" | "none" მორგებული საბოლოო წერტილის მხარდაჭერის დონე. "none" = MITM-ის სამომავლო სამუშაოების სია
configType "env" | "custom" | "guide" | "custom-builder" | "mitm" კონფიგურაციის მექანიზმი
id, name, color, description, docsUrl სტანდარტული ძირითადი საჩვენებელი ველები

ჩანაწერები, რომლებშიც მითითებულია baseUrlSupport: "none", მართვის პანელის გვერდებზე არ ჩანს — ისინი რეგისტრირებულია MITM-ის სამომავლო სამუშაოების სიაში მე-11 გეგმისთვის (იხილეთ _tasks/features-v3.8.6/refactorpages/_orchestration/_plan11-mitm-backlog.md).

შესაძლებლობების დონეები (კატალოგიზებული × აღმოჩენადი × კონფიგურირებადი × გაშვებადი)

კატალოგიზებული ყველა ინსტრუმენტი არ არის აღმოჩენადი, კონფიგურირებადი ან გაშვებადი. თითოეულ დონეს აქვს ერთი დეკლარირების წყარო, ხოლო აცდენის ტესტი მათ შესაბამისობას ინარჩუნებს:

დონე მნიშვნელობა სად არის დეკლარირებული
კატალოგიზებული წარმოდგენილია მართვის პანელის კატალოგში (სახელი, მომწოდებელი, დოკუმენტაცია, კონფიგურაციის ტიპი) src/shared/constants/cliTools.ts (CLI_TOOLS)
აღმოჩენადი ბინარული ფაილის/კონფიგურაციის აღმოჩენა, მდგომარეობის შემოწმებები, კონფიგურაციის ბილიკები src/shared/services/cliRuntime.ts (CLI_TOOLS-ის გაშვების გარემოს კატალოგი)
კონფიგურირებადი მხარდაჭერილია omniroute configure <cli>-ის მიერ (არსებობს გამართვის რეცეპტი) bin/cli/cli-manifest.mjs (configure: true)
გაშვებადი მხარდაჭერილია omniroute run <target>-ის მიერ (განსაზღვრულია გარემოს/არგუმენტების ჩასმა) bin/cli/cli-manifest.mjs (run: true)

bin/cli/cli-manifest.mjs არის კანონიკური შესრულებადი მანიფესტი CLI ბრძანებების ინტერფეისებისთვის: run, configure და გარსის ავტომატური შევსების გენერატორები მისგან იღებენ სამიზნეების სიებს, ფსევდონიმების ამოხსნას (მაგალითად, kilocode/kilo-code/kilo_cli → kilo) და --model ალმის დაკავშირების წესებს. აცდენისგან დამცავი ტესტი tests/unit/cli/cli-manifest-drift.test.ts ამოწმებს, რომ მანიფესტი, გაშვების გარემოს კატალოგი, UI-ის კატალოგი და თითოეული მომხმარებელი ინტერფეისი სინქრონიზებული დარჩეს — თუ სამიზნე ერთ ინტერფეისს დაემატება სხვების გარეშე, შეუმჩნეველი აცდენის ნაცვლად ტესტების ნაკრები ჩავარდება.


1. CLI Code-ის კატალოგი (26 ხელსაწყო)

ყველა ხელსაწყო, რომელიც /dashboard/cli-code-ში გამოჩნდება. baseUrlSupport: none-ის მქონე ხელსაწყოები მორგებული საბაზისო URL-ის ნაცვლად MITM-ის ან სახელმძღვანელოს მეშვეობით არის დაკავშირებული:

id name vendor baseUrlSupport configType acpSpawnable
claude Claude Code Anthropic full env true
codex OpenAI Codex CLI OpenAI full custom true
zcode ZCode (GLM Coding Plan) Z.ai none custom false
cline Cline OSS (ex-Claude Dev) full custom true
kilo Kilo Code Kilo-Org full custom false
roo Roo Code Roo (OSS) full guide false
continue Continue continue.dev full guide false
aider Aider OSS (P. Gauthier) full guide true
forge ForgeCode Antinomy HQ full custom true
jcode jcode 1jehuang (OSS) full custom false
deepseek-tui DeepSeek TUI Hunter Bown (OSS) full custom false
codewhale CodeWhale Hmbown (OSS) full custom false
opencode OpenCode Anomaly (ex-SST) full guide true
droid Factory Droid Factory AI partial guide false
copilot GitHub Copilot CLI GitHub/MS full custom false
cursor-cli Cursor CLI Anysphere partial guide true
smelt Smelt leonardcser (OSS) full custom false
pi Pi (pi-coding-agent) M. Zechner (OSS) full custom false
grok-build Grok Build xAI full custom false
crush Crush OSS (Charm) full custom false
qwen Qwen Code Alibaba full guide true
cursor Cursor Anysphere none guide false
antigravity Antigravity Google none mitm false
hermes Hermes Nous Research none guide false
kiro Kiro AI Amazon none mitm false
custom Custom CLI — full custom-builder false

baseUrlSupport: "partial"-ის მქონე ხელსაწყოების საინფორმაციო ბარათზე ნაჩვენებია სამკერდე ნიშანი „⚠ ნაწილობრივი საბაზისო URL“.

2. CLI აგენტების კატალოგი (10 ხელსაწყო)

ავტონომიური აგენტები, რომლებიც ნაჩვენებია /dashboard/cli-agents-ში:

id name vendor baseUrlSupport acpSpawnable
hermes-agent Hermes Agent Nous Research full false
openclaw OpenClaw OSS (P. Steinberger) full true
goose Goose Block / Linux Foundation full true
interpreter Open Interpreter OSS full true
warp Warp AI Warp Inc. partial true
agent-deck Agent Deck asheshgoplani (OSS) full false
omp Oh My Pi OSS full true
letta Letta CLI Letta full false
prime-agent Prime Agent Prime Intellect (OSS) full false
5dive 5dive OSS (5dive-ai) full false

3. ACP აგენტები (/dashboard/acp-agents)

ამ გვერდზე (სახელი შეიცვალა /dashboard/agents-იდან) ნაჩვენებია CLI-ები, რომელთა გაშვებაც OmniRoute-ს შეუძლია, როგორც ბექენდის შესრულების ძრავებისა, stdio/ACP პროტოკოლის მეშვეობით. კატალოგი ცალკე იმართება src/lib/acp/registry.ts-ში და არ არის CLI_TOOLS-ის იდენტური.


4. MITM-ის დაგროვილი ამოცანები (მართვის პანელში არ ჩანს)

შემდეგ CLI-ებს მორგებული საბაზო URL-ის მშობლიური მხარდაჭერა არ აქვთ და CLI Code-ის ან CLI Agents-ის გვერდებზე არ არის ჩამოთვლილი. ისინი მე-11 გეგმაში MITM-ჩაჭრის კანდიდატები არიან:

CLI მიზეზი
windsurf BYOK შეზღუდულია Claude-ის შერჩეული მოდელებით + კორპორაციული URL/ტოკენი
amp დახურული ეკოსისტემა (Sourcegraph)
amazon-q / kiro-cli AWS SSO ავტორიზაცია, მორგებული URL არ არის
cowork Anthropic Desktop, კონფიგურირებადი საბოლოო წერტილი არ არის

სრული ჯვარედინი მითითებისთვის იხილეთ _tasks/features-v3.8.6/refactorpages/_orchestration/_plan11-mitm-backlog.md.


5. პაკეტური აღმოჩენის API

ყველა ხელსაწყოს აღმოჩენა აგრეგირებულია ერთი საბოლოო წერტილის მეშვეობით:

GET /api/cli-tools/all-statuses

  • ავტორიზაცია: requireCliToolsAuth(request) (იგივე, რაც სხვა /api/cli-tools/ მარშრუტებისთვის)
  • აბრუნებს: Record<toolId, ToolBatchStatus> (ტიპი: src/shared/types/cliBatchStatus.ts)
  • სტრატეგია: Promise.all ყველა ხელსაწყოსთვის, თითოეულ ხელსაწყოზე 5s მოლოდინის ლიმიტით
  • კეში: მეხსიერებაში განთავსებული LRU, ინდექსირებული კონფიგურაციის ფაილის mtime-იქ მიხედვით. კეში უქმდება, როდესაც mtime იცვლება. ნულდება სერვერის გადატვირთვისას.

თითოეული ხელსაწყოს პასუხის სტრუქტურა:

interface ToolBatchStatus {
  detection: {
    installed: boolean;
    runnable: boolean;
    version?: string;
    command?: string;
    commandPath?: string;
    reason?: string;
  };
  config: {
    status: "configured" | "not_configured" | "not_installed" | "unknown" | "other";
    endpoint?: string | null;
    lastConfiguredAt?: string | null;
  };
  error?: string; // გასუფთავებული, სტეკის ტრეისების გარეშე
}

6. პარამეტრების დამმუშავებლები ახალი ხელსაწყოებისთვის

ახალ ხელსაწყოებს, რომლებსაც აქვთ configType: "custom", პარამეტრების API-ის გამოყოფილი მარშრუტები აქვთ:

მარშრუტი ხელსაწყო
POST /api/cli-tools/forge-settings ForgeCode (.forge.toml)
POST /api/cli-tools/jcode-settings jcode (--base-url ალამი)
POST /api/cli-tools/deepseek-tui-settings DeepSeek TUI (OPENAI_BASE_URL, მოძველებული)
POST /api/cli-tools/codewhale-settings CodeWhale (OPENAI_BASE_URL, ძირითადი + მოძველებული ~/.deepseek სინქრონიზაცია)
POST /api/cli-tools/smelt-settings Smelt
POST /api/cli-tools/pi-settings Pi პროგრამირების აგენტი
POST /api/cli-tools/grok-build-settings Grok Build (~/.grok/config.toml, [model.omniroute])
POST /api/cli-tools/qwen-settings Qwen Code (~/.qwen/settings.json + გამოყოფილი .env გასაღები)

ყველა მარშრუტი შეცდომის პასუხებისთვის იყენებს sanitizeErrorMessage()-ს (მკაცრი წესი #12).


7. დაფის გვერდების არქიტექტურა

CLI Code-იქ (/dashboard/cli-code)

  • src/app/(dashboard)/dashboard/cli-code/page.tsx — სერვერის კომპონენტი
  • src/app/(dashboard)/dashboard/cli-code/CliCodePageClient.tsx — კლიენტის ბადე
  • src/app/(dashboard)/dashboard/cli-code/[id]/page.tsx — ხელსაწყოს დეტალების გვერდი
  • src/app/(dashboard)/dashboard/cli-code/components/ — ხელსაწყოს 12 სპეციალიზებული ბარათი + ToolDetailClient.tsx

CLI აგენტები (/dashboard/cli-agents)

  • src/app/(dashboard)/dashboard/cli-agents/page.tsx — სერვერის კომპონენტი
  • src/app/(dashboard)/dashboard/cli-agents/CliAgentsPageClient.tsx — კლიენტის ბადე
  • src/app/(dashboard)/dashboard/cli-agents/[id]/page.tsx — ხელახლა იყენებს ToolDetailClient-ქ

ACP აგენტები (/dashboard/acp-agents)

  • src/app/(dashboard)/dashboard/acp-agents/page.tsx — სერვერის კომპონენტი (გადატანილია agents/-იდან)

საზიარო UI კომპონენტები (src/shared/components/cli/)

ფაილი დანიშნულება
CliToolCard.tsx მდგომარეობის ჭკვიანი ბარათი (აღმოჩენა + კონფიგურაცია + საბოლოო წერტილი)
CliConceptCard.tsx თითოეული გვერდისთვის კონცეფციის განმარტების ბარათი
CliComparisonCard.tsx CLI ტიპების სამსვეტიანი შედარება
BaseUrlSelect.tsx საბოლოო წერტილის ჩამოსაშლელი სია (ლოკალური/ღრუბლოვანი/მორგებული)
ApiKeySelect.tsx API გასაღების ამრჩევი
ManualConfigModal.tsx კოპირებადი კონფიგურაციის ფრაგმენტის მოდალური ფანჯარა

საზიარო ჰუკი (src/shared/hooks/cli/)

ფაილი დანიშნულება
useToolBatchStatuses.ts იღებს /api/cli-tools/all-statuses-ს, მართავს ჩატვირთვის/განახლების მდგომარეობას

8. i18n

მე-14 გეგმის F9-ში დაემატა ახალი სახელთა სივრცეები:

სახელთა სივრცე დანიშნულება
cliCommon საერთო სტრიქონები (ბარათების წარწერები, კონცეფციის/შედარების ტექსტები, დეტალების გვერდის წარწერები)
cliCode CLI Code-ის გვერდის სტრიქონები
cliAgents CLI Agents-ის გვერდის სტრიქონები
acpAgents ACP Agents-ის გვერდის სტრიქონები

მოწოდებულია სრული PT-BR და EN თარგმანები. დანარჩენი 39 ლოკალი ავტომატურად იყენებს EN-ს, src/i18n/request.ts-ში სახელთა სივრცის დონეზე გაერთიანების მეშვეობით.


9. სწრაფი დაწყება

ნაბიჯი 1 — მიიღეთ OmniRoute API გასაღები

  1. გახსენით /dashboard/api-manager → API გასაღების შექმნა
  2. მიანიჭეთ სახელი (მაგ., cli-tools) და აირჩიეთ ყველა ნებართვა
  3. დააკოპირეთ გასაღები — ის ქვემოთ ჩამოთვლილი ყველა CLI-სთვის დაგჭირდებათ

თქვენი გასაღები ასე გამოიყურება: sk-xxxxxxxxxxxxxxxx-xxxxxxxxx


ნაბიჯი 2 — დააინსტალირეთ CLI ინსტრუმენტები

npm-ზე დაფუძნებული ყველა ინსტრუმენტი საჭიროებს Node.js 22.22.2+ ან 24.x ვერსიას:

# Claude Code (Anthropic)
npm install -g @anthropic-ai/claude-code

# OpenAI Codex
npm install -g @openai/codex

# OpenCode
npm install -g opencode-ai

# Cline
npm install -g cline

# KiloCode
npm install -g kilocode

# Qwen Code
npm install -g @qwen-code/qwen-code

# Google Gemini CLI (`omniroute run gemini`-ის მეშვეობით გაშვებადი → /v1beta ინტერფეისი)
npm install -g @google/gemini-cli

# Aider
pip install aider-chat

# Smelt
cargo install smelt  # Rust-ზე დაფუძნებული

# Pi პროგრამირების აგენტი
# ინსტალაციისთვის იხილეთ https://github.com/zechnerj/pi-coding-agent

# jcode
# ინსტალაციისთვის იხილეთ https://github.com/1jehuang/jcode

ნაბიჯი 3 — დააკონფიგურირეთ მართვის პანელის მეშვეობით

  1. გადადით http://localhost:20128/dashboard/cli-code მისამართზე
  2. ბადეში იპოვეთ თქვენი ინსტრუმენტი
  3. ინსტრუმენტის დეტალების გვერდის გასახსნელად დააწკაპუნეთ ბარათზე
  4. აირჩიეთ თქვენი API გასაღები და საბაზისო URL
  5. დააწკაპუნეთ კონფიგურაციის გამოყენებაზე ან დააკოპირეთ ხელით კონფიგურაციის ფრაგმენტი

ნაბიჯი 4 — დააყენეთ გლობალური გარემოს ცვლადები

# OmniRoute-ის უნივერსალური საბოლოო წერტილი
export OPENAI_BASE_URL="http://localhost:20128/v1"
export OPENAI_API_KEY="sk-your-omniroute-key"
export ANTHROPIC_BASE_URL="http://localhost:20128"
export ANTHROPIC_AUTH_TOKEN="sk-your-omniroute-key"
# Gemini CLI კითხულობს GOOGLE_GEMINI_BASE_URL-ს ROOT დონეზე (მისი SDK თავად ამატებს /v1beta/...-ს)
export GOOGLE_GEMINI_BASE_URL="http://localhost:20128"
export GEMINI_API_KEY="sk-your-omniroute-key"

დისტანციური სერვერისთვის localhost:20128 ჩაანაცვლეთ სერვერის IP მისამართით ან დომენით, მაგ., http://<your-server-ip>:20128.


ნაბიჯი 4 — დააკონფიგურირეთ თითოეული ინსტრუმენტი

Claude Code

# შექმენით ~/.claude/settings.json:
mkdir -p ~/.claude && cat > ~/.claude/settings.json << EOF
{
  "env": {
    "ANTHROPIC_BASE_URL": "http://localhost:20128",
    "ANTHROPIC_AUTH_TOKEN": "sk-your-omniroute-key"
  }
}
EOF

Claude Code-ისთვის გამოიყენეთ ერთიანი Anthropic კარიბჭის ძირეული მისამართი. აქ /v1 არ დაამატოთ.

ტესტი: claude "say hello"


OpenAI Codex

თანამედროვე Codex (v0.137+) მხოლოდ ~/.codex/config.toml-ს კითხულობს — ძველი config.yaml მემკვიდრეობით npm CLI-ს ეკუთვნის და გაფრთხილების გარეშე იგნორირდება. API გასაღები რჩება OMNIROUTE_API_KEY გარემოს ცვლადში (env_key) და არასდროს ფაილის შიგნით:

mkdir -p ~/.codex && cat > ~/.codex/config.toml << EOF
model_provider = "omniroute"

[model_providers.omniroute]
name                 = "OmniRoute"
base_url             = "http://localhost:20128/v1"
env_key              = "OMNIROUTE_API_KEY"
requires_openai_auth = false
EOF
export OMNIROUTE_API_KEY="sk-your-omniroute-key"

სრული ცნობარი (პროფილები, wire_api, კონტექსტის ფანჯრები): CODEX-CLI-CONFIGURATION.md.

ტესტი: codex "what is 2+2?"


OpenCode

mkdir -p ~/.config/opencode && cat > ~/.config/opencode/opencode.json << EOF
{
  "\$schema": "https://opencode.ai/config.json",
  "provider": {
    "omniroute": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "OmniRoute",
      "options": {
        "baseURL": "http://localhost:20128/v1",
        "apiKey": "sk-your-omniroute-key"
      },
      "models": {
        "claude-sonnet-4-5": { "name": "claude-sonnet-4-5" },
        "claude-sonnet-4-5-thinking": { "name": "claude-sonnet-4-5-thinking" },
        "gemini-3-flash": { "name": "gemini-3-flash" }
      }
    }
  }
}
EOF

ტესტი: opencode

სააზროვნო ვარიანტების გასაგზავნად გამოიყენეთ opencode run "your prompt" --model omniroute/claude-sonnet-4-5-thinking --variant high.


Cline (CLI ან VS Code)

CLI რეჟიმი:

mkdir -p ~/.cline/data && cat > ~/.cline/data/globalState.json << EOF
{
  "apiProvider": "openai",
  "openAiBaseUrl": "http://localhost:20128/v1",
  "openAiApiKey": "sk-your-omniroute-key"
}
EOF

VS Code რეჟიმი: Cline გაფართოების პარამეტრები → API პროვაიდერი: OpenAI Compatible → საბაზისო URL: http://localhost:20128/v1

ან გამოიყენეთ OmniRoute-ის მართვის პანელი → CLI ინსტრუმენტები → Cline → კონფიგურაციის გამოყენება.


KiloCode (CLI ან VS Code)

CLI რეჟიმი:

kilocode --api-base http://localhost:20128/v1 --api-key sk-your-omniroute-key

VS Code-ის პარამეტრები:

{
  "kilo-code.openAiBaseUrl": "http://localhost:20128/v1",
  "kilo-code.apiKey": "sk-your-omniroute-key"
}

ან გამოიყენეთ OmniRoute-ის მართვის პანელი → CLI ინსტრუმენტები → KiloCode → კონფიგურაციის გამოყენება.


Continue (VS Code გაფართოება)

დაარედაქტირეთ ~/.continue/config.yaml:

models:
  - name: OmniRoute
    provider: openai
    model: auto
    apiBase: http://localhost:20128/v1
    apiKey: sk-your-omniroute-key
    default: true

რედაქტირების შემდეგ გადატვირთეთ VS Code.


VS Code Insiders (chatLanguageModels.json)

გამოიყენეთ ეს მაშინ, როდესაც VS Code Insiders კონფიგურირებულია მორგებული საბოლოო წერტილის მოდელებისთვის და გსურთ, რომ OmniRoute-მა მორგებული სათაურის ველის გარეშე იმუშაოს.

რეკომენდებული მდებარეობა:

  • Linux: ~/.config/Code - Insiders/User/chatLanguageModels.json
  • Windows: %APPDATA%/Code - Insiders/User/chatLanguageModels.json

OmniRoute-ის ტოკენიზებული ფსევდონიმის გამოყენების მაგალითი:

[
  {
    "vendor": "customendpoint",
    "id": "auto",
    "name": "OmniRoute Auto",
    "family": "gpt-4",
    "version": "1.0.0",
    "url": "http://localhost:20128/api/v1/vscode/sk-your-omniroute-key/chat/completions",
    "modelsUrl": "http://localhost:20128/api/v1/vscode/sk-your-omniroute-key/models",
    "requestFormat": "openai-chat-completions",
    "contextWindow": 256000,
    "maxOutputTokens": 32768,
    "auth": {
      "type": "none"
    }
  }
]

შენიშვნები:

  • ჩაანაცვლეთ sk-your-omniroute-key OmniRoute-ში შექმნილი API გასაღებით.
  • url ველი უნდა მიუთითებდეს /api/v1/vscode/{token}/chat/completions-ზე.
  • modelsUrl ველი უნდა მიუთითებდეს /api/v1/vscode/{token}/models-ზე.
  • როდესაც კლიენტს მორგებული სათაურების მხარდაჭერა აქვს, უპირატესობა მიანიჭეთ სტანდარტულ /v1 + Bearer სათაურის სქემას.
  • URL-ში ჩაშენებული ტოკენები თავსებადობის სარეზერვო ვარიანტია და შესაძლოა რედაქტორის ჟურნალებში ან პროქსის ისტორიაში გამოჩნდეს.

Kiro CLI (Amazon)

# შედით თქვენს AWS/Kiro ანგარიშში:
kiro-cli login

# CLI საკუთარ ავთენტიფიკაციას იყენებს — თავად Kiro CLI-სთვის OmniRoute ბექენდად საჭირო არ არის.
# სხვა ხელსაწყოებისთვის გამოიყენეთ kiro-cli OmniRoute-თან ერთად.
kiro-cli status

Kiro IDE დესკტოპ-აპისთვის გამოიყენეთ OmniRoute-ის მიერ ხელმისაწვდომი MITM საბოლოო წერტილი /dashboard/cli-tools → Kiro-ის ქვეშ.


10. შიდა OmniRoute CLI

omniroute შესრულებადი ფაილი უზრუნველყოფს ბრძანებებს სერვერის სასიცოცხლო ციკლის, გამართვის, დიაგნოსტიკისა და პროვაიდერების მართვისთვის. შესვლის წერტილი: bin/omniroute.mjs.

omniroute                              # სერვერის გაშვება (ნაგულისხმევი პორტი 20128)
omniroute setup                        # ინტერაქტიული გამართვის ოსტატი
omniroute doctor                       # კონფიგურაციის, DB-ის, პორტებისა და გაშვების გარემოს შემოწმება
omniroute providers list               # კონფიგურირებული პროვაიდერების კავშირები
omniroute providers test-all           # ყველა აქტიური კავშირის შემოწმება
omniroute reset-password               # ადმინისტრატორის პაროლის ჩამოყრა
omniroute logs                         # მოთხოვნების ჟურნალის ნაკადურად ჩვენება
omniroute health                       # ჯანმრთელობის დეტალური სტატუსი (ამომრთველები, კეში, მეხსიერება)
omniroute --version                    # ვერსიის გამოტანა
omniroute --help                       # ყველა ბრძანების ჩვენება

გამართვა და ინიციალიზაცია

omniroute setup                        # ინტერაქტიული გამართვის ოსტატი
omniroute setup --non-interactive      # CI/ავტომატიზაციის რეჟიმი (კითხულობს გარემოს ცვლადებსა და ალმებს)
omniroute setup --password '<value>'   # ადმინისტრატორის პაროლის პირდაპირ დაყენება
omniroute setup --add-provider \
  --provider openai \
  --api-key '<value>' \
  --test-provider                      # პროვაიდერის დამატება და შემოწმება ერთი მოქმედებით

არაინტერაქტიული გამართვისთვის ამოცნობილი გარემოს ცვლადები:

ცვლადი დანიშნულება
OMNIROUTE_API_KEY პროვაიდერის API-გასაღები (Commander-ის .env()-ის მეშვეობით მიბმულია --api-key-ზე)
DATA_DIR OmniRoute-ის მონაცემთა დირექტორიის ჩანაცვლება

ყველა სხვა არაინტერაქტიული შესატანი მნიშვნელობა გადაიცემა ალმების და არა გარემოს ცვლადების სახით: --password, --provider, --provider-name, --provider-base-url, --default-model (იხილეთ omniroute setup-ის პარამეტრები ზემოთ).

დიაგნოსტიკა

omniroute doctor                       # კონფიგურაციის, DB-ის, პორტების, გაშვების გარემოს, მეხსიერებისა და ხელმისაწვდომობის შემოწმება
omniroute doctor --json                # მანქანურად წაკითხვადი JSON
omniroute doctor --no-liveness         # HTTP-ჯანმრთელობის შემოწმების გამოტოვება
omniroute doctor --host 0.0.0.0        # ხელმისაწვდომობის შემოწმების ჰოსტის ჩანაცვლება
omniroute doctor --liveness-url <url>  # ჯანმრთელობის საბოლოო წერტილის სრული URL-ის ჩანაცვლება

doctor ასრულებს შემდეგ შემოწმებებს: Config, Database, Storage/encryption, Port availability, Node runtime, Native binary (better-sqlite3), Memory და Server liveness. თუ რომელიმე შემოწმების შედეგია fail, პროცესი ნულზე განსხვავებული კოდით სრულდება.

პროვაიდერების მართვა

omniroute providers available                       # OmniRoute-ის პროვაიდერების კატალოგი
omniroute providers available --search openai       # კატალოგის გაფილტვრა იდენტიფიკატორის/სახელის/ფსევდონიმის/კატეგორიის მიხედვით
omniroute providers available --category api-key    # კატეგორიის მიხედვით გაფილტვრა (api-key, oauth, free, ...)
omniroute providers available --json                # მანქანურად წაკითხვადი JSON

omniroute providers list                            # კონფიგურირებული პროვაიდერების კავშირები
omniroute providers list --json

omniroute providers test <id|name>                  # ერთი კონფიგურირებული კავშირის შემოწმება
omniroute providers test-all                        # ყველა აქტიური კავშირის შემოწმება
omniroute providers validate                        # მხოლოდ ლოკალური სტრუქტურული ვალიდაცია
omniroute providers add <provider> --credential-env PROVIDER_KEY
omniroute providers import ./providers.json --dry-run --json
omniroute providers auth <provider>                 # არსებული OAuth-ნაკადი
omniroute providers edit <id|name> --default-model <model>
omniroute providers remove <id|name> --yes

providers add/import/auth/edit/remove უპირველესად API-ზეა დაფუძნებული და, შესაბამისად, აქტიურ ლოკალურ ან დისტანციურ კონტექსტთან მუშაობს. ავტორიზაციის მონაცემების შესატანად გამოიყენეთ --credential-stdin ან --credential-env; --dry-run --json მხოლოდ დაფარულ ინფორმაციას მათი არსებობის/სტრუქტურის შესახებ აჩვენებს. providers available კითხულობს OmniRoute-ის კატალოგს; providers list/test/test-all/validate ინარჩუნებს ლოკალურ SQLite-ზე დაფუძნებულ ქცევას და არ მოითხოვს სერვერის გაშვებულ მდგომარეობაში ყოფნას.

აღდგენა და ჩამოყრა

omniroute reset-password                # ადმინისტრატორის პაროლის ჩამოყრა (ასევე: omniroute-reset-password)
omniroute reset-encrypted-columns       # გაფრთხილებისა და საცდელი გაშვების ჩვენება დაშიფრული ავტორიზაციის მონაცემების ჩამოყრისთვის
omniroute reset-encrypted-columns --force  # SQLite-ში დაშიფრული ავტორიზაციის მონაცემების რეალურად განულება

ავტორიზაციის მონაცემების ექსპორტი (⚠ მოეპყარით სიფრთხილით)

omniroute auth export                                 # გაფრთხილებისა და დადასტურების ეტაპის ჩვენება — DB-ზე წვდომის გარეშე
omniroute auth export --force                          # ყველა კავშირის გაშიფრული ავტორიზაციის მონაცემების JSON-ის სახით stdout-ში ექსპორტი
omniroute auth export --force --id <id>                 # მხოლოდ შესაბამისი კავშირის ექსპორტი
omniroute auth export --force --format env               # OMNIROUTE_<PROVIDER>_<FIELD>=<value> ფორმატის სტრიქონების გამოტანა
omniroute auth export --force --out creds.json           # ფაილში ჩაწერა (იქმნება 0600 ნებართვებით)

auth export მუშაობს მხოლოდ ლოკალურად (SQLite-იდან პირდაპირი წაკითხვა, HTTP-მარშრუტის გარეშე) და განზრახ ბეჭდავს/წერს apiKey/accessToken/refreshToken/idToken მნიშვნელობებს ღია ტექსტის სახით — ეს ფუნქციაა და არა შეცდომა. --force-ის გარეშე მონაცემთა ბაზიდან არაფერი იკითხება და არაფერი იშიფრება. ნებისმიერ ღია ტექსტის გამოტანამდე stderr-ში ყოველთვის იბეჭდება გამაფრთხილებელი ბანერი. აუცილებელია STORAGE_ENCRYPTION_KEY-ის დაყენება. ველი, რომლის გაშიფვრაც ვერ ხერხდება (მოძველებული გასაღები, დაზიანებული შიფროტექსტი), მთელი ექსპორტის შეწყვეტის ან ძირითადი შეცდომის გამჟღავნების ნაცვლად აღინიშნება, როგორც <field>DecryptFailed: true.

სხვა ქვეკომანდები

თუ სხვაგვარად არ არის მითითებული, ისინი მოითხოვენ გაშვებულ OmniRoute სერვერს:

omniroute status                       # შესრულების გარემოს სრული სტატუსი
omniroute logs                         # მოთხოვნების ჟურნალის ნაკადური ჩვენება (--json, --search, --follow)
omniroute config show                  # მიმდინარე კონფიგურაციის ჩვენება

omniroute provider list                # ხელმისაწვდომი პროვაიდერების სია (providers list-ის ალიასი)
omniroute provider add                 # OmniRoute-ის პროვაიდერად რეგისტრაცია ხელსაწყოში
omniroute keys add | list | remove     # API გასაღებების მართვა
omniroute models [provider]            # მოდელების სია (--json, --search)
omniroute combo list | switch | create | delete

omniroute backup                       # კონფიგურაციისა და DB-ის სარეზერვო ასლის შექმნა
omniroute restore                      # წინა სარეზერვო ასლიდან აღდგენა

omniroute health                       # მდგომარეობის დეტალური ინფორმაცია (ამომრთველები, კეში, მეხსიერება)
omniroute quota                        # პროვაიდერის კვოტის გამოყენება
omniroute cache                        # კეშის სტატუსი
omniroute cache clear                  # სემანტიკური და ხელმოწერის კეშების გასუფთავება

omniroute mcp status | restart         # MCP სერვერის სტატუსი / გადატვირთვა
omniroute a2a status | card            # A2A სერვერის სტატუსი / აგენტის ბარათი

omniroute tunnel list | create | stop  # გვირაბების მართვა (cloudflare/tailscale/ngrok)
omniroute env show | get <k> | set <k> <v>  # გარემოს ცვლადების შემოწმება / დაყენება (დროებით)

omniroute test                         # პროვაიდერთან კავშირის სწრაფი ტესტი
omniroute update                       # განახლებების შემოწმება
omniroute completion                   # გარსის ავტომატური შევსების გენერირება

საერთო ალმები

ალამი აღწერა
--no-open გაშვებისას ბრაუზერი ავტომატურად არ გაიხსნას
--port <n> API პორტის ჩანაცვლება (ნაგულისხმევად 20128)
--mcp MCP სერვერის სახით გაშვება stdio-ს მეშვეობით (IDE-ებისთვის)
--non-interactive CI რეჟიმი (მოთხოვნების გარეშე; კითხულობს გარემოდან/ალმებიდან)
--json მანქანის მიერ წაკითხვადი JSON გამომავალი (doctor, providers და ა.შ.)
--help, -h კონკრეტული ბრძანების დახმარების ჩვენება
--version, -v დაყენებული ვერსიის გამოტანა

ხელმისაწვდომი API ენდპოინტები

ენდპოინტი აღწერა გამოყენების დანიშნულება
/v1/chat/completions სტანდარტული ჩატი (ყველა პროვაიდერი) ყველა თანამედროვე ხელსაწყო
/v1/responses Responses API (OpenAI-ის ფორმატი) Codex, აგენტური სამუშაო პროცესები
/v1/completions ტექსტის შევსების მოძველებული API ძველი ხელსაწყოები, რომლებიც იყენებენ prompt:-ს
/v1/embeddings ტექსტის ემბედინგები RAG, ძიება
/v1/images/generations სურათების გენერაცია GPT-Image, Flux და სხვ.
/v1/audio/speech ტექსტის მეტყველებად გარდაქმნა ElevenLabs, OpenAI TTS
/v1/audio/transcriptions მეტყველების ტექსტად გარდაქმნა Deepgram, AssemblyAI

ჩასასმელად გამზადებული მაგალითები ტოკენიზებული OmniRoute URL-ით:

ტოკენის მაგალითი: sk-a3ab3c080beaee3a-69f4a4-070d71af

სტანდარტული OpenAI-ის საბაზისო მისამართი: http://localhost:20128/v1
VS Code-ის მოდელები: http://localhost:20128/api/v1/vscode/sk-a3ab3c080beaee3a-69f4a4-070d71af/models
VS Code-იქ ჊ატი: http://localhost:20128/api/v1/vscode/sk-a3ab3c080beaee3a-69f4a4-070d71af/chat/completions
VS Code-ის პასუხები: http://localhost:20128/api/v1/vscode/sk-a3ab3c080beaee3a-69f4a4-070d71af/responses
Ollama-ს ტეგები: http://localhost:20128/api/v1/vscode/sk-a3ab3c080beaee3a-69f4a4-070d71af/api/tags
Ollama-ქ ჊ატი: http://localhost:20128/api/v1/vscode/sk-a3ab3c080beaee3a-69f4a4-070d71af/api/chat

პრობლემების აღმოფხვრა

შეცდომა მიზეზი გამოსწორება
Connection refused OmniRoute გაშვებული არ არის omniroute serve
401 Unauthorized არასწორი API გასაღები შეამოწმეთ /dashboard/api-manager-ში
No combo configured მარშრუტიზაციის აქტიური კომბინაცია არ არის დააყენეთ /dashboard/combos-ში
CLI აჩვენებს „not installed“ ბინარული ფაილი PATH-ში არ არის შეამოწმეთ which <command>
ინსტალაციის შემდეგ დაფა აჩვენებს „not detected“ ქეში მოძველებულია დაფაზე დააწკაპუნეთ „⟳ Refresh detection“
ძველი ბმული /dashboard/cli-tools v3.8.6-მდელი სანიშნე ავტომატურად გადამისამართდება /dashboard/cli-code-ზე (308)
ძველი ბმული /dashboard/agents v3.8.6-მდელი სანიშნე ავტომატურად გადამისამართდება /dashboard/acp-agents-ზე (308)