MCPcopy Index your code
hub / github.com/anomalyco/opencode / plugin

Function plugin

packages/opencode/test/plugin/install-concurrency.test.ts:26–48  ·  view source on GitHub ↗
(dir: string, kinds: Array<"server" | "tui">)

Source from the content-addressed store, hash-verified

24}
25
26async function plugin(dir: string, kinds: Array<"server" | "tui">) {
27 const p = path.join(dir, "plugin")
28 const server = kinds.includes("server")
29 const tui = kinds.includes("tui")
30 const exports: Record<string, string> = {}
31 if (server) exports["./server"] = "./server.js"
32 if (tui) exports["./tui"] = "./tui.js"
33 await fs.mkdir(p, { recursive: true })
34 await Bun.write(
35 path.join(p, "package.json"),
36 JSON.stringify(
37 {
38 name: "acme",
39 version: "1.0.0",
40 ...(server ? { main: "./server.js" } : {}),
41 ...(Object.keys(exports).length ? { exports } : {}),
42 },
43 null,
44 2,
45 ),
46 )
47 return p
48}
49
50async function read(file: string) {
51 return Filesystem.readJson<{ plugin?: unknown[] }>(file)

Callers 1

Calls 1

writeMethod · 0.80

Tested by

no test coverage detected