안녕하세요. 최근 터미널 환경에서 AI 코딩 어시스턴트(Claude Code)를 사용하면서 겪었던 답답함을 해결하고자 만든 오픈소스 프로젝트, claude-knowledge-graph를 소개합니다.

만들게 된 계기 (My Pain Point)

저는 데이터 사이언스 직무를 수행하며 여러 조직으로부터 데이터 분석과 개발 요청을 동시에 처리하고 있습니다. 최근 Claude Code를 도입하면서 생산성이 크게 올랐지만, 치명적인 문제가 하나 있었습니다.

  • 휘발되는 지식과 파편화: 새로운 분석 요청이 올 때마다 새로운 애드혹(Ad-hoc) 폴더를 파서 작업하는데, 세션이 종료되면 AI와 씨름하며 내린 아키텍처 결정이나 복잡한 전처리 코드, 디버깅 과정이 그대로 휘발됩니다.
  • 비효율적인 반복 작업: 나중에 비슷한 작업을 할 때 과거의 히스토리를 찾지 못해 AI에게 처음부터 다시 상황을 설명하거나, 내 기억을 더듬어 코드를 다시 작성하며 시간을 낭비하는 일이 빈번했습니다.

"내가 예전에 어떤 폴더에서 해결했던 문제인지 고민할 필요 없이, AI가 알아서 내 과거의 작업 기록을 현재 맥락에 맞춰 소환해 줄 수는 없을까?" 하는 생각에서 이 프로젝트를 시작했습니다.

프로젝트 소개: claude-knowledge-graph

Claude Code에서의 모든 대화(프롬프트 및 응답)를 가로채서 로컬 LLM으로 분석하고, 이를 통합된 Obsidian 지식 그래프(Knowledge Graph)로 자동 구축해 주는 툴입니다.

  1. Zero-Friction (완전 자동화): Claude Code의 Hook을 이용해 백그라운드에서 동작합니다. 사용자는 평소처럼 코딩만 하면 됩니다.
  2. 로컬 LLM을 활용한 안전한 태깅: 작업이 끝나면 백그라운드에서 가벼운 로컬 LLM(Qwen 3.5 4B + llama.cpp)이 잠시 실행되어 대화를 요약하고 핵심 개념과 태그를 추출한 뒤 종료됩니다. 사내 코드가 외부로 유출될 걱정이 없습니다.
  3. 유사도 기반 자동 연결 (Killer Feature): 추출된 개념, 태그, 그리고 작업했던 디렉토리 경로(cwd) 를 기반으로 과거의 기록과 현재의 대화를 입체적으로 비교합니다. 연관성이 높은 과거의 해결책을 찾아 현재 노트 하단에 위키링크([[ ]])로 자동 연결해 줍니다.

이런 개발자분들께 특히 유용합니다

  • 컨텍스트 스위칭이 잦은 분: 여러 프로젝트나 애드혹 폴더를 넘나들며 작업하더라도, 모든 지식이 하나의 Obsidian Vault로 수렴되고 알아서 연결됩니다.
  • 보안이 엄격한 환경에서 일하는 분: 엔터프라이즈 환경에서 민감한 코드나 데이터를 다루기 때문에 클라우드 기반의 노트/로깅 서비스를 쓰기 꺼려지는 분들에게 안전한 로컬 대안이 됩니다.
  • Second Brain을 지향하는 분: 단순한 텍스트 로그가 아닌, 노드와 엣지로 연결된 시각적인 지식 그래프를 구축하고 싶은 Obsidian 유저분들에게 추천합니다.

Mac(Apple Silicon) 및 Linux 환경에서 잘 동작하도록 설계했습니다. 백그라운드 로컬 LLM 구동을 위해 최소 16GB 램 환경을 권장합니다.

더 자세한 아키텍처나 설정 방법은 GitHub 저장소에 정리해 두었습니다. 피드백이나 PR은 언제나 환영합니다!