← 모든 글

Monogram

공유 한 번으로 수집·정리·검색까지 연결하는 개인 지식관리(PKM) 시스템

Built with Python · EmbeddingGemma · ONNX Runtime · BM25 / RRF · Git Tree API

Telegram, MCP와 document 입력이 5단계 검증 pipeline을 거쳐 원자적 Git Tree commit과 검색 output으로 이어지는 Monogram 구조도
Capture와 검증에서 원자적 저장과 retrieval까지 하나의 경로

WHY

뉴스, SNS, arXiv, YouTube와 학술 리포트에서 본 정보가 여러 앱과 북마크에 흩어져 필요할 때 다시 찾기 어려웠습니다. 어떤 형태의 지식이든 공유 버튼 한 번으로 수집하고, 왜 중요했는지와 출처를 보존하며 자동으로 정리·분류·검색하고 싶었습니다. 사람과 Agent가 같은 지식을 다시 사용할 수 있는 개인 지식관리 시스템이 목표였습니다.

Capture pipeline 5 stages

Orchestrator, classifier, extractor, verifier, writer

Storage 경계 1 Git commit

연관 note와 asset을 원자적으로 저장

Agent access 13 MCP tools

동일한 지식을 Agent context로 재사용

HOW

정리되지 않은 입력에서 검색 가능한 versioned note까지

내용을 이해하는 단계와 실제 쓰기를 분리하고, Git을 storage transaction과 recovery 경계로 함께 사용합니다.

  1. 01 Capture

    Telegram, MCP, Obsidian과 document 입력을 같은 ingestion boundary에서 받습니다.

  2. 02 구조화와 검증

    입력을 분류하고 field를 추출한 뒤 저장할 note를 검증합니다.

  3. 03 원자적 저장

    관련 파일을 하나의 Git Tree commit으로 저장해 knowledge item이 부분적으로 쓰이지 않게 합니다.

  4. 04 Hybrid retrieval

    Sharded semantic search와 BM25를 RRF로 결합하고 graph expansion, MMR과 reranking을 선택적으로 적용합니다.

RESULT

EmbeddingGemma ONNX embedding, sharded INT8 JSONL index, NumPy similarity scan, BM25, RRF와 선택적 reranking으로 구성된 hybrid retrieval 구조
Custom sharded vector index + BM25/RRF · FAISS dependency 없음
합성 예시 데이터로 렌더링한 Monogram dashboard
암호화 dashboard · 합성 예시 데이터

기여

  • 5단계 capture pipeline, 원자적 Git Tree writer, sharded semantic index, hybrid retrieval 경로, MCP surface와 recovery control을 설계하고 구현했습니다.
  • 자동 수집과 검색 경로에 SSRF 방어, secret redaction, cassette evaluation, backup과 kill switch를 추가했습니다.

관련 자료

Source code Capture pipeline, Git storage, retrieval, MCP server와 dashboard