Documentation
Everything you need to use Golos.
Getting Started
Install Golos with a single command:
curl -fsSL https://raw.githubusercontent.com/basilysf1709/golos/main/install.sh | bashThen configure your Deepgram API key:
golos setupGrant Accessibility permission to your terminal in System Settings → Privacy & Security → Accessibility, then start Golos:
golosHold Right Option to record. Release to transcribe and paste.
Commands
golosRun in foregroundgolos -dRun in background (detached)golos stopStop the background processgolos setupConfigure your Deepgram API keygolos versionPrint version, commit, and build dategolos add "phrase" "replacement"Add a dictionary replacementgolos delete "phrase"Remove a dictionary entrygolos listList all dictionary entriesgolos import file.tomlImport dictionary entries from a TOML fileFlags
Flags are passed when running Golos (not with subcommands like add or stop).
--output <mode>Output mode: "clipboard" (default) or "stdout"--hotkey <key>Push-to-talk key (default: "right_option")-d, --detachRun as a background daemonExamples
golos --output stdoutPrint transcription to the terminal instead of pasting to clipboard.
golos --hotkey right_commandUse Right Command as the push-to-talk key.
golos -d --output stdoutRun in background with stdout output.
Dictionary
The dictionary replaces spoken words with custom text. Say “period” and get . in your output. The dictionary file lives at ~/.config/golos/dictionary.toml.
Add entries
golos add "period" "."golos add "new line" "\n"Remove an entry
golos delete "period"List all entries
golos listImport from a file
golos import dictionary.example.tomlThe TOML file should have a [words] table:
[words]
"period" = "."
"comma" = ","
"question mark" = "?"
"new line" = "\n"
"new paragraph" = "\n\n"
"open paren" = "("
"close paren" = ")"
"arrow" = "->"
"fat arrow" = "=>"Configuration
Config lives at ~/.config/golos/config.toml. Run golos setup to create it, or edit directly:
deepgram_api_key = "your-key"
hotkey = "right_option"
output_mode = "clipboard"
sample_rate = 16000
language = "en-US"
overlay = truedeepgram_api_keyYour Deepgram API key (required)hotkeyPush-to-talk key (default: "right_option")output_mode"clipboard" or "stdout" (default: "clipboard")sample_rateAudio sample rate in Hz (default: 16000)languageDeepgram language code (default: "en-US")overlayShow visual overlay while recording (default: true)Resolution order
Settings are resolved in this order. Later sources override earlier ones:
- Built-in defaults
.envfile in the current directory~/.config/golos/config.toml- Environment variables
- CLI flags (
--output,--hotkey)
Hotkeys
Valid values for the hotkey config or --hotkey flag:
right_optionRight Option / Alt key (alias: right_alt)right_commandRight Command key (alias: right_cmd)fnFn keyf18F18 keyf19F19 keygolos --hotkey fnEnvironment Variables
These override the matching config.toml values:
DEEPGRAM_API_KEYOverrides deepgram_api_keyGOLOS_OUTPUTOverrides output_modeGOLOS_HOTKEYOverrides hotkeyDEEPGRAM_API_KEY="your-key" golosYou can also put variables in a .env file in your working directory.