Files
scriptc/tests/fixtures/effect4/ai-tool-execute.ts
Chris Tate e2d58f60d2 Expand static support for common Effect 4 patterns (#600)
* Expand static compilation for common Effect 4 patterns

* Run every Effect 4 fixture slice in CI

* Preserve existing corpus behavior across Effect 4 lowering

* Preserve Effect platform callbacks and native stream state

* Record new corpus baselines and retain child stdin refusals

* Retire the obsolete stateful regex diagnostic

* Preserve promise reference count layout for cycle collection
2026-10-01 17:36:29 -05:00

7 lines
669 B
TypeScript

import * as Effect from "effect/Effect"
import * as Stream from "effect/Stream"
import * as Schema from "effect/Schema"
import * as Tool from "effect/ai/Tool"
import * as Toolkit from "effect/ai/Toolkit"
const kit=Toolkit.make(Tool.make("double",{description:"double",parameters:Schema.Struct({n:Schema.Number}),success:Schema.Number}));const layer=kit.toLayer({double:({n})=>Effect.succeed(n*2)});Effect.runPromise((Effect.gen(function*(){const handlers=yield* kit;const stream=yield* handlers.handle("double",{n:21},"call-1");return yield* Stream.runCollect(stream)}).pipe(Effect.provide(layer))).pipe(Effect.tap(v=>Effect.sync(()=>console.log(JSON.stringify(v))))))