diff --git a/packages/opencode/src/cli/cmd/serve.ts b/packages/opencode/src/cli/cmd/serve.ts index 69e0be9d9..f5f700a0d 100644 --- a/packages/opencode/src/cli/cmd/serve.ts +++ b/packages/opencode/src/cli/cmd/serve.ts @@ -4,14 +4,21 @@ import { withNetworkOptions, resolveNetworkOptions } from "../network" import { Flag } from "../../flag/flag" export const ServeCommand = cmd({ - command: "serve", - builder: (yargs) => withNetworkOptions(yargs), + command: "serve [cwd]", + builder: (yargs) => + withNetworkOptions(yargs).positional("cwd", { + type: "string", + describe: "path to start kilo server in", // kilocode_change + }), describe: "starts a headless kilo server", // kilocode_change handler: async (args) => { if (!Flag.OPENCODE_SERVER_PASSWORD) { console.log("Warning: OPENCODE_SERVER_PASSWORD is not set; server is unsecured.") } const opts = await resolveNetworkOptions(args) + if (args.cwd) { + process.chdir(args.cwd) + } const server = Server.listen(opts) console.log(`kilo server listening on http://${server.hostname}:${server.port}`) // kilocode_change await new Promise(() => {})