effect: Effect bridge package (LanguageModel over gateway + agent, schema interop, scoped sandbox layers)
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- typescript
Direzione di ricerca
Inizia esaminando gli entry point dei package esistenti @coder/ai-sdk-provider, @coder/ai-sdk-sandbox e @coder/ai-sdk-agent, quindi crea lo scaffold del package privato packages/effect. Segui la roadmap di Phase 1: implementa il mapping del provider, gli helper per gli schema e i layer sandbox con scope, aggiungi unit test e la validazione live su dev.coder.com, e documenta le API Effect bloccate nel README del package.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Tracking issue for an Effect bridge to the Coder AI SDK — a new packages/effect package (@coder/ai-sdk-effect) exposing the three existing packages through Effect-native abstractions.
Architecture
The bridge adapts our imperative SDK surfaces to Effect's service/Layer/Stream model without changing the underlying packages:
LanguageModelservice over AI Gateway (@coder/ai-sdk-provider): implement Effect'sLanguageModelinterface on top of the gateway endpoints, mapping EffectPrompt/Responseto the provider's chat-completions/messages calls and HTTP failures to typedAiErrors (auth, quota, provider-unavailable, malformed-response), preserving the centralized vs BYOK auth modes.- Schema interop: helpers bridging Standard Schema / Effect Schema to the SDK's tool-definition and structured-output surfaces, so Effect users define tools and output schemas in Effect Schema and get correct wire types both directions.
- Scoped resource management for sandboxes (
@coder/ai-sdk-sandbox):ensureCoderWorkspace+ session lifecycle asEffect.acquireRelease/ scopedLayers, so workspace acquisition, agent-readiness waits, and teardown compose with Effect scopes and interruption. LanguageModelover CoderAgent/chatd (@coder/ai-sdk-agent): server-side agent loop as an Effect service —TurnTranslatoroutput mapped ontoEffect Stream, fiber interruption wired toagent.interrupt(), and the SDK's retryable/terminal error taxonomy (CoderStreamError.isRetryable, timeout vs cancellation) surfaced as tagged errors usable with Effect retry policies.
Roadmap
Phase 1 — Spike (merged: #145)
-
packages/effectscaffold (private, excluded from release-please until graduation) - Effect
LanguageModelimplementation over@coder/ai-sdk-provider(AI Gateway): Prompt/Response mapping + typedAiErrorhierarchy for HTTP errors - Standard Schema / Effect Schema interop helpers for tool definitions and structured outputs
- Scoped
Layers for workspace sandbox lifecycle (ensureCoderWorkspace+ session asEffect.acquireRelease) - Unit tests + live validation against dev.coder.com
Phase 2 (2A merged: #240, #241, #242; publishing decision pending)
-
LanguageModelimplementation overCoderAgent/chatd:TurnTranslator→Effect Streammapping - Fiber interruption →
agent.interrupt() - Retryable error tagging aligned with Effect retry policies
- Publishing decision: versioning, peerDependency policy on
effect/@effect/ai, release-please wiring
Notes
- Spike ships as a private package: no npm publish and no release-please manifest entry until Phase 1 review concludes the API shape is right.
- Effect / @effect/ai are fast-moving; the spike should pin exact versions and record the pinned API surface in the package README.
Generated with mux • Model: anthropic:claude-fable-5 • Thinking: xhigh
- Lingua principale
- TypeScript
- Stelle
- 3
- Fork
- 0
- Merge medio
- 55m
- PR unite (30g)
- 136
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di coder/ai-sdk
-
Coder Agents client tools: $ref in tool input schemas is not resolvedForse già presa @ThomasK33 l’ha presa 6 giorni fa. Aperta
coder/ai-sdk#321 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
chore: adopt pnpm 12Apertaaccepted dependencies
Difficoltà 5/5 Più di una settimana Idoneità per principianti 35/100
coder/ai-sdk#176 · 2 commenti ·
I maintainer di solito rispondono entro 1 giorno
-
chore: adopt TypeScript 7Apertaaccepted dependencies
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
coder/ai-sdk#99 · 3 commenti ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di coder/ai-sdk
Issue simili
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 65/100
521xueweihan/HelloGitHub#4025 ·
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 82/100
voidzero-dev/void#478 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 69/100
Small-tailqwq/dsh-deep-whale#207 ·
I maintainer di solito rispondono entro 1 giorno
-
The inspector never shows the instances field, so scaling out is unreachableForse già presa @Mrkewl l’ha presa oggi. Aperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
xevrion/breakscale#96 ·
I maintainer di solito rispondono entro 4 giorni
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
Flux159/mcp-server-kubernetes#384 ·