
Claude Code × Codex × Obsidian Vault ― AI 이도류로 만드는 「무엇이든 상담」 환경의 모든 설정 공개
요약
Claude Code와 Codex를 병행 사용하여 Obsidian Vault 기반의 지식 관리 환경을 구축하는 방법을 소개합니다. 프로젝트 루트의 혼란을 방지하고, Claude와 Codex가 공유하는 AGENTS.md를 통해 일관된 작업 규칙을 유지하는 설정법을 공개합니다.
핵심 포인트
- Claude Code와 Codex의 공유 운용을 위한 폴더 및 파일 구조 설계
- Obsidian Vault를 활용한 AI 생성 결과물의 자동 정리 및 시각화
- AGENTS.md를 정본(Source of Truth)으로 삼는 에이전트 협업 워크플로우
- OS 간 호환성을 고려한 포터블 설계 및 Google Drive 동기화 전략
2026-04-29 추가: 초고 작성 후 약 2주간 운용한 결과, 스킬 체제·MCP 구성·CLAUDE.md의 내용이 상당히 바뀌었습니다. 각 섹션에 취소선 + 추가 기입으로 차이점을 남겨두었습니다.
2026-05-18 추가: 모델을 Sonnet 4.6으로 변경·effortLevel 삭제·훅(hook) 2개 추가 (기밀 파일 보호 / frontmatter 체크)·claude-code-setup 플러그인 추가. 각 섹션에 취소선 + 추가 기입으로 차이점을 남겨두었습니다.
2026-06-16 추가: 프로젝트가 Claude Code 전용에서 Claude Code + Codex 공유 운용으로 대형 업데이트되었습니다. AGENTS.md 추가, Codex용 실행 기구(.agents/ / .codex/) 정비, Claude–Codex 간 리뷰 플로우 도입, hooks 확장, Google Drive 동기화로의 이행 등. 각 섹션에 취소선 + 추가 기입으로 차이점을 남겨두었습니다.
Claude Code를 사용하기 시작하고 얼마 지나지 않아, 많은 사람이 동일한 문제에 부딪힙니다.
- Claude가 생성한
.md가 프로젝트 루트 직하에 흩어져 있음 - "그 조사 메모 어디 갔지?"라는 상황이 주 1회 발생 - Mac과 Windows를 오갈 때마다 경로(path) 문제로 걸림돌이 됨
이 기사에서는 제가 실제로 운용하고 있는 「무엇이든 상담-pj」라는 Claude Code 전용 프로젝트의 내용물을, 폴더 구성·CLAUDE.md·.claude/settings.json·.mcp.json까지 전부 공개합니다. (
2026-06-16: Claude Code + Codex의 공유 운용 프로젝트로 진화했습니다.) Obsidian의 Vault를 프로젝트에 내포함으로써, Claude Code의 성과물을 자동으로 정리하고, 나아가 나중에 Obsidian의 그래프 뷰(graph view)로 지식을 조망할 수 있는 구성입니다.
대상 독자: Claude Code를 사용하기 시작한 ~ 중급자. Obsidian은 미경험자라도 OK.
먼저 설계의 축이 되고 있는 3가지 원칙을 먼저 적겠습니다. 이 3가지가 모든 구성 판단을 뒷받침하고 있습니다.
- 성과물은 전부 Obsidian Vault에 넣는다 (프로젝트 루트에는 어지럽히지 않는다)
- → 보관 규칙은 (사람이 매번 지시하지 않도록)
CLAUDE.md에 적어 Claude 스스로 지키게 한다. 2026-06-16 업데이트:AGENTS.md가 정본(source of truth)이 되며, Claude Code와 Codex 양쪽 모두 이 파일을 읽는다. - → Mac과 Windows를 USB/ZIP으로 오갈 수 있는 포터블(portable) 설계 (Git 동기화는 사용하지 않는다). 2026-06-16 업데이트: Google Drive 동기화로 이행. 포터블 설계의 원칙(절대 경로 금지·UTF-8·LF)은 계속 유효함
폴더의 전체 모습은 다음과 같습니다.
2026-04-29 업데이트: 스킬이 7개로 늘어났고, coding/ 하위에도 실제 프로젝트가 자라나고 있습니다.
~~```
무엇이든 상담-pj/
...
**2026-06-16 업데이트**: Claude Code 전용에서 Claude Code + Codex 공유 운용으로의 이행에 따라, 폴더 구성이 대폭 변경되었습니다. `AGENTS.md`가 공통 지시의 정본으로서 추가되었으며, Codex를 위한 실행 기구 폴더(`.agents/` / `.codex/`)와 공유층 폴더(`guidelines/` / `scripts/` / `hooks/`)가 추가되었습니다. `coding/reviews/` 또한 리뷰 기록의 전용 보관 장소로 명시되었습니다.
무엇이든 상담-pj/
...
<details>
<summary>초고 시점의 폴더 구성 (참고)</summary>
무엇이든 상담-pj/
...
</details>
~~`CLAUDE.md`와 `README.md`만을 프로젝트 루트에 남겨두고 있습니다. 이는 Claude Code가 기동 시 이 두 파일을 자동으로 읽기 때문에, Vault 안에 넣어버리면 참조되지 않기 때문입니다.~~
~~**2026-04-29 업데이트**: 프로젝트 루트에 남길 파일은 `CLAUDE.md`, `README.md`, `.mcp.json` 세 가지입니다. `.mcp.json`은 Claude Code가 프로젝트 루트에서 읽어들이는 MCP 서버 설정 파일이므로, Vault 내부로 이동하면 연결이 끊어집니다. 파일 정리 시 이 예외 사항을 `CLAUDE.md`에도 명시했습니다.~~
**2026-06-16 업데이트**: Codex와의 공유 운용으로 이행함에 따라, 프로젝트 루트에 남겨두어야 할 파일과 폴더가 늘어났습니다. `AGENTS.md`(공통 지시의 정본), `.agents/`(Codex 실행 기구), `.codex/`(Codex 설정), `guidelines/`·`scripts/`·`hooks/`(양쪽 에이전트 공유 계층)는 모두 프로젝트 루트에 두어야 합니다. 이것들을 Vault 내부로 이동하면 각 에이전트의 참조가 깨집니다.
## 폴더 구성과 서브 폴더의 역할
`obsidian-vault/`를 프로젝트에 내포하고 있는 것이 이 구성의 핵심입니다. Claude Code의 작업 디렉터리는 프로젝트 루트(`何でも相談-pj/`)인 상태를 유지하므로, `.claude/`나 `.mcp.json`은 제대로 인식됩니다. 반면, 노트와 결과물은 모두 Vault 하위로 들어갑니다.
6개 서브 폴더의 역할을 표로 정리했습니다.
| 폴더 | 용도 | 명명 규칙 |
|---|---|---|
| `daily/` | 데일리 노트 · 작업 로그 | `YYYY-MM-DD.md` |
| ... | 포인트는 `archive/` 운용으로, 월 단위 폴더(`archive/2026-04/` 등)로 **원래의 폴더 구조째** 이동합니다. 이렇게 하면 Vault 루트가 항상 최소화되면서도, 과거의 문맥을 추적하고 싶을 때 원래의 계층 구조 그대로 찾아낼 수 있습니다.
## CLAUDE.md에 위치 규칙을 작성하기
> **2026-06-16 업데이트**: `CLAUDE.md`는 `AGENTS.md`로 향하는 얇은 입구로 변경되었습니다. 공통 지시의 정본은 `AGENTS.md`입니다. `CLAUDE.md`에는 Claude Code 고유의 보충 설명만 작성하고, 서두에서 `@AGENTS.md`를 참조하게 합니다. 아래 설명은 초고 ~ 2026-05-18 시점의 것이지만, "CLAUDE.md(또는 AGENTS.md)에 위치 규칙을 작성한다"는 개념은 현재도 변함이 없습니다.
이 부분이 이 글에서 가장 전달하고 싶은 내용입니다.
~~`CLAUDE.md`는 프로젝트별 지시서로서 기능합니다. 많은 사람이 "코딩 규약을 작성하는 곳"으로 사용하고 있다고 생각하지만, 저는 **파일 배치 자동화 장치**로 사용하고 있습니다.~~
**2026-06-16 보충**: 현재는 `AGENTS.md`가 프로젝트 공통 지시의 정본이며, Claude Code와 Codex 모두 `AGENTS.md`를 읽습니다. `CLAUDE.md`는 Claude Code 전용 입구 파일로서 얇게 유지합니다. 폴더 위치 규칙이나 Obsidian 운용 규칙은 모두 `AGENTS.md`에 기재되어 있습니다.
예를 들어 저의 `CLAUDE.md`에는 다음과 같은 표가 적혀 있습니다.
```markdown
## 폴더 구성과 기본 위치 규칙
새 파일을 생성할 때는 내용에 따라 다음 폴더에 배치해 주세요.
(절대로 프로젝트 루트나 Vault 루트에 흩뿌리지 마세요):
...
이 표 한 장을 작성해 두는 것만으로도 동작이 극적으로 변합니다.
Before (CLAUDE.md 없음):
나: "API 설계 메모를 작성해줘"
Claude: "api-design.md를 만들었습니다" (프로젝트 루트에 생성됨)
After (CLAUDE.md에 위치 규칙 있음):
나: "API 설계 메모를 작성해줘"
Claude: "obsidian-vault/research/2026-04-18-API설계.md를 만들었습니다"
매번 "Vault의 research 하위에 만들어줘"라고 말할 필요가 없습니다. CLAUDE.md
의 마지막 문장인 "대화 서두에 데일리 노트를 읽는다"도 효과가 있어, 세션 시작 시 Claude가 알아서 당일의 데일리 노트를 읽고 전후 문맥을 파악한 상태에서 답변해 줍니다.
2주간 운용하며 알게 된 것은, 폴더 위치 규칙만으로는 Claude의 출력 품질을 안정시킬 수 없다는 것이었습니다. 현재의 CLAUDE.md는 초안보다 3배 가까운 분량이 되어 있으며, 주로 다음과 같은 섹션을 추가했습니다.
스킬 이용 정책 (Skill Usage Policy) — 7개의 커스텀 스킬 중 어떤 것이 "상시 적용"이고 어떤 것이 "필요 시에만" 적용되는지를 명시하고 있습니다. 특히 obsidian-markdown (Obsidian 표기법 자동 적용)과 humanizer (AI스러운 느낌 29가지 패턴 제거)는 필수 스킬로서, Claude가 노트를 작성할 때마다 자동으로 적용하도록 지시하고 있습니다.
### 필수 스킬 (상시 적용)
| 스킬 | 적용 상황 |
|--------|----------|
...
humanizer 적용 규칙 — "언제 적용하고 언제 적용하지 않을지"의 경계선을 명확히 하고 있습니다. 코드 블록 내부나 YAML frontmatter에는 적용하지 않는다, 인용 블록은 원문 그대로 유지한다 등입니다. 이를 적어두지 않으면 Claude가 코드의 주석까지 humanize 하려다가 코드를 망가뜨리곤 합니다.
스크립트 문자 인코딩 규칙 — Windows와 Linux를 오가는 프로젝트이므로, .sh는 BOM 없는 UTF-8 + LF, .ps1은 BOM 있는 UTF-8 + CRLF, .py는 BOM 없는 UTF-8 + LF라는 구체적인 규칙을 적어두었습니다. 이를 작성하기 전에는 Claude가 만든 .sh 파일을 Linux로 가져가면 줄 바꿈 코드(line ending) 문제로 동작하지 않는 일이 발생했습니다.
Obsidian 운용 규칙 — frontmatter의 필수 필드 (title, date, tags, aliases), wikilink 형식, callout 사용법, 임베딩(embedding) 표기법 등을 망라하고 있습니다. obsidian-markdown 스킬의 SKILL.md에 상세 내용은 맡기되, CLAUDE.md에도 요약을 적어둠으로써 스킬을 불러오기 전 단계에서도 최소한의 표기법이 지켜지도록 하고 있습니다.
프로젝트의 동작을 확정하기 위해 .claude/settings.json에서 몇 가지 키를 명시하고 있습니다.
2026-04-29 업데이트: 모델을 Opus 4.6으로 변경했습니다.
2026-05-18 업데이트: 모델을 Sonnet 4.6으로 변경. effortLevel을 삭제하고, 기밀 파일 보호와 frontmatter 체크라는 2개의 훅(hook)을 추가했습니다.
~~```json
{
...
**2026-06-16 업데이트**: Codex와의 연동에 따라 `Stop` 훅을 추가했습니다. 기존의 `PreToolUse` / `PostToolUse`와 합쳐져 hooks는 3종류가 되었습니다.
> **주의**: 아래는 구조를 보여주는 개략적인 버전입니다. `PreToolUse` / `PostToolUse`의 `command`에는 실제로는 `node -e "..."` 형태의 Node.js 스크립트가 들어가지만, 기사에서는 가독성을 위해 설명문으로 표시했습니다. 그대로 복사하면 기밀 파일 보호와 frontmatter 체크는 동작하지 않습니다.
```json
{
"model": "claude-sonnet-4-6",
"enabledPlugins": {
...
2026-04-29 시점의 settings.json (참고)
{
"model": "claude-opus-4-6",
"enabledPlugins": {
...
초안 시점의 settings.json (참고)
{
"model": "claude-opus-4-7",
"enabledPlugins": {
...
각각의 의도는 다음과 같습니다.
→model : Opus 4.7으로 고정. 모델이 멋대로 바뀌지 않도록. →2026-04-29 업데이트 Opus 4.6으로 변경. Claude Code에서는 Opus 4.6이 "Fast mode"로서 고속 출력을 지원하며, /fast
토글로 전환할 수 있습니다. 코딩 상담이나 조사 태스크에서는 출력 속도가 체감 성능에 직결되기 때문에 이쪽으로 갈아탔습니다. 2026-05-18 업데이트 Sonnet 4.6으로 변경. 일상적인 상담·개발에서는 Sonnet으로도 충분하며, 비용 절감을 위해 변경했습니다. 무거운 추론이 필요할 때는 /model 명령어로 그 시점에만 Opus로 전환할 수 있습니다.
enabledPlugins: 후술할everything-claude-code를 프로젝트에서 명시적으로 활성화.effortLevel: "xhigh": 추론의 깊이를 최대치에 가깝게(max의 한 단계 아래) 고정. 코딩이나 조사에서 타협하지 않도록 하기 위함. 2026-05-18 업데이트CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING: "1"로 adaptive thinking을 무효화한 상태에서는 effortLevel이 작동하지 않으므로 삭제.CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING: 사고량의 자동 조절을 중단. 매번 동일한 깊이로 생각하게 하는 것이 실운용에서 안정적이기 때문.hooks: 2종류의 훅(hook)을 추가.hooks(2026-05-18 추가)- PreToolUse (기밀 파일 보호): Edit/Write 직전에 실행.
.env,credentials,secret을 포함하는 경로에 대한 편집을 자동으로 차단. 실수로 API 키 파일을 수정하는 실수를 방지. - PostToolUse (frontmatter 체크): Write 직후에 실행.
obsidian-vault/내의.md파일에 frontmatter가 없는 경우, systemMessage로 경고를 표시.
- PreToolUse (기밀 파일 보호): Edit/Write 직전에 실행.
hooks: 3종류로 확장.hooks(2026-06-16 업데이트)- PreToolUse (기밀 파일 보호): 동일함.
.env,credentials,secret을 포함하는 경로에 대한 편집을 자동으로 차단. - PostToolUse (frontmatter 체크): 동일함.
obsidian-vault/내의.md에 frontmatter가 없는 경우 경고. - → Codex가 agent 훅 형식을 지원하지 않으므로 삭제.
- PostToolUse (Codex agent 자동 실행):
obsidian-vault/coding/reviews/*.md에 대한 Write를 감지하여 Codex agent를 자동 실행. - Stop (리뷰 자동 전송): Claude의 작업 완료 시
scripts/notify-codex-review.ps1을 실행.reviews/에 당일 노트가 있으면codex exec로 Codex에 리뷰 요청을 직접 전송.
- PreToolUse (기밀 파일 보호): 동일함.
이에 더해 .claude/settings.local.json에는 **개인 허가 목록(allowlist)**을 두고 있습니다.
{
"permissions": {
"allow": [
...
settings.json은 '프로젝트로서 공유하고 싶은 설정', settings.local.json은 '내 터미널만의 허가'로 구분하여 사용하는 것이 요령입니다. 이 파일 덕분에 자주 사용하는 AWS 공식 문서, Qiita, Anthropic 공식 사이트 페치(fetch) 시 권한 확인 프롬프트가 뜨지 않아 작업 리듬이 깨지지 않습니다.
~~MCP 서버는 프로젝트 고유의 ~~ → .mcp.json에서 하나만 활성화하고 있습니다. 2026-04-29 업데이트: 2개로 늘렸습니다. AWS Docs에 더해 NotebookLM MCP를 추가했습니다.
{
"mcpServers": {
"awslabs.aws-documentation-mcp-server": {
...
초안 시점의 .mcp.json (참고)
{
"mcpServers": {
"awslabs.aws-documentation-mcp-server": {
...
실행은 uvx를 경유합니다. uv/uvx를 미리 설치해 두면, 첫 실행 시 자동으로 패키지를 다운로드해 줍니다. 왜 AWS Docs를 넣었느냐 하면, Claude에게 AWS 관련 질문을 하면 오래된 정보로 대답하는 경향이 있기 때문에, 1차 정보를 직접 참조할 수 있도록 하기 위해서입니다.
NotebookLM MCP는 자신이 Google NotebookLM에 등록한 소스 그룹(PDF·URL·텍스트)에 대해, Claude Code의 대화 중에서 직접 질문할 수 있게 해주는 서버입니다. npx로 실행하며, 처음 한 번만 Chrome에서 Google 로그인을 하면 이후에는 Cookie가 영속화됩니다. 자신만의 지식 베이스를 Claude가 횡단 검색하게 하고 싶다는 용도에 딱 맞으며, "그 PDF에 써 있었던 것 같은데 몇 페이지였지?"와 같은 질문에 인용과 함께 답변해 줍니다.
중요한 것은 "MCP를 너무 많이 늘리지 않는 것"입니다. everything-claude-code의 README에도 "모든 MCP를 활성화하면 200k의 컨텍스트가 70k까지 줄어들 가능성이 있다"라고 적혀 있습니다. 저는 AWS Docs와 NotebookLM을 프로젝트 스코프(Project Scope)에서 활성화하고, 다른 MCP(context7, exa, github, memory, playwright, sequential-thinking)는 everything-claude-code 플러그인을 통해 필요할 때만 사용하는 방식으로 운영하고 있습니다. NotebookLM은 Google 로그인이 필요하며 항상 연결되어 있는 것이 아니기 때문에, 불필요한 대화에서는 실행되지 않도록 주의할 필요가 있습니다.
해당 플러그인 측에서 자주 사용하는 슬래시 명령어(Slash Command)를 표로 정리해 둡니다.
| 명령어 | 용도 |
|---|---|
/plan | 구현 계획을 세울 때 |
/tdd | TDD (테스트 주도 개발)로 코드를 작성하기 시작할 때 |
/code-review | 작성한 코드의 품질 리뷰 |
/security | 보안 관점의 리뷰 |
/build-fix | 빌드 에러의 원인 특정 및 수정 |
/refactor-clean | 데드 코드(Dead Code) 삭제 및 정리 |
/verify | 구현 후의 검증 루프 |
/checkpoint | 검증 통과 시의 상태 저장 |
2026-05-18 추가: claude-code-setup@claude-plugins-official 플러그인도 도입했습니다. 코드베이스를 분석하여 훅(Hook), 스킬(Skill), MCP 서버의 최적 설정을 제안해 줍니다. /claude-automation-recommender로 호출할 수 있습니다.
또한 .claude/skills/note-article-writing/에 **프로젝트 고유의 커스텀 스킬(Custom Skill)**을 배치해 두었습니다. note.com용 기사를 쓰기 위한 체크리스트나 템플릿을 SKILL.md에 기술해 두면, Claude가 자동 트리거로 호출해 줍니다. 프로젝트 스코프에 독자적인 스킬을 배치할 수 있다는 것이 .claude/skills/의 강점이며, 워크플로우에 맞춘 미니 에이전트를 직접 만들 수 있습니다.
2026-04-29 업데이트: 스킬이 7개까지 늘어났습니다. "상시 적용"과 "필요 시에만 적용"으로 나누어 운영하고 있습니다.
| 스킬 | 분류 | 역할 |
|---|---|---|
obsidian-markdown | 상시 적용 | Vault 내의 .md를 작성할 때, frontmatter·wikilinks·callouts·embeds·tags를 자동으로 올바른 표기법으로 작성 |
humanizer | 상시 적용 | 문장 생성 시 AI스러운 느낌 29가지 패턴("~라고 할 수 있습니다", "~하는 것이 중요합니다" 등)을 자동으로 제거. 코드나 YAML에는 적용하지 않음 |
note-article-writing | 필요 시 | note.com용 기사 집필 및 체크. 스타일 규칙과 템플릿 내장 |
obsidian-bases | 필요 시 | .base 파일(Obsidian의 데이터베이스 뷰)을 생성할 때 |
json-canvas | 필요 시 | .canvas 파일(비주얼 캔버스)을 생성할 때 |
obsidian-cli | 필요 시 | Obsidian 실행 중에 CLI에서 노트를 조작하거나 검색할 때 |
defuddle | 필요 시 | 웹 페이지에서 깨끗한 Markdown을 추출할 때 |
특히 humanizer
의 도입은 컸다. Claude가 쓰는 문장에는 아무래도 "구성으로서는~", "~라고 할 수 있겠습니다", "~에 있어서"와 같은 정형구가 섞이기 때문에, 29가지 패턴을 리스트화하여 SKILL.md에 넣어두면 출력 단계에서 자동으로 바꿔 써줍니다. note.com의 기사를 쓸 때는 note-article-writing 스타일 규칙과 humanizer가 모두 적용되는 형태가 되어, 매번 "자연스러운 문체로 해줘"라고 말할 필요가 없어졌습니다.
프로젝트를 Claude Code와 Codex 양쪽 모두에서 사용할 수 있도록 실행 기구(execution mechanism)를 분리 및 공유화했습니다.
| 파일 | 역할 |
|---|---|
AGENTS.md | Claude Code와 Codex의 공통 지시사항 원본 |
CLAUDE.md | @AGENTS.md를 읽게 하는 얇은 입구. Claude Code 고유의 보충 사항만 기재 |
Codex는 AGENTS.md를 직접 읽습니다. Claude Code는 CLAUDE.md를 기동 시에 읽고, 그 안에서 @AGENTS.md를 참조합니다. 두 에이전트 모두 동일한 규칙으로 동작하기 때문에, "Claude Code에서 만든 규칙 설정을 Codex에 다시 설명하는" 번거로움이 사라집니다.
| 에이전트 | 역할 |
|---|---|
| Claude (Claude Code) | 실행역. 구현·파일 편집·디버깅·조사 등의 주요 작업을 담당 |
| ... |
obsidian-vault/coding/reviews/가 리뷰 기록 전용 보관소입니다.
- Claude가 구현·변경을 수행
- Claude가
obsidian-vault/coding/reviews/YYYY-MM-DD-<토픽>.md에 리뷰 요청 노트를 작성 - Claude의 작업 완료 시 Stop 훅(
scripts/notify-codex-review.ps1)이 기동하여, 당일의 리뷰 노트를 검출하고codex exec로 리뷰 요청을 Codex에 직접 송신 - Codex가 노트를 읽고, "리뷰 결과" 섹션에 결과를 기록
- Claude가 노트를 읽고, 필요한 수정을 수행한 뒤 "대응 메모"를 남김
- 완료 후 "완료 기록" 섹션에 최종 상태를 기록
Obsidian Vault가 Claude와 Codex의 공유 데이터베이스로서 기능합니다.
| 폴더 | 역할 |
|---|---|
.agents/skills/ | Codex 측의 skill 입구 (.claude/skills/를 참조 원본으로 읽음) |
.codex/ | Codex의 프로젝트 설정·hooks·custom agent |
guidelines/ | 문체·방침·브랜드 등 참조 문서 (양쪽 에이전트 공유) |
scripts/ | 공유 보조 스크립트 (알림·dry-run 처리 등) |
hooks/ | hook 실제 처리 스크립트 (Claude Code와 Codex의 공유 계층) |
이 프로젝트는 Git도 클라우드 동기화도 사용하지 않고, USB/ZIP으로 수동 복사하는 것을 전제로 합니다. Git을 사용하지 않는 이유는 Obsidian의 그래프·설정 파일·PDF 등 바이너리류까지 포함한 "통째로"를 거칠게 옮기고 싶기 때문입니다. 그 대신, 파일 생성 시의 6가지 규칙을 지켜야 합니다.
2026-06-16 업데이트: 현재는 Google Drive로 동기화하고 있으며, Mac/Windows 간의 이행은 자동화되어 있습니다. 수동 복사는 불필요해졌습니다. 다만 포터블 설계(portable design) 원칙(절대 경로 금지·BOM 없는 UTF-8·LF 통일)은 Google Drive 동기화에서도 유효하므로, 다음 규칙은 계속해서 준수합니다.
| # | 규칙 | 이유 |
|---|---|---|
| 1 | 절대 경로를 쓰지 않는다 | OS를 넘나들면 즉시 작동 불능 |
| 2 | 홈 디렉터리를 직접 참조(C:\Users\... 또는 /Users/...)하지 않는다 | 위와 동일 |
| 3 | 경로 구분자는 /로 통일 | Windows에서도 /는 작동함 |
| 4 | BOM 없는 UTF-8로 저장 | 글자 깨짐 방지 |
| 5 | 줄바꿈은 LF (CRLF 혼재는 피할 것) | Git을 사용하지 않으므로 에디터 측에서 통일함 |
| 6 | obsidian-vault/.obsidian/도 함께 복사 | Obsidian의 설정 및 플러그인 활성화 상태를 계승하기 위함 |
다른 PC로 옮긴 후에는 플러그인만 재도입합니다. 이는 ~/.claude/plugins/가 OS마다 바이너리(binary)를 다운로드하기 때문에 폴더째로 옮길 수 없기 때문입니다.
/plugin marketplace add https://github.com/affaan-m/everything-claude-code
/plugin install everything-claude-code
2026-05-18 업데이트: claude-code-setup 플러그인도 추가했습니다.
/plugin marketplace add https://github.com/affaan-m/everything-claude-code
/plugin install everything-claude-code
/plugin install claude-code-setup@claude-plugins-official
이 3줄을 실행하면, 두 번째부터는 동일한 PC의 ~/.claude/settings.json에 기록되므로 불필요합니다. Obsidian 측은 새 PC에서 Obsidian을 실행하고 obsidian-vault/를 Vault(보관소)로 다시 열기만 하면, 데일리 노트(daily note) 설정이나 플러그인 활성화 상태가 그대로 계승됩니다.
내용이 길어졌으므로, 따라 할 때 최소한으로 해야 할 일을 5단계로 정리해 둡니다.
- 프로젝트 폴더를 만들고, 루트(root)에
AGENTS.md(공통 지시사항의 정본),CLAUDE.md(@AGENTS.md를 읽는 얇은 입구),README.md를 둔다. Claude Code와 Codex를 모두 사용하지 않는 경우에는CLAUDE.md만 있어도 가능 obsidian-vault/를 만들고,daily/
AI 자동 생성 콘텐츠
본 콘텐츠는 Qiita AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기