Sellsword
AI-powered TTRPG NPC companion
- Game Masters and the players at their table
- 20 June 2026
- A player's line, typed or spoken
- The NPC's reply, in character and in its own voice
- The code decides what an NPC knows and how it feels. The model just acts it out.
Sellsword gives tabletop RPGs a voice: talk to a non-player character out loud and it answers in character, in its own voice. It’s a multi-tenant SaaS wiring Groq Whisper for speech-in, Claude Haiku for the character, and Inworld for speech-out.
Stack
- Python
- Plain code works out how an NPC feels and what it knows before the model sees a word, then checks whether it lied.
- Postgres
- Holds the world. Every NPC's grudges, goals and secrets are rows in a database. No vector search.
- Claude Haiku
- The actor. It gets a short brief and the player's line, and hands back one reply in a strict format.
- Inworld TTS
- Speaks the NPC's reply in that character's voice.
- Whisper
- Turns what a player says into the mic into text.
- React
- The Game Master's cockpit and the screen the players watch.
Build log
-
A screen for the TV. The Game Master opens a table on the laptop and a second screen shows the scene to the room. It's on the live site, but not yet tried on a real TV.
-
A cinematic view. The NPC stands in a painted room lit by a flickering lamp. Read →
-
NPCs now remember what they've told you, and what they lied about.
-
Renamed from Tavern to Sellsword, sign-in added, and live at sellsword.app.
-
Voices. NPCs speak through Inworld's text-to-speech, and players can tap a mic and just talk.
-
An NPC's face now changes with how it feels about you. The numbers pick the face, not the model.
-
The test harness gets a judge. A model marks each reply against what the NPC was meant to be feeling.
-
First commit. By the end of the day it had the database, what each NPC knows, lie detection, the test harness and the Game Master's cockpit.