Skip to content

hype-hosting/SillyTavern-Roulette

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Roulette Banner

SillyTavern-Roulette

A premium connection-profile rotation extension for SillyTavern by Hyperion.

Roulette rotates between SillyTavern connection profiles during a chat — sequentially or by weighted random — so you can mix models, parameters, and providers without manually switching. Built around a glassy revolver-cylinder visualisation that turns the rotation into a moment, not a menu.

Ko-fi Discord Substack


Why Roulette

The longer your chat runs, the more value Roulette adds. Four reasons most users install it:

Reason What it solves Best for
Beat prose fatigue Long single-model chats develop visible patterns — same rhythms, same body-language tics. Even one alternate model in the rotation breaks the spell. Long-running characters, multi-thousand-message arcs.
Pace your spend Schedule a flagship model 1-in-5 alongside a cheap workhorse. Most turns cost pennies; the premium model lands occasionally for variety. Anyone juggling API budgets.
Mitigate refusals Different models have different rails. When one balks, the next switch hands the keyboard to a model with different boundaries. Mature scenes, edge cases, anyone tired of re-rolling.
Discover models honestly Drop a candidate into the rotation and let it co-exist with your favourites for a few sessions. Real side-by-side, in your real chat. Evaluating new providers without rebuilding your setup.

Install

In SillyTavern: Extensions → Install Extension → Install from URL and paste this repository's URL.

Manual install: clone into data/<user>/extensions/SillyTavern-Roulette/ (per-user) or public/scripts/extensions/third-party/SillyTavern-Roulette/ (global), then enable in the Extensions panel.

Requires at least two connection profiles defined in SillyTavern's Connection Profiles extension.


Quick Start

A 3-model rotation in five steps. Assumes Roulette is installed.

  1. Define three connection profiles in SillyTavern's Connection Profiles UI. Pick three different models you want in the mix — e.g. Sonnet 4.5, GLM-4.7, DeepSeek v3. Give them clear names; you'll pick from these names in step 3.
  2. Open the Roulette modal — click the dice icon next to the chat input, or the Open Roulette button in the Extensions drawer.
  3. Queues tab → New queue. Name it (e.g. Long-fiction blend). Pick Sequential mode, drag in your three profiles, set each slot's count (try Sonnet=3, GLM=2, DeepSeek=4).
  4. Save. The queue appears as a card with a mini-cylinder preview. Click Simulate 20 picks in the editor first if you want to sanity-check the sequence.
  5. Chamber tab → Spin (or use the drawer's queue picker + Start). The cylinder loads, and from now on each AI response rotates through the chambers automatically.

The pill in the chat input shows the active queue and how many responses remain in the current slot. Hover for detail; click to reopen the modal.


Recipes

Four queue configurations that map to common roleplayer goals. Drop into the editor, save, run.

Long-fiction blend (sequential)

Three frontier models in sequence, biased toward your favourite. Prevents prose fatigue across long arcs.

Slot Profile Count
1 Your favourite (e.g. Sonnet) 3
2 Alternate voice (e.g. GLM or Gemini) 2
3 Tertiary (e.g. DeepSeek) 4

Mode: Sequential · ~9 turns per cycle.

Budget classic (weighted-random)

Cheap model handles 80% of turns; flagship steps in occasionally for variety.

Slot Profile Weight
1 Cheap workhorse (free-tier OpenRouter, local Llama, etc.) 4
2 Flagship treat (Sonnet, Gemini Pro, GPT-5) 1

Mode: Weighted-random · run length range 1–3 · no-repeat off.

Personality split (alternating)

A character with two distinct internal voices. Each turn alternates — same character, two minds.

Slot Profile Count
1 "Voice A" (warm, verbose) 1
2 "Voice B" (cold, terse) 1

Mode: Sequential with count 1 each. Or Weighted-random with no-repeat-in-row enabled and equal weights for non-rigid alternation.

TTRPG dice (weighted with wildcard)

Most turns are predictable; occasionally something unexpected happens. Genuine narrative randomness.

Slot Profile Weight
1 Reliable narrator 5
2 Reliable narrator (alt) 3
3 Wildcard (a model known to surprise you) 1

Mode: Weighted-random · run length range 1–2.


Modes & Options

Mode Behaviour
Sequential Walks slots in order, looping back to the start. Each slot runs for either a fixed count or a range (rolled when the slot becomes active).
Weighted-random Picks a slot by weighted random selection on each rotation boundary. Run length is fixed or rolled from a range. Optional don't repeat the same profile twice in a row toggle forces variety.

Per-chat state — every chat tracks its own rotation independently. Switch chats, and each one keeps its own active queue, slot, and counter.

Manual override — if you switch profiles via SillyTavern's normal selector mid-rotation, Roulette pauses with a Resume affordance until you decide to continue.

Profile-deletion error path — if a slot's profile is deleted, Roulette skips it. Three consecutive failed slots halts the rotation with a toast.


What's in the Modal

Tab What it is
Chamber The live cylinder. Brass collar around glassy chambers; active chamber highlighted with a brass glow + pip ring counting down responses-remaining. Sequential clicks one notch per advance; weighted-random spins with wheel-of-fortune deceleration.
Queues Card grid of saved queues, each with a mini-cylinder preview. Click to edit (drag-to-reorder slots, simulate 20 picks live). Import / export as JSON for sharing.
History Every AI response logged with its profile of origin. Trail strip shows the last twelve, full list newest-first.
Settings Animation speed slider (0.25× to 2×), accent-colour picker (six metal presets + custom), profile-palette display.

Slash Commands

Command Effect
/roulette-start <queueName> Activate a queue on the current chat
/roulette-stop Deactivate rotation
/roulette-status Print current state
/roulette-skip Force-advance to the next slot

Versions

Version Status Notes
v1.0 Current Initial public release. Modal redesign, glassy cylinder, drag-to-reorder, simulate-20-picks, queue export/import, history view, animation/accent settings.

The Full Experience

Roulette is one piece of a larger ecosystem. If you want to experience what these tools can really do when paired with handcrafted characters, deep worldbuilding, and a curated community, check out:

Timeless Tavern — a SillyTavern instance hosted by me, Hyperion. Multi-user, multi-world, and running on a prompt architecture that goes well beyond what's published here. Access is through the Discord.

HYPERCODE — my premium roleplay system prompt framework. Drop-in replacement for whatever you're running now; pairs naturally with Roulette. GitHub →

Other Ways to Connect

  • DiscordHype Discord — Community, support, and access to Timeless Tavern.
  • Ko-fiko-fi.com/hype — Support the work. Memberships and commissions available.
  • The HyperiumSubstack — Writing, worldbuilding, and studio updates.
  • Tumblr@hyperionblackthorne — AI art and dark aesthetic.

License

Roulette is released under AGPL-3.0 — the same license as SillyTavern. You're free to use, share, and adapt it; derivative works distributed publicly must remain open under the same terms. See the license file for full terms.

Contributing

Found a bug? Have a recipe that should be in the README? Open an issue or submit a PR. Community contributions that improve the framework — especially additional recipes for common rotation patterns — are welcome.

If you build something cool with Roulette, I'd love to hear about it. Drop into the Discord and share.


Support on Ko-fi    Join the Discord

Crafted by Hyperion

Releases

No releases published

Sponsor this project

Packages

 
 
 

Contributors