Display
Constants
BLUE = "\e[34m"
BOLD = "\e[1m"
CYAN = "\e[36m"
DIM = "\e[2m"
GREEN = "\e[32m"
MAGENTA = "\e[35m"
RED = "\e[31m"
RESET = "\e[0m"
ANSI color codes
WHITE = "\e[37m"
YELLOW = "\e[33m"
Class methods
Pick an ANSI color for the HP readout based on how healthy it is.
Display narrative text from the DM. Renders simple **bold** markdown as
ANSI bold so Claude's habitual emphasis doesn't show up as literal stars.
Render a minimal subset of inline markdown (bold) as ANSI styling. Anything else is left untouched.
Display a compact one-line summary of the character's vital state. Printed after each DM turn so tool-driven HP/location/item changes are visible to the player (the deterministic mechanics this demo showcases). Primitives only — keeps Display a leaf module with no dependency on GameState.