brink play
Play an ink story interactively in the terminal.
brink play [OPTIONS] <FILE>
Accepts a compiled story (.inkb, .ink.json, or .inkt) or raw .ink source — .ink files are compiled in-memory via the native pipeline, so brink play story.ink works without a separate brink compile step.
Options
| Flag | Default | Description |
|---|---|---|
--speed <N> / -s | 30 | Typewriter speed in characters per second (0 = instant) |
--input <FILE> / -i | — | Read choice inputs from a file (batch mode) |
--locale <FILE> | — | Locale overlay (.inkl) to make available; repeatable. Switch at runtime with the l key. |
--save-transcript <FILE> | — | Write the playthrough’s .brkt transcript after the session ends. |
A saved .brkt can be re-rendered later (in any locale) with brink replay <TRANSCRIPT> --story <FILE> [--locale <FILE>].
Interactive mode
When run in a terminal, brink play launches a TUI with typewriter text reveal and arrow-key choice selection.
Key bindings
| Key | Story panel | Choice panel |
|---|---|---|
Space | Skip typewriter | Skip typewriter |
Up/Down | Scroll history | Select choice |
Enter | — | Confirm choice |
Tab | Focus choices | Focus story |
q | Quit | Quit |
Batch mode
When stdin is piped or --input is provided, the TUI is bypassed and choices are read as line-delimited 1-indexed integers.
# Pipe choices
printf "1\n3\n" | brink play story.inkb
# Read choices from a file
brink play story.inkb -i choices.txt
In batch mode, story text and choices are printed to stdout as plain text.