mirror of
https://github.com/anomalyco/opencode.git
synced 2026-07-24 12:15:51 -04:00
31 lines
1.0 KiB
TypeScript
31 lines
1.0 KiB
TypeScript
import { Effect, Layer } from "effect"
|
|
import { Config } from "@opencode-ai/core/config"
|
|
import { Location } from "@opencode-ai/core/location"
|
|
import { MCP } from "@opencode-ai/core/mcp/index"
|
|
import { AbsolutePath } from "@opencode-ai/core/schema"
|
|
import { location } from "./location"
|
|
|
|
export const emptyMcpLayer = Layer.succeed(
|
|
MCP.Service,
|
|
MCP.Service.of({
|
|
servers: () => Effect.succeed([]),
|
|
tools: () => Effect.succeed([]),
|
|
callTool: () => Effect.die("unused mcp.callTool"),
|
|
instructions: () => Effect.succeed([]),
|
|
prompts: () => Effect.succeed([]),
|
|
prompt: () => Effect.succeed(undefined),
|
|
resourceCatalog: () => Effect.succeed(new MCP.ResourceCatalog({ resources: [], templates: [] })),
|
|
readResource: () => Effect.succeed(undefined),
|
|
}),
|
|
)
|
|
|
|
export const emptyConfigLayer = Layer.succeed(
|
|
Config.Service,
|
|
Config.Service.of({ entries: () => Effect.succeed([]) }),
|
|
)
|
|
|
|
export const testLocationLayer = Layer.succeed(
|
|
Location.Service,
|
|
Location.Service.of(location({ directory: AbsolutePath.make(process.cwd()) })),
|
|
)
|