Community연구 & 데이터 분석github.com

LARIkoz/eidetic

AI 에이전트를 위한 두 번째 뇌: 자동 메모리 주입, FTS5/벡터/코드 검색, 복합화, 드리프트 감지, MCP 및 선택적 Obsidian 내보내기

eidetic란 무엇인가요?

이 기술은 AI 에이전트(예: Claude Code, Codex, Cursor)가 장기 기억을 유지하고 검색할 수 있도록 설계된 '두 번째 뇌' 역할을 합니다. 에이전트가 작업을 수행하는 동안 자동으로 메모리를 주입하고, FTS5(전문 검색), 벡터 유사도 검색, 코드 검색 등 다양한 검색 방식을 지원합니다. 또한 메모리 복합화(compounding), 드리프트 감지(drift detection), MCP(Model Context Protocol)와 같은 고급 기능을 제공하며, 선택적으로 Obsidian 노트 앱으로 내보낼 수 있습니다. 개발자는 이 기술을 통해 AI 에이전트가 이전 대화나 프로젝트 컨텍스트를 잃지 않고 지속적으로 학습하고 적응할 수 있도록 지원하여, 복잡한 장기 작업에서 성능을 크게 향상시킬 수 있습니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add LARIkoz/eidetic

Installed? Explore more 연구 & 데이터 분석 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

eidetic은(는) 무엇을 하나요?

AI 에이전트를 위한 두 번째 뇌: 자동 메모리 주입, FTS5/벡터/코드 검색, 복합화, 드리프트 감지, MCP 및 선택적 Obsidian 내보내기.

개요

LARIkoz/eidetic은 AI 에이전트(Claude Code, Cursor, Codex 등)가 작업 중에 관련 메모리를 자동으로 주입하고 검색할 수 있는 '두 번째 뇌' 시스템입니다. 이는 에이전트가 컨텍스트를 잃지 않고 장기 작업을 수행할 수 있도록 돕습니다.

주요 기능

  • 자동 메모리 주입: 에이전트가 작업을 수행하는 동안 관련 메모리를 자동으로 검색하여 컨텍스트에 주입합니다.
  • 다중 검색 방식:
    • FTS5(전문 검색) - 텍스트 기반 빠른 검색
    • 벡터 검색 - 의미 기반 유사도 검색
    • 코드 검색 - 코드 패턴 및 구조 검색
  • 메모리 복합화: 여러 관련 메모리를 하나의 요약된 메모리로 결합하여 저장 공간을 최적화합니다.
  • 드리프트 감지: 에이전트의 행동 패턴 변화를 감지하여 메모리 업데이트가 필요한 시점을 알립니다.
  • MCP(Model Context Protocol) 지원: 표준화된 컨텍스트 교환 프로토콜을 통해 다양한 도구와 통합됩니다.
  • 선택적 Obsidian 내보내기: 메모리를 Obsidian 노트 형식으로 내보내어 사용자가 직접 검토하고 편집할 수 있습니다.

지원 플랫폼

  • Claude Code
  • Cursor
  • Codex
  • 기타 MCP 호환 AI 에이전트

설치 및 설정

사전 요구 사항

  • Node.js 18 이상
  • npm 또는 yarn
  • (선택 사항) Obsidian 앱 - 내보내기 기능 사용 시

설치

npm install @lari/koz-eidetic
# 또는
yarn add @lari/koz-eidetic

환경 변수 설정

# 필수
EIDETIC_DB_PATH=./eidetic_memory.db
EIDETIC_MODEL_PATH=./models/all-MiniLM-L6-v2

# 선택 사항
EIDETIC_OBSIDIAN_VAULT_PATH=/path/to/obsidian/vault
EIDETIC_AUTO_INJECT=true
EIDETIC_DRIFT_THRESHOLD=0.8

사용법

기본 메모리 저장 및 검색

import { Eidetic } from '@lari/koz-eidetic';

const eidetic = new Eidetic();

// 메모리 저장
await eidetic.store('사용자 선호도: 선호하는 언어는 TypeScript입니다.');

// 메모리 검색
const memories = await eidetic.search('TypeScript')
console.log(memories);

AI 에이전트와 통합

// MCP를 통해 Claude Code와 통합
import { MCPClient } from '@lari/koz-eidetic/mcp';

const client = new MCPClient();
await client.connect();

// 에이전트에게 메모리 주입
await client.injectMemory('현재 프로젝트는 React와 TypeScript를 사용합니다.');

// 관련 메모리 검색
const context = await client.retrieveContext();

API 참조

메서드설명
store(content)새 메모리 저장
search(query)관련 메모리 검색
inject(context)에이전트 컨텍스트에 메모리 주입
compound()유사 메모리 복합화
detectDrift()드리프트 감지 실행
exportObsidian()메모리를 Obsidian 형식으로 내보내기

구성 옵션

옵션유형기본값설명
dbPathstring./eidetic.db메모리 데이터베이스 경로
autoInjectbooleantrue자동 메모리 주입 활성화
driftThresholdnumber0.8드리프트 감지 임계값
obsidianVaultstringundefinedObsidian 볼트 경로
searchMethodstring'fts5'기본 검색 방식 (fts5, vector, code)

기여

기여는 언제나 환영합니다! 자세한 내용은 기여 가이드를 참조하세요.

라이선스

MIT

관련 스킬