import { AgentTool } from './tool.js'; /** * 브라우저에 남는 외부 기억. * * Prompt API 세션은 메모리에만 있고 새로고침하면 사라진다. 그리고 컨텍스트 창이 좁아서 * 알아야 할 것을 전부 대화 안에 쌓아둘 수도 없다. 그래서 "기억"은 모델 밖에 두고, * 필요할 때만 도구로 꺼내 창에 넣는 방식이 온디바이스 모델에서 유일하게 확장 가능한 구조다. * * 기본 구현은 localStorage(약 5MB)다. 더 큰 저장이 필요하면 이 인터페이스만 맞춰 * IndexedDB나 서버 저장소로 갈아끼우면 된다. */ export interface MemoryStore { get: (key: string) => Promise; set: (key: string, value: string) => Promise; delete: (key: string) => Promise; keys: () => Promise>; } /** * localStorage 기반 저장소. * localStorage가 없는 환경(SSR, 테스트, Node)에서는 자동으로 메모리 Map으로 떨어진다. */ export declare function localMemory(namespace?: string): MemoryStore; /** * 저장소를 에이전트가 쓸 수 있는 도구 3종으로 바꾼다. * * 같은 store를 여러 에이전트에 넘기면 그대로 공유 메모(공유 작업판)가 된다. * 에이전트들이 서로의 컨텍스트를 볼 수는 없지만, 이 저장소를 통해 정보를 주고받을 수 있다. */ export declare function memoryTools(store: MemoryStore): Array;