Adam 1 месяц назад
Родитель
Сommit
390b0a79b3

+ 1 - 3
packages/opencode/src/cli/cmd/acp.ts

@@ -3,7 +3,6 @@ import { bootstrap } from "../bootstrap"
 import { cmd } from "./cmd"
 import { AgentSideConnection, ndJsonStream } from "@agentclientprotocol/sdk"
 import { ACP } from "@/acp/agent"
-import { Config } from "@/config/config"
 import { Server } from "@/server/server"
 import { createOpencodeClient } from "@opencode-ai/sdk/v2"
 import { withNetworkOptions, resolveNetworkOptions } from "../network"
@@ -29,8 +28,7 @@ export const AcpCommand = cmd({
   },
   handler: async (args) => {
     await bootstrap(process.cwd(), async () => {
-      const config = await Config.get()
-      const opts = resolveNetworkOptions(args, config)
+      const opts = await resolveNetworkOptions(args)
       const server = Server.listen(opts)
 
       const sdk = createOpencodeClient({

+ 1 - 3
packages/opencode/src/cli/cmd/serve.ts

@@ -1,4 +1,3 @@
-import { Config } from "../../config/config"
 import { Server } from "../../server/server"
 import { cmd } from "./cmd"
 import { withNetworkOptions, resolveNetworkOptions } from "../network"
@@ -8,8 +7,7 @@ export const ServeCommand = cmd({
   builder: (yargs) => withNetworkOptions(yargs),
   describe: "starts a headless opencode server",
   handler: async (args) => {
-    const config = await Config.get()
-    const opts = resolveNetworkOptions(args, config)
+    const opts = await resolveNetworkOptions(args)
     const server = Server.listen(opts)
     console.log(`opencode server listening on http://${server.hostname}:${server.port}`)
     await new Promise(() => {})

+ 1 - 3
packages/opencode/src/cli/cmd/tui/spawn.ts

@@ -1,5 +1,4 @@
 import { cmd } from "@/cli/cmd/cmd"
-import { Config } from "@/config/config"
 import { Instance } from "@/project/instance"
 import path from "path"
 import { Server } from "@/server/server"
@@ -15,8 +14,7 @@ export const TuiSpawnCommand = cmd({
     }),
   handler: async (args) => {
     upgrade()
-    const config = await Config.get()
-    const opts = resolveNetworkOptions(args, config)
+    const opts = await resolveNetworkOptions(args)
     const server = Server.listen(opts)
     const bin = process.execPath
     const cmd = []

+ 2 - 4
packages/opencode/src/cli/cmd/tui/thread.ts

@@ -7,7 +7,6 @@ import { UI } from "@/cli/ui"
 import { iife } from "@/util/iife"
 import { Log } from "@/util/log"
 import { withNetworkOptions, resolveNetworkOptions } from "@/cli/network"
-import { Config } from "@/config/config"
 
 declare global {
   const OPENCODE_WORKER_PATH: string
@@ -78,9 +77,8 @@ export const TuiThreadCommand = cmd({
     process.on("unhandledRejection", (e) => {
       Log.Default.error(e)
     })
-    const config = await Config.get()
-    const networkOpts = resolveNetworkOptions(args, config)
-    const server = await client.call("server", networkOpts)
+    const opts = await resolveNetworkOptions(args)
+    const server = await client.call("server", opts)
     const prompt = await iife(async () => {
       const piped = !process.stdin.isTTY ? await Bun.stdin.text() : undefined
       if (!args.prompt) return piped

+ 1 - 3
packages/opencode/src/cli/cmd/web.ts

@@ -1,4 +1,3 @@
-import { Config } from "../../config/config"
 import { Server } from "../../server/server"
 import { UI } from "../ui"
 import { cmd } from "./cmd"
@@ -33,8 +32,7 @@ export const WebCommand = cmd({
   builder: (yargs) => withNetworkOptions(yargs),
   describe: "starts a headless opencode server",
   handler: async (args) => {
-    const config = await Config.get()
-    const opts = resolveNetworkOptions(args, config)
+    const opts = await resolveNetworkOptions(args)
     const server = Server.listen(opts)
     UI.empty()
     UI.println(UI.logo("  "))

+ 3 - 2
packages/opencode/src/cli/network.ts

@@ -1,5 +1,5 @@
 import type { Argv, InferredOptionTypes } from "yargs"
-import type { Config } from "../config/config"
+import { Config } from "../config/config"
 
 const options = {
   port: {
@@ -25,7 +25,8 @@ export function withNetworkOptions<T>(yargs: Argv<T>) {
   return yargs.options(options)
 }
 
-export function resolveNetworkOptions(args: NetworkOptions, config?: Config.Info) {
+export async function resolveNetworkOptions(args: NetworkOptions) {
+  const config = await Config.global()
   const portExplicitlySet = process.argv.includes("--port")
   const hostnameExplicitlySet = process.argv.includes("--hostname")
   const mdnsExplicitlySet = process.argv.includes("--mdns")