An AI-powered interactive RPG that runs entirely in your browser.
Build characters, shape narratives, and watch your world evolve.
Driven by a pipeline of specialized AI agents.
StoryboundAI is a browser-based interactive fiction game powered by AI. You create a character, drop into a living world, and take actions that drive a branching story. Storybound is much more than just a single AI chatbot. In the background, there are various AI Agents actively tracking the state of your world, your character, the people around you, and your ongoing objectives, updating each one after every turn.
There's no backend server. Every AI request goes directly from your browser to whichever API provider you configure. Your API key and story data never leave your device. There are no StoryboundAI servers; Your data is not retained by us (your API provider likely does retain your data though).
Every meaningful game event is handled by a dedicated AI call with strict structured responses. Rather than one monolithic prompt, the game is split into a pipeline of specialized agents, each responsible for one piece of the world. This keeps outputs structured, predictable, and independently updatable. This design also allows the primary story driver agent to track only the relevant story context, leaving the secondary analysis agents to handle the rest.
Every character in your world has a five-dimensional opinion profile, maintained and updated by the AI after every interaction. These aren't cosmetic — they influence how NPCs behave, what actions they offer, and how the narrator portrays their reactions.
On top of opinions, NPCs now have persistent memory. A background agent quietly decides after each turn whether any nearby NPC witnessed something worth remembering — a betrayal, a threat, an act of violence, or a broken promise. Those memories are stored at the world level and injected back as private GM notes the next time that NPC appears, even in a completely different character's session. If you wronged someone, they'll remember it when your other character asks about you.
Every story lives inside a World. Each world is a shared container that persists independently of any single player character. Worlds are automatically named during environment generation, and you can rename them at any time. Characters within the same world can never meet each other (the AI enforces this narratively), but they share the physical reality of that world: locations, NPCs, and history all carry over.
Switching characters works like GTA. You pick a world from the start screen, then choose which character to play. When a new character enters the same world, they receive context from the history left behind: prior characters' story logs shape the environment generation, and known NPCs appear with consistent descriptions and last-known locations.
Your character isn't static. The AI can propose changes to your abilities, limitations, and flaws as the story develops, gaining a skill through training, losing a limitation after growth, or picking up a flaw from a traumatic event.
Every AI-proposed change can be undone with a single button press. Nothing is permanent unless you allow it to be, since the AI is annoying sometimes and proposes illogical changes.
Your characters, story history, and settings can be exported as a single JSON file and re-imported at any time. The API key is intentionally excluded from exports.
The SHA-256 integrity check detects whether a backup file was manually edited after export. It's a tamper warning, not a restriction. Modified files still import successfully with a notice. To the cheaters: I see you...
StoryboundAI has no backend. Every API request goes directly from your browser to your chosen AI provider. Your API key is stored only in your browser's local storage and is never included in data exports.
No account, no server, no tracking beyond Cloudflare Analytics. Game state, characters, and story history live entirely in your browser's localStorage. Use the built-in export tool to back them up.