MCPcopy Create free account
hub / github.com/anomalyco/opencode / withSh

Function withSh

packages/opencode/test/session/prompt.test.ts:75–91  ·  view source on GitHub ↗
(fx: () => Effect.Effect<A, E, R>)

Source from the content-addressed store, hash-verified

73}
74
75function withSh<A, E, R>(fx: () => Effect.Effect<A, E, R>) {
76 return Effect.acquireUseRelease(
77 Effect.sync(() => {
78 const prev = process.env.SHELL
79 process.env.SHELL = "/bin/sh"
80 Shell.preferred.reset()
81 return prev
82 }),
83 () => fx(),
84 (prev) =>
85 Effect.sync(() => {
86 if (prev === undefined) delete process.env.SHELL
87 else process.env.SHELL = prev
88 Shell.preferred.reset()
89 }),
90 )
91}
92
93function toolPart(parts: SessionV1.Part[]) {
94 return parts.find((part): part is SessionV1.ToolPart => part.type === "tool")

Callers 1

prompt.test.tsFile · 0.85

Calls 2

syncMethod · 0.80
resetMethod · 0.45

Tested by

no test coverage detected