이걸 설치하면 무엇이 달라지나
읽을 논문을 넘겨주면, 먼저 어디까지 읽고 무엇을 남길지 정한 뒤 정리해요. 반복되는 분류와 링크 연결은 스킬이 맡고, 범위와 적용 시점은 내가 승인해요. 쌓이고 나면 이렇게 다시 꺼내 쓸 수 있어요.
- “이 PDF 읽고 정리해줘”
- 본문을 텍스트로 뽑아 페이지 표시를 붙이고, 방법과 측정 조건, 결과, 한계가 각각 자리를 잡은 노트 한 장을 만들어요.
- “이 수치 어디서 나온 거야?”
- 노트에 페이지와 그림 번호가 박혀 있어서 바로 되짚어 줘요. PDF를 처음부터 다시 훑을 일이 없어요.
- “이 주장 나오는 논문들 묶어줘”
- 여러 논문에 반복해서 나오는 주장, 방법, 이론을 따로 노트로 떼어내고 원 논문마다 링크를 겁니다.
- “서론 쓸 건데 근거 모아줘”
- 주제별로 묶인 노트와 원문 위치를 같이 꺼내 줘요. 인용할 값의 출처가 페이지 단위로 붙어 나옵니다.
- “정리 상태 점검해줘”
- 끊긴 링크, 근거 없이 적힌 값, 아직 안 읽은 자료를 훑어서 알려줘요. Vault를 고치지는 않습니다.
논문 한 편이 들어가서 나오기까지
PDF, 웹페이지, 보고서·표준·데이터셋
본문 추출 → 방법·결과·한계로 가르기 → 값마다 페이지·그림 번호 붙이기 → 관련 노트끼리 링크
Paper 노트, 검색용 본문 파일, 여러 논문에 걸친 지식 노트
나중에 “이 값 어디서 나왔어?”라고 물으면 p.5 Fig.4로 원문 그 자리를 짚어 줘요
원본 자료는 처음 있던 자리에서 움직이지 않아요. Vault에는 읽은 결과만 쌓여요. Zotero는 필수가 아니고, 쓰고 있다면 원문 위치를 연결해 두는 선택지예요.
이런 경우에 맞아요
- PDF는 쌓였는데 읽은 내용이 흩어져 있을 때
- 리뷰 논문이나 학위논문 서론을 쓰려고 근거를 모을 때
- 인용할 값의 출처를 페이지 단위로 되짚어야 할 때
- 여러 논문에 걸친 주장, 방법, 이론을 비교하고 싶을 때
이건 범위 밖이에요
- 실험 기록, 관측 로그, 랩노트 정리
- 읽을 논문을 대신 검색하고 내려받기
- 자료 관리 프로그램 자체의 관리와 동기화
- 인용 스타일 서식(APA, IEEE) 맞추기
설치 방법은 에이전트에 따라 달라요
이 가이드는 Obsidian과 내 컴퓨터의 Vault 폴더를 읽고 쓸 수 있는 로컬 에이전트를 함께 쓰는 사람을 위한 안내예요. Codex 앱이나 Claude 앱의 Code 탭에서 Vault를 고른 뒤 시작할 수 있고, 터미널이 편하면 Codex CLI나 Claude Code CLI를 써도 돼요. 공통 조건은 내 컴퓨터 폴더에 접근할 수 있을 것과 Agent Skills를 읽을 것이에요.
중간에 잘못 눌러도 큰일 나지 않아요. 스킬은 폴더 하나를 넣고 빼는 게 전부고, 노트를 만들기 전에 무엇을 만들지 먼저 보여주고 물어봅니다.
1. Obsidian을 설치하고 Vault를 만들어요
obsidian.md/download에서 받아 설치하고,
Create new vault로 Vault를 하나 만들어 주세요. Vault는 노트를 담는
폴더예요. 원본 PDF를 모아두는 저장소와는 분리해서 쓰는 게 좋아요.
PDF가 있는 폴더 안에 Vault를 만들 필요도 없어요.
이미 쓰는 Vault가 있으면 그대로 쓰면 돼요.
2. 쓰고 싶은 앱에서 Vault를 열어요
Codex 앱
- Codex 앱을 열고, 작업할 프로젝트로 방금 만든 Vault 폴더를 추가해요. ChatGPT 데스크톱에서 Codex 화면으로 들어가도 같은 흐름이에요.
- Vault가 열려 있는 로컬 작업 공간에서 아래 설치 문장을 붙여넣어요. 파일 작성이나 명령 실행을 허용할지 물으면 범위를 확인한 뒤 승인해요.
- 설치가 끝나면 대화창에서
@로 스킬을 골라 쓰거나, 논문 정리 요청을 자연어로 말하면 돼요.
Claude 앱 · Code 탭
- claude.com/download에서 앱을 받아 실행하고, Code 탭에서 Local 환경과 Vault 폴더를 골라요.
- 아래 설치 문장을 붙여넣고, 권한 확인이 나오면 어떤 파일과 명령에 접근하는지 확인한 뒤 허용해요.
- 설치가 끝나면 입력창에서
/를 입력하거나+메뉴의 Slash commands에서 스킬을 골라 쓰면 돼요.
일반 Claude 채팅 화면에서 스킬만 쓰려면 Customize > Skills에서 ZIP을 올리는 별도 흐름을 이용해요. 다만 내 컴퓨터의 Vault에 노트를 만들 목적이라면 Claude 앱의 Code 탭 · Local이나 Codex 앱의 로컬 작업 공간을 열어야 해요. 웹이나 클라우드 세션은 내 폴더를 못 보니 여기서는 쓸 수 없어요.
3. 스킬을 넣어요
처음이라면 지금 열어 둔 앱에서 방법 A부터 시도해 보세요. 터미널이 익숙하거나 여러 에이전트를 함께 쓰는 경우에는 아래 다른 방법도 있어요.
방법 A · 에이전트에게 부탁하기 처음이라면 여기부터
이 에이전트가 읽는 개인 스킬 폴더에
obsidian-research-wiki-reference 라는 이름으로 설치해줘
Codex 앱이나 Claude 앱의 Code 탭에서 이 문장을 붙여넣으면, 각 에이전트가 자기 방식에 맞는 스킬 위치를 찾아 내려받아 넣어줘요. 도중에 “이 명령을 실행할까요?” 하고 물으면 내용을 확인한 뒤 허용해 주세요. 일반 Claude 채팅 화면에서는 이 문장을 실행할 로컬 폴더가 없을 수 있으니, 그때는 위의 ZIP 업로드 방식을 써요. 경로를 직접 지정하고 싶으면 아래 표를 참고하세요.
| 에이전트 | 개인 스킬 폴더 | 불러올 때 |
|---|---|---|
| Claude Code | ~/.claude/skills/ | /스킬이름 |
| Codex | ~/.agents/skills/ | $스킬이름 |
둘 다 이름만 대고 부탁해도 스킬이 알아서 걸립니다. 위 표기는 직접 지목할 때 쓰는
방식이에요. 프로젝트 단위로만 쓰려면 Vault 안의 .claude/skills/나
.agents/skills/에 넣어도 돼요.
다른 설치 방법 보기
방법 B · 설치 프로그램에 맡기기
$ npx skills add moonweave/obsidian-reference-wiki
Node가 깔린 터미널에서 한 줄이면 돼요. 설치 프로그램이 호환되는 에이전트를
찾아서 어디에 넣을지 물어봐요. 여러 에이전트를 함께 쓴다면 이 방법이 덜
헷갈립니다. 내용만 먼저 보고 싶으면 뒤에 --list를 붙이세요.
방법 C · 폴더를 직접 옮기기
- GitHub 저장소에서 초록색
Code버튼을 누르고Download ZIP을 골라요. - 압축을 풀면
obsidian-reference-wiki-main폴더가 나와요. 이름을obsidian-research-wiki-reference로 바꿔 주세요. - Finder에서
Cmd + Shift + G를 누르고 위 표의 스킬 폴더 경로를 입력해 이동해요. 윈도우는 탐색기 주소 표시줄에%USERPROFILE%\.claude\skills처럼 넣으면 돼요. - 그 폴더가 없으면
skills폴더를 새로 만들고, 이름을 바꾼 폴더를 통째로 넣어요. - 폴더를 이번에 처음 만들었다면 에이전트를 껐다 켜 주세요.
4. 새 대화를 열고 스킬을 불러요
저장소 주소는 obsidian-reference-wiki인데 부를 때 쓰는 이름은
obsidian-research-wiki-reference예요. 헷갈리기 쉬운 지점이라 적어둡니다.
설치 직후에는 대화를 새로 시작해야 스킬이 잡혀요.
첫 응답으로 파일이 아니라 질문이 돌아오면 제대로 설치된 거예요. 정리 깊이를 고르는 세 가지 선택지부터 먼저 나옵니다.
첫 대화에서 정리 규칙을 정해요
온보딩, 즉 첫 설정 대화는 세 단계로 나뉘어요. 앞 단계에서 무엇을 만들지 정하고, 뒤 단계에서 어디에 어디까지 만들지 확정해요. 설계 단계는 읽기 전용이라 이 대화 중에는 파일이 하나도 생기지 않아요.
1단계. 정리 깊이 고르기
| 프리셋 | 어디까지 만드나 | 이럴 때 |
|---|---|---|
| notes-only | 검토한 Paper / Source 노트만 | 읽기에 집중, 본문 파일은 안 만듦 |
| searchable-library | 노트에 더해 검색 가능한 본문 파일까지 | 대부분 여기서 시작 (권장) |
| knowledge-network | 위에 더해 따로 떼어낸 지식 노트까지 | 논문 사이를 엮어 종합할 때 |
셋은 서로 다른 체계가 아니라 같은 체계의 깊이 차이예요. 처음에는
notes-only로 읽기 기록만 남겨도 되고, 나중에 검색용 본문이나 연결된
지식 노트를 더할 수 있어요.
2단계. 어디에 두면 안전한지 확인하기
그다음 질문은 취향이 아니라 설계를 가르는 조건이에요. Vault를 혼자 쓰는지 공유하는지,
어디까지 동기화되는지, 원본 PDF와 파생 텍스트가 지금 어디에 있는지를 확인해요. 공유하거나
공개되는 Vault, 노출 범위가 불확실한 Vault라면 본문 파일을 Vault 밖(external)에
두는 쪽으로 설계해요. 저작권과 공개 범위를 먼저 확인해야 하고, 실수로 파일이 노출될
위험도 줄일 수 있어서예요.
- 새 Vault인지 기존 Vault인지, 그리고 정확한 경로
- 첫 적용 범위 (기본은 논문 1~3편짜리 시험 적용)
- 손대면 안 되는 폴더, 파일, 설정 목록
3단계. 설계안을 승인하면 그때 적용
여기까지 정리되면 설계안(Blueprint)이 나와요. 만들 폴더와 템플릿, 노트마다 무슨 뜻인지, 원문 파일의 경계선, 첫 연결 경로가 적혀 있어요. 바꿀 항목과 안 건드릴 항목도 따로 나와 있고요. 경로와 설계안을 승인하면 그때 파일이 만들어져요. 이미 있는 Vault를 통째로 옮기는 일은 없고, 승인한 범위만 적용해요.
자료를 네 겹으로 나눠 두는 이유
핵심은 한 논문이 네 개의 서로 다른 물건으로 존재한다는 점이에요. 이걸 섞지 않는 게 이 스킬의 전부라고 해도 돼요.
처음 설치한 뒤 기본 흐름을 확인했다면, 여기부터는 원문을 더 엄격하게 추적하고 싶은 분을 위한 상세 구조예요.
PDF, 웹페이지, 보고서·표준·데이터셋. 무엇이 맞는지 판단할 때 기준이 되는 원본이고, Vault로 복사하지 않아요.
논문 본문을 통째로 뽑아 텍스트로 저장한 파일이에요. 검색하고 다시 찾아볼 때 씁니다. 텍스트로 뽑는 과정에서 수식이 깨지거나 2단 편집의 읽기 순서가 뒤섞일 수 있어서 원본 취급은 안 해요.
그 논문에서 실제로 검토한 방법, 측정 조건, 모델 가정, 결과, 한계를 적는 곳. 논문 한 편당 하나예요.
여러 논문에 걸쳐 다시 쓰는 Claim, Method, Theory, Evidence, Limitation, Theme, Question.
노트 한 장은 이렇게 생겼어요
review_status: reviewed
text_basis: native-text
source_location: 원본 PDF 또는 웹 주소
- 3점 굽힘 반복 시험, 1 Hz, 상대습도 50 % p.3 §2.2
- 1만 사이클 후 변위 24 % 감소 p.5 Fig.4 reported
- 피로 수명 예측 2.3 × 10⁴ 사이클 p.6 Eq.7 modelled
- 단일 조성만 시험, 온도 의존성
not supplied
값마다 페이지와 그림 번호가 붙고, 그 값이 보고된 건지 모델에서 나온 건지 라벨이 따라붙어요. 맨 아래 링크는 여러 논문에서 다시 쓸 주장으로 이어집니다.
만들어지는 폴더
Vault/ ├── Reference Index 여기서 다 뻗어나가요 ├── Reference Profile 승인한 설정을 파일로 남김 ├── 05 Source Text/ 본문 파일 (vault-local일 때만) ├── 10 Sources/ Paper — … / Source — … ├── 20 Claims/ ├── 30 Evidence & Methods/ ├── 35 Theories/ ├── 40 Limitations/ ├── 50 Themes/ ├── 60 Questions/ ├── 90 Reading Queue/ └── _templates/
승인한 설정은 대화 기록이 아니라 Reference Profile 노트에 남아요.
그래서 세션이 바뀌어도 같은 규칙으로 이어집니다.
이름 규칙
- 학술 논문은
Paper — 짧은 제목 - 보고서, 웹페이지, 표준, 데이터셋은
Source — 이름 - 이름이 겹치면 연도를 붙이고, 그래도 겹치면 제1저자를 붙여요
- 이미 있는 파일명과 링크는 그대로 두고, 온보딩이 마음대로 이름을 바꾸지 않습니다
노트를 쪼개는 기준
문단마다 노트를 만들면 그래프만 화려해지고 다시 못 읽어요. 그래서 기본은 논문 한 편에 노트 하나고, 아래 조건에 걸릴 때만 따로 떼어냅니다. 이걸 스킬에서는 승격이라고 불러요.
- 여러 자료에서 반복해서 인용하게 될 때
- 지금 붙잡고 있는 질문에 직접 답할 때
- 따로 고쳐 나가야 할 때
- 출처가 원 논문과 달라질 때
떼어낸 노트는 원 논문 노트의 복사본이 아니라, 돌아갈 링크가 달린 짧은 색인이에요.
사용자가 주지 않은 관계는 not provided로 남기고 연결을 지어내지 않습니다.
읽은 내용을 적는 방식
논문은 한 번에 훑지 않고 순서대로 읽어요. 전체 지도, 방법과 측정과 대조군, 결과와 그림과 표, 그리고 결론과 한계 순서예요. 각 항목에는 페이지와 그림 번호, 단위, 조건을 같이 남기고, 그 값이 어떤 성격인지 라벨을 붙여요.
| 라벨 | 뜻 |
|---|---|
| reported | 논문이 직접 보고한 값 |
| modelled | 모델에서 나온 값 |
| calculated | 계산으로 유도한 값 |
| author interpretation | 저자의 해석 |
| synthesis | 여러 근거를 묶은 정리 |
어디서 읽은 텍스트인지도 native-text, OCR, mixed,
supplied-excerpt 중 하나로 기록해요. OCR로 읽은 값과 원문에서 직접 확인한
값을 나중에 구분할 수 있어야 하니까요.
PDF 본문 추출은 선택
사용자가 명시적으로 승인한 PDF만 추출해요. 원본은 밖에 그대로 두고, 페이지 표시가
붙은 본문 파일과 Source Text Manifest를 만듭니다. 이 파일에는 원본과 추출본의
해시, 추출기와 옵션, 페이지 수가 기록돼요. 나중에 해시가 달라지면 그 노트는 재검토
대상으로 표시돼요.
- 텍스트 층이 멀쩡한 PDF는
pdftotext경로 (macOS는brew install poppler) - 다단 편집이나 수식이 복잡한 논문은 Docling. 로컬에서 돌고 원격 전송은 꺼져 있어요
- 수식 복원은 비용이 커서 기본은 꺼짐. 필요한 페이지만 골라 켜는 게 낫습니다
쌓아둔 걸 꺼내 쓰는 법
노트는 쌓는 게 목적이 아니라 다시 꺼내 쓰는 게 목적이죠. 정리를 마친 뒤에는 같은 스킬에게 그냥 물어보면 돼요. 따로 설치할 게 없어요.
- 440 V 직류에서 1 kg 이상 reported
값과 함께 어느 페이지 몇 번 그림인지, 보고된 값인지, 어느 노트에서 나왔는지가 같이 옵니다.
답할 때 지키는 것
- 노트에 없으면 없다고 말하고 멈춥니다. 아는 척 일반 지식으로 채우지 않아요
- 값에는 항상 페이지 앵커가 따라붙습니다. 앵커 없는 값은 답으로 내놓지 않아요
- 라벨을 바꾸지 않습니다.
modelled를 측정값처럼 말하지 않아요 - 아직 안 읽은 자료(
not reviewed)는 근거로 쓰지 않습니다 - 여러 논문에 걸친 질문은 묶어둔 주장 노트를 거쳐 가요. 연결을 지어내지 않습니다
- 답하면서 Vault를 고치지 않습니다. 빠진 노트가 보이면 제안만 하고 기다려요
이 스킬이 하지 않는 일
Vault는 몇 년 치 기록이 쌓이는 곳이라, 할 수 있는 일보다 안 하는 일이 더 중요해요.
- Obsidian 플러그인 설치나
.obsidian설정 변경 - 원본 PDF, 연구 원자료, 코드 복사
- 기존 노트를 한꺼번에 옮기거나 이름 바꾸기 (별도 승인 없이는 제자리에 둡니다)
- 실험이나 관측 기록용 구조 만들기
- 파일명만 보고 논문 내용 추측하기
- 경로와 설계안을 승인하기 전에 파일 만들기
이미 쓰던 Vault라면 기존 파일을 제자리에 두기, 새 노트에서 링크만 걸기, 나중에 따로 승인받고 옮기기 셋 중 하나로만 분류해요. 첫 연결을 승인했다고 해서 대규모 이동이 따라붙는 일은 없어요.
제대로 만들어졌는지 확인하기
마무리하기 전에 읽기 전용 검사를 한 번 돌려요. 링크가 다 이어지는지, 템플릿 자리표시자가 남아 있지 않은지, 승인한 자료 수와 맞는지를 봐요. Vault를 고치지는 않아요. 직접 터미널에 칠 필요는 없고, “노트 검사 돌려줘”라고 하면 에이전트가 이 명령을 실행해요.
직접 검사 명령을 실행하고 싶다면
$ REFERENCE_SCHEMA_MODE=current python scripts/check_notes.py <vault 경로> \
--expect-sources <승인한 자료 수> --expect-profile
본문 파일을 만들었다면 해시와 페이지 맵도 따로 확인해요.
$ python scripts/check_source_text.py <manifest.md> --vault-root <vault 경로>
이 검사는 구조와 출처 추적의 구멍을 잡아줄 뿐, 원문을 대신 읽어주거나 과학적 주장이 맞는지 판단해 주지는 않아요. 그건 여전히 사람 몫이에요.
자주 막히는 지점
- 스킬을 못 찾는다면 설치 후 대화를 새로 시작했는지 확인해 주세요.
- 그래프에
{claim_name}같은 노드가 보이면 템플릿이에요. Obsidian 그래프 필터에서-path:_templates로 빼면 돼요. --expect-sources없이 돌린 검사는 확인용일 뿐이라 마무리 근거로는 못 써요.
먼저 궁금할 만한 것
무료인가요?
개인 연구, 학습, 실험, 교육기관과 공공 연구기관은 무료예요. 상업적으로 쓰려면 Moonweave의 별도 라이선스가 필요해요. (PolyForm Noncommercial 1.0.0. 소스는 공개돼 있지만 OSI 승인 오픈소스는 아니에요.)
제 논문 파일이 어디로 올라가나요?
스킬이 파일을 어디로 보내지는 않아요. 원문 PDF는 원래 있던 자리에 그대로 있고, 노트만 내 컴퓨터의 Vault 폴더에 생깁니다. 다만 에이전트가 논문을 읽으려면 그 내용이 에이전트 서비스로 전달돼요. 아직 공개 전인 원고나 비밀 유지가 걸린 자료라면 그 점을 감안해 주세요.
이미 노트가 쌓인 Vault에 써도 되나요?
돼요. 기존 노트는 기본적으로 제자리에 두고 새 노트에서 연결해요. 옮기는 건 따로 승인할 때만이에요.
PDF를 한꺼번에 여러 편 줘도 되나요?
돼요. 다만 처음에는 한두 편으로 시험 적용을 해보고 결과를 본 다음 늘리는 걸 권해요.
노트가 어떻게 생기는지 보고 규칙을 손볼 수 있거든요. 아직 안 읽은 자료는
not reviewed로 잡아두니 목록만 먼저 던져놔도 돼요.
Codex에서도 똑같이 되나요?
돼요. 공개된 Agent Skills 사양을 따르는 패키지라 SKILL.md 형식이 그대로 통해요.
다른 건 스킬 폴더 위치(~/.agents/skills/)와 직접 지목할 때 쓰는
$스킬이름 표기 정도예요. 대화 내용과 안전 규칙은 같아요.
웹이나 클라우드 세션에서 써도 되나요?
설계 대화는 되지만 내 컴퓨터의 Vault에는 파일을 못 만들어요. 웹 Claude나 Cowork, Codex 클라우드 작업은 내 폴더를 직접 못 보거든요. Vault 폴더를 열어 둔 로컬 세션에서 쓰는 게 맞습니다.
Python이나 개발 도구를 따로 깔아야 하나요?
노트만 쓸 거면 필요 없어요. 검사와 PDF 본문 추출에만 Python을 쓰는데, 그것도 에이전트에게 시키면 알아서 실행해요.
연구실 사람들과 같이 쓰는 Vault예요.
그럼 온보딩에서 공유와 동기화 상태를 그대로 말해 주세요. 본문 파일을 Vault 밖에 두는 쪽으로 설계가 바뀝니다. 저작권과 의도치 않은 공개를 피하려는 거예요.