summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorDax Raad <[email protected]>2025-07-07 16:29:04 -0400
committerDax Raad <[email protected]>2025-07-07 16:29:13 -0400
commitc51de945a5620d77ccb25652c732d259035a8cf7 (patch)
tree53d0d5402100bc2ef3cec44d82387e3bff422572
parent9253a3ca9e561bb44e08d634295706ddade6f00e (diff)
downloadopencode-c51de945a5620d77ccb25652c732d259035a8cf7.tar.gz
opencode-c51de945a5620d77ccb25652c732d259035a8cf7.zip
Add stdin support to run command
Allow piping content to opencode run when no message arguments are provided, enabling standard Unix pipe patterns for better CLI integration. 🤖 Generated with [opencode](https://opencode.ai) Co-Authored-By: opencode <[email protected]>
-rw-r--r--packages/opencode/src/cli/cmd/run.ts9
1 files changed, 8 insertions, 1 deletions
diff --git a/packages/opencode/src/cli/cmd/run.ts b/packages/opencode/src/cli/cmd/run.ts
index 2d0262aab..be271ceb4 100644
--- a/packages/opencode/src/cli/cmd/run.ts
+++ b/packages/opencode/src/cli/cmd/run.ts
@@ -54,7 +54,14 @@ export const RunCommand = cmd({
})
},
handler: async (args) => {
- const message = args.message.join(" ")
+ let message = args.message.join(" ")
+
+ // Read from stdin if no message provided and stdin is available
+ if (!message && !process.stdin.isTTY) {
+ message = await Bun.stdin.text()
+ message = message.trim()
+ }
+
await bootstrap({ cwd: process.cwd() }, async () => {
const session = await (async () => {
if (args.continue) {