# AI에이전트와 하루를 기획하는 방법 - 옵시디언 포기하고, 노션 위에 에이전트 얹기

노션에 할 일은 꼬박꼬박 적었습니다. 날짜 넣고, 캘린더 뷰로 보고, 끝나면 체크. 그건 잘 됐어요.

문제는 **매일 아침마다 제가 저한테 브리핑을 해야 했다**는 겁니다.

> 어제 뭐 했더라. **그거 끝냈나 안 끝냈나. 오늘은 뭐부터 하지.** 노션 열어서 확인하고, 일정은 또 캘린더에 있으니까 캘린더 따로 들어가서 보고. 매일 아침 이걸 다시 짜맞추는 데 시간을 썼습니다.

노션은 제가 적어둔 걸 **보여주기만** 합니다.

"오늘은 이거부터 하세요"라고는 안 해줘요. **제가 원한 건 목록이 아니라 판단이었습니다.**

**제 일정이랑 할 일이랑 지난주에 뭐 했는지까지 다 보고 있는 누군가가, 숲을 먼저 보고 "오늘은 이거요"라고 말 걸어주는 것.**

원래 옵시디언으로 관리를 넘기려고 했는데요. 근데 세팅을 시작하니까 바로 벽에 부딪혔어요. **세팅하는 동안에도 일은 해야 하고, 일을 하면 할 일은 계속 노션에 쌓입니다.** 옮길 짐이 매일 늘어나는 이사였어요. 하ㅋㅋ 이거 언제 끝내지 싶더라고요.

그래서 방향을 완전히 뒤집었습니다. **저는 도구를 바꾸는 대신 이미 쓰던 도구 사이에 에이전트를 끼워 넣었습니다.**

- Notion을 버리거나 옮기지 않는다

- Google Calendar도 그대로 둔다

- 각 원본을 **중앙 에이전트가 읽고 연결한다**

- 오래 남길 판단과 결과만 로컬 Markdown Wiki로 보낸다

## 1. 맥북은 일하는 곳, 맥미니는 정리하는 곳

![https://upload.cafenono.com/image/slashpagePost/20260915/152101_3Udm2Cope9u764Q8YE](https://upload.cafenono.com/image/slashpagePost/20260915/152101_3Udm2Cope9u764Q8YE)

맥북은 일이 벌어지는 곳, 맥미니는 그걸 읽고 정리하는 곳으로 나눴습니다.

맥 두 대를 이렇게 나눠 씁니다. 역할이 섞이면 금방 무너지더라고요.

**_🏠 집 Mac mini_**_= 24시간 켜져 있는 본진_

- 별밤이(헤르메스 메인 에이전트)가 상주하면서 Slack으로 아침 브리핑과 오후 회고를 돌리고, Notion과 개인·회사 Google Calendar를 조회하고, 로컬 Markdown Wiki를 관리하고, 매일 밤 private Git에 백업합니다.

- 물론 여기서도 작업들이 돌아가요. 밤새 돌려야 하는 작업, 상시 돌려야하는 자동화 업무 등등.

**_💻 MacBook_**_= 실제로 일이 벌어지는 곳_

- 프로젝트 폴더에서 Claude Code와 Codex를 쓰고, 브라우저 작업은 Aside로 합니다.

그렇다고 맥미니가 에이전트 서버 전용은 아닙니다. 저는 집에서도 맥미니로 Claude Code·Codex·Aside를 직접 씁니다. 그래서 양쪽 다 작업 세션이 쌓이고, **맥미니의 Hermes가 두 기기 흔적을 함께 정리합니다.** 맥미니가 맥북의 허용된 흔적만 읽고, 필요한 맥락만 가져옵니다.

## 2. 제일 먼저 한 건 "어디가 원본인지" 정하는 일이었어요

이 구조를 만들면서 가장 먼저 한 일은 데이터를 한곳에 모으는 게 아니었습니다. **정보 종류마다 원본을 딱 하나씩 정하는 것**이었어요.

![https://upload.cafenono.com/image/slashpagePost/20260915/152150_ixDdR3oBPQ4qv8jxZH](https://upload.cafenono.com/image/slashpagePost/20260915/152150_ixDdR3oBPQ4qv8jxZH)

**정보 종류마다 원본을 하나씩 정해두고, 나머지는 전부 참조로만 씁니다.**

Notion과 Wiki를 양방향 체크리스트로 만들지 않았습니다. **태스크의 현재 상태는 ****언제나 Notion이 우선****이에요.
Wiki의 Daily Note는 읽기용 스냅샷일 뿐, 거기서 체크하거나 날짜를 고치지 않습니다.**

이거 안 정해두면 나중에 "둘 중 뭐가 맞는 거지?"로 하루를 날립니다.

## 3. 오전 8시 40분, 오늘 할 일을 같이 정합니다

맥미니에 상주하는 제 에이전트가 매일 오전 8:40에 `zoey-knowledge-os-morning-planning` 작업을 돕니다.

개인·회사 Google Calendar와 Notion `Daily Tasks`를 함께 읽어요. 어제·오늘·내일을 보고, 오늘 목록 밖에 있어도 3일 안에 제출·신청·마감이 있으면 같이 알려줍니다.

![헤르메스 에이전트를 슬랙봇으로 추가해 쓰고 있어요](https://upload.cafenono.com/image/slashpagePost/20260915/170424_DFMyruOmE80lYeuffc?q=80&s=1280x180&t=outside&f=webp)

아침 메시지 순서는 이렇습니다.

```
- 오늘 일정
- 오늘 Notion
- 어제 미완료
- 가까운 마감
- 별밤이 추천 최대 3개
→ 오늘로 옮길 것 / 뺄 것 / 새로 넣을 것을 질문
```

그리고 저는 바로 밑에 그냥 자연어로 이거 해줘, 저거 해줘, 아 맞다 이거 까먹었다, 이거 해줘 쏼라쏼라 다 올려버립니다.

![무ㅓ 항상 미뤄줘 밖에 안되긴 함..ㅎ (???)](https://upload.cafenono.com/image/slashpagePost/20260915/171633_wDTW5f9Az0vbbZkIRj?q=80&s=1280x180&t=outside&f=webp)

제가 자연어로 답하면

**에이전트가 Notion MCP로 노션에 Daily Tasks를 생성하고, 시간을 지정해줍니다.**

![이렇게 노션에 올라가고](https://upload.cafenono.com/image/slashpagePost/20260915/173010_aETcM8evGX89xQNh66?q=80&s=1280x180&t=outside&f=webp)

![노션 캘린더로 해서 '가시적'으로 보이게 타임블럭을 설정합니다.](https://upload.cafenono.com/image/slashpagePost/20260915/173152_gXvynNFFqE83r8gi05?q=80&s=1280x180&t=outside&f=webp)

노션 Daily Tasks는 제가 만든 템플릿으로 몇년째 쓰고 있어요.

[[조이 투두리스트] N잡용 투두리스트 일정관리 노션 템플릿 - 조이해빗](https://www.latpeed.com/products/8AMCw)

너무너무 잘 쓰는중.... (ㄹㅇ 자랑)

## 4. 체크박스는 "했다"만 알려주지, "뭐가 됐는지"는 모릅니다

첫 버전은 아침에 Notion과 Calendar를 읽어서 보여주는 데서 끝났습니다. 오늘 뭘 할지는 알 수 있었어요. 그런데 며칠 뒤에 "그래서 저거 어떻게 됐더라?"를 물으면 답이 안 나왔습니다.

완료 체크는 "했다"는 사실만 남기거든요. 메일 보내기에 체크가 되어 있어도, 누구한테 뭘 보냈고 뭐가 확정됐는지는 어디에도 없습니다. 정작 나중에 다시 필요한 건 그쪽인데요. **그래서 태스크 하나가 어떤 결과로 이어졌는지 따라갈 수 있는 기록을 한 겹 깔았습니다.**

그러니까 오늘 할 일이 있었고(A), 그걸 했다면, 그것에 대한 결과(B)가 있잖아요. 이 둘을 이어준거죠. 만약에 다음날(C) 또 같은 작업을 했다면, 다음날 태스크에 동일한 결과 페이지(B)가 연결되는거에요.

```
Notion Daily Tasks
        ↓ pull/upsert
_data/tasks.sqlite
        ↓ render
daily/YYYY/MM/YYYY-MM-DD.md
        ↓ result link
projects/ · company/projects/ · cases/ · briefings/
```

Notion에서 태스크를 끌어와 로컬에 쌓고, 그날치를 Markdown 한 장으로 자동 생성하고, 결과 문서로 링크를 겁니다. 매일 아침 제가 손으로 짜맞추던 게 정확히 이 연결이었어요.

그리고 태스크마다 칸을 두 개 붙였습니다. 이건 결과를 남겨야 하는 일인지, 남겼다면 그 문서가 어디에 있는지.

```
knowledge_capture: none | required
result_ref: null | wiki-document-path
```

완료 체크가 됐는데 knowledge_capture는 required이고 result_ref가 비어 있으면, 그 태스크는 자동으로 오후 회고 질문 후보가 됩니다. 끝났냐고 다시 묻는 게 아니라 "그래서 뭐로 확정됐어요?"를 묻는 거예요.

### Daily Note는 두 번째 Todo가 아닙니다

매일 `daily/YYYY/MM/YYYY-MM-DD.md`에 Markdown이 자동 생성됩니다. **일정, 그날 태스크, Notion page ID, 연결된 프로젝트, 결과 문서 포인터가 들어가요.**

하지만 저는 여길 직접 편집하지 않습니다. 역할을 이렇게 잘라뒀어요.

```
Notion       = 입력 · 날짜 변경 · 완료 체크
Daily Note   = 그날 무엇이 있었는지 읽는 스냅샷
Wiki Project = 무엇이 결정됐고 결과가 어땠는지 남기는 곳
```

## 5. 오후 5시, 강제 회고 시스템 + 에이전트가 업무 wrap-up

회고는 "생각나면 하는 것"으로 두면 100% 안 합니다. 그래서 예약 작업으로 박아뒀어요.

평일 오후 5시에 맥미니가 `~/Desktop/CLAUDE`, `~/.claude`, `~/.codex`, `~/.aside`의 최근 흔적을 확인합니다. 맥미니와 맥북 **양쪽** 세션을 봅니다. 집에서 한 작업은 맥미니 로컬 세션에서, 밖에서 한 업무는 맥북 세션과 실제 산출물에서 복원해요. 맥미니의 자동화 흔적만으로 회사에서 한 일을 **추정하지 않습니다.**

맥북 접근은 이 순서입니다.

1. macOS 파일 공유가 마운트돼 있으면 SMB

2. 없으면 Tailscale SS다음 연결 때 최근 96시간과 놓친 구간을 다시 확인

3. 다음 연결 때 최근 96시간과 놓친 구간을 다시 확인

### 하루에 진행된 업무를 파악하고, 중요한 내용을 wiki로 승격합니다

같은 업무의 대화와 산출물을 묶어서, 이 질문들에 답할 수 있게 만드는 작업이에요.

```
무슨 프로젝트였나
어떤 문제를 해결했나
내가 무엇을 판단했나
어떻게 기획했나
Claude·Codex·Aside는 각각 무엇을 했나
어떤 산출물이 남았나
현재 상태와 다음 단계는 무엇인가
이 경험은 어떤 역량과 재사용처로 이어지는가
```

Aside는 브라우저 작업이라 별도 handoff 형식으로 읽습니다. session_id, 제목, 최근 요청, 마지막 결과, 브라우저 도구 활동, 산출물 포인터, 현재 상태, 이어받기 정보.

대화 맥락과 결과는 맥미니의 새 Aside 세션으로 넘길 때도 있어요.

무튼 에이전트가 자동으로 넘기기 걸리는 태스크가 있으면, 저에게 따로 물어보기도 해요.

> 무엇으로 확정됐나요?
> 어떤 선택을 하셨어요?
> 결과물이 어디에 있나요?
> 다음에 다시 쓸 만한 판단이 있었나요?

확정된 답은 태스크의 Notion page ID와 Wiki 문서 경로로 연결됩니다.

## 6. Wiki를 Zoey Knowledge OS로 갈아엎었습니다

**원래 쓰고 있던 개인 Wiki 체계가 있었는데, 위와 같은 구조를 만들면서 **Zoey Knowledge OS로 확장했어요.

```
wiki/
├── inbox/              아직 검토하지 않은 승격 후보
├── raw/                출처 원본
├── daily/              Notion·Calendar 기반 읽기용 일일 기록
├── projects/           진행 중인 개인·학습·콘텐츠 프로젝트
├── company/projects/   비식별화한 회사 프로젝트 지도
├── concepts/           반복해서 쓰는 개념과 판단 프레임
├── entities/           사람·조직·제품·도구·시스템
├── cases/              실제 적용 사례
├── playbooks/          다시 수행할 수 있는 절차와 검증 기준
├── queries/            아직 답을 키우는 질문
├── briefings/          여러 출처를 묶은 시점성 결과
├── academy/            강의·워크숍으로 승격한 지식
├── _meta/              스키마와 운영 규칙
└── _data/              task ledger와 생성 인덱스
```

모든 Markdown 페이지는 최소한 이 frontmatter를 갖습니다.

```
---
title: Page Title
created: YYYY-MM-DD
updated: YYYY-MM-DD
type: entity | concept | case | project | playbook | query | briefing | academy | daily
stage: seed | active | mature | archived
tags: []
sources: []
confidence: high | medium | low
---
```

새 문서를 만들기 전에 기존 문서를 먼저 검색합니다. 이미 있는 주제면 업데이트하고, 진짜 새 페이지면 관련 문서 링크를 같이 만들어요. 바꾸고 나면 `index.md`와 append-only `log.md`를 갱신합니다.

### 모든 기록을 Wiki에 넣지는 않습니다

![https://upload.cafenono.com/image/slashpagePost/20260915/152412_ninH28s3GrOdLBqy3H](https://upload.cafenono.com/image/slashpagePost/20260915/152412_ninH28s3GrOdLBqy3H)

프로젝트에서 시작해 "다음에 어디서 다시 쓰나"까지 이어질 때만 Wiki로 올립니다.

승격 대상은 이런 것들이에요.

- 프로젝트 방향을 바꾼 결정

- 실패 원인과 수정 방법

- 반복해서 쓸 절차

- 프로젝트 상태 변화

- 검증 가능한 성과와 산출물

- 다시 쓸 수 있는 경험

**뉴스 하나 읽었다, 파일 하나 고쳤다는 기본적으로 장기 지식이 아닙니다.** 이걸 안 자르면 Wiki가 두 번째 쓰레기통이 돼요.

## 7. 문서 창고에서 의미 그래프로

두 번째 단계는 폴더 정리로 끝나지 않았습니다. 프로젝트·결정·결과·증거·역량·재사용 사이의 관계를 명시하는 Personal Ontology V0.1을 설계했어요.

지금 쓰는 주요 관계는 이렇습니다.

```
part_of          더 큰 프로젝트에 포함
based_on         결정이나 주장의 근거
produced         작업으로 만든 산출물
led_to           결정 이후의 결과
evidence_for     결과를 입증하는 자료
demonstrates     경험이 증명하는 역량
generalized_into 반복 경험에서 만든 Playbook
reused_in        경력·블로그·강의·다른 프로젝트에서 재사용
blocked_by       현재 진행을 막는 조건
supersedes       이전 결정을 대체
```

관계는 YAML frontmatter의 Wiki link 배열로 기록합니다.

```
id: zoey:decision:example-decision
type: decision
status: confirmed
sensitivity: company-sanitized
part_of:
  - "[[example-project]]"
based_on:
  - "[[example-evidence]]"
led_to:
  - "[[example-outcome]]"
demonstrates:
  - "[[policy-design]]"
reused_in:
  - "[[career-evidence-library]]"
```

`status`가 왜 있냐면, AI가 세션에서 뽑아낸 값은 전부 기본 `proposed`이기 때문입니다. 제가 확인했거나 검증 가능한 산출물이 붙어야 `confirmed`가 돼요.

## 8. 밤 11시, private Git 백업

### 공유하는 것과 공유하지 않는 것

두 컴퓨터를 하나처럼 느끼게 만들려고 모든 파일을 동기화하지는 않았습니다.

**공유·배포하는 것**: Wiki의 검증된 지식, 프로젝트의 `AGENTS.md`와 운영 규칙, 검증된 공용 Skill, 프로젝트 결정·상태·handoff 문서.

다만 공용 파일을 아무 에이전트나 바로 덮어쓰게 두지 않습니다. 각 도구가 만든 내용은 일단 기기별 후보나 `inbox`에 두고, 맥미니의 Hermes가 기존 문서와 중복·충돌을 확인한 뒤에 정식 Wiki에 반영해요. **장기 지식의 writer를 한 곳으로 제한한 겁니다.**

맥북의 프로젝트 규칙은 저장소의 `AGENTS.md`를 기준으로 둡니다. Claude Code에도 같은 규칙이 필요하면 작은 `CLAUDE.md`가 `@AGENTS.md`를 읽게 해요. 규칙을 Claude용·Codex용으로 따로 쓰다가 내용이 갈라지는 걸 피하려는 설정입니다.

**기기마다 유지하는 것**: Hermes state DB, Claude·Codex·Aside raw session, 브라우저 탭·쿠키·로그인 상태, API token과 credentials, cache와 log, 기기별 도구와 로컬 경로.

같은 세션을 복제하는 대신, 원본 세션이 살아 있으면 그 컴퓨터에 원격으로 접속합니다. 오래 남길 건 세션 자체가 아니라 검토된 handoff와 Wiki 지식이니까요.

## 정리하면

```
Notion                  오늘 무엇을 할지와 현재 완료 상태
Google Calendar         언제 시간이 있고 어떤 약속이 있는지
Slack + Hermes          아침 계획, 변경 합의, 오후 회고
MacBook agent traces    실제 작업 과정과 산출물의 근거
Local SQLite + Daily    태스크 변화와 날짜별 맥락
Markdown Wiki           확인된 결정, 결과, 교훈, 역량, 재사용 연결
Private Git             버전과 백업
```

저는 기록하려고 습관을 전부 바꾸지 않았습니다. Notion에 하던 대로 Todo를 적고, Calendar에 약속을 넣고, 맥북에서 쓰던 AI 도구를 그대로 씁니다.

달라진 건 **그 사이를 연결하는 운영**이에요. 아침엔 오늘 할 일을 같이 정하고, 오후엔 완료 체크 뒤에 빠진 결과를 묻고, 밤엔 다시 쓸 수 있는 지식만 남깁니다.

For the site tree, see the [root Markdown](https://zoey.day/.md).
