diff options
| author | Mark Jaquith <[email protected]> | 2025-12-14 22:06:04 -0500 |
|---|---|---|
| committer | GitHub <[email protected]> | 2025-12-14 21:06:04 -0600 |
| commit | ed33d82535cf23eb48a0c41dce96317aca85ef6e (patch) | |
| tree | 7a8d4353155d65ce090042d8a576cc9a5655dd28 /packages | |
| parent | 2d63c22d1a3de36476c2cd8f948b985672374ddd (diff) | |
| download | opencode-ed33d82535cf23eb48a0c41dce96317aca85ef6e.tar.gz opencode-ed33d82535cf23eb48a0c41dce96317aca85ef6e.zip | |
feat(cli): auto-submit prompt when using --prompt flag (#4510)
Diffstat (limited to 'packages')
| -rw-r--r-- | packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx | 6 | ||||
| -rw-r--r-- | packages/opencode/src/cli/cmd/tui/routes/home.tsx | 1 |
2 files changed, 6 insertions, 1 deletions
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 5cc757ac2..784c8648e 100644 --- a/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx +++ b/packages/opencode/src/cli/cmd/tui/component/prompt/index.tsx @@ -44,6 +44,7 @@ export type PromptRef = { reset(): void blur(): void focus(): void + submit(): void } const PLACEHOLDERS = ["Fix a TODO in the codebase", "What is the tech stack of this project?", "Fix broken tests"] @@ -447,11 +448,14 @@ export function Prompt(props: PromptProps) { }) setStore("extmarkToPartIndex", new Map()) }, + submit() { + submit() + }, }) async function submit() { if (props.disabled) return - if (autocomplete.visible) return + if (autocomplete?.visible) return if (!store.prompt.input) return const trimmed = store.prompt.input.trim() if (trimmed === "exit" || trimmed === "quit" || trimmed === ":q") { diff --git a/packages/opencode/src/cli/cmd/tui/routes/home.tsx b/packages/opencode/src/cli/cmd/tui/routes/home.tsx index d0bb296eb..ecdf93c43 100644 --- a/packages/opencode/src/cli/cmd/tui/routes/home.tsx +++ b/packages/opencode/src/cli/cmd/tui/routes/home.tsx @@ -57,6 +57,7 @@ export function Home() { } else if (args.prompt) { prompt.set({ input: args.prompt, parts: [] }) once = true + prompt.submit() } }) const directory = useDirectory() |
