Inkstone Logo
Inkstone
DocsChat & Conversations

Chat & Conversations

Your Ten Minutes Start Now

Your Ten Minutes Start Now

You found the time. The kids are occupied, the house is quiet enough, and you have exactly the length of one reheated coffee to disappear into something that’s yours. This is the screen where that happens.

The chat interface is the living center of Inkstone. Everything else in the app exists to serve this moment: you, a character, and a conversation that goes wherever you want it to go. Streaming responses, message branching, inline editing, per-chat customization. It’s a full engine, but it’s designed to feel like a conversation, because that’s what it is.

The Shape of a Conversation

Simple on purpose.

Messages arrange themselves the way you’d expect from any chat app: yours on the right, theirs on the left, newest at the bottom. Your messages get a lighter background. Character messages sit against a darker one with the character’s avatar beside them. System messages float in the center, quiet and muted, like stage directions.

This part is simple on purpose. You’ve used a chat app. You know how this works. The interesting stuff is what you can do with those messages once they exist.

The Things You Can Do to Words

Edit, regenerate, continue, fork.

Any message can be edited. Tap the edit button, change the text, done. But what happens next depends on whose words you’re changing.

Edit

Edit a character message and it updates in place. Clean, simple, surgical. You saw a typo, or the AI used a word that broke the scene, or you just want to adjust a detail. Fixed.

Edit your own message and something more dramatic happens. The conversation forks from that point. Everything after your edited message vanishes, and the AI generates a fresh response based on your new text. It’s a “what if I’d said this instead?” machine.

Regenerate

Throws out the last character response and asks for a completely new one, but keeps the original as an alternative you can swipe back to. Different roll, same setup.

Continue

Tells the AI to keep writing, appending more text to what’s already there. For when the response stopped short and you need more. The story wasn’t done; it just ran out of breath.

Fork Conversation

Creates an entirely new chat branching from that moment. Everything before stays intact, everything after is gone, and you’re free to steer the story somewhere new. Think of it as saving your game before a boss fight, except the boss fight is an emotionally charged dinner scene and the stakes are fictional but somehow still real.

Swiping Through the Multiverse

Every regeneration is a parallel universe you can visit.

When you regenerate a response, you don’t lose what was there before. A swipe indicator appears, something like “2/5” with arrows, and you can browse through every version the AI has offered. Each alternative keeps its own content and token count. Swipe left, swipe right, pick the one that hits.

Once you’ve accumulated seven or more alternatives on a single message, the indicator gets smart about it: it shows the first, last, current, and neighboring positions with ellipsis between them, so you’re not staring at a constellation of dots.

Pro Tip

Regenerating is free in terms of conversation flow. Use it liberally when a response doesn’t land. The AI doesn’t remember the alternatives you didn’t choose, so each regeneration is a clean shot.

Watching Words Arrive

Streaming, and the theater of anticipation.

When Streaming is enabled (which it is by default), you see the AI’s response materialize word by word in real time. A cursor blinks at the end of the text as it comes in, and something about watching a sentence build itself, not knowing where it’s going, the anticipation of each next word... well. Let’s just say some responses are worth savoring slowly.

While the AI is generating, a Stop button replaces Send. Tap it to cancel mid-generation if the response is going sideways, or if you’ve seen enough to know where it’s headed.

Turn streaming off and the response arrives fully formed, all at once. Faster in some ways, but you lose the theater of it.

ThemeCursor Style
StandardA simple blinking bar
Neon CircuitA cyan block cursor
HanamiA pulsing pink glow
Ember SanctumFlickers like a flame
Astral GrimoirePulses like a mystic orb
Crystal VeilShimmers like light through a prism
Abyssal TideGlows bioluminescent, like something alive in deep water
Typing Indicators

Before the first word of a streaming response appears, you’ll see an animated typing indicator. These also vary by theme: bouncing dots, scanning cursors, sakura petals, flames, orbiting dots, prism pulses, bioluminescent pulses. It’s a small thing, but it makes the wait feel intentional rather than empty.

When the AI Thinks Out Loud

Behind the curtain, if you want to look.

Some models (Claude, notably) share their internal reasoning before they answer. When Show Thinking is enabled in settings, you get a window into the process. During streaming, “Thinking...” appears, and you can tap it to expand and watch the model work through the scene. After generation, the thinking section collapses, but stays available if you want to peek behind the curtain.

Token Budget

If the model burns through all its tokens on thinking and has nothing left for the actual response, Inkstone will warn you and suggest increasing max tokens. This is the AI equivalent of spending so long planning what to order that the restaurant closes.

The Input Bar

Where your words begin.

The bottom of the chat screen is where your words begin. A multi-line text field auto-expands up to five lines as you type. The Send button glows gold and activates only when there’s text and the AI isn’t already generating. During generation, it becomes Stop. If you’ve enabled Ghostwriting in settings, that button appears here too.

On desktop: Enter sends. Shift+Enter adds a new line. Muscle memory from every messaging app you’ve ever used.

Starting a Conversation

Two paths in, both short.

1

Pick your entry point

From the Gallery, tap a character and hit “Start Chat.” From the Chats tab, tap the + button and pick a character from the dialog.

2

The first message lands

The character’s First Message becomes the opening line. Alternate Greetings appear as swipeable alternatives, so you can pick the opening that sets the right tone.

3

Context loads automatically

Any lorebooks linked to the character connect automatically. Your default persona loads in (unless you override it), and the chat title defaults to the character’s name.

4

You're in

All of this is instant. You go from “I want to talk to this character” to being inside the conversation in about one second. Your time is precious. Inkstone knows that.

Customizing the Conversation

Every chat can have its own atmosphere.

Tap the three-dot menu in the top bar of any chat and you’ll find a set of options that let you tune this specific conversation without touching your global settings.

Appearance

Override the theme, colors, fonts, bubble shapes, and backgrounds for this chat alone. Maybe your cozy slice-of-life deserves Hanami’s soft pinks, and your dark fantasy needs Ember Sanctum.

Persona

Controls which identity you’re wearing in this conversation. Switch personas mid-story if you want. The character won’t mind; the coherency might.

System Prompt

Swap between prompt types: EveningTruth, Marinara, or your own Custom prompt. Different engines for different kinds of stories.

Lorebooks

Connect or disconnect world-building knowledge bases. Add lore for a new location your story just reached, or disconnect one that’s no longer relevant.

Chat Summary

Shows the auto-generated conversation summary, and lets you edit it if the AI missed something important.

Export & Delete

Export Chat downloads the conversation as a JSONL file. Delete Chat removes it permanently (with a confirmation dialog, because some conversations are irreplaceable).

Keeping Your Conversations Organized

Folders are rooms. Tags are sticky notes.

The Chats tab shows every conversation you’ve had, each entry displaying the character’s avatar, the chat title, a preview of the last message (first 80 characters), a timestamp, and any folder or tag indicators.

Folders give you a place to group chats by storyline, genre, mood, or whatever taxonomy makes sense to your brain. Create them from the filter bar. Each chat lives in one folder, or stays unfiled if you prefer the chaos.

Export & Import

Your conversations are portable.

Export any chat as a .jsonl (JSON Lines) file. The export captures everything: all messages and their alternatives, thinking content, summary data, character and user name metadata. Nothing is lost in translation. The filename follows the pattern {character_name}_{date}.jsonl.

Markdown and the Art of Formatted Roleplay

Structure your fiction.

Both sides of the conversation support full Markdown formatting. Bold and italic for emphasis. Inline code and fenced code blocks for the technically inclined. Blockquotes (rendered with a gold left border, because details matter). Headings at three levels. Bullet and numbered lists. Horizontal rules. Clickable links.

If you know Markdown, it works the way you’d expect. If you don’t, the AI will use it naturally and the formatting just appears, making its responses more readable without you having to think about syntax.

Syntax Coloring

When your theme has syntax colors configured, Inkstone offers an alternative to standard Markdown rendering, one designed specifically for the texture of roleplay text. Actions written in asterisks (*walks slowly*) render in the action color, italicized. Dialogue in quotes ("Hello there") picks up the dialogue color. Bold emphasis (**important**) gets its own color too. It’s like syntax highlighting for fiction, and once you’ve seen it, plain monochrome text feels flat.

The Token Counter

Knowledge is power, even when the knowledge is 'we're running out of room.'

Enable this in Settings (Display, Show Token Count) and a bar appears at the bottom of the chat showing how many tokens you’ve used, your configured context budget, and a visual progress bar. Individual messages also display their token count in the footer.

This matters because every AI conversation has a memory limit. The token counter lets you see when you’re approaching that boundary, so you can decide whether to start a new chat, enable summaries, or just keep going and see what happens.

Info

The token counter is a visibility tool, not a restriction. It doesn’t stop you from doing anything. It just makes sure you know where you stand so you can make informed decisions about pacing and context management.

When Things Go Wrong

They will, occasionally. The internet is involved.

When generation fails, Inkstone tells you what happened in plain language. A retry button appears if the last generation failed, so you can try again without retyping anything. One tap, second chance. Your ten minutes are not going to be wasted on error recovery if Inkstone can help it.

ErrorWhat It MeansWhat To Do
Auth FailedYour API key was rejectedCheck your key in Settings
Too Many RequestsRate limited by the providerWait a moment and retry
Too LongContext limit exceededStart a new chat, increase context limit, or enable summaries
No ConnectionNetwork issueCheck internet or local provider
Server ErrorProvider-side issueUsually temporary, try again
TimeoutRequest took too longCheck your connection

Use to navigate between pages