summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorJérôme Benoit <[email protected]>2025-10-26 20:50:41 +0100
committerGitHub <[email protected]>2025-10-26 14:50:41 -0500
commit0eb899a9500a6cff6ed2e29bfcea79f3217a6d53 (patch)
treee6af10eba6b46f6d77b50a5e5adf0ec11d730466
parent3241f6b8bb39cf6e9ce43b7d1b68e470911848f7 (diff)
downloadopencode-0eb899a9500a6cff6ed2e29bfcea79f3217a6d53.tar.gz
opencode-0eb899a9500a6cff6ed2e29bfcea79f3217a6d53.zip
chore: cleanup versioned zod imports (#3460)
Signed-off-by: Jérôme Benoit <[email protected]> Co-authored-by: opencode-agent[bot] <opencode-agent[bot]@users.noreply.github.com> Co-authored-by: rekram1-node <[email protected]>
-rwxr-xr-xpackages/opencode/script/schema.ts2
-rw-r--r--packages/opencode/src/agent/agent.ts2
-rw-r--r--packages/opencode/src/auth/github-copilot.ts2
-rw-r--r--packages/opencode/src/auth/index.ts2
-rw-r--r--packages/opencode/src/bun/index.ts2
-rw-r--r--packages/opencode/src/bus/index.ts4
-rw-r--r--packages/opencode/src/cli/ui.ts2
-rw-r--r--packages/opencode/src/command/index.ts2
-rw-r--r--packages/opencode/src/config/config.ts2
-rw-r--r--packages/opencode/src/file/fzf.ts2
-rw-r--r--packages/opencode/src/file/index.ts2
-rw-r--r--packages/opencode/src/file/ripgrep.ts4
-rw-r--r--packages/opencode/src/file/watcher.ts2
-rw-r--r--packages/opencode/src/id/id.ts2
-rw-r--r--packages/opencode/src/ide/index.ts2
-rw-r--r--packages/opencode/src/installation/index.ts2
-rw-r--r--packages/opencode/src/lsp/client.ts2
-rw-r--r--packages/opencode/src/lsp/index.ts2
-rw-r--r--packages/opencode/src/mcp/index.ts2
-rw-r--r--packages/opencode/src/permission/index.ts2
-rw-r--r--packages/opencode/src/project/project.ts2
-rw-r--r--packages/opencode/src/provider/models.ts2
-rw-r--r--packages/opencode/src/provider/provider.ts2
-rw-r--r--packages/opencode/src/server/server.ts2
-rw-r--r--packages/opencode/src/session/compaction.ts2
-rw-r--r--packages/opencode/src/session/index.ts2
-rw-r--r--packages/opencode/src/session/lock.ts2
-rw-r--r--packages/opencode/src/session/message-v2.ts2
-rw-r--r--packages/opencode/src/session/message.ts2
-rw-r--r--packages/opencode/src/session/prompt.ts2
-rw-r--r--packages/opencode/src/session/revert.ts2
-rw-r--r--packages/opencode/src/session/todo.ts2
-rw-r--r--packages/opencode/src/snapshot/index.ts2
-rw-r--r--packages/opencode/src/tool/bash.ts2
-rw-r--r--packages/opencode/src/tool/edit.ts2
-rw-r--r--packages/opencode/src/tool/glob.ts2
-rw-r--r--packages/opencode/src/tool/grep.ts2
-rw-r--r--packages/opencode/src/tool/invalid.ts2
-rw-r--r--packages/opencode/src/tool/ls.ts2
-rw-r--r--packages/opencode/src/tool/lsp-diagnostics.ts2
-rw-r--r--packages/opencode/src/tool/lsp-hover.ts2
-rw-r--r--packages/opencode/src/tool/multiedit.ts2
-rw-r--r--packages/opencode/src/tool/patch.ts47
-rw-r--r--packages/opencode/src/tool/read.ts2
-rw-r--r--packages/opencode/src/tool/registry.ts2
-rw-r--r--packages/opencode/src/tool/task.ts2
-rw-r--r--packages/opencode/src/tool/todo.ts2
-rw-r--r--packages/opencode/src/tool/tool.ts2
-rw-r--r--packages/opencode/src/tool/webfetch.ts2
-rw-r--r--packages/opencode/src/tool/write.ts2
-rw-r--r--packages/opencode/src/util/error.ts2
-rw-r--r--packages/opencode/src/util/log.ts2
-rw-r--r--packages/plugin/src/tool.ts2
53 files changed, 78 insertions, 77 deletions
diff --git a/packages/opencode/script/schema.ts b/packages/opencode/script/schema.ts
index 9721b557a..585701c95 100755
--- a/packages/opencode/script/schema.ts
+++ b/packages/opencode/script/schema.ts
@@ -1,6 +1,6 @@
#!/usr/bin/env bun
-import { z } from "zod/v4"
+import { z } from "zod"
import { Config } from "../src/config/config"
const file = process.argv[2]
diff --git a/packages/opencode/src/agent/agent.ts b/packages/opencode/src/agent/agent.ts
index 3577a9176..a6933708b 100644
--- a/packages/opencode/src/agent/agent.ts
+++ b/packages/opencode/src/agent/agent.ts
@@ -1,5 +1,5 @@
import { Config } from "../config/config"
-import z from "zod/v4"
+import z from "zod"
import { Provider } from "../provider/provider"
import { generateObject, type ModelMessage } from "ai"
import PROMPT_GENERATE from "./generate.txt"
diff --git a/packages/opencode/src/auth/github-copilot.ts b/packages/opencode/src/auth/github-copilot.ts
index c9d90cd56..bd5740c9b 100644
--- a/packages/opencode/src/auth/github-copilot.ts
+++ b/packages/opencode/src/auth/github-copilot.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Auth } from "./index"
import { NamedError } from "../util/error"
diff --git a/packages/opencode/src/auth/index.ts b/packages/opencode/src/auth/index.ts
index ef9846a37..6d90c9325 100644
--- a/packages/opencode/src/auth/index.ts
+++ b/packages/opencode/src/auth/index.ts
@@ -1,7 +1,7 @@
import path from "path"
import { Global } from "../global"
import fs from "fs/promises"
-import z from "zod/v4"
+import z from "zod"
export namespace Auth {
export const Oauth = z
diff --git a/packages/opencode/src/bun/index.ts b/packages/opencode/src/bun/index.ts
index d6fb29d62..8874a27ca 100644
--- a/packages/opencode/src/bun/index.ts
+++ b/packages/opencode/src/bun/index.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Global } from "../global"
import { Log } from "../util/log"
import path from "path"
diff --git a/packages/opencode/src/bus/index.ts b/packages/opencode/src/bus/index.ts
index 7fbefba44..f4dd3ed2c 100644
--- a/packages/opencode/src/bus/index.ts
+++ b/packages/opencode/src/bus/index.ts
@@ -1,5 +1,5 @@
-import z from "zod/v4"
-import type { ZodType } from "zod/v4"
+import z from "zod"
+import type { ZodType } from "zod"
import { Log } from "../util/log"
import { Instance } from "../project/instance"
diff --git a/packages/opencode/src/cli/ui.ts b/packages/opencode/src/cli/ui.ts
index bdbaed911..361e45255 100644
--- a/packages/opencode/src/cli/ui.ts
+++ b/packages/opencode/src/cli/ui.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { EOL } from "os"
import { NamedError } from "../util/error"
diff --git a/packages/opencode/src/command/index.ts b/packages/opencode/src/command/index.ts
index f879e627a..c6b24c75b 100644
--- a/packages/opencode/src/command/index.ts
+++ b/packages/opencode/src/command/index.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Config } from "../config/config"
import { Instance } from "../project/instance"
diff --git a/packages/opencode/src/config/config.ts b/packages/opencode/src/config/config.ts
index 237240418..4c6003b9e 100644
--- a/packages/opencode/src/config/config.ts
+++ b/packages/opencode/src/config/config.ts
@@ -1,7 +1,7 @@
import { Log } from "../util/log"
import path from "path"
import os from "os"
-import z from "zod/v4"
+import z from "zod"
import { Filesystem } from "../util/filesystem"
import { ModelsDev } from "../provider/models"
import { mergeDeep, pipe } from "remeda"
diff --git a/packages/opencode/src/file/fzf.ts b/packages/opencode/src/file/fzf.ts
index 7a35351fa..cd0aa4fc8 100644
--- a/packages/opencode/src/file/fzf.ts
+++ b/packages/opencode/src/file/fzf.ts
@@ -1,7 +1,7 @@
import path from "path"
import { Global } from "../global"
import fs from "fs/promises"
-import z from "zod/v4"
+import z from "zod"
import { NamedError } from "../util/error"
import { lazy } from "../util/lazy"
import { Log } from "../util/log"
diff --git a/packages/opencode/src/file/index.ts b/packages/opencode/src/file/index.ts
index 1478de86c..49eac54ac 100644
--- a/packages/opencode/src/file/index.ts
+++ b/packages/opencode/src/file/index.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Bus } from "../bus"
import { $ } from "bun"
import type { BunFile } from "bun"
diff --git a/packages/opencode/src/file/ripgrep.ts b/packages/opencode/src/file/ripgrep.ts
index f575154e0..6e7f549a7 100644
--- a/packages/opencode/src/file/ripgrep.ts
+++ b/packages/opencode/src/file/ripgrep.ts
@@ -2,7 +2,7 @@
import path from "path"
import { Global } from "../global"
import fs from "fs/promises"
-import z from "zod/v4"
+import z from "zod"
import { NamedError } from "../util/error"
import { lazy } from "../util/lazy"
import { $ } from "bun"
@@ -218,7 +218,7 @@ export namespace Ripgrep {
code: "ENOENT",
errno: -2,
path: input.cwd,
- });
+ })
}
const proc = Bun.spawn(args, {
diff --git a/packages/opencode/src/file/watcher.ts b/packages/opencode/src/file/watcher.ts
index 1bae71cfb..7d190c60b 100644
--- a/packages/opencode/src/file/watcher.ts
+++ b/packages/opencode/src/file/watcher.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Bus } from "../bus"
import { Flag } from "../flag/flag"
import { Instance } from "../project/instance"
diff --git a/packages/opencode/src/id/id.ts b/packages/opencode/src/id/id.ts
index ec24f30d9..99eb6c9ff 100644
--- a/packages/opencode/src/id/id.ts
+++ b/packages/opencode/src/id/id.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { randomBytes } from "crypto"
export namespace Identifier {
diff --git a/packages/opencode/src/ide/index.ts b/packages/opencode/src/ide/index.ts
index 7ab2e7ff4..ac80dac3e 100644
--- a/packages/opencode/src/ide/index.ts
+++ b/packages/opencode/src/ide/index.ts
@@ -1,5 +1,5 @@
import { spawn } from "bun"
-import z from "zod/v4"
+import z from "zod"
import { NamedError } from "../util/error"
import { Log } from "../util/log"
import { Bus } from "../bus"
diff --git a/packages/opencode/src/installation/index.ts b/packages/opencode/src/installation/index.ts
index 5e2a3cd33..19c6674cc 100644
--- a/packages/opencode/src/installation/index.ts
+++ b/packages/opencode/src/installation/index.ts
@@ -1,6 +1,6 @@
import path from "path"
import { $ } from "bun"
-import z from "zod/v4"
+import z from "zod"
import { NamedError } from "../util/error"
import { Bus } from "../bus"
import { Log } from "../util/log"
diff --git a/packages/opencode/src/lsp/client.ts b/packages/opencode/src/lsp/client.ts
index 8a6589680..2d36f454b 100644
--- a/packages/opencode/src/lsp/client.ts
+++ b/packages/opencode/src/lsp/client.ts
@@ -4,7 +4,7 @@ import type { Diagnostic as VSCodeDiagnostic } from "vscode-languageserver-types
import { Log } from "../util/log"
import { LANGUAGE_EXTENSIONS } from "./language"
import { Bus } from "../bus"
-import z from "zod/v4"
+import z from "zod"
import type { LSPServer } from "./server"
import { NamedError } from "../util/error"
import { withTimeout } from "../util/timeout"
diff --git a/packages/opencode/src/lsp/index.ts b/packages/opencode/src/lsp/index.ts
index d811b2378..d533815fe 100644
--- a/packages/opencode/src/lsp/index.ts
+++ b/packages/opencode/src/lsp/index.ts
@@ -2,7 +2,7 @@ import { Log } from "../util/log"
import { LSPClient } from "./client"
import path from "path"
import { LSPServer } from "./server"
-import z from "zod/v4"
+import z from "zod"
import { Config } from "../config/config"
import { spawn } from "child_process"
import { Instance } from "../project/instance"
diff --git a/packages/opencode/src/mcp/index.ts b/packages/opencode/src/mcp/index.ts
index dc5bb8b86..fa3513bb7 100644
--- a/packages/opencode/src/mcp/index.ts
+++ b/packages/opencode/src/mcp/index.ts
@@ -5,7 +5,7 @@ import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js"
import { Config } from "../config/config"
import { Log } from "../util/log"
import { NamedError } from "../util/error"
-import z from "zod/v4"
+import z from "zod"
import { Session } from "../session"
import { Bus } from "../bus"
import { Instance } from "../project/instance"
diff --git a/packages/opencode/src/permission/index.ts b/packages/opencode/src/permission/index.ts
index f4b178234..a36da6e81 100644
--- a/packages/opencode/src/permission/index.ts
+++ b/packages/opencode/src/permission/index.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Bus } from "../bus"
import { Log } from "../util/log"
import { Identifier } from "../id/id"
diff --git a/packages/opencode/src/project/project.ts b/packages/opencode/src/project/project.ts
index 88134483e..34bd4aea7 100644
--- a/packages/opencode/src/project/project.ts
+++ b/packages/opencode/src/project/project.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Filesystem } from "../util/filesystem"
import path from "path"
import { $ } from "bun"
diff --git a/packages/opencode/src/provider/models.ts b/packages/opencode/src/provider/models.ts
index 6003c701e..4981d38b3 100644
--- a/packages/opencode/src/provider/models.ts
+++ b/packages/opencode/src/provider/models.ts
@@ -1,7 +1,7 @@
import { Global } from "../global"
import { Log } from "../util/log"
import path from "path"
-import z from "zod/v4"
+import z from "zod"
import { data } from "./models-macro" with { type: "macro" }
import { Installation } from "../installation"
diff --git a/packages/opencode/src/provider/provider.ts b/packages/opencode/src/provider/provider.ts
index bc95e543b..c42b361b1 100644
--- a/packages/opencode/src/provider/provider.ts
+++ b/packages/opencode/src/provider/provider.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import path from "path"
import { Config } from "../config/config"
import { mergeDeep, sortBy } from "remeda"
diff --git a/packages/opencode/src/server/server.ts b/packages/opencode/src/server/server.ts
index 00c9475b7..550312c44 100644
--- a/packages/opencode/src/server/server.ts
+++ b/packages/opencode/src/server/server.ts
@@ -5,7 +5,7 @@ import { Hono } from "hono"
import { cors } from "hono/cors"
import { stream, streamSSE } from "hono/streaming"
import { Session } from "../session"
-import z from "zod/v4"
+import z from "zod"
import { Provider } from "../provider/provider"
import { mapValues } from "remeda"
import { NamedError } from "../util/error"
diff --git a/packages/opencode/src/session/compaction.ts b/packages/opencode/src/session/compaction.ts
index b23fa7cdd..d9ead5791 100644
--- a/packages/opencode/src/session/compaction.ts
+++ b/packages/opencode/src/session/compaction.ts
@@ -7,7 +7,7 @@ import { defer } from "../util/defer"
import { MessageV2 } from "./message-v2"
import { SystemPrompt } from "./system"
import { Bus } from "../bus"
-import z from "zod/v4"
+import z from "zod"
import type { ModelsDev } from "../provider/models"
import { SessionPrompt } from "./prompt"
import { Flag } from "../flag/flag"
diff --git a/packages/opencode/src/session/index.ts b/packages/opencode/src/session/index.ts
index 640dd55c2..ee4cc704f 100644
--- a/packages/opencode/src/session/index.ts
+++ b/packages/opencode/src/session/index.ts
@@ -1,5 +1,5 @@
import { Decimal } from "decimal.js"
-import z from "zod/v4"
+import z from "zod"
import { type LanguageModelUsage, type ProviderMetadata } from "ai"
import PROMPT_INITIALIZE from "../session/prompt/initialize.txt"
diff --git a/packages/opencode/src/session/lock.ts b/packages/opencode/src/session/lock.ts
index 4b510dc97..ed024edab 100644
--- a/packages/opencode/src/session/lock.ts
+++ b/packages/opencode/src/session/lock.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Instance } from "../project/instance"
import { Log } from "../util/log"
import { NamedError } from "../util/error"
diff --git a/packages/opencode/src/session/message-v2.ts b/packages/opencode/src/session/message-v2.ts
index c37773b74..e1a5c844f 100644
--- a/packages/opencode/src/session/message-v2.ts
+++ b/packages/opencode/src/session/message-v2.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Bus } from "../bus"
import { NamedError } from "../util/error"
import { Message } from "./message"
diff --git a/packages/opencode/src/session/message.ts b/packages/opencode/src/session/message.ts
index f8b5115fb..4471f9235 100644
--- a/packages/opencode/src/session/message.ts
+++ b/packages/opencode/src/session/message.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { NamedError } from "../util/error"
export namespace Message {
diff --git a/packages/opencode/src/session/prompt.ts b/packages/opencode/src/session/prompt.ts
index b769d6052..7018978e2 100644
--- a/packages/opencode/src/session/prompt.ts
+++ b/packages/opencode/src/session/prompt.ts
@@ -1,7 +1,7 @@
import path from "path"
import os from "os"
import fs from "fs/promises"
-import z from "zod/v4"
+import z from "zod"
import { Identifier } from "../id/id"
import { MessageV2 } from "./message-v2"
import { Log } from "../util/log"
diff --git a/packages/opencode/src/session/revert.ts b/packages/opencode/src/session/revert.ts
index 0b0f4294f..a88b5f08f 100644
--- a/packages/opencode/src/session/revert.ts
+++ b/packages/opencode/src/session/revert.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Identifier } from "../id/id"
import { Snapshot } from "../snapshot"
import { MessageV2 } from "./message-v2"
diff --git a/packages/opencode/src/session/todo.ts b/packages/opencode/src/session/todo.ts
index d0b454f75..d52087739 100644
--- a/packages/opencode/src/session/todo.ts
+++ b/packages/opencode/src/session/todo.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Bus } from "../bus"
import { Storage } from "../storage/storage"
diff --git a/packages/opencode/src/snapshot/index.ts b/packages/opencode/src/snapshot/index.ts
index 4301694a8..98b316804 100644
--- a/packages/opencode/src/snapshot/index.ts
+++ b/packages/opencode/src/snapshot/index.ts
@@ -3,7 +3,7 @@ import path from "path"
import fs from "fs/promises"
import { Log } from "../util/log"
import { Global } from "../global"
-import z from "zod/v4"
+import z from "zod"
import { Config } from "../config/config"
import { Instance } from "../project/instance"
diff --git a/packages/opencode/src/tool/bash.ts b/packages/opencode/src/tool/bash.ts
index d56b4690b..6a7af3811 100644
--- a/packages/opencode/src/tool/bash.ts
+++ b/packages/opencode/src/tool/bash.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { spawn } from "child_process"
import { Tool } from "./tool"
import DESCRIPTION from "./bash.txt"
diff --git a/packages/opencode/src/tool/edit.ts b/packages/opencode/src/tool/edit.ts
index c993c5fbf..a8e6fc3b6 100644
--- a/packages/opencode/src/tool/edit.ts
+++ b/packages/opencode/src/tool/edit.ts
@@ -3,7 +3,7 @@
// https://github.com/google-gemini/gemini-cli/blob/main/packages/core/src/utils/editCorrector.ts
// https://github.com/cline/cline/blob/main/evals/diff-edits/diff-apply/diff-06-26-25.ts
-import z from "zod/v4"
+import z from "zod"
import * as path from "path"
import { Tool } from "./tool"
import { LSP } from "../lsp"
diff --git a/packages/opencode/src/tool/glob.ts b/packages/opencode/src/tool/glob.ts
index 7553a5aa5..11c12f19a 100644
--- a/packages/opencode/src/tool/glob.ts
+++ b/packages/opencode/src/tool/glob.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import path from "path"
import { Tool } from "./tool"
import DESCRIPTION from "./glob.txt"
diff --git a/packages/opencode/src/tool/grep.ts b/packages/opencode/src/tool/grep.ts
index cc654e339..a4d57b3d6 100644
--- a/packages/opencode/src/tool/grep.ts
+++ b/packages/opencode/src/tool/grep.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Tool } from "./tool"
import { Ripgrep } from "../file/ripgrep"
diff --git a/packages/opencode/src/tool/invalid.ts b/packages/opencode/src/tool/invalid.ts
index 318c4b134..728e9c89f 100644
--- a/packages/opencode/src/tool/invalid.ts
+++ b/packages/opencode/src/tool/invalid.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Tool } from "./tool"
export const InvalidTool = Tool.define("invalid", {
diff --git a/packages/opencode/src/tool/ls.ts b/packages/opencode/src/tool/ls.ts
index b80f668a5..95c36e745 100644
--- a/packages/opencode/src/tool/ls.ts
+++ b/packages/opencode/src/tool/ls.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Tool } from "./tool"
import * as path from "path"
import DESCRIPTION from "./ls.txt"
diff --git a/packages/opencode/src/tool/lsp-diagnostics.ts b/packages/opencode/src/tool/lsp-diagnostics.ts
index 6ea1b0593..18a6868b6 100644
--- a/packages/opencode/src/tool/lsp-diagnostics.ts
+++ b/packages/opencode/src/tool/lsp-diagnostics.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Tool } from "./tool"
import path from "path"
import { LSP } from "../lsp"
diff --git a/packages/opencode/src/tool/lsp-hover.ts b/packages/opencode/src/tool/lsp-hover.ts
index 2999d17ae..7ef856cc5 100644
--- a/packages/opencode/src/tool/lsp-hover.ts
+++ b/packages/opencode/src/tool/lsp-hover.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Tool } from "./tool"
import path from "path"
import { LSP } from "../lsp"
diff --git a/packages/opencode/src/tool/multiedit.ts b/packages/opencode/src/tool/multiedit.ts
index 2a1b2fbbb..7f562f473 100644
--- a/packages/opencode/src/tool/multiedit.ts
+++ b/packages/opencode/src/tool/multiedit.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Tool } from "./tool"
import { EditTool } from "./edit"
import DESCRIPTION from "./multiedit.txt"
diff --git a/packages/opencode/src/tool/patch.ts b/packages/opencode/src/tool/patch.ts
index 8f3033080..118e0840c 100644
--- a/packages/opencode/src/tool/patch.ts
+++ b/packages/opencode/src/tool/patch.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import * as path from "path"
import * as fs from "fs/promises"
import { Tool } from "./tool"
@@ -17,7 +17,8 @@ const PatchParams = z.object({
})
export const PatchTool = Tool.define("patch", {
- description: "Apply a patch to modify multiple files. Supports adding, updating, and deleting files with context-aware changes.",
+ description:
+ "Apply a patch to modify multiple files. Supports adding, updating, and deleting files with context-aware changes.",
parameters: PatchParams,
async execute(params, ctx) {
if (!params.patchText) {
@@ -46,12 +47,12 @@ export const PatchTool = Tool.define("patch", {
type: "add" | "update" | "delete" | "move"
movePath?: string
}> = []
-
+
let totalDiff = ""
for (const hunk of hunks) {
const filePath = path.resolve(Instance.directory, hunk.path)
-
+
if (!Filesystem.contains(Instance.directory, filePath)) {
throw new Error(`File ${filePath} is not in the current working directory`)
}
@@ -62,30 +63,30 @@ export const PatchTool = Tool.define("patch", {
const oldContent = ""
const newContent = hunk.contents
const diff = createTwoFilesPatch(filePath, filePath, oldContent, newContent)
-
+
fileChanges.push({
filePath,
oldContent,
newContent,
type: "add",
})
-
+
totalDiff += diff + "\n"
}
break
-
+
case "update":
// Check if file exists for update
const stats = await fs.stat(filePath).catch(() => null)
if (!stats || stats.isDirectory()) {
throw new Error(`File not found or is directory: ${filePath}`)
}
-
+
// Read file and update time tracking (like edit tool does)
await FileTime.assert(ctx.sessionID, filePath)
const oldContent = await fs.readFile(filePath, "utf-8")
let newContent = oldContent
-
+
// Apply the update chunks to get new content
try {
const fileUpdate = Patch.deriveNewContentsFromChunks(filePath, hunk.chunks)
@@ -93,9 +94,9 @@ export const PatchTool = Tool.define("patch", {
} catch (error) {
throw new Error(`Failed to apply update to ${filePath}: ${error}`)
}
-
+
const diff = createTwoFilesPatch(filePath, filePath, oldContent, newContent)
-
+
fileChanges.push({
filePath,
oldContent,
@@ -103,23 +104,23 @@ export const PatchTool = Tool.define("patch", {
type: hunk.move_path ? "move" : "update",
movePath: hunk.move_path ? path.resolve(Instance.directory, hunk.move_path) : undefined,
})
-
+
totalDiff += diff + "\n"
break
-
+
case "delete":
// Check if file exists for deletion
await FileTime.assert(ctx.sessionID, filePath)
const contentToDelete = await fs.readFile(filePath, "utf-8")
const deleteDiff = createTwoFilesPatch(filePath, filePath, contentToDelete, "")
-
+
fileChanges.push({
filePath,
oldContent: contentToDelete,
newContent: "",
type: "delete",
})
-
+
totalDiff += deleteDiff + "\n"
break
}
@@ -141,7 +142,7 @@ export const PatchTool = Tool.define("patch", {
// Apply the changes
const changedFiles: string[] = []
-
+
for (const change of fileChanges) {
switch (change.type) {
case "add":
@@ -153,12 +154,12 @@ export const PatchTool = Tool.define("patch", {
await fs.writeFile(change.filePath, change.newContent, "utf-8")
changedFiles.push(change.filePath)
break
-
+
case "update":
await fs.writeFile(change.filePath, change.newContent, "utf-8")
changedFiles.push(change.filePath)
break
-
+
case "move":
if (change.movePath) {
// Create parent directories for destination
@@ -173,13 +174,13 @@ export const PatchTool = Tool.define("patch", {
changedFiles.push(change.movePath)
}
break
-
+
case "delete":
await fs.unlink(change.filePath)
changedFiles.push(change.filePath)
break
}
-
+
// Update file time tracking
FileTime.read(ctx.sessionID, change.filePath)
if (change.movePath) {
@@ -193,7 +194,7 @@ export const PatchTool = Tool.define("patch", {
}
// Generate output summary
- const relativePaths = changedFiles.map(filePath => path.relative(Instance.worktree, filePath))
+ const relativePaths = changedFiles.map((filePath) => path.relative(Instance.worktree, filePath))
const summary = `${fileChanges.length} files changed`
return {
@@ -201,7 +202,7 @@ export const PatchTool = Tool.define("patch", {
metadata: {
diff: totalDiff,
},
- output: `Patch applied successfully. ${summary}:\n${relativePaths.map(p => ` ${p}`).join("\n")}`,
+ output: `Patch applied successfully. ${summary}:\n${relativePaths.map((p) => ` ${p}`).join("\n")}`,
}
},
-}) \ No newline at end of file
+})
diff --git a/packages/opencode/src/tool/read.ts b/packages/opencode/src/tool/read.ts
index 5e8cecaf2..bc89dae2c 100644
--- a/packages/opencode/src/tool/read.ts
+++ b/packages/opencode/src/tool/read.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import * as fs from "fs"
import * as path from "path"
import { Tool } from "./tool"
diff --git a/packages/opencode/src/tool/registry.ts b/packages/opencode/src/tool/registry.ts
index 1d6372090..4ea70f289 100644
--- a/packages/opencode/src/tool/registry.ts
+++ b/packages/opencode/src/tool/registry.ts
@@ -16,7 +16,7 @@ import { Instance } from "../project/instance"
import { Config } from "../config/config"
import path from "path"
import { type ToolDefinition } from "@opencode-ai/plugin"
-import z from "zod/v4"
+import z from "zod"
import { Plugin } from "../plugin"
export namespace ToolRegistry {
diff --git a/packages/opencode/src/tool/task.ts b/packages/opencode/src/tool/task.ts
index 95f650e01..830c298a5 100644
--- a/packages/opencode/src/tool/task.ts
+++ b/packages/opencode/src/tool/task.ts
@@ -1,6 +1,6 @@
import { Tool } from "./tool"
import DESCRIPTION from "./task.txt"
-import z from "zod/v4"
+import z from "zod"
import { Session } from "../session"
import { Bus } from "../bus"
import { MessageV2 } from "../session/message-v2"
diff --git a/packages/opencode/src/tool/todo.ts b/packages/opencode/src/tool/todo.ts
index 63180eb6e..fffe9d107 100644
--- a/packages/opencode/src/tool/todo.ts
+++ b/packages/opencode/src/tool/todo.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Tool } from "./tool"
import DESCRIPTION_WRITE from "./todowrite.txt"
import { Todo } from "../session/todo"
diff --git a/packages/opencode/src/tool/tool.ts b/packages/opencode/src/tool/tool.ts
index 2fc72274d..978c9c072 100644
--- a/packages/opencode/src/tool/tool.ts
+++ b/packages/opencode/src/tool/tool.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import type { MessageV2 } from "../session/message-v2"
export namespace Tool {
diff --git a/packages/opencode/src/tool/webfetch.ts b/packages/opencode/src/tool/webfetch.ts
index 71b09cd95..0333bb018 100644
--- a/packages/opencode/src/tool/webfetch.ts
+++ b/packages/opencode/src/tool/webfetch.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import { Tool } from "./tool"
import TurndownService from "turndown"
import DESCRIPTION from "./webfetch.txt"
diff --git a/packages/opencode/src/tool/write.ts b/packages/opencode/src/tool/write.ts
index aa79c9bfb..fb7e2fe03 100644
--- a/packages/opencode/src/tool/write.ts
+++ b/packages/opencode/src/tool/write.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
import * as path from "path"
import { Tool } from "./tool"
import { LSP } from "../lsp"
diff --git a/packages/opencode/src/util/error.ts b/packages/opencode/src/util/error.ts
index 6e5414f46..d488abb6c 100644
--- a/packages/opencode/src/util/error.ts
+++ b/packages/opencode/src/util/error.ts
@@ -1,4 +1,4 @@
-import z from "zod/v4"
+import z from "zod"
export abstract class NamedError extends Error {
abstract schema(): z.core.$ZodType
diff --git a/packages/opencode/src/util/log.ts b/packages/opencode/src/util/log.ts
index 5844a114f..463069562 100644
--- a/packages/opencode/src/util/log.ts
+++ b/packages/opencode/src/util/log.ts
@@ -1,7 +1,7 @@
import path from "path"
import fs from "fs/promises"
import { Global } from "../global"
-import z from "zod/v4"
+import z from "zod"
export namespace Log {
export const Level = z.enum(["DEBUG", "INFO", "WARN", "ERROR"]).meta({ ref: "LogLevel", description: "Log level" })
diff --git a/packages/plugin/src/tool.ts b/packages/plugin/src/tool.ts
index 2998a1e72..37e802ac4 100644
--- a/packages/plugin/src/tool.ts
+++ b/packages/plugin/src/tool.ts
@@ -1,4 +1,4 @@
-import { z } from "zod/v4"
+import { z } from "zod"
export type ToolContext = {
sessionID: string