Skip to content

Releases: cumabozkurt/agent-switchboard

v0.4.1

Choose a tag to compare

@github-actions github-actions released this 03 Oct 20:27

Maintenance release: no code changes since 0.4.0.

Changed

  • Bundled model snapshots (used offline and by the desktop e2e test) refreshed by the daily models-snapshot workflow:
    • OpenCode Zen: added ling-3.1-flash-free and fledge-alpha-free.
    • OpenRouter: added inclusionai/ling-3.1-flash, apodex/apodex-1.1-mini:free, unbiased/pareto-26.10-preview and nvidia/switchyard; removed openai/gpt-6.1-sol:batch and openai/gpt-6.1-sol-pro:batch.

Documentation

  • docs/AUTOMATION.md: v0.4.0 release evidence (workflow runs, installers, checksums).

Install

  • Desktop app: download the file for your OS below (builds are unsigned — see the README for the one-time macOS/Windows prompt).
  • CLI: npm install -g github:cumabozkurt/agent-switchboard#v0.4.1

Türkçe

Bakım sürümü: 0.4.0'dan bu yana kod değişikliği yok.

Değişenler

  • Paketle gelen model listeleri (çevrim dışı kullanımda ve masaüstü e2e testinde kullanılır) günlük models-snapshot iş akışıyla yenilendi:
    • OpenCode Zen: ling-3.1-flash-free ve fledge-alpha-free eklendi.
    • OpenRouter: inclusionai/ling-3.1-flash, apodex/apodex-1.1-mini:free, unbiased/pareto-26.10-preview ve nvidia/switchyard eklendi; openai/gpt-6.1-sol:batch ve openai/gpt-6.1-sol-pro:batch kaldırıldı.

Belgeler

  • docs/AUTOMATION.md: v0.4.0 sürüm kanıtları (iş akışı çalıştırmaları, kurulum dosyaları, sağlama toplamları).

Kurulum

  • Masaüstü uygulaması: aşağıdan işletim sisteminize uygun dosyayı indirin (derlemeler imzasızdır — ilk açılış uyarısı için README'ye bakın).
  • CLI: npm install -g github:cumabozkurt/agent-switchboard#v0.4.1

v0.4.0

Choose a tag to compare

@github-actions github-actions released this 30 Sep 22:39

Added

  • Load balancing in the router: aswitch balance set claude openrouter:anthropic/claude-sonnet-4.5*3 deepseek:deepseek-chat*1 [--strategy weighted|round-robin] spreads a tool's requests over two or more provider/models (weights, or strict rotation). The other members, then the fallback chain, are tried if the chosen one fails. Desktop: Router → Load balancing.
  • Circuit breaker: after N failures in a row (429, 408, 5xx or network; default 3) a provider is skipped for a cooldown (default 30 s), then one trial request is allowed (half-open). A success closes it again. Other 4xx errors never count. If every candidate is open, the router still tries them rather than failing without a try. aswitch breaker [on|off|set --failures N --cooldown S|status] shows the live state; so do /health and the Router tab.
  • Scenario routing (like claude-code-router): send image, longContext (estimated tokens ≥ a threshold, default 60,000), webSearch, think (thinking/reasoning requested) or background (Claude's haiku/fast model, Gemini flash-lite) requests to another model: aswitch scenario set claude longContext openrouter:google/gemini-2.5-pro, aswitch scenario threshold 100000. Usage log entries record the scenario.
  • aswitch use … --via-router always connects through the router, even when a direct connection would work. Setting a fallback, balance group or scenario for a tool that is connected directly now moves it to the router automatically.
  • Share links (aswitch://): aswitch://provider?…, aswitch://profile?… and aswitch://import?data=… import a custom provider, a profile or a whole setup. Links never carry API keys: key-like parameters and keys blocks are dropped (with a warning). Nothing is applied without confirmation: the desktop app registers the aswitch: scheme (installed builds; macOS open-url, Windows/Linux second-instance argument) and shows a dialog with every endpoint; the CLI prints a preview and asks (--yes to confirm in scripts). URLs follow the same rules as custom providers. Existing entries are kept unless you choose overwrite. aswitch link make provider|profile|all and Settings → Share links create links.
  • Optional OS keychain for saved keys, with no native modules: macOS Keychain (security, secret sent over stdin), Windows Credential Manager (PowerShell + CredWrite/CredRead, secret over stdin), Linux Secret Service (secret-tool). aswitch keychain on|off|status and Settings → OS keychain move every key and read each one back before removing the file copy. config.json then only holds @keychain markers. If the keychain can't be read, the provider's environment variable is used instead.
  • Outbound URL policy (src/netguard.js): every URL that gets a key (custom providers, model lists, endpoint test, router upstreams) must be http(s), must not contain user:password@, and may use plain http only for loopback, private-network, .local/.lan/.internal or single-label hosts. The panel's router-probe port is validated.
  • Real Gemini CLI end-to-end test (scripts/gemini-cli-e2e.mjs, a new gemini-cli CI job). It installs @google/gemini-cli from npm into a throwaway HOME and runs it headless through aswitch use + the router against a local mock upstream. It checks the streaming answer, key/model/tools reaching the upstream, a list_directory tool-call round-trip, aswitch run gemini, a trusted folder picking up ~/.gemini/.env, and the usage log. Verified with Gemini CLI 0.62.0.
  • Linux arm64 desktop builds (AppImage + deb); 10 installers per release.

Changed

  • Desktop: Electron 33 → 44, electron-builder 25 → 26 (Dependabot PR #1). macOS 13 (Ventura) or newer is required for the desktop app (Electron 44 dropped macOS 12). The CLI is unchanged: Node.js ≥ 18.
  • Model lists from providers are sanitized: at most 5000 entries, ids up to 200 characters with no control characters, and numeric fields must be finite and ≥ 0.
  • After applying Gemini CLI, a hint explains Gemini's folder trust: Gemini CLI reads ~/.gemini/.env only in trusted folders. Headless runs need --skip-trust or GEMINI_CLI_TRUST_WORKSPACE=true, and aswitch run gemini works everywhere.
  • The Electron e2e test no longer needs the internet: it uses a local mock upstream and the bundled model snapshots (E2E_LIVE=1 adds live refreshes). It now runs on Linux, macOS and Windows in CI and covers balance/scenario/breaker, share links (including a link handed to a second instance) and the keychain (54 checks).

Fixed

  • Models tab: a slow answer for a previously selected provider could clear the table of the current one.
  • A second desktop instance (for example, one started by a link) quit without starting its own panel server first.

Security

  • The CodeQL alerts open after 0.3.0 were fixed, or dismissed with a written reason (see docs/AUDIT.md).

Install

  • Desktop app: download the file for your OS below (builds are unsigned — see the README for the one-time macOS/Windows prompt).
  • CLI: npm install -g github:cumabozkurt/agent-switchboard#v0.4.0

Türkçe

Eklenenler

  • Yönlendiricide yük dengeleme: aswitch balance set claude openrouter:anthropic/claude-sonnet-4.5*3 deepseek:deepseek-chat*1 [--strategy weighted|round-robin] bir aracın isteklerini iki ya da daha çok sağlayıcı/modele dağıtır (ağırlıkla ya da sırayla). Seçilen hata verirse önce grubun diğer üyeleri, sonra yedek zinciri denenir. Masaüstü: Yönlendirici → Yük dengeleme.
  • Devre kesici: art arda N hatadan sonra (429, 408, 5xx ya da ağ hatası; varsayılan 3) sağlayıcı bir bekleme süresi boyunca (varsayılan 30 sn) atlanır, sonra tek bir deneme isteğine izin verilir (yarı açık). Başarılı olursa devre yeniden kapanır. Diğer 4xx hataları hiç sayılmaz. Tüm adayların devresi açıksa yönlendirici hiç denemeden hata vermek yerine yine de dener. aswitch breaker [on|off|set --failures N --cooldown S|status] canlı durumu gösterir; /health ve Yönlendirici sekmesi de gösterir.
  • Senaryoya göre yönlendirme (claude-code-router'daki gibi): image, longContext (tahmini token sayısı eşiği geçerse; varsayılan 60.000), webSearch, think (düşünme/akıl yürütme istenmiş) ya da background (Claude'un haiku/hızlı modeli, Gemini flash-lite) isteklerini başka bir modele gönderin: aswitch scenario set claude longContext openrouter:google/gemini-2.5-pro, aswitch scenario threshold 100000. Kullanım kaydı senaryoyu da yazar.
  • aswitch use … --via-router doğrudan bağlantı mümkün olsa bile her zaman yönlendiriciden geçer. Doğrudan bağlı bir araca yedek zinciri, dengeleme grubu ya da senaryo tanımlanınca araç kendiliğinden yönlendiriciye alınır.
  • Paylaşım bağlantıları (aswitch://): aswitch://provider?…, aswitch://profile?… ve aswitch://import?data=… özel bir sağlayıcıyı, bir profili ya da tüm kurulumu içe aktarır. Bağlantılar asla API anahtarı taşımaz: anahtara benzeyen parametreler ve keys blokları atılır (uyarı gösterilir). Onay olmadan hiçbir şey uygulanmaz: masaüstü uygulaması aswitch: şemasını kaydeder (kurulu sürümlerde; macOS open-url, Windows/Linux ikinci örnek argümanı) ve her uç noktayı gösteren bir onay penceresi açar; CLI önizleme yazdırıp sorar (betiklerde onay için --yes). URL'ler özel sağlayıcılarla aynı kurallara uyar. Var olan kayıtlar, üzerine yazmayı seçmedikçe korunur. Bağlantı oluşturmak için aswitch link make provider|profile|all ve Ayarlar → Paylaşım bağlantıları.
  • Kayıtlı anahtarlar için isteğe bağlı işletim sistemi anahtar zinciri (yerel modül gerekmez): macOS Anahtar Zinciri (security, sır stdin ile), Windows Kimlik Bilgisi Yöneticisi (PowerShell + CredWrite/CredRead, sır stdin ile), Linux Secret Service (secret-tool). aswitch keychain on|off|status ve Ayarlar → İşletim sistemi anahtar zinciri tüm anahtarları taşır; dosyadaki kopyayı silmeden önce her birini geri okuyup doğrular. Bundan sonra config.json yalnızca @keychain işaretleri tutar. Anahtar zinciri okunamazsa sağlayıcının ortam değişkeni kullanılır.
  • Dışa giden URL kuralı (src/netguard.js): anahtar gönderilen her URL (özel sağlayıcılar, model listeleri, uç nokta testi, yönlendiricinin hedefleri) http(s) olmalı ve kullanıcı:parola@ içermemeli. Düz http yalnızca yerel, özel ağ, .local/.lan/.internal ya da tek parçalı adlı sunuculara izinli. Panelin yönlendirici yoklama portu doğrulanır.
  • Gerçek Gemini CLI uçtan uca testi (scripts/gemini-cli-e2e.mjs, yeni gemini-cli CI işi). @google/gemini-cli paketini npm'den geçici bir HOME'a kurar ve aswitch use + yönlendirici üzerinden yerel sahte bir sağlayıcıya karşı başsız çalıştırır. Şunları doğrular: akışlı yanıt, anahtar/model/araçların sağlayıcıya ulaşması, list_directory araç çağrısı gidiş-dönüşü, aswitch run gemini, güvenilen klasörde ~/.gemini/.env okunması ve kullanım kaydı. Gemini CLI 0.62.0 ile doğrulandı.
  • Linux arm64 masaüstü sürümleri (AppImage + deb); her sürümde 10 kurulum dosyası.

Değişenler

  • Masaüstü: Electron 33 → 44, electron-builder 25 → 26 (Dependabot PR #1). Masaüstü uygulaması için macOS 13 (Ventura) ya da daha yenisi gerekir (Electron 44 macOS 12 desteğini bıraktı). CLI değişmedi: Node.js ≥ 18.
  • Sağlayıcılardan gelen model listeleri temizlenir: en çok 5000 kayıt, en çok 200 karakterlik ve kontrol karakteri içermeyen kimlikler; sayısal alanlar sonlu ve ≥ 0 olmalı.
  • Gemini CLI uygulandıktan sonra bir ipucu Gemini'nin klasör güvenini açıklar: Gemini CLI ~/.gemini/.env dosyasını yalnızca güvenilen klasörlerde okur. Başsız çalıştırmalar --skip-trust ya da GEMINI_CLI_TRUST_WORKSPACE=true ister; aswitch run gemini her yerde çalışır.
  • Electron uçtan uca testi artık internete ihtiyaç duymaz: yerel sahte bir sağlayıcı ve paketle gelen model listeleri kullanılır (E2E_LIVE=1 canlı yenilemeyi de ekler). Test artık CI'da Linux, macOS ve Windows üzerinde koşar ve dengeleme/senaryo/devre kesici...
Read more

v0.3.0

Choose a tag to compare

@github-actions github-actions released this 30 Sep 21:49

Based on a review of 32 similar open-source projects (see docs/COMPETITIVE-ANALYSIS.md).

Added

  • Gemini CLI support: fourth target tool. aswitch writes a marked block in ~/.gemini/.env (GOOGLE_GEMINI_BASE_URL, GEMINI_API_KEY, GEMINI_MODEL, mode 0600) and sets API-key auth and the model in ~/.gemini/settings.json. Previous values are saved and put back by aswitch official --tools gemini and aswitch restore. Google AI Studio keys connect directly; every other provider goes through the router, which now speaks the Gemini API (generateContent, streamGenerateContent with SSE, countTokens) and translates to Anthropic Messages, Chat Completions or Responses. aswitch run gemini is supported.
  • 8 new provider presets (18 in total): MiniMax, xAI (Grok), Groq, Mistral, Cerebras, NVIDIA NIM, SiliconFlow, LM Studio (local, no key). The Gemini preset now also serves Gemini CLI directly.
  • Profiles: aswitch profile save|use|rm|list stores what every tool uses (provider, model, fast model) and applies it in one step. Per-project profiles: aswitch profile project <name> writes .aswitch.json; aswitch run applies the folder's profile before starting the tool.
  • Endpoint test: aswitch ping [provider ...] measures latency and tells whether the key is accepted, rejected or missing. Desktop: "Test endpoints" button with a latency column in the Keys tab.
  • Model fallback chain in the router: aswitch fallback set claude opencode-go:glm-5.1 ollama:qwen3. On 429, 408, 5xx or a network error (before any byte was sent to the tool) the next provider/model is tried. Shown in /health, aswitch status and the Router tab.
  • Usage and request log: the router records per-request metadata (time, tool, provider, model, status, latency, time to first token, input/output/cached tokens) in ~/.agent-switchboard/usage.jsonl (0600, capped at 5000 lines; never prompts, answers or keys). Estimated cost from the provider's published prices in the cached model list. aswitch usage [--days N] [--recent] [--json] [--clear] [--log on|off], and a "Usage & logs" tab.
  • MCP server sync: aswitch mcp lists the MCP servers of Claude Code, Codex, OpenCode and Gemini CLI; aswitch mcp sync --from claude --to codex,opencode,gemini [--only a,b] [--overwrite] copies them (stdio and http/sse, with env and headers), converting between each tool's format. Existing servers with the same name are kept unless --overwrite. Every write is backed up. Claude Code is a source only (it rewrites ~/.claude.json while running). Desktop: "MCP servers" tab.
  • Import / export: aswitch export [file] [--with-keys] and aswitch import <file> [--overwrite] move custom providers, profiles, fallbacks and settings between machines (keys only when asked). Desktop: Settings → Import / export.
  • Thinking / reasoning translation in the router: reasoning_content / reasoning from Chat providers (DeepSeek, Kimi, GLM, OpenRouter …) and Responses reasoning summaries are streamed to Claude Code as thinking blocks; Claude's thinking request is forwarded as OpenRouter reasoning or Responses reasoning.effort (retried once without it if the provider rejects it). Locally generated thinking blocks are stripped before a request goes back to a real Anthropic endpoint.
  • Environment conflict warning: aswitch status and the Overview tab warn when variables such as ANTHROPIC_BASE_URL, OPENAI_BASE_URL or GEMINI_API_KEY are set, because they take priority over the files aswitch writes (names only, values are never shown).
  • stop_sequences are forwarded to Chat Completions providers (max 4, the OpenAI limit; the Responses API has no equivalent).
  • Tray / menu bar icon in the desktop app: apply a profile, go back to all official logins, start/stop the router, open the window, quit.
  • Update notice: the CLI (aswitch update) and the desktop app (banner) check GitHub Releases at most every 12 hours; notify-only, no download. ASWITCH_NO_UPDATE_CHECK=1 turns it off. Falls back to the github.com redirect when the API is rate-limited.
  • Offline model lists: the daily model snapshots now ship inside the npm package and the desktop app and are used when the provider cannot be reached and there is no local cache.

Automation

  • CI runs the real Electron end-to-end test (Playwright, 40+ checks) under xvfb on every push and uploads the screenshots; a packaging job checks the npm tarball contents and that CLI and desktop versions agree.
  • Release notes are generated from CHANGELOG.md + CHANGELOG.tr.md; the release job refuses a tag that does not match both package.json versions; a verify job checks that all 8 installers are attached and publishes SHA256SUMS.txt.
  • scripts/release.js <version>: one-command release (checks, bump, tests, commit, tag, push).
  • Dependabot (npm root + desktop, GitHub Actions) and CodeQL code scanning.
  • docs/AUTOMATION.md lists every automated process with evidence, and what still needs a human.

Changed

  • aswitch use without --tools also targets Gemini CLI when ~/.gemini exists.
  • The desktop app has an icon; the window and tray share the panel's API token.

Install

  • Desktop app: download the file for your OS below (builds are unsigned — see the README for the one-time macOS/Windows prompt).
  • CLI: npm install -g github:cumabozkurt/agent-switchboard#v0.3.0

Türkçe

Benzer 32 açık kaynak projenin incelenmesine dayanır (bkz. docs/COMPETITIVE-ANALYSIS.md).

Eklenenler

  • Gemini CLI desteği: dördüncü hedef araç. aswitch ~/.gemini/.env içine işaretli bir blok yazar (GOOGLE_GEMINI_BASE_URL, GEMINI_API_KEY, GEMINI_MODEL, izin 0600) ve ~/.gemini/settings.json içinde API anahtarı ile girişi ve modeli ayarlar. Önceki değerler saklanır; aswitch official --tools gemini ve aswitch restore bunları geri koyar. Google AI Studio anahtarları doğrudan bağlanır; diğer tüm sağlayıcılar yönlendiriciden geçer. Yönlendirici artık Gemini API'sini (generateContent, SSE ile streamGenerateContent, countTokens) konuşuyor ve bunu Anthropic Messages, Chat Completions ya da Responses biçimine çeviriyor. aswitch run gemini desteklenir.
  • 8 yeni hazır sağlayıcı (toplam 18): MiniMax, xAI (Grok), Groq, Mistral, Cerebras, NVIDIA NIM, SiliconFlow, LM Studio (yerel, anahtarsız). Gemini hazır ayarı artık Gemini CLI'a doğrudan da hizmet veriyor.
  • Profiller: aswitch profile save|use|rm|list her aracın o an kullandığını (sağlayıcı, model, hızlı model) kaydeder ve tek adımda uygular. Projeye özel profil: aswitch profile project <ad> klasöre .aswitch.json yazar; aswitch run aracı başlatmadan önce o klasörün profilini uygular.
  • Uç nokta testi: aswitch ping [sağlayıcı ...] gecikmeyi ölçer ve anahtarın kabul edildiğini, reddedildiğini ya da eksik olduğunu söyler. Masaüstü: API anahtarları sekmesinde "Uç noktaları test et" düğmesi ve gecikme sütunu.
  • Yönlendiricide yedek model zinciri: aswitch fallback set claude opencode-go:glm-5.1 ollama:qwen3. 429, 408, 5xx ya da ağ hatasında (araca henüz tek bayt gönderilmediyse) sıradaki sağlayıcı/model denenir. /health, aswitch status ve Yönlendirici sekmesinde görünür.
  • Kullanım ve istek kaydı: yönlendirici her isteğin özet bilgisini (zaman, araç, sağlayıcı, model, durum, gecikme, ilk token süresi, girdi/çıktı/önbellek token'ları) ~/.agent-switchboard/usage.jsonl dosyasına yazar (0600, en fazla 5000 satır; istem, yanıt ya da anahtar asla yazılmaz). Tahmini maliyet, önbellekteki model listesinde sağlayıcının yayımladığı fiyatlardan hesaplanır. aswitch usage [--days N] [--recent] [--json] [--clear] [--log on|off] ve "Kullanım ve kayıtlar" sekmesi.
  • MCP sunucu eşitleme: aswitch mcp Claude Code, Codex, OpenCode ve Gemini CLI'daki MCP sunucularını listeler; aswitch mcp sync --from claude --to codex,opencode,gemini [--only a,b] [--overwrite] bunları her aracın biçimine çevirerek kopyalar (stdio ve http/sse, env ve başlıklarla). Aynı adlı sunucular --overwrite verilmedikçe korunur. Her yazmadan önce yedek alınır. Claude Code yalnızca kaynaktır (çalışırken ~/.claude.json dosyasını kendisi yeniden yazar). Masaüstü: "MCP sunucuları" sekmesi.
  • İçe / dışa aktarma: aswitch export [dosya] [--with-keys] ve aswitch import <dosya> [--overwrite] özel sağlayıcıları, profilleri, yedek zincirlerini ve ayarları başka bir bilgisayara taşır (anahtarlar yalnızca istenirse). Masaüstü: Ayarlar → İçe / dışa aktar.
  • Yönlendiricide düşünme (reasoning) çevirisi: Chat sağlayıcılarından (DeepSeek, Kimi, GLM, OpenRouter …) gelen reasoning_content / reasoning ve Responses akıl yürütme özetleri Claude Code'a düşünme blokları olarak akar; Claude'un thinking isteği OpenRouter reasoning ya da Responses reasoning.effort olarak iletilir (sağlayıcı reddederse bir kez onsuz yeniden denenir). Yerelde üretilen düşünme blokları, istek gerçek bir Anthropic uç noktasına giderken çıkarılır.
  • Ortam değişkeni çakışma uyarısı: ANTHROPIC_BASE_URL, OPENAI_BASE_URL ya da GEMINI_API_KEY gibi değişkenler tanımlıysa aswitch status ve Genel bakış sekmesi uyarır; bunlar aswitch'in yazdığı dosyaların önüne geçer (yalnızca adlar gösterilir, değerler asla).
  • stop_sequences Chat Completions sağlayıcılarına iletilir (en fazla 4, OpenAI sınırı; Responses API'de karşılığı yok).
  • Masaüstü uygulamasında tepsi / menü çubuğu simgesi: profil uygula, tüm araçları resmî girişe döndür, yönlendiriciyi başlat/durdur, pencereyi aç, çık.
  • Güncelleme bildirimi: CLI (aswitch update) ve masaüstü uygulaması (bilgi şeridi) GitHub Releases'i en fazla 12 saatte bir denetler; yalnızca bildirir, indirmez. ASWITCH_NO_UPDATE_CHECK=1 kapatır. API hız sınırına takılırsa github.com yönlendirmesine düşer.
  • Çevrimdışı model listeleri: günlük model anlık görüntüleri artık npm paketinde ve masaüstü uygulamasında geliyor; sağlayıcıya ulaşılamazsa ve yerel önbellek yoksa bunlar kull...
Read more

v0.2.0 — English + Türkçe, complete desktop app

Choose a tag to compare

@github-actions github-actions released this 30 Sep 21:13

🇬🇧 English

Agent Switchboard 0.2.0 — English + Turkish, a complete desktop app, and a full audit.

Highlights

  • Two languages everywhere: desktop UI (switcher in the header, saved, follows your OS language), CLI help/errors (--lang en|tr, aswitch lang, ASWITCH_LANG), router errors, menus and window title.
  • No terminal needed: the desktop app now does everything the CLI does — keys and OpenRouter sign-in, live model lists with search, apply per tool, custom providers, router start/stop/restart with auto-start and clean shutdown on quit, official login, restore originals, restore any single backup, environment-variable help, settings.
  • Audit fixes (see docs/AUDIT.md): OpenRouter OAuth URL on Windows, custom router port lost after switching, preset-id custom provider could delete a key, JSON-only + size-limited UI API, no innerHTML, owner-only data folders, port-in-use / external router detection, single instance, clearer network errors, LF-only line endings.
  • New docs: README (EN) and README.tr.md with real screenshots, matrices and diagrams; CONTRIBUTING, SECURITY, CHANGELOG, issue templates.
  • 104 unit/integration tests (macOS/Windows/Linux × Node 18/20/22) + a 30-check Electron end-to-end test.

Downloads

System File
Windows x64 Agent.Switchboard-Setup-0.2.0-win-x64.exe (installer) · Agent.Switchboard-Portable-0.2.0-win-x64.exe
macOS Apple Silicon Agent.Switchboard-0.2.0-mac-arm64.dmg / .zip
macOS Intel Agent.Switchboard-0.2.0-mac-x64.dmg / .zip
Linux x64 Agent.Switchboard-0.2.0-linux-x86_64.AppImage · Agent.Switchboard-0.2.0-linux-amd64.deb
CLI npm install -g github:cumabozkurt/agent-switchboard

Builds are unsigned: Windows → More info → Run anyway; macOS → right-click → Open.


🇹🇷 Türkçe

Agent Switchboard 0.2.0 — Türkçe + İngilizce, eksiksiz masaüstü uygulaması ve kapsamlı denetim.

Öne çıkanlar

  • Her yerde iki dil: masaüstü arayüzü (başlıkta dil seçici, kaydedilir, işletim sisteminizin dilini izler), CLI yardımı ve hataları (--lang en|tr, aswitch lang, ASWITCH_LANG), yönlendirici hataları, menüler ve pencere başlığı.
  • Terminal gerekmez: masaüstü uygulaması artık CLI'ın yaptığı her şeyi yapar — anahtarlar ve OpenRouter girişi, aramalı canlı model listeleri, araç başına uygulama, özel sağlayıcılar, otomatik başlatmalı ve çıkışta düzgün kapanan yönlendirici (başlat/durdur/yeniden başlat), resmî giriş, orijinalleri geri yükleme, tek bir yedeği geri yükleme, ortam değişkeni yardımı, ayarlar.
  • Denetim düzeltmeleri (docs/AUDIT.md): Windows'ta OpenRouter OAuth adresi, geçişten sonra kaybolan özel yönlendirici portu, hazır sağlayıcı kimliğiyle eklenen özel sağlayıcının anahtar silebilmesi, yalnızca JSON kabul eden ve boyut sınırlı arayüz API'si, innerHTML kullanılmaması, yalnızca kullanıcıya açık veri klasörleri, dolu port / harici yönlendirici algılama, tek örnek, daha açık ağ hataları, yalnızca LF satır sonları.
  • Yeni belgeler: gerçek ekran görüntüleri, tablolar ve diyagramlarla README (EN) ve README.tr.md; CONTRIBUTING, SECURITY, CHANGELOG, issue şablonları.
  • 104 birim/entegrasyon testi (macOS/Windows/Linux × Node 18/20/22) + 30 kontrollü Electron uçtan uca testi.

İndirmeler

Yukarıdaki tabloya bakın. Paketler imzasızdır: Windows'ta Ek bilgi → Yine de çalıştır; macOS'ta sağ tık → Aç.

Full changelog / Tüm değişiklikler: v0.1.3...v0.2.0

v0.1.3

Choose a tag to compare

@github-actions github-actions released this 30 Sep 20:45

Full Changelog: v0.1.2...v0.1.3

v0.1.2

Choose a tag to compare

@github-actions github-actions released this 30 Sep 20:33

Full Changelog: v0.1.1...v0.1.2

v0.1.1

Choose a tag to compare

@github-actions github-actions released this 30 Sep 20:19
release: paket bilgileri ve GitHub sürümüne otomatik yükleme