diff --git a/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx b/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx index 249a48d358b..d2e06afaa69 100644 --- a/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx +++ b/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx @@ -837,7 +837,7 @@ export function Prompt(props: PromptProps) { textColor={keybind.leader ? theme.textMuted : theme.text} focusedTextColor={keybind.leader ? theme.textMuted : theme.text} minHeight={1} - maxHeight={6} + maxHeight={sync.data.config.experimental?.max_prompt_input_lines ?? 6} onContentChange={() => { const value = input.plainText setStore("prompt", "input", value) diff --git a/packages/opencode/src/config/config.ts b/packages/opencode/src/config/config.ts index 47afdfd7d0f..7023e0c0c2a 100644 --- a/packages/opencode/src/config/config.ts +++ b/packages/opencode/src/config/config.ts @@ -1225,6 +1225,14 @@ export namespace Config { .positive() .optional() .describe("Timeout in milliseconds for model context protocol (MCP) requests"), + max_prompt_input_lines: z + .number() + .int() + .min(1) + .max(99) + .optional() + .default(6) + .describe("Maximum number of lines for the prompt input text box (1-99, default: 6)"), }) .optional(), }) diff --git a/packages/sdk/js/src/v2/gen/types.gen.ts b/packages/sdk/js/src/v2/gen/types.gen.ts index ec797f2ba81..881e6fbe01b 100644 --- a/packages/sdk/js/src/v2/gen/types.gen.ts +++ b/packages/sdk/js/src/v2/gen/types.gen.ts @@ -1503,6 +1503,10 @@ export type Config = { * Timeout in milliseconds for model context protocol (MCP) requests */ mcp_timeout?: number + /** + * Maximum number of lines for the prompt input text box (1-99, default: 6) + */ + max_prompt_input_lines?: number } }