Teaches coding agents how to build TUIs with TamboUI correctly: API-level selection, render-thread discipline, display-width safety, CSS-aware element authoring, and JFR conventions.
76
95%
Does it follow best practices?
Run evals on this skill
Adds up to 20 points to the overall score
View guide
Passed
No findings from the security scan
TamboUI exposes four API levels. Picking the right one up front is much cheaper than rewriting later.
ToolkitApp (or ToolkitRunner for more control) and the static-import DSL from dev.tamboui.toolkit.Toolkit.*panel, row, column, text, list, table, gauge, etc. as factory methods; chain styling with .bold(), .cyan(), .rounded()TuiRunner when you need a custom event loop, animation ticks at a specific cadence, or to render widgets directly without going through Toolkit elements(EventHandler, Renderer) — the handler returns true to request a redraw and false otherwise; do not redraw on every eventTerminal + Backend direct usage for custom backends, game loops, or learning the rendering modelInlineApp (declarative) or InlineToolkitRunner / InlineDisplay (lower-level)println() scroll output above it — do not use full-screen TuiRunner for this pattern, it will take over the terminalTuiRunner callback, and immediate Frame.buffer() writes work alongside element rendering — but only mix when you have a real reasonrules
skills