김솔비 블로그
기술 블로그

옵시디언 볼트 4개와 Claude Code 기반 개인 지식·일정 관리 시스템 구축기

10분 읽기

들어가며

9월 마지막 날, 노션을 내려놓고 옵시디언으로 옮겼다. 목표는 한 줄이었다. 적는 건 대충, 정리는 AI가.

이 글은 옵시디언 볼트 4개와 Claude Code로 그 목표를 어떻게 만들었는지, 처음에 만들었다가 하루 만에 버린 것은 무엇인지, 그리고 2주 동안 실제로 얼마나 썼는지를 정리한 기록이다.

왜 노션을 떠났나

나는 기록을 많이 하는 편이다. 공부한 것, 프로젝트를 하다 막힌 것, 일정과 할 일, 부업 수입까지 어딘가에 적는다. 그동안은 노션을 썼는데, 적는 양이 늘수록 적는 시간보다 정리하는 시간이 더 길어졌다.

노션을 쓰면서 반복된 문제는 세 가지였다.

  1. 정리는 결국 내 몫이었다. 글을 분류하고, 데이터베이스에 넣고, 나중에 다시 읽을 수 있게 다듬는 일을 전부 직접 해야 했다.
  2. 글은 한 곳에만 속한다. 프로젝트에서 겪은 트러블슈팅은 그 프로젝트에도, 기술 주제(Swift, iCloud)에도 속한다. 한 곳에만 두면 다른 쪽에서 찾을 수 없다.
  3. AI와 연결하려면 복사·붙여넣기가 필요하다. 내 기록을 바탕으로 물어보려면 글을 찾아 붙여 넣는 과정을 매번 반복해야 했다.

옵시디언 볼트는 내 컴퓨터에 있는 마크다운 파일 폴더다. 링크·태그·폴더로 한 글을 여러 맥락에 묶을 수 있고, Claude Code가 볼트 전체를 직접 읽고 쓸 수 있다. 세 문제를 한 번에 풀 수 있는 구조라 옮기기로 했다.

설계 원칙

시스템을 만들기 전에 원칙부터 정했다. 뒤에 나오는 결정은 대부분 이 표를 보고 정했다.

원칙의미
입력 마찰 최소화메모에는 형식·템플릿·기호가 없다. 떠오른 순간 바로 적는다
한 번만 입력말 한 줄이 일기·캘린더·미리 알림·휴대폰 앱에 모두 반영된다
되돌릴 수 있게볼트는 git으로 관리하고, 대량 변경은 미리보기 → 되돌리기 파일 → 실행 순서로 한다
AI는 조심스럽게사람이 쓴 노트는 고치기 전에 묻는다. 확인이 필요한 상태(확정·해결됨)는 사람이 바꾼다
민감정보는 볼트 밖비밀번호·카드 번호·API 키는 적지 않는다. AI가 발견하면 위치만 알린다

구조: 볼트 4개

볼트 하나에 모두 넣지 않고 성격별로 나눴다.

볼트용도운영 방식
life일기, 일정, 할 일, 생활 영역(건강·재정·학교)일기가 하루의 입구. 애플 캘린더·미리 알림과 자동 동기화
projects개인 프로젝트 14개 관리프로젝트마다 허브 + 할 일·결정·로드맵·변경 기록·링크·위험 요소
study공부 지식 베이스Karpathy의 LLM Wiki 방식: 원본은 사람이, 위키는 AI가
work업무 지식 베이스같은 방식 + 회의록·결정 기록

볼트를 나눈 기준은 하나였다. AI에게 주는 규칙이 다른가. 프로젝트 볼트에서는 "할 일은 tasks.md에", 공부 볼트에서는 "원본은 고치지 말고 위키를 만들어라"처럼 규칙이 다르다. 한 볼트에 섞으면 "이 폴더만 빼고" 같은 예외가 늘어나고, 예외가 많아질수록 AI도 나도 헷갈린다.

obsidian/
├── CLAUDE.md          네 볼트 공통 규칙 (인박스, 민감정보, 일정 말하기)
├── life/              일기·할 일·생활      (GitHub 비공개 저장소)
├── projects/          프로젝트 관리
├── study/             공부 위키
└── work/              업무 위키
  • 볼트마다 git 저장소를 따로 둔다. obsidian-git 플러그인이 30분마다 자동으로 커밋·push한다. AI 작업은 ingest: lint: refactor: 형식의 커밋으로 따로 남겨, 사람의 수정과 AI의 수정을 기록에서 구분할 수 있다.
  • 규칙 파일은 두 단계다. 볼트마다 CLAUDE.md가 있고, 네 볼트 공통 규칙은 상위 폴더의 CLAUDE.md 하나에 둔다. Claude Code는 상위 폴더의 규칙까지 자동으로 읽는다. 충돌하면 볼트 규칙이 우선한다.
  • 폴더에는 번호를 붙인다. 00_inbox / 10_… / 20_… / 80_templates / 90_archive. 순서가 고정되고 인박스가 항상 맨 위에 온다.

하루의 흐름

내가 하는 일은 네 가지다.

① 적기

Cmd+N을 누르면 00_inbox/에 빈 노트가 생긴다. 형식 없이 적는다. 문장이든, 단어 나열이든, 붙여 넣은 에러 로그든 상관없다. 화면 구석의 데스크탑 메모 앱(메모펫)으로도 바로 적는다.

② 말하기

Claude에게 "다음 주 화요일 3시 피부과", "금요일까지 정처기 접수"라고 말하면 형식에 맞춰 들어간다.

markdown
<!-- life/10_daily/2026-10-07.md -->
## 일정
- [ ] 15:00 - 16:00 피부과 #건강

<!-- life/todo.md -->
## 할 일
- [ ] 정처기 접수 #공부 📅 2026-10-02

5분 안에 애플 캘린더, 미리 알림, 휴대폰의 TimeBlocks 앱에도 뜬다. 이 구간은 직접 만든 Mac 앱이 맡는다(애플 캘린더·미리 알림 ⇄ 옵시디언 양방향 동기화 앱 개발기).

③ 정리

"인박스 정리해줘"라고 하면 AI가 메모를 읽고 할 일·한 일·질문·문제·결정·아이디어·자료 중 하나로 나눈다. 그리고 건마다 어디로 옮길지 표로 제안한다.

원문 요약분류옮길 곳동작
카카오 간편가입 심사 결과 확인할 일톡꾸 tasks.md "다음"기존 노트에 추가
편집 도구 막대가 글자를 가림문제문서고 08_troubleshooting/새 노트
앱스토어 배지로 다운로드 안내아이디어메모펫 10_ideas/다른 볼트 제안

분류별로 옮길 곳은 볼트 규칙에 표로 정해 두었다. 내가 확인한 것만 옮기고, 옮긴 메모는 인박스에서 지운다. 어느 프로젝트 얘기인지 애매하면 추측하지 않고 "?"로 남겨 둔 채 물어본다.

④ 보기

옵시디언을 켜면 Home 대시보드가 읽기 모드로 열린다. 오늘 할 일과 밀린 일, 프로젝트 카드, 다가오는 마감, 그리고 "나를 기다리는 것"이 한 화면에 있다.

AI가 사람에게 묻는 곳: AI 질문함과 코드 검토

써 보니 AI가 작업하다 나만 답할 수 있는 질문이 꽤 생겼다. "이 프로젝트 출시일이 언제인가요?", "이 과목이 전공 학점으로 인정되나요?" 같은 것들이다. 대화 중에 물으면 놓치기 쉽고, 대화가 끝나면 질문도 사라진다.

그래서 projects 볼트에 questions.md(AI 질문함)를 두었다. 어느 볼트에서 작업하든 질문은 여기에 모인다.

markdown
- [ ] 선형대수 출석 수업(10/18 일) 시간을 알려 주세요 #life
  - 배경: 캘린더에 "종일"로 넣어 뒀어요. 시간을 알면 그 시간으로 바꿀게요.
  - 답:

나는 답: 뒤에 짧게 적고 "답변 반영해줘"라고만 하면 된다. 질문마다 배경과 선택지가 붙어 있어 답하기 쉽다.

같은 방식으로 코드 검토 목록도 둔다. AI가 코드를 고치면, 내가 확인해야 할 점을 그 프로젝트 tasks.md의 ## 코드 검토에 "파일·함수 + 무엇을 볼지" 형태로 남긴다.

markdown
## 코드 검토
- [ ] PR #6 `RichToolbar.tsx`: 표 칸에서 서식 막대가 칸을 가리지 않고 한 줄로 뜨는지,
      종이 맨 위 칸에서는 칸 아래로 내려가는지

AI 질문함과 코드 검토는 Home의 "나를 기다리는 것"에 함께 보인다. 덕분에 AI가 확실하지 않은 것들이 대화 속에 묻히지 않고, 할 일처럼 목록으로 남는다.

사용하는 도구

이름종류용도
Obsidian앱노트
Claude CodeCLI볼트 정리·노트 작성·플러그인 설정·동기화 앱 개발
obsidian-git플러그인30분마다 자동 커밋·push, 켤 때 pull
Homepage플러그인켜면 Home을 읽기 모드로
Tasks플러그인여러 파일의 체크박스를 Home에 모아 보기
Day Planner플러그인일기 일정의 하루 타임라인
Bases기본 기능Home의 표·카드 (Dataview 대신)
Front Matter Title플러그인영어 파일명 대신 한국어 제목 표시
Minimal + Style Settings테마깔끔한 기본 화면, 색·간격 조정
Iconize, Hider플러그인폴더 아이콘, 안 쓰는 화면 요소 숨김
Pretendard글꼴한글 가독성
CalendarSync직접 만든 앱애플 캘린더·미리 알림 ⇄ 옵시디언
TimeBlocksiOS 앱 (유료)휴대폰 타임블록, 애플 캘린더·미리 알림 연결

만들었다가 버린 것: 입력 규칙

첫날에는 적는 규칙부터 만들었다. 줄 앞에 - ?를 붙이면 질문, - !는 문제, - =는 결정. 인박스 템플릿도 만들고, 새 노트를 만들면 템플릿이 자동으로 들어가도록 Templater 트리거도 걸었다.

하루 만에 모두 버렸다. 두 가지 이유였다.

  • 적는 순간 판단을 요구했다. "이건 질문인가 문제인가?"를 고민하는 동안 적는 행위 자체가 미뤄졌다.
  • 기기마다 다시 켜야 했다. Templater 트리거는 보안 설정이라 파일로 동기화되지 않는다.

그래서 규칙을 적는 쪽에서 정리하는 쪽으로 옮겼다. 지금은 아무렇게나 적고, 분류 기준(물음표가 있으면 질문, 에러 메시지가 있으면 문제, "~로 하기로"는 결정…)은 AI가 읽는 CLAUDE.md에만 있다. 기호는 써도 되고 안 써도 되는 선택 힌트로만 남겼다.

설계 팁

  1. 할 일은 한 곳에. 프로젝트 할 일은 각 프로젝트 tasks.md, 개인 할 일은 todo.md. 별도 체크리스트 노트를 만들면 체크할 곳이 두 군데가 된다. Home은 모아서 보여 주기만 한다.
  2. 파일명은 영어 kebab-case, 제목은 한국어 title 속성. 링크와 git 기록은 깔끔하고, 화면에는 한국어가 보인다.
  3. Home은 Bases + Tasks. 표는 Bases, 체크박스는 Tasks. 열 이름은 displayName으로 한국어, 문서 열은 file.asLink(title)로 한국어 제목을 보여 준다.
  4. AI가 모르면 추측 대신 질문함으로. 추측으로 채운 내용은 "확인 필요"로 표시하게 한다. 틀린 정보가 조용히 쌓이는 것을 막는다.
  5. 분류는 5~8개, 삶의 영역 기준으로. 캘린더를 시험·자격증·과제처럼 종류별로 나눴더니 서로 겹쳤다. 생활·업무·공부·프로젝트·건강·약속·여가 7개로 정리했다.
  6. 플러그인 보안 설정은 파일로 켤 수 없다. Templater 트리거, Tasks의 JavaScript 허용은 기기별 설정이다. 이런 기능에 의존하는 설계는 피한다.

겪은 이슈

이슈원인해결
Templater 트리거가 다시 꺼짐보안 설정이 기기별로 저장됨자유 메모 방식으로 전환
Tasks group by function 오류JavaScript 기본 차단group by folder로 대체
Home 표 폭이 본문과 다름Minimal 테마가 표 컨테이너 폭을 따로 지정테마 CSS 변수 덮어쓰기
iCloud에 지운 캘린더가 남음EventKit 삭제가 서버에 반영되지 않음캘린더 데몬 재시작 후 서버 상태 확인, 다시 삭제
Swift가 489줄 중 1줄만 읽음\r\n을 문자 하나(grapheme cluster)로 취급components(separatedBy: .newlines)

2주 운영 지표 (2026-09-30 ~ 10-11)

볼트의 git 기록과 동기화 앱 로그를 직접 집계했다.

지표값출처
데스크탑 메모 앱으로 적은 인박스 메모21건 (life 9, projects 12)볼트 git 기록
대화로 넣어 미리 알림까지 간 할 일25건 추가, 10건 수정동기화 로그
휴대폰에서 바꿔 옵시디언에 반영된 할 일7건동기화 로그
옵시디언 일기 → 애플 캘린더 일정5건 추가, 2건 수정동기화 로그
애플 캘린더 → 옵시디언 일기 일정5건 추가동기화 로그
관리 중인 프로젝트14개projects 볼트

가장 크게 달라진 건 같은 할 일을 두 번 적지 않게 됐다는 점이다. 미리 알림에 들어간 할 일 25건은 모두 옵시디언 todo.md에서 만들어져 동기화로 넘어간 것이다. 반대로 휴대폰에서 체크한 7건은 옵시디언에 그대로 반영됐다. 같은 할 일을 두 곳에 적은 경우는 없었다.

반면 study·work 볼트의 인박스 메모는 0건이었다. 공부와 업무 기록은 아직 이 흐름으로 거의 들어오지 않았다. 다음에 손볼 부분이다.

마치며

돌아보면 결국 역할을 나눈 것이다. 나는 적고, 말하고, AI가 묻는 것에 답한다. 분류하고, 옮기고, 캘린더에 넣고, 내가 확인할 것을 모아 오는 일은 AI가 맡는다. AI가 확신하지 못하는 건 질문함과 코드 검토 목록에 남는다.

다음 글에서는 일정과 할 일을 휴대폰까지 이어 준 동기화 앱을 다룬다.