serve: type listener transports explicitly

This commit is contained in:
Dax Raad
2026-05-16 00:43:56 -04:00
parent 971fe35e81
commit a2008478f9
3 changed files with 53 additions and 20 deletions
+6 -4
View File
@@ -25,10 +25,12 @@ export const ServeCommand = effectCmd({
if (conflicts.length) yield* fail(`--socket cannot be used with ${conflicts.join(", ")}`)
}
const opts = yield* resolveNetworkOptions(args)
const server = yield* Effect.promise(() =>
Server.listen(args.socket ? { ...opts, socket: resolveSocketPath(args.socket) } : opts),
)
if (server.socket) {
const server = args.socket
? yield* Effect.promise(() =>
Server.listen({ type: "socket", socket: resolveSocketPath(args.socket), cors: opts.cors }),
)
: yield* Effect.promise(() => Server.listen(opts))
if (server.type === "socket") {
console.log(`opencode server listening on socket ${server.socket}`)
yield* Effect.never
}