35 lines
1.3 KiB
TypeScript
35 lines
1.3 KiB
TypeScript
import { AppNodeBuilder } from "@opencode-ai/core/effect/app-node-builder"
|
|
import { LayerNode } from "@opencode-ai/core/effect/layer-node"
|
|
import { Database } from "@opencode-ai/core/database/database"
|
|
import { FSUtil } from "@opencode-ai/core/fs-util"
|
|
import { Auth } from "../../src/auth"
|
|
import { Workspace } from "../../src/control-plane/workspace"
|
|
import { RuntimeFlags } from "../../src/effect/runtime-flags"
|
|
import { InstanceBootstrap } from "../../src/project/bootstrap"
|
|
import { InstanceStore } from "../../src/project/instance-store"
|
|
import { Project } from "../../src/project/project"
|
|
import { Vcs } from "../../src/project/vcs"
|
|
import { Session } from "../../src/session/session"
|
|
import { SessionPrompt } from "../../src/session/prompt"
|
|
import { EventV2Bridge } from "../../src/event-v2-bridge"
|
|
|
|
export const workspaceLayerWithRuntimeFlags = (overrides: Partial<RuntimeFlags.Info>) =>
|
|
AppNodeBuilder.build(
|
|
LayerNode.group([
|
|
Workspace.node,
|
|
Auth.node,
|
|
Session.node,
|
|
SessionPrompt.node,
|
|
Project.node,
|
|
Vcs.node,
|
|
Database.node,
|
|
EventV2Bridge.node,
|
|
FSUtil.node,
|
|
InstanceStore.node,
|
|
]),
|
|
[
|
|
[InstanceStore.bootstrapNode, InstanceBootstrap.node],
|
|
[RuntimeFlags.node, RuntimeFlags.layer(overrides)],
|
|
],
|
|
)
|