MANUAL · 07
Admin & settings.
For the operator running the station. The admin console is where you shape the DJ, choose the AI providers, schedule shows, and watch how the station is behaving, all without a redeploy.
SIGNING IN
The admin console.
The console lives at /admin. It's gated by a single sign-in: the ADMIN_USER and ADMIN_PASS set when the station was installed. In production those credentials are mandatory: the station won't start without them, because the admin surface reveals too much to leave open. Signing in lands you on the Dash.
THE LAYOUT
Three groups of views.
The console's pages are grouped by what they're for:
- Monitor — Dash. The command centre: what's on air right now, with a way to step into the autonomous DJ and steer it directly.
- Programming — Library, Shows, Personas, Skills. Everything that shapes what the station plays and who it sounds like.
- System — Stats, Settings, Debug. How the station is behaving under the hood, the engine-room settings, and a live diagnostic view.
PROGRAMMING
Shaping the station.
Everything in this group is saved durably and applies live. No redeploy, and most changes land on the next thing the DJ does.
- Library — search the music library and check how well it's been mood-tagged. The tagger labels tracks with a mood so the DJ can pick by feel; this is where you watch its progress.
- Shows — a show is a reusable definition: a name, a topic, a persona, a mood. Paint shows onto a weekly grid hour by hour; an empty hour means the station runs autonomously for that hour.
- Personas — the roster of DJ identities, one to ten. Each has a name and character, a voice, a script length and a talk frequency, plus the skills it's allowed to use. One persona is active at a time (though a scheduled show can override which), and a single prompt template is shared by all of them.
- Skills — the real-world segments the autonomous DJ can run: weather, news, now-playing digs, facts, web search. Toggle each on or off station-wide.
SETTINGS
The engine room.
The Settings page collects the lower-level controls as a stack of panels down the left rail. The ones you'll reach for most:
- Station — the name, locale, timezone, and the weather location the DJ reads from.
- LLM provider — which model writes the DJ's words and picks tracks, plus the toggles that tune the station to that model. See Models & Tokens.
- TTS voice — which text-to-speech engine and voice the DJ speaks with, optionally a different one per kind of segment. The engines (local and cloud) are covered in How the DJ Works.
- Library tagger — the embedding provider and mood-propagation settings behind the mood tags, plus where you kick off a tagging run.
- Web search — the live-facts backend the skills draw on (DuckDuckGo, Tavily, or a self-hosted SearXNG).
- Jingles — the short pre-rendered idents the station rotates between music tracks, and how often one plays. Render them through the configured voice, or import your own mp3/wav; new files are picked up automatically.
- Sound FX — the library of stingers the DJ can drop into a spoken break. Generate one from a text prompt, or import your own audio file (no ElevenLabs key needed). Toggle the whole library on or off.
- Theme & Festivals — the station-wide colour palette, and the festival calendar that nudges the DJ's mood on the day.
- Scrobbling, Archives, Webhooks & Backup — scrobble plays to Last.fm / ListenBrainz, record the broadcast to hourly files, fire outbound webhooks on station events, and export or restore the whole station's config.
- Danger zone — the broadcast controls that bite: crossfade length, max track length, loudness levelling, the optional Opus / FLAC / AAC stream mounts, and the buttons that stop the stream or restart the mixer.
Crossfade and jingle-ratio changes are read by the audio mixer only at startup. The Danger zone can trigger that restart for you: the stream drops for a few seconds and comes back with the new values applied.
WHEN SOMETHING'S OFF
Stats & debug.
Stats reports how the station is performing: AI usage and latency, and how often it's had to fall back to a backup engine. Debug is a live snapshot for diagnosing trouble: recent AI calls, the mixer's status, and the most recent log lines. It's the first place to look if the stream stalls or the DJ goes quiet.
Installing or updating the station rather than tuning it? That's covered in the setup guide.