// 아키텍처

세션 로그가 곧 데이터베이스의 WAL입니다.

VHDB는 smart-workbench가 이미 쓰는 원장과 플러그인이 직접 남기는 로그를 읽습니다. 세그먼트, 인덱스, 매니페스트는 모두 파생물이라 지워도 로그만으로 다시 만들어집니다.

01

로그가 곧 WAL

smart-workbench가 쓰는 sessions/*.jsonl을 읽기 전용으로 읽습니다. 파생 파일은 지워도 로그에서 똑같이 다시 만들어집니다.

02

불변 파일 + 원자적 교체

체크섬이 붙은 세그먼트를 먼저 쓰고 MANIFEST를 원자적으로 바꿔야 새 상태가 보입니다. 어느 시점에 죽어도 같은 바이트를 다시 읽어 같은 결과에 도달합니다.

03

검색은 인덱스, 정답은 전수 조사

빠른 경로가 모든 후보를 하나씩 점수 낸 결과와 같은 문서, 같은 순서, 같은 점수 비트인지 무작위 데이터로 계속 검사합니다.

04

같은 엔진, 세 곳

같은 엔진 크레이트가 Claude Code 플러그인 안의 WASM, 개인용 데몬, 팀 서버로 돕니다.

smart-workbench sessions/*.jsonl · WAL, 읽기 전용 Claude Code 플러그인 vhdb/log/*.jsonl · 자체 로그 ingest (증분, 멱등) vhdb-core — 엔진, OS I/O 없음 data/seg-*.vdb 레코드 세그먼트 index/idx-*.sst 단어 · 파일 · 커밋 MANIFEST 유효한 파일 목록 vhdb-wasm 개인플러그인 안의 WASM vhdbd 개인로컬 데몬 · 유닉스 소켓 vhdb-server 팀 · HTTP + 토큰프로젝트별 격리
크레이트역할배포
vhdb-core엔진: 세그먼트, 블룸 필터가 붙은 인덱스 SST, MANIFEST, 인제스트, 컴팩션, 검색(VQL, BM25), 복구, 파티션·계층·벡터, 이력 로직.라이브러리
vhdb-clivhdb 명령: stat, ingest, search, history, verify, compact, rebuild, dump, archive.서버 패키지에는 vhdbctl이라는 이름으로 설치
vhdb-wasm엔진을 WASM 하나로. node에서 파일 접근을 제공하는 호스트 포함.vhdb-plugin에 engine/vhdb.wasm으로 포함
vhdbd프로젝트 디렉터리당 하나의 로컬 데몬. 쓰기 잠금을 잡고 로그 꼬리를 따라가며 유닉스 소켓으로 답합니다.cargo build --release -p vhdbd
vhdb-server팀 서버: 인제스트·컴팩션, /v1/* API, 계정·프로젝트·토큰 관리, 감사 로그..deb, .rpm, tar.gz (x86_64, aarch64)

코어의 외부 의존성은 serde, serde_json, regex-lite, miniz_oxide뿐이고, 서버만 TLS와 해시를 더 씁니다. 최소 Rust 버전은 1.85입니다.

저장되는 것

레코드는 원장의 한 줄입니다. 세션 id, 턴 번호, 시각, 종류, 본문과 file, commit 같은 선택 필드를 가집니다.

promptreplytool.starttool.endeditcommitdecisionerrorcheckcontractguard.*anchorrollup

세션에 기억을 주세요.

MIT 라이선스. 소스는 GitHub에 있습니다.