"노트는 쌓이는데 콘텐츠는 안 나오는" 옵시디언 PKM 재설계하기 - 그리고 그 과정에서 깨닫게 된 것들
1. 도입 - 노트가 무덤?
저는 중소기업을 대상으로 제조 데이터 분석과 AI 자동화 컨설팅을 합니다. 동시에 AI 강의·멘토링도 하고, 틈틈이 웹앱/모바일앱도 만듭니다. 한마디로 "한 사람이 컨설턴트·강사·개발자·콘텐츠 크리에이터를 동시에 굴리는" 1인 다역 워크플로우입니다.
이런 일을 몇 년째 하다 보니 옵시디언 볼트(NewKnol) 안에는 노트가 수백 개 쌓였습니다. 컨설팅 회의록, 강의 자료, 바이브코딩 구현 기록, AI 토크 정리, 앱 개발 로그, 도서 메모, 정부지원사업 공고문… 다 있었습니다. 다 있는데 - 정작 필요할 때 꺼내 쓰지를 못했습니다.
문제의 본질은 이랬습니다:
증상
원인
컨설팅 끝나면 산출물이 어딘가로 사라짐
시간·진행상태 기반 폴더(01_진행→09_완료)에만 의존
새 강의 만들 때 과거 자료를 5분 안에 못 찾음
노트 제목·태그·YAML 표준 부재
AI 대화 세션이 어디 저장해야 할지 매번 헷갈림
AI Agent 출력에 대한 룰이 없음
00_임시메모 가 실제로는 영구 저장소가 됨
"임시" 와 "영구" 의 경계가 흐림
노트는 쌓이는데 외부에 발행되는 콘텐츠는 안 나옴
"축적" 만 있고 "재생산 루프" 가 없음
특히 마지막 줄이 핵심이었습니다. 지식을 모으는 것 자체로는 의미가 없었습니다 컨설턴트로서 진짜 가치는 그 지식을 다시 컨설팅 보고서, 강의 교안, 블로그 글, 유튜브 대본으로 재생산할 때 발생합니다. 그리고 제 볼트는 그 재생산 루프가 끊겨 있 었습니다.
이 글의 한 줄 요약: 인풋만 있고 아웃풋 없는 PKM 은 디지털 무덤이다. 시스템을 다시 설계할 때가 됐다.
2. 해결책 - CMDS + Claude Code
해결책으로 두 가지를 결합했습니다.
2-1. CMDS — 9개 카테고리 + Connect/Merge/Develop/Share 프로세스
CMDS(커맨드스페이스)는 옵시디언 기반 PKM 프레임워크입니다. 100~900 으로 번호 매겨진 9개 카테고리와 Connect → Merge → Develop → Share 의 4단계 프로세스로 지식이 흐르도록 설계되어 있습니다.
코드
카테고리
역할
CMDS Process
📖 100
Themes
관심사·주제·키워드·용어
Connect
📖 200
Literature
도서·논문·문헌·공공사업 가이드
Merge
📖 300
Data
현장·제조·인터뷰 데이터
Develop
📖 400
Methodologies
분석·SPC·TOC·ML·자동화·코드
Develop
📖 500
Products
도구·플랫폼·AI 에이전트
Develop
📖 600
Specialties
깊이 있는 전문 영역
Develop
📖 700
Creatives
블로그·DEVLOG·사례글·도식
Share
📖 800
Outputs
보고서·강의·앱·콘텐츠
Share
📖 900
Divisions
활동 영역 (메타)
메타
핵심은 "모든 노트가 어딘가에 속한다" 는 것입니다. 폴더는 00. Inbox ~ 90. Settings 로 별도 운영되지만, 노트의 의미는 100~900 카테고리로 결정 됩니다. 폴더는 물리적 위치, 카테고리는 논리적 의미. 이 분리가 핵심입니다.
2-2. Claude Code — AI Native 개발 에이전트
Claude Code 에 bkit Vibecoding Kit 을 더하면 PDCA(Plan-Do-Check-Act) 사이클을 자동화한 Skills/Agents 세트 를 사용할 수 있습니다. 개발 단계별로 /pdca plan → design → do → analyze → iterate → report 같은 명령어 한 줄로 작업을 진행합니다.
조합의 매력:
CMDS = 명세 + 표준 (어떻게 조직할지)
Claude Code = 1차 작성자 (실제 노트·코드·보고서 생성)
bkit = 워크플로우 엔진 (작업 사이클 자동화)
Obsidian = 실행 환경 (사람이 읽고 편집)
이 4개를 이렇게 조합한 사례를 본 적이 없어서, 직접 만들어봤습니다.
3. 세팅 여정 - 12개 질문에서 134개 파일까지
Step 1. 12개 질문 인터뷰 (Q1~Q12)
먼저 나 자신을 인터뷰했습니다. CMDS 가 제공하는 12개 질문지(CMDS System Files_Interview.md)에 답을 쓰는 작업입니다. 형식은 단순합니다:
### Q1. 지금의 나는 어떤 사람이고, 왜 이 개인지식관리 체계를 만들고 싶나요?
**답변:**
- 이름: 홍길동
- 회사: 피앤엠컨설팅
- 직업: 제조 데이터분석·AI 컨설턴트
- ...
### Q6. 내 일과 활동을 몇 개의 큰 영역으로 나눈다면?
**답변:** (901 Consulting / 902 Education / 903 R&D Lab /
904 Products / 905 Content / 906 Operations / 907 Personal)
### Q9. 이 시스템은 어떤 환경에서 돌아가야 하나요?
**답변:** Windows 11 + 안드로이드폰, Dropbox 동기화,
NewBrain 메인 + NewKnol 이주 소스 → 단일 볼트 통합 목표
이 인터뷰는 단순한 양식 작성이 아닙니다. 12개 질문이 내 지식체계의 모든 결정을 좌우 합니다:
질문
결정되는 것
Q1
이름·플레이스홀더 ({your-name} → 홍길동)
Q3
600 Specialties 의 서브카테고리 (TOC, SPC, AI Native 등)
Q5
800 Outputs 에 어떤 산출물 카테고리를 둘지
Q6
900 Divisions 의 7개 영역 정의
Q9
OS·기기·동기화·경로 (Windows / Dropbox / OneDrive)
Q10
폴더 구조, 노트 제목 규칙, 인덱스 노트 목록
Q12
성공 기준 (3개월 후 어떤 상태이면 만족인가)
Step 2. Claude Code 가 시스템 파일 5개 자동 생성
답변을 다 쓴 뒤 Claude Code 에 다음과 같이 요청했습니다:
CMDS System Files_Interview.md 답변을 읽고, CMDS System Files_v3/
폴더의 템플릿을 참고해서 NewBrain 볼트 최상위에 CMDS 시스템 파일
5개를 만들어줘.
Claude Code 는 인터뷰 답변에서 정보를 추출하고, CMDS System Files_v3/ 폴더의 5개 템플릿(CMDS.md, CLAUDE.md, AGENTS.md, CMDS-Head-Quarter.md, CMDS-Guide.md)을 읽은 뒤, 플레이스홀더 치환 + 카테고리 커스터마이징 + 워크플로우 재작성 을 수행하여 볼트 최상위에 5개 파일을 생성했습니다.
생성된 5개 파일:
파일
역할
대상
CMDS.md
시스템 철학·사용자 컨텍스트·9 카테고리·워크플로우
모든 LLM
CLAUDE.md
Claude Code 전용 기술 가이드
Claude Code
AGENTS.md
Gemini CLI/Codex/Cursor 등 기타 에이전트 가이드
기타 AI
🏛 CMDS Head Quarter.md
9 카테고리 네비게이션 허브
사용자
🏛 CMDS Guide.md
Properties·Type·파일명·폴더 표준 + 템플릿 예시
사용자 + AI
이 5개 파일이 곧 이 볼트의 헌법 입니다. 앞으로 어떤 AI 에이전트가 이 볼트를 만나든, 이 5개 파일만 읽으면 사용자의 작업 스타일·도구·카테고리 구조를 이해할 수 있습니다.
Step 3. 피드백 1차 반영 (v1.0 → v1.1)
여기까지 진행한 후 시스템 파일 초안을 읽어보니 4가지 수정 욕구가 생겼습니다:
변경
Why
데일리 노트 미사용
"데일리" 라는 시간 단위로 묶이는 게 의미가 없음. 캡처는 어차피 00. Inbox 의 다른 방식으로 충분
YY 2자리 날짜 원칙
20260409 는 너무 길다. 260409 면 충분히 식별 가능 (단, YAML 만 ISO 8601 예외 — Dataview 호환)
Knowledge-to-Content Pipeline 강화
단순 PKM 에 머무를 것이 아니라 외부 배포 콘텐츠 생산 이 핵심 목표가 되어야 함
NewKnol 전면 이주
"필요할 때 선별 이주" 는 결국 안 함. 단기 전면 이주로 단일 볼트 통합
이 4가지를 Claude Code 에 다시 요청했고, 모든 시스템 파일과 인터뷰 답변에 일관되게 반영되었습니다 (v1.1). 이게 가능했던 이유는 시스템 파일 5개가 명세서 역할을 하기 때문 입니다. 한 곳을 바꾸면 그 파일을 참조하는 모든 곳이 영향을 받는다는 것을 AI 가 이해하고 자동으로 전파해줍니다.
Step 4. 실제 볼트 세팅 (134 파일 자동 생성)
v1.1 시스템 파일이 준비되자 다음 요청을 던졌습니다:
볼트 최상위의 CMDS 시스템 파일 5개를 읽고 NewBrain 볼트를 세팅해줘.
폴더 구조(00~90 + 하위), CMDS 카테고리 노트, 🏷 인덱스 노트,
템플릿 15종을 만들어줘
Claude Code 는 5개 시스템 파일을 다시 읽고, 약 30분에 걸쳐 다음을 자동 생성했습니다:
항목
개수
폴더 (00. Inbox ~ 90. Settings + 하위)
67개
📖 1st-level CMDS 노트 (100~900)
9개
📚 2nd-level CMDS 노트 (101~907)
82개
🏷 인덱스 노트 (Meeting/Clients/Content 등)
22개
템플릿 (Basic ~ Knowledge-to-Content 3종)
15개
시스템 파일 (이미 v1.1)
5개
합계
134 .md 파일 + 67 폴더
각 파일은 자동으로 일관된 YAML frontmatter, 부모 카테고리 링크, Dataview 쿼리, Templater 변수가 들어가 있습니다. 이걸 손으로 만들었다면 하루 종일 반복 작업을 했어야 합니다.
Step 5. 플러그인 + Folder Templates 자동화
옵시디언에 6개 플러그인을 설치하고:
플러그인
역할
Templater
템플릿 자동 입력 (260409)
Dataview
🏷 인덱스 노트의 자동 표 생성
Excalidraw
다이어그램
Kanban
프로젝트 보드
Calendar
달력 (단, 데일리 노트 기능은 OFF)
Tag Wrangler
태그 관리
그 다음, Templater 의 Folder Templates 매핑을 Claude Code 가 직접 .obsidian/plugins/templater-obsidian/data.json 을 편집하여 12개 매핑을 추가했습니다:
{
"enable_folder_templates": true,
"folder_templates": [
{
"folder": "60. Collections/63. Meetings",
"template": "90. Settings/91. Templates/Template_Meeting Minutes.md"
},
{
"folder": "70. Outputs/72. Proposals",
"template": "90. Settings/91. Templates/Template_Proposal.md"
},
{
"folder": "70. Outputs/75. Content/75-1. Posts",
"template": "90. Settings/91. Templates/Template_Content Draft (Blog).md"
},
{
"folder": "70. Outputs/75. Content/75-2. YouTube Scripts",
"template": "90. Settings/91. Templates/Template_YouTube Script.md"
},
{
"folder": "00. Inbox/03. AI Agent",
"template": "90. Settings/91. Templates/Template_AI Session.md"
}
]
}
이제 60. Collections/63. Meetings 폴더에서 새 노트를 만들면 회의록 템플릿이 자동 적용됩니다. 폴더가 곧 노트 유형을 결정하는 셈입니다.
새 파일 기본 위치도 00. Inbox 로 지정해서 (.obsidian/app.json), 어디서 Ctrl+N 을 눌러도 노트가 Inbox 로 들어옵니다:
{
"newFileLocation": "folder",
"newFileFolderPath": "00. Inbox"
}
4. 핵심 설계 결정 5가지 - 비주류 선택의 근거
볼트를 세팅하면서 여러 비주류 결정을 내렸습니다. 각각의 근거를 정리합니다.
결정 1. 데일리 노트를 사용하지 않는다
PKM 의 99% 가 데일리 노트로 시작합니다. 그러나 나는 하지 않기로 했습니다.
Why
How
데일리 노트는 "오늘의 모든 것" 을 한 곳에 모으지만, 다음날부터 다시 꺼내볼 일이 거의 없음
캡처는 00. Inbox/02. Clippings, 03. AI Agent, 04. Excalidraw 등 주제별 임시 저장소로 직접 투입
"오늘은 무엇을 했나" 회고는 회의록·DEVLOG·AI Session 노트가 이미 충당
시간 차원의 회고가 필요하면 Dataview WHERE date >= date(today) - dur(7 days) 쿼리
Daily Notes 폴더가 결국 시간순 메모 무덤이 되는 것을 본인 NewKnol 에서 이미 경험
완전 제거 — 폴더·템플릿·인덱스 모두 안 만듦
결정 2. 날짜는 YY 2자리 원칙 (YAML 은 예외)
파일명·노트 제목·본문: YY 원칙
→ "260409 NewBrain 세팅", "DEV — 260408 bkit pdca 테스트"
YAML frontmatter 만 예외 (YYYY-MM-DD)
→ date created: 2026-04-09T04:00
→ 이유: Dataview 가 YY-MM-DD 를 0026년으로 파싱할 위험
작은 디테일 같지만, 260409 vs 2026-04-09 의 차이는 매일 보는 파일명에서 누적되면 큽니다. 짧은 게 좋습니다.
결정 3. 900 Divisions 를 7개 영역으로 재구성
복잡도를 줄이기 위해 CMDS 기본은 9개 Division 은 7개로 축소했습니다:
코드
영역
무엇이 들어가는가
901 Consulting
컨설팅 사업
고객사 단위 프로젝트 (썬하이드로릭스, 우성기업 등)
902 Education
교육·강의
AI 강의, 현장교수, 빅분기 코칭
903 R&D Lab
기술 실험
바이브코딩, Agentic Workflow, 벡터DB, MCP 실험
904 Products
앱·솔루션
Expo 앱, Streamlit 대시보드, VBA 시스템
905 Content
콘텐츠 ⭐
블로그·DEVLOG·사례글·유튜브
906 Operations
회사 운영
세무·계약·지원사업 서류·라이선스
907 Personal
개인 생활
자기계발, 독서, 건강, 가족
여기서 905 Content 가 별 표시 되어 있는 이유는, 이게 CMDS 도입의 핵심 목표 영역 이기 때문입니다. 다른 6개 Division 의 부산물이 모두 905 로 흘러들어가야 합니다.
결정 4. Knowledge-to-Content Pipeline 을 1급 시민으로
다른 PKM 들은 콘텐츠 생산을 "보너스" 정도로 다룹니다. 저는 명시적인 워크플로우와 전용 카테고리 로 다뤘습니다:
Knowledge-to-Content Pipeline (워크플로우 4)
1. 주제 선정 → 📖 100 Themes 또는 최근 DEVLOG
2. 관련 지식 수집 → AI 가 볼트 전체 검색, wikilink 모음
3. 구성 설계 → 블로그/유튜브/강의 예시 별 개요
4. 초안 생성 → AI 가 볼트 자산 인용·재구성
5. 검토·윤문 → 사용자 직접 + AI 문체 다듬기
6. 배포 → 블로그/유튜브/강의 현장
7. 피드백 수집 → 🏷 Content Feedback 에 누적 → 다음 주제
전용 카테고리:
📚 812 Course Materials(강의 예시자료)📚 830 Articles & Posts(블로그)📚 831 YouTube Scripts(유튜브 대본)
전용 폴더:
70. Outputs/75. Content/75-1. Posts/70. Outputs/75. Content/75-2. YouTube Scripts/70. Outputs/73. Lectures/73-1. Course Examples/
전용 타입:
content-draft,youtube-script,course-example,content-feedback
전용 템플릿 3종 + 전용 인덱스 5종.
이 글이 바로 그 템플릿(Template_Content Draft (Blog).md) 에서 시작된 첫 작품입니다.
결정 5. 고객사 데이터는 볼트에 두지 않는다
컨설팅을 하다 보면 고객사 ERP·MES 데이터, 계약서, 실측 데이터 등 보안에 민감한 자료가 발생합니다. 이걸 옵시디언 볼트에 직접 넣으면 위험하다고 생각됐습니다.
고객사 원본 데이터 → C:\Users\HSKim\OneDrive - PMnC\바탕 화면\ConsultingProject있는 사실들
### 6-1. AI 에게 컨텍스트 파일을 주면 작업 품질이 비약적으로 올라간다
같은 Claude Code 인데, `CLAUDE.md` 가 있는 볼트에서 작업할 때와 없는 볼트에서 작업할 때의 결과물 품질 차이가 압도적입니다. **명시적인 명세서(Specification) 를 주면 에이전트는 그 명세를 지킨다.** 인덴트 규칙(YAML 2 spaces / Markdown TAB), 날짜 형식(YY 원칙 + ISO 예외), 파일 저장 위치, 모든 게 일관되게 적용됩니다.
```text
CLAUDE.md 가 있는 볼트:
- "회의록 만들어줘" → 26 가지 규칙을 모두 지키며 정확한 위치에 생성
CLAUDE.md 가 없는 볼트:
- "회의록 만들어줘" → 매번 다른 형식, 다른 위치, 다른 YAML
6-2. 시스템 파일은 명세서이자 작업지시서이자 백업이다
CMDS 의 5개 시스템 파일은 세 가지 역할을 동시에 합니다:
역할
의미
명세서
이 볼트가 어떻게 조직되어 있는지의 정의
작업지시서
AI 에이전트가 새 노트·코드를 만들 때 따라야 할 규칙
백업
볼트가 사라져도 이 5개만 있으면 다시 만들 수 있음
마지막 게 중요합니다. 만약 NewBrain 볼트가 어느 날 사라져도, 5개 시스템 파일과 Claude Code 만 있으면 30분 안에 동일한 구조를 재생성 할 수 있습니다. 데이터는 사라져도 시스템은 사라지지 않는 셈입니다.
6-3. 데일리 노트 강박을 버리는 것의 자유로움
옵시디언을 쓴다 = 데일리 노트를 쓴다, 라는 등식은 사실 깨질 수 있습니다. 매일 데일리 노트에 무언가를 적어야 한다는 강박을 버리니까 "오늘 의미 있는 것만 적자" 가 가능해졌습니다. 매일 적을 게 없는 날도 많고, 그래도 됩니다.
6-4. YY 원칙 같은 작은 디테일이 사용자 경험을 결정한다
처음에는 "그게 뭐 그리 중요해?" 싶었지만, 막상 파일명 100 개를 보면 260409 ... 와 2026-04-09 ... 의 차이가 명확합니다. 사용자가 매일 보는 디테일은 시스템 설계의 1순위 입니다.
6-5. 첫 콘텐츠 한 편이 전체 시스템의 작동 검증이다
볼트가 정말 잘 만들어졌는지는 첫 콘텐츠를 만들어보면 안다. 만약 콘텐츠 작성 과정에서 막힌다면, 시스템 설계가 잘못된 것입니다. 이 글을 쓰는 과정에서 막힌 부분이 없었기 때문에 — 시스템이 작동한다는 1차 증거가 된 셈입니다.
즉, 이 글이 발행된다는 사실 자체가 CMDS 의 첫 ROI(투자수익) 입니다.
7. 수치로 보는 결과 - 하루의 결과물
항목
수치
인터뷰 답변 작성
12 질문 × 약 200 단어 평균
시스템 파일 생성 (v1.0)
5 파일 / 약 1 시간
피드백 반영 (v1.1)
5 파일 + 인터뷰 / 약 30 분
폴더 생성
67 개 / 1 분 (단일 mkdir 명령)
카테고리 노트 생성
91 개 (📖 9 + 📚 82) / 약 30 분
인덱스 노트 생성
22 개 / 약 10 분
템플릿 생성
15 개 / 약 15 분
플러그인 설치 + 설정
6 개 / 약 10 분 (사용자 GUI)
Folder Templates 매핑
12 개 / 5 분 (Claude Code 직접 편집)
총 .md 파일
134 개
총 폴더
67 개
총 작업 시간
약 4 시간 (인터뷰 1H + AI 작업 2H + 검증 1H)
첫 콘텐츠
이 글
만약 같은 일을 손으로 했다면? 보수적으로 잡아도 최소 2~3일 은 걸렸을 작업입니다. 그리고 손으로 했다면 일관성도 절대 이만큼 못 나옵니다.
8. 결론 - PKM 은 도구가 아니라 워크플로우다
벌써 옵시디언을 반 년 넘게 써 왔지만, 이번 세팅 이전과 이후가 완전히 다르다고 느낍니다. 이전에는 옵시디언 = "노트 정리 도구" 였지만, 이제는 옵시디언 = "지식 재료로 콘텐츠를 생산하는 작업장" 입니다.
차이의 본질은 AI 와의 결합 입니다. AI 가 볼트를 컨텍스트로 읽을 수 있게 되면, 볼트는 단순한 저장소를 넘어 "내 두 번째 뇌가 일하는 작업장" 이 됩니다. 그리고 그 작업장의 효율은 명세서(시스템 파일) 의 품질에 비례 합니다.
만약 여러분도 PKM에 회의를 느끼고 있다면, 아래 5가지를 점검해보세요:
체크 항목
만약 답이 NO 라면
AI 가 내 볼트를 컨텍스트로 읽을 수 있는가?
CLAUDE.md 파일 작성 검토
노트 → 콘텐츠 재생산 루프가 있는가?
Knowledge-to-Content Pipeline 도입 검토