mirror of
https://github.com/yusufipk/dikte.git
synced 2026-09-11 10:56:10 +00:00
Clean up on Google AI Studio, or on Antigravity
OpenRouter's free tier rate-limits and carries no free Gemini model, and cleaning up through Claude Code costs a fixed few seconds because it opens a whole CLI session to drop three "uh"s. Google's own free tier suits a short, frequent request, and its OpenAI-compatible endpoint answers /chat/completions, so cleanup there is one request and the same code path OpenRouter already takes. The one thing that is not shared is the thinking level. Google reads OpenAI's flat reasoning_effort rather than OpenRouter's object, and "none" is how thinking is turned off, so it is sent rather than skipped: a Flash model left to think spends exactly the second this provider was chosen to save. Its top two rungs land on "high", which is as far as Google goes. Speech to text stays where it was. That endpoint has no /audio/transcriptions behind it, audio only goes in as base64 inside a chat message, and what comes back has none of the segment times a subtitle file or a meeting transcript is built out of. Antigravity joins as well, on cleanup and as an agent. It is a CLI like the other two and costs the same session, so it is here for people who already pay for it rather than as an answer to the speed. It takes neither an empty tool list nor a read-only sandbox, and cleanup.py now says so plainly instead of implying parity; what it gets is a project of its own, the home directory, and its slash commands off. Three things were already wrong and are fixed on the way past, because the new providers walk the same paths: doctor raised KeyError on the local model, whose executable is ""; the history recorded Claude's model whoever answered; and every agent row read "asked Claude". Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
@@ -115,9 +115,12 @@ or runs it on the spot.
|
||||
Speech to text and cleanup each pick a provider in the settings window, and both
|
||||
run here by default, on models of your own. The cloud is the other option:
|
||||
speech to text on **OpenAI**, **Groq** or **OpenRouter** (`gpt-4o-transcribe`),
|
||||
cleanup on OpenRouter (`google/gemini-3.5-flash-lite`) or, when either is
|
||||
installed, on Claude Code or Codex. The keys fall back to `OPENAI_API_KEY`,
|
||||
`GROQ_API_KEY` and `OPENROUTER_API_KEY`, and are stored in
|
||||
cleanup on OpenRouter (`google/gemini-3.5-flash-lite`), on **Google AI Studio**
|
||||
(`gemini-3.5-flash-lite`) or, when one of them is installed, on Claude Code,
|
||||
Codex or Antigravity. The first two are a single HTTP request; the three CLIs
|
||||
each open a whole session to do it, which is where their few extra seconds go.
|
||||
The keys fall back to `OPENAI_API_KEY`, `GROQ_API_KEY`, `OPENROUTER_API_KEY`
|
||||
and `GEMINI_API_KEY`, and are stored in
|
||||
`~/.config/dikte/config.json`, mode 600, or in
|
||||
`~/Library/Application Support/Dikte` on a Mac. Cleanup can be switched off, in
|
||||
which case the raw transcript is pasted, and a thinking model's effort can be
|
||||
@@ -188,11 +191,13 @@ running.
|
||||
what comes of it: the answer, or a sentence saying what was done. It is the
|
||||
session you would have opened yourself, so your skills and connected services
|
||||
are there, which is what makes "put that in my calendar on Thursday at three"
|
||||
a thing you can say to a window that is not Claude. Codex (`codex exec`) runs
|
||||
the same way, and OpenRouter is there as a plain question-and-answer fallback
|
||||
for a machine with neither CLI on it. Provider, model, permissions and working
|
||||
directory are under Settings → Agent, and commands close together stay in one
|
||||
conversation.
|
||||
a thing you can say to a window that is not Claude. Codex (`codex exec`) and
|
||||
Antigravity (`agy -p`) run the same way, though Antigravity takes neither a
|
||||
permission mode nor a sandbox from Dikte: what it may do without asking is
|
||||
whatever its own allow-rules say. OpenRouter is there as a plain
|
||||
question-and-answer fallback for a machine with no CLI on it. Provider, model,
|
||||
permissions and working directory are under Settings → Agent, and commands
|
||||
close together stay in one conversation.
|
||||
- **Meetings** are recorded from the microphone and the speaker output at the
|
||||
same time, which settles who said what by the channel a voice arrived on
|
||||
instead of guessing at it. The two sides are transcribed separately and
|
||||
@@ -239,9 +244,9 @@ cli.py the command line: every verb, and what it answers with
|
||||
ipc.py one request and one reply over the local socket
|
||||
audio.py PCM capture: pw-record for dictation, ffmpeg for a meeting
|
||||
meeting.py channel split, speaker labelling, cleanup, minutes
|
||||
assistant.py running a dictation through Claude Code, Codex or OpenRouter
|
||||
assistant.py handing a dictation to Claude Code, Codex, agy or OpenRouter
|
||||
api.py transcription and cleanup requests (stdlib only)
|
||||
cleanup.py who rewrites the transcript: OpenRouter, here, Claude or Codex
|
||||
cleanup.py who rewrites the transcript: a hosted model, one here, a CLI
|
||||
ggml.py whisper.cpp and llama.cpp here: fetch, verify, keep serving
|
||||
hub.py what GitHub and Hugging Face have on offer today
|
||||
update.py whether a newer release is out, and the page it is on
|
||||
|
||||
Reference in New Issue
Block a user