v1.5 — 영속 세션, 체크포인트 재개, 서명 승인

모든 AI 프로바이더를 위한 단 하나의 정규 프로토콜

순수 · 웹 우선 · 멀티 프로바이더 TypeScript AI SDK

Anthropic, OpenAI, xAI Grok, Google Gemini, Vertex AI를 하나의 정규 스트리밍 프로토콜 뒤에 통합합니다. 런타임 의존성 제로, 설계부터 결정론적 — fetch가 동작하는 곳이라면 어디서든 실행됩니다.

npm install @deuz-sdk/core

단일 API 표면:

  • Anthropic
  • OpenAI
  • xAI Grok
  • Google Gemini
  • Vertex AI
  • Yunwu

정규 델타 스트림

모든 프로바이더 응답은 코드가 보기 전에 타입이 지정된 StreamPart 스트림으로 정규화됩니다. 원시 SSE가 새어 나가는 일은 없습니다.

에이전트형 도구 루프

폭주 가드, 예산 스톱, 승인 게이트, 중첩 서브 에이전트를 갖춘 병렬·자가 복구 도구 실행.

엣지 안전 코어

Web API만 사용 — node:* 없음, Buffer 없음, 환경 상태 없음. Node, Deno, Bun, Vercel Edge, Cloudflare Workers.

결정론적이며 테스트 가능

시계, 난수, fetch, 키가 모두 하나의 Dependencies 심을 통해 주입됩니다. 실제 네트워크 없는 골든 리플레이 테스트.

메모리, RAG, 스킬

mem0 스타일 메모리 파이프라인, BM25 + 벡터 하이브리드 검색, SKILL.md 점진적 공개 — 모두 엣지 안전.

구조화된 출력과 UI 와이어

스키마 타입의 generateObject / streamObject, React 훅, 그리고 끝까지 직접 소유하는 버전 관리 SSE 와이어.

세 줄로 스트리밍

streamChat은 동기적으로 반환되며 절대 예외를 던지지 않습니다 — 요청은 첫 읽기에서 지연 시작됩니다. 팩토리만 바꾸면 프로바이더가 바뀌고, 그 외에는 아무것도 달라지지 않습니다.

Quickstart
// swap the factory to swap providers
import { streamChat } from '@deuz-sdk/core';
import { createAnthropic } from '@deuz-sdk/core/anthropic';

const anthropic = createAnthropic({ apiKey });
const res = streamChat({
  model: anthropic('claude-opus-4-8'),
  messages: [{ role: 'user', content: 'Hello!' }],
});

for await (const chunk of res.textStream) {
  process.stdout.write(chunk);
}