{"version":"2.1.301","anchor":"multi-line-text-field-in-plugin-ui-rows","canonical_anchor":"multi-line-text-field-in-plugin-ui-rows","heading":"Plugin text fields can be multi-line with a new rows option","tier":"use","area":"Plugins","scope":"individual","heads_up":false,"url":"https:\/\/changelogs.core-directive.com\/v\/2.1.301\/e\/multi-line-text-field-in-plugin-ui-rows","release_url":"https:\/\/changelogs.core-directive.com\/v\/2.1.301","markdown":"### Plugin text fields can be multi-line with a new rows option\n\nText inputs in plugin-built UI accept a `rows` option; two or more rows give a multi-line field where Shift+Enter adds a new line\n\n**Unclear.** The setting is marked internal, so it is not clear whether plugin authors are meant to use it yet.\n\n**What**\n\nPlugins can draw their own small forms inside Claude Code. The text input in those forms was a single line. It now accepts an optional `rows` setting.\n\n- `rows` must be a whole number of 1 or more. Any other value is rejected with an error such as \"rows must be a whole number, 1 or more\".\n\n- With 2 or more rows, the field is multi-line. Enter submits, Shift+Enter types a new line, and the hint shows ` \u00b7 shift+\u23ce new line` or `\\\u23ce new line`.\n\n- Long text wraps instead of being cut off.\n\n- The up and down arrows now step through input history (`onHistoryUp`, `onHistoryDown`).\n\n- The field is no longer described as \"A one-line text field\".\n\n- The `<Input>` element now lists `rows` among its allowed props. The validation error now reads 'Input props must be { key } and any of label, placeholder, value, submitLabel, rows, autoFocus'.\n\n**Why**\n\nPlugin authors can now ask for longer, multi-line answers. Nothing changes for a plugin that does not set `rows`.\n\n- Area: Plugins\n- Names: `rows`\n- Tier: Use it now\n- Useful: 4\/5\n- Signal: 2\/5\n- Scope: individual\n- Heads-up: no"}