Skip to content

CLI Reference ​

After installation, run qwenaudio from any directory. In a source checkout, run npm run cli -- <command> from the repository root.

Configuration and Diagnostics ​

CommandPurpose
qwenaudio --versionShow the CLI version
qwenaudio configShow the config path; create a template if missing
qwenaudio config showShow the configured voice provider, model, and available models without credentials
qwenaudio config set --realtime-model IDChange the current provider's model setting
qwenaudio doctorRead-only configuration, connection, and state checks
qwenaudio doctor --jsonPrint diagnostic JSON
qwenaudio doctor --turn IDBuild a turn timeline from local logs
qwenaudio setupCheck integration readiness for all backends
qwenaudio setup --backend qwen --jsonCheck one backend and print JSON

config show reads configuration, not live model availability. setup does not verify backend accounts or quota. Apply configuration changes after changing models.

Gateway ​

CommandPurpose
qwenaudio / qwenaudio gatewayRun in the current terminal
qwenaudio gateway --backend qwenUse Qwen Code for this run
qwenaudio gateway --backend noneRun frontend-only
qwenaudio gateway installInstall and start a user background service
qwenaudio gateway start / stop / restartManage the installed background service
qwenaudio gateway statusCheck reachability and local service status
qwenaudio gateway uninstallRemove the user service without deleting user data
qwenaudio gateway --lanExpose an endpoint on a trusted LAN
qwenaudio gateway --tailnetPublish a private endpoint through system Tailscale Serve
qwenaudio gateway --webrtcEnable the installed optional WebRTC extension

gateway stop/restart does not manage a foreground process in another terminal. Stop that process with Ctrl-C in its terminal. Background services read backend settings from config.env and reject --backend overrides.

--lan and --tailnet are mutually exclusive and also work with gateway install. Normal remote access does not require WebRTC.

Clients and Pairing ​

CommandPurpose
qwenaudio tuiConnect to the Gateway with a voice terminal
qwenaudio tui --audio-mode halfLinux / Windows half-duplex
qwenaudio tui --audio-mode fullLinux / Windows full-duplex without AEC; use headphones
qwenaudio tui --takeoverExplicitly take over the user's active connection
qwenaudio webuiOpen the Gateway page in a browser
qwenaudio webui --no-openPrint the page URL only
qwenaudio gateway pair --name "My phone"Issue a connection link and QR code on the Gateway host
qwenaudio gateway pair --endpoint https://voice.example.comIssue a link using a specified remote endpoint
qwenaudio gateway devicesList paired devices
qwenaudio gateway revoke DEVICE_IDRevoke device credentials
qwenaudio connect 'full-connection-link'Save the endpoint and credentials for TUI
qwenaudio disconnectForget TUI's saved connection without revoking the server-side device

Use --url URL to specify a Gateway and --session ID to select a frontend session in TUI / WebUI. Client commands do not launch backend Agents or change Gateway models. For WebUI, open the connection link directly or use --url; it does not read TUI's saved connection profile.

Connection links contain credentials. Do not commit them to scripts or share screenshots publicly. See Remote Connections.

Backends and Skills ​

bash
qwenaudio install qwen
qwenaudio skill install owner/repo --list
qwenaudio skill install owner/repo --skill skill-name
qwenaudio skill list
qwenaudio skill remove skill-name
qwenaudio skill update

install installs components; you still complete backend authentication and model setup. skill installs only for backends. See Backend Settings and Skills.

Use qwenaudio --help for the current version's complete options. Inside TUI, use /help rather than sending CLI commands as chat.