{"version":"2.1.271","anchor":"ink-renderer-gains-a-non-react-tree-drawing-mode-alongside","canonical_anchor":"ink-renderer-gains-a-non-react-tree-drawing-mode-alongside","heading":"Ink renderer gains a non-React 'Tree' drawing mode alongside render()","tier":"internal","area":"Terminal UI","scope":null,"heads_up":null,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.271\/e\/ink-renderer-gains-a-non-react-tree-drawing-mode-alongside","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.271","markdown":"### Ink renderer gains a non-React 'Tree' drawing mode alongside render()\n\nClaude Code's terminal renderer gets a second drawing mode alongside its usual React mode\n\n**Unclear.** What triggers use of the new Tree mode instead of React mode, and what takeBackTerminal() does, are not stated.\n\n**What**\n\nClaude Code's command-line interface is drawn using a library called Ink, which normally works like React: you call `render()` and it manages updates on screen. A drawing target ('root') now also supports a new `tree()` method and a `takeBackTerminal()` method, offering a separate, non-React way to draw the same interface.\n\nThe two modes are kept from mixing: if a root has already been drawn with `render()`, calling `tree()` on it throws an error, and the same protection works the other way around.\n\n**Why**\n\nThis keeps the interface consistent by preventing a single screen area from being controlled by two different drawing systems at once, which could otherwise cause corrupted or conflicting output.\n\n- Area: Terminal UI\n- Tier: Under the hood\n- Useful: 3\/5\n- Signal: 2\/5"}