32 lines · 1.1 KB · TypeScript
RawDownload
/** * ClaudeCodeAdapter - Claude Code implementation of the generic provider adapter contract. * * This service owns Claude runtime/session semantics and emits canonical * provider runtime events. It does not perform cross-provider routing, shared * event fan-out, or checkpoint orchestration. * * Uses Effect `ServiceMap.Service` for dependency injection and returns the * shared provider-adapter error channel with `provider: "claudeCode"` context. * * @module ClaudeCodeAdapter */import { ServiceMap } from "effect"; import type { ProviderAdapterError } from "../Errors.ts";import type { ProviderAdapterShape } from "./ProviderAdapter.ts"; /** * ClaudeCodeAdapterShape - Service API for the Claude Code provider adapter. */export interface ClaudeCodeAdapterShape extends ProviderAdapterShape<ProviderAdapterError> {  readonly provider: "claudeCode";} /** * ClaudeCodeAdapter - Service tag for Claude Code provider adapter operations. */export class ClaudeCodeAdapter extends ServiceMap.Service<  ClaudeCodeAdapter,  ClaudeCodeAdapterShape>()("t3/provider/Services/ClaudeCodeAdapter") {}