{"name":"ui.press","slug":"ui-press","family":"setting","title":"Settings keys","noun":"settings key","description":"Plugins can now be handed key presses through the UI hook interface.","description_source":"entry","described_by":{"version":"2.1.247","anchor":"plugins-can-receive-key-presses-through-the-ui-hook-interfac"},"presence":{"first_seen":null,"removed_in":null,"in_current_build":false,"newest_mined":"2.1.309","builds":0,"mined_builds":150,"first_cited":{"version":"2.1.247","released_at":"2026-08-26 18:02:01","spans":3}},"aliases":[],"entries":[{"version":"2.1.274","anchor":"markdown-text-can-now-register-clickablepressable-links-in","heading":"Markdown text can now register clickable\/pressable links in the TUI","line":"Links inside markdown text in the terminal UI are now clickable, not just buttons","released_at":"2026-09-16 22:36:09","reason":"found in this entry's text"},{"version":"2.1.268","anchor":"new-desktop-surface-plugin-ui-messaging-uimessage-uipre","heading":"New desktop-surface plugin UI messaging (ui.message \/ ui.press \/ ui.input \/ ui.select)","line":"New plugin UI plumbing routes ui.message and press\/input\/select events to a desktop app surface","released_at":"2026-09-10 18:41:11","reason":"found in this entry's text, named in this entry"},{"version":"2.1.267","anchor":"new-uimessage-event-added-to-a-second-larger-capability","heading":"New \"ui.message\" event added to a second, larger capability\/event list","line":"A broader UI\/agent event list now includes a ui.message event","released_at":"2026-09-09 18:25:42","reason":"found in this entry's text"},{"version":"2.1.260","anchor":"new-plugin-ui-event-types-uiinput-uiselect","heading":"New plugin UI event types ui.input \/ ui.select","line":"Plugin UI gains input\/select interaction events alongside existing button press events.","released_at":"2026-09-03 22:32:02","reason":"found in this entry's text"},{"version":"2.1.247","anchor":"plugins-can-receive-key-presses-through-the-ui-hook-interfac","heading":"Plugins can receive key presses through the UI hook interface","line":"Plugins can now be handed key presses through the UI hook interface.","released_at":"2026-08-26 18:02:01","reason":"found in this entry's text"},{"version":"2.1.247","anchor":"button-presses-reach-plugins-running-in-process-not-just-in-","heading":"Button presses reach plugins running in-process, not just in a worker","line":"Plugins running in-process can now receive button presses, not just worker-backed ones.","released_at":"2026-08-26 18:02:01","reason":"found in this entry's text"},{"version":"2.1.247","anchor":"clickable-buttons-in-plugin-ui-built-end-to-end-but-dark-in-","heading":"Clickable buttons in plugin UI, built end to end but dark in this build","line":"Plugin buttons work end to end in terminal and desktop, but plugin hook modules are switched off.","released_at":"2026-08-26 18:02:01","reason":"named in this entry, found in this entry's text"},{"version":"2.1.247","anchor":"plugins-can-draw-pressable-buttons-with-a-new-ui-press-hook","heading":"Plugins can draw pressable buttons, with a new ui.press hook","line":"Plugins can draw pressable buttons that fire a new press event back to the plugin.","released_at":"2026-08-26 18:02:01","reason":"named in this entry, found in this entry's text"},{"version":"2.1.247","anchor":"plugin-host-protocol-carries-a-press-operation-and-button-la","heading":"Plugin host protocol carries a press operation and button layout","line":"Plugin sandboxes can now handle button presses and lay out Button elements.","released_at":"2026-08-26 18:02:01","reason":"found in this entry's text"}],"entries_total":9,"docs":[{"source":"claude-code","path":"plugins\/mods\/interface","title":"Draw in the interface with a mod","documented":false},{"source":"claude-code","path":"plugins\/mods\/reference","title":"Mods reference","documented":false},{"source":"claude-code","path":"plugins\/mods\/test","title":"Test a mod","documented":false}],"docs_total":3,"gates":[],"related":[{"name":"ui.blit","slug":"ui-blit","description":"Plugins can now request keyboard focus and control scrolling in UI regions they drew"},{"name":"ui.close","slug":"ui-close","description":"Plugins can now list, register, and run slash commands, and open or close a UI surface"},{"name":"ui.copy","slug":"ui-copy","description":"New ui.copy capability added to the permission list plugins and hooks can request"},{"name":"ui.focus","slug":"ui-focus","description":"Plugins can now request keyboard focus and control scrolling in UI regions they drew"},{"name":"ui.input","slug":"ui-input","description":"Plugins gain validated Input, Select, and Link UI components."},{"name":"ui.invalidate","slug":"ui-invalidate","description":"Plugins can now invalidate prompt.context specifically through ui.invalidate, alongside ui.render and prompt.section."},{"name":"ui.log","slug":"ui-log","description":"Plugins can install code that intercepts tool calls and repaints parts of the terminal interface."},{"name":"ui.message","slug":"ui-message","description":"Plugins can now draw their own interactive UI elements ('Clients') directly in the terminal"},{"name":"ui.mount","slug":"ui-mount","description":"Plugin test engine used by `claude plugin test` gains a UI-render test harness with mount\/act\/release methods"},{"name":"ui.notify","slug":"ui-notify","description":"Plugins gain a `ui.notify` operation for posting notifications, and each notification's screen time is now budgeted and saved"}],"url":"https:\/\/changelogs.core-directive.com\/reference\/setting\/ui-press","family_url":"https:\/\/changelogs.core-directive.com\/reference\/setting.json"}