core: fix custom tool loading to properly resolve module paths
parent
2678ceb45e
commit
3c2fda4d91
|
|
@ -30,6 +30,7 @@ import { Truncate } from "./truncation"
|
|||
import { ApplyPatchTool } from "./apply_patch"
|
||||
import { Glob } from "../util/glob"
|
||||
import { pathToFileURL } from "url"
|
||||
import { createRequire } from "module"
|
||||
|
||||
export namespace ToolRegistry {
|
||||
const log = Log.create({ service: "tool.registry" })
|
||||
|
|
@ -45,7 +46,9 @@ export namespace ToolRegistry {
|
|||
if (matches.length) await Config.waitForDependencies()
|
||||
for (const match of matches) {
|
||||
const namespace = path.basename(match, path.extname(match))
|
||||
const mod = await import(pathToFileURL(match).href)
|
||||
const require = createRequire(match)
|
||||
const resolved = require.resolve(match)
|
||||
const mod = await import(pathToFileURL(resolved).href)
|
||||
for (const [id, def] of Object.entries<ToolDefinition>(mod)) {
|
||||
custom.push(fromPlugin(id === "default" ? namespace : `${namespace}_${id}`, def))
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in New Issue