본문으로 건너뛰기

© 2026 Molayo

Dev.to헤드라인2026. 06. 09. 02:08

평면적인 채팅 스레드는 독서에 적합하지 않습니다. 그래서 로컬 우선(Local-First) AI 트리 컴패니언을 만들었습니다.

요약

기존의 평면적인 채팅 방식 대신 트리 구조의 대화를 지원하는 로컬 우선 AI 독서 컴패니언 'pi-books'를 소개합니다. 사용자는 주제별로 대화를 분기하여 문맥을 유지하며 깊이 있는 독서 탐색이 가능합니다.

핵심 포인트

  • 평면적 채팅의 문맥 오염 문제 해결
  • 트리 구조를 통한 주제별 대화 분기 지원
  • 로컬 우선(Local-first) 방식의 오픈 소스 도구
  • EPUB, MOBI, PDF 등 다양한 문서 형식 지원

저는 터미널에서 Pi—트리 구조의 대화(tree-structured conversations)를 지원하는 미니멀리스트 AI 에이전트—를 사용하여 책을 읽고 있었는데, 이는 제가 비소설(non-fiction)을 읽는 데 있어 진정으로 최고의 방법이었습니다. 옆길로 새어 곁가지로 뻗어나가고, 이를 깊이 탐구한 뒤, 문맥(context)을 잃지 않고 다시 돌아오는 방식입니다. 모든 세션은 제가 실제로 자료에 대해 어떻게 생각했는지를 보여주는 지도와 같았습니다.

하지만 그것은 터미널 도구였습니다. 제 아내는 저보다 책을 더 많이 읽습니다. 제 아이들은 모든 것에 호기심이 많지만 클릭하며 탐색할 수 있는 무언가가 필요합니다. 제 부모님은 절대 터미널을 열지 않으실 겁니다. _"이것은 정말 놀랍다"_와 "다른 누구도 사용할 수 없다" 사이의 간극은 해결할 가치가 있는 문제처럼 느껴졌습니다.

그래서 저는 **pi-books**를 만들었습니다. 어떤 책이든 트리처럼 탐색할 수 있는 대화로 바꿔주는 오픈 소스(open-source) 로컬 우선(local-first) 독서 컴패니언입니다.

평면적인 채팅(Flat Chat)의 문제점

대부분의 AI 도구는 책을 일반적인 프롬프트(prompt)와 동일하게 취급합니다. 텍스트를 붙여넣고, 답변을 얻으면, 문맥(context)은 사라집니다. _"잠깐, 이게 X와 어떻게 연결되지?"_라며 옆길로 새는 순간, 전체 스레드(thread)가 오염됩니다. 구조도 없고, 지속성도 없으며, 자료를 통한 _여정(journey)_의 느낌도 없습니다.

해결책: 트리 구조의 대화(Tree-Structured Conversations)

하나의 길고 평면적인 스레드 대신, pi-books는 당신의 독서를 주제 트리(topic tree)로 구조화합니다.

Pi-books library — upload EPUBs, MOBIs, or PDFs

Pi-books reading session with branching conversation tree

  • 의미론적 변화에 따른 분기 (Branches on semantic shifts) — 더 깊이 파고들거나, 장(chapter)을 전환하거나, 탈선(tangent)을 따라가세요. 각 과정은 전체 문맥이 보존된 고유의 분기를 가집니다. 언제든 메인 분기로 돌아올 수 있으며, 정보의 오염(contamination)은 전혀 없습니다.
  • 채팅이 곧 독자 (The chat IS the reader) — 별도의 독서창과 채팅창이 존재하지 않습니다. AI가 책의 내용을 인용구 형태로 대화 속에 직접 노출합니다.
  • 확대 및 축소 (Zoom in and out) — 특정 개념을 깊게 파고든 다음, 읽던 위치를 놓치지 않고 요약본으로 다시 돌아올 수 있습니다.
  • 모든 사용자에게 각자의 트리 제공 — 여러 명(가족, 독서 모임 등)이 동일한 책을 독립적으로 읽을 수 있으며, 각자 자신만의 대화 트리, 용어 사전(glossary), 독서 기록을 가집니다.
  • 클릭 가능한 내비게이션 — 목차(Table of Contents)와 주제 트리(Topic Tree)가 나란히 배치됩니다. 어떤 노드든 클릭하면 해당 시간대와 문맥으로 즉시 이동할 수 있습니다.

🔒 100% 로컬 우선(Local-First) 및 프라이버시 보장

책, 세션, 대화, 용어 사전 등 모든 것이 사용자의 기기에서 실행됩니다. 클라우드 계정이나 구독이 필요 없습니다.

  • 클라우드 API: DeepSeek, Gemini, Claude — 저렴하고 빠릅니다.
  • 완전 오프라인: Ollama 또는 LM Studio를 연결하세요. 비용이 전혀 들지 않으며, 어떤 데이터도 네트워크 외부로 나가지 않습니다.

독서에는 최첨단(frontier-class) 모델이 반드시 필요하지 않습니다. 더 작고 빠른 모델들도 훌륭하게 작동합니다. 추천 모델은 README를 참조하세요.

🛠️ 기술 스택 (The Stack)

packages/
  shared/      — 공유 TypeScript 타입
  extension/   — Pi SDK 스킬, 전자책 파서(ebook parsers), 플러그인
...

트리 구조의 에이전트 대화를 위한 Pi SDK, 경량 서버(Electron 친화적)를 위한 Hono, 그리고 메타데이터 관리를 위한 Drizzle ORM 기반의 SQLite로 구축되었습니다.

제가 특히 자랑스럽게 생각하는 한 가지는 AI의 동작이 전적으로 Markdown (마크다운) 파일에 의해 제어된다는 점입니다. 각각의 독서 "기술 (skill)" (요약, 심층 분석, 퀴즈 등)은 단순히 extension/skills/ 폴더에 있는 .md 파일일 뿐입니다. AI가 읽는 방식을 바꾸고 싶으신가요? 마크다운 파일을 편집하기만 하면 됩니다. 코드 변경도, 재배포도 필요 없습니다. 덕분에 매우 해킹하기(hackable) 쉬우며, 몇 분 만에 자신만의 독서 기술을 만들 수 있습니다.

🚀 시작하기

Docker (한 줄 명령):

docker run -d --name pi-books \
  --env-file .env \
  -p 3847:3847 \
...

로컬 개발 (Local dev):

git clone https://github.com/shuowu/pi-books.git
cd pi-books
cp .env.example .env   # 모델 설정 / API 키 추가
...

💬 피드백을 기다립니다!

이 프로젝트는 초기 단계이며, 여러분의 의견을 듣고 싶습니다:

  1. 현재 AI로 책이나 논문을 읽는 워크플로우 (workflow)는 어떠한가요? 어떤 점이 불편한가요?
  2. 어떤 커스텀 독서 "기술 (skill)"을 만들고 싶으신가요?
  3. 이 도구를 사용하실 의향이 있으신가요? 무엇이 더 필요한가요?

github.com/shuowu/pi-books — 스타(star)를 눌러주시고, 직접 사용해 보신 후 의견을 들려주세요!

AI 자동 생성 콘텐츠

본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.

원문 바로가기
0

댓글

0