Eidentic 소개
Source: Dev.to
오늘 우리는 Eidentic을 공개합니다. 이는 자체 개선 메모리와 프로덕션 기본 기능을 내장한 오픈소스 TypeScript SDK이며, 별도로 붙이는 것이 아니라 처음부터 포함되어 있습니다. Apache‑2.0 라이선스를 사용하고 기업용 티어가 없으며 Node, Bun, Deno, 그리고 엣지 환경에서 모두 실행됩니다.
모든 진지한 에이전트는 결국 같은 두 가지가 필요합니다. 하지만 대부분의 스택은 두 가지를 직접 조합하도록 요구합니다.
1️⃣ 실제로 개선되는 메모리 – 프롬프트에 붙여넣는 벡터 스토어가 아니라 세션 간에 기억을 유지하고, 모순을 해결하며, 실행 시간이 길어질수록 더 날카로워지는 메모리.
2️⃣ 프로덕션 레이어 – 내구성 있는 실행, 실제로 강제되는 비용 한도, 멀티‑테넌트 격리, 샌드박스화된 도구, CI를 통과시키는 평가 단계 등. 대부분의 생태계에서는 이 레이어가 나중에 기업용 애드온으로 등장하거나 전혀 제공되지 않기도 합니다.
Eidentic은 이 두 가지를 하나의 조합 가능한 패키지로 제공하며, 완전히 오픈소스입니다.
npm install eidentic
import { Agent, AIModel, SqliteStore } from "eidentic";
import { anthropic } from "@ai-sdk/anthropic";
const agent = new Agent({
id: "support",
instructions: "You are a support agent. Remember the user.",
model: new AIModel(anthropic("claude-sonnet-4-5")),
store: new SqliteStore("./eidentic.sqlite"),
});
for await (const ev of agent.query("What did we decide last week?", {
sessionId: "u-42",
})) {
if (ev.type === "stream.delta") process.stdout.write(ev.delta.text);
}
에이전트는 query() 내부에서 해당 sessionId에 대한 이전 세션을 인용과 함께 기억하고, 유휴 상태일 때 학습한 내용을 통합합니다. SqliteStore를 @eidentic/libsql이나 @eidentic/postgres로 교체해도 에이전트 코드는 변하지 않습니다—이는 SDK 전체에 적용된 포트‑앤‑어댑터 설계 덕분입니다.
- 4단계 메모리 엔진: 어휘·벡터 회상, 자체 편집 메모리 블록, 시계열 지식 그래프, 그리고 슬립 타임 통합.
- 내구성 있는 실행 – 정확히 한 번만 도구를 디스패치하는 체크포인트와 재개 기능.
- 강제된 비용 상한선, 속도 제한, 할당량, 멀티‑테넌트 격리.
- 샌드박스화된 도구, 기본 거부 권한, 한 번의 호출로 GDPR 삭제.
- 평가 하니스: CI 통과율 게이트, OAuth를 갖춘 MCP 호스트 + 서버, A2A.
- 첫 번째 수준의 React 훅, Next.js 핸들러, 그리고 CLI.
Eidentic은 아직 1.0 미만이며 v1을 향해 안정화 중입니다. 우리는 과장보다 투명함을 선호하기 때문에, 손실된 경우까지 포함한 전체 벤치마크를 공개합니다. LongMemEval에서는 메모리가 전체 컨텍스트 기준보다 토큰을 약 39배 적게 사용하면서 14.2점 높은 점수를 기록했으며, LoCoMo의 작은 haystack에서는 전체 컨텍스트가 여전히 우세했습니다. 두 실험 모두 공개되어 있습니다.
문서를 읽고, GitHub에서 소스를 살펴보거나 Next.js, React, Express용 예제 레포를 클론해 보세요. Eidentic으로 무언가를 만들었다면 꼭 알려 주세요!