summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorDax Raad <[email protected]>2025-07-09 21:58:24 -0400
committerDax Raad <[email protected]>2025-07-09 21:59:38 -0400
commit0ee3b1ede2ef0f36e49717a0873cf3b96d9744a5 (patch)
tree2d81d54f20bfcd52bc1a82e48a79c62f7eff7ca8
parenta826936702251df6a88d90f32f8570e68a4e7995 (diff)
downloadopencode-0ee3b1ede2ef0f36e49717a0873cf3b96d9744a5.tar.gz
opencode-0ee3b1ede2ef0f36e49717a0873cf3b96d9744a5.zip
do not wait for LSP to be fully ready
-rw-r--r--packages/opencode/src/lsp/client.ts4
-rw-r--r--packages/opencode/src/session/mode.ts9
-rw-r--r--packages/opencode/src/tool/read.ts2
3 files changed, 4 insertions, 11 deletions
diff --git a/packages/opencode/src/lsp/client.ts b/packages/opencode/src/lsp/client.ts
index 0d34b8699..51e6cbd39 100644
--- a/packages/opencode/src/lsp/client.ts
+++ b/packages/opencode/src/lsp/client.ts
@@ -184,9 +184,7 @@ export namespace LSPClient {
},
}
- if (input.server.onInitialized) {
- await input.server.onInitialized(result)
- }
+ if (input.server.onInitialized) input.server.onInitialized(result)
l.info("initialized")
return result
diff --git a/packages/opencode/src/session/mode.ts b/packages/opencode/src/session/mode.ts
index d2f548580..e7134f45a 100644
--- a/packages/opencode/src/session/mode.ts
+++ b/packages/opencode/src/session/mode.ts
@@ -14,13 +14,7 @@ export namespace Mode {
})
.optional(),
prompt: z.string().optional(),
- tools: z
- .object({
- write: z.boolean().optional(),
- edit: z.boolean().optional(),
- patch: z.boolean().optional(),
- })
- .optional(),
+ tools: z.record(z.boolean()),
})
.openapi({
ref: "Mode",
@@ -61,6 +55,7 @@ export namespace Mode {
if (value.prompt) item.prompt = await Bun.file(value.prompt).text()
if (value.tools) item.tools = value.tools
}
+
return result
})
diff --git a/packages/opencode/src/tool/read.ts b/packages/opencode/src/tool/read.ts
index 62d67aa15..ccc60e7bc 100644
--- a/packages/opencode/src/tool/read.ts
+++ b/packages/opencode/src/tool/read.ts
@@ -71,7 +71,7 @@ export const ReadTool = Tool.define({
output += "\n</file>"
// just warms the lsp client
- await LSP.touchFile(filePath, false)
+ LSP.touchFile(filePath, false)
FileTime.read(ctx.sessionID, filePath)
return {