fix(server): apply plugin pty environment (#32296)

This commit is contained in:
Shoubhit Dash
2026-06-14 16:47:48 +05:30
committed by GitHub
parent 1d195452f5
commit e2ad6d0d9c
8 changed files with 135 additions and 3 deletions
@@ -0,0 +1,24 @@
export * as PluginPtyEnvironment from "./pty-environment"
import { PtyEnvironment } from "@opencode-ai/server/pty-environment"
import { Effect, Layer } from "effect"
import { InstanceStore } from "@/project/instance-store"
import { Plugin } from "."
export const layer = Layer.effect(
PtyEnvironment.Service,
Effect.gen(function* () {
const plugin = yield* Plugin.Service
const instances = yield* InstanceStore.Service
return PtyEnvironment.Service.of({
get: Effect.fn("PtyEnvironment.get")(function* (input) {
return yield* instances.provide(
{ directory: input.directory },
plugin
.trigger("shell.env", { cwd: input.cwd }, { env: {} as Record<string, string> })
.pipe(Effect.map((result) => result.env)),
)
}),
})
}),
)