Merge master into the OpenCode Go branch

Master grew Google AI Studio and Antigravity as providers, a doctor that
names each provider's own key, and settings that fetch every hosted
model list as the window opens. OpenCode Go is folded into each: its
name joins SERVICES and the doctor's key table, its key row sits beside
Google's, its Fetch button follows the per-provider pattern Google's
uses, and _load_hosted_models fetches its catalog at open when a key is
on file, filling the cleanup and agent boxes alike.
This commit is contained in:
2026-08-27 16:27:57 +03:00
18 changed files with 1242 additions and 231 deletions
+13 -9
View File
@@ -112,11 +112,13 @@ Sesi yazıya çevirme ve temizleme, ayarlar penceresinde ayrı ayrı sağlayıc
seçer; ikisi de varsayılan olarak burada, kendi modellerinle çalışır. Bulutu
seçersen sesi yazıya çevirme **OpenAI**, **Groq** ya da **OpenRouter**'da
(varsayılan `gpt-4o-transcribe`), temizleme OpenRouter'da
(`google/gemini-3.5-flash-lite`), **OpenCode Go**'da
(`deepseek-v4-flash`) ya da kuruluysa Claude Code veya Codex'te çalışır.
Anahtarları boş bırakırsan `OPENAI_API_KEY`, `GROQ_API_KEY`,
`OPENROUTER_API_KEY` ve `OPENCODE_API_KEY` kullanılır; anahtarlar
`~/.config/dikte/config.json` içinde, izinler 600, Mac'te ise
(`google/gemini-3.5-flash-lite`), **Google AI Studio**'da
(`gemini-3.5-flash-lite`), **OpenCode Go**'da (`deepseek-v4-flash`) ya da
kuruluysa Claude Code, Codex veya Antigravity'de çalışır. İlk üçü tek bir HTTP
isteği; üç CLI ise bunun için birer oturum açar, fazladan giden birkaç saniye de
oradan gelir. Anahtarları boş bırakırsan `OPENAI_API_KEY`, `GROQ_API_KEY`,
`OPENROUTER_API_KEY`, `GEMINI_API_KEY` ve `OPENCODE_API_KEY` kullanılır;
anahtarlar `~/.config/dikte/config.json` içinde, izinler 600, Mac'te ise
`~/Library/Application Support/Dikte` altında.
Temizlemeyi tamamen kapatabilirsin, o zaman ham transkript yapıştırılır; modelin
yanındaki kutudan düşünme seviyesini de seçebilirsin.
@@ -186,8 +188,10 @@ olmasını ister.
yapıştırır: cevabı ya da ne yapıldığını söyleyen bir cümle. Kendi açacağın
oturumun aynısıdır, yani skill'lerin ve bağlı servislerin oradadır; "bunu
perşembe üçe takvime koy" cümlesini Claude olmayan bir pencerede söyleyebilir
olmanı sağlayan da budur. Codex (`codex exec`) da aynı şekilde çalışır;
OpenRouter ya da OpenCode Go ise ikisi de kurulu olmayan bir makinede düz soru
olmanı sağlayan da budur. Codex (`codex exec`) ile Antigravity (`agy -p`) da
aynı şekilde çalışır; ama Antigravity'ye Dikte bir izin kipi ya da sandbox
veremiyor, sormadan ne yapabileceğini kendi allow-rule'ları belirliyor.
OpenRouter ya da OpenCode Go ise hiçbiri kurulu olmayan bir makinede düz soru
cevap için duruyor. Sağlayıcı, model, izinler ve çalışma dizini Ayarlar → Ajan
sekmesinde; arka arkaya verilen komutlar tek bir konuşmada kalır.
- **Toplantılar** mikrofonla hoparlör çıkışından aynı anda kaydedilir; kimin ne
@@ -235,9 +239,9 @@ cli.py komut satırı: bütün fiiller ve verdikleri cevap
ipc.py yerel sokette bir istek, bir cevap
audio.py PCM kaydı: diktede pw-record, toplantıda ffmpeg
meeting.py kanal ayırma, konuşmacı etiketi, temizleme, tutanak
assistant.py dikteyi Claude Code, Codex, OpenRouter ya da OpenCode Go'dan geçirme
assistant.py dikteyi Claude Code, Codex, agy ya da sohbet modelinden geçirme
api.py transkript ve temizleme istekleri (yalnız stdlib)
cleanup.py transkripti kim temizler: OpenRouter, OpenCode Go, burası, Claude ya da Codex
cleanup.py transkripti kim temizler: bulutta bir model, burası, bir CLI
ggml.py whisper.cpp ve llama.cpp'yi indirip burada çalıştırma
hub.py GitHub ve Hugging Face'te bugün ne olduğu
update.py yeni sürüm çıkmış mı, çıkmışsa hangi sayfada