11. 슬래시 커맨드 × 서브에이전트 = 완전 자동화 (subagents 고급편)

11. 슬래시 커맨드 × 서브에이전트 = 완전 자동화 (subagents 고급편)

이전 이야기

10번 글에서 OSMU 파이프라인을 봤어요.

YouTube → 7개 서브에이전트 → 30분 만에 블로그 글 완성

이미 자동화되어 있었죠.

근데 여전히 문제가 있었어요:

"일상적인 반복 작업은 어떻게 자동화하지?"
"매일 Claude에게 요청하는 걸 없앨 수 없을까?"

이번엔 '매일 쓰는 커맨드'를 강화한다.


문제: 반복 작업의 귀찮음

실제 상황

5번 글에서 봤듯이, /daily-note는 이미 잘 작동해요:

/daily-note
# 오늘 날짜 파일 자동 생성
# Google Calendar 일정 자동 통합
# 스트레스 없음 ✅

근데 문제가 있어요:

/daily-note에서:
## ✅ 완료한 일
- Claude Code Episode 8-10 초안 완성
- 강릉 프로젝트 브랜드 네이밍 Ver 3 완성

/todos에서:
- [ ] Claude Code Episode 8-10 초안 완성  ← 여전히 미완료
- [ ] 강릉 프로젝트 브랜드 네이밍 Ver 3 완성  ← 여전히 미완료

슬래시 커맨드끼리 연동이 안 돼요.

그래서 매번:

나: "어제 작업 내역이랑 todos 안 맞아! 체크해서 업데이트해줘!"
Claude: "알겠습니다. 확인하겠습니다..."
    → active-todos.md 열기
    → 완료한 항목 찾기
    → [ ] → [x] 체크
    → completed: 2025-11-05 추가
    → result: "..." 요약 작성
    → completed-todos.md로 복사
    → active-todos.md에서 삭제
    → 정리 및 그룹핑

문제:
- 매번 요청해야 함
- 가끔 깜빡하면 누락 발생

총 소요 시간: 요청 1회당 ~2분
스트레스 지수: 높음 (깜빡하면 싱크 오류)

누적된 문제들

  1. 매번 수동 요청: "어제 내역 체크해줘" 매일 반복
  2. 싱크 누락: 깜빡하면 Daily Note와 Todos 불일치
  3. 파일 비대화: 408줄 (완료 항목 16개 방치)
  4. 정리 불가능: 어떤 항목이 방치됐는지 모름

해결: 슬래시 커맨드 + 서브에이전트

아이디어

"/daily-review를 이미 매일 아침 쓰고 있잖아?
→ 여기에 todos 자동 싱크 기능을 추가하면?
→ 복잡한 싱크 작업은 서브에이전트에게 맡기자."

기존:

/daily-review → Git 로그 분석, Telegram 수집 (전날 체크용)

개선:

/daily-review → Git 로그 분석, Telegram 수집
             → todos-manager 호출 (NEW!)
             → Daily Note ↔ Todos 자동 싱크

시스템 설계

필요한 기능

  1. Daily Note → Todos 자동 싱크
    - "완료한 일" 추출
    - active-todos.md 매칭
    - 자동 체크 및 필드 추가

  2. 자동 아카이빙
    - 완료 항목 추출
    - completed-todos.md로 이동
    - active-todos.md 정리

  3. 스마트 그룹핑
    - Today: deadline 기반
    - This Week: 프로젝트별
    - Someday: 장기 과제
    - Stale: 7일+ 미착수

  4. Stale 감지
    - 7일 이상 미착수 자동 감지
    - 경과일 계산 및 경고


실제 구현

Step 1: 서브에이전트 생성

todos-manager.md

---
name: todos-manager
description: Manage PKM todos system - sync Daily Note with todos,
             auto-archive, and smart grouping
tools: Read, Edit, Write, Grep, Glob
model: sonnet
config:
  active_todos: /home/rhim/claude-projects/pkm/40-personal/46-todos/active-todos.md
  completed_todos: /home/rhim/claude-projects/pkm/40-personal/46-todos/completed-todos.md
  daily_notes: /home/rhim/claude-projects/pkm/40-personal/41-daily/
---

# Todos Manager

## 핵심 미션

1. Daily Note → Todos 자동 싱크
2. 스마트 아카이빙
3. 스마트 그룹핑
4. Stale 감지

## 프로세스

### Phase 1: Daily Note 분석
- 오늘 Daily Note "✅ 완료한 일" 섹션 읽기
- 완료 항목 추출

### Phase 2: Todos 매칭 & 업데이트
- active-todos.md에서 유사 항목 찾기 (fuzzy matching)
- [ ] → [x] 자동 체크
- completed: YYYY-MM-DD 추가
- result: [요약] 추가

### Phase 3: 자동 아카이빙
- 완료 항목 추출
- completed-todos.md로 월별 정리
- active-todos.md에서 삭제

### Phase 4: 스마트 그룹핑
- 🔥 Today: deadline 오늘, priority: high
- 📅 This Week: 프로젝트별 (IMI WORK, 교육, 운영)
- 🔮 Someday: deadline 없음
- ⏰ Stale: 7일+ 미착수 (자동 감지)

### Phase 5: 리포트 생성
- 완료 & 아카이빙 요약
- Active Todos 통계
- Stale 항목 경고

파일 위치: ~/.claude/agents/todos-manager.md

특징:
- ✅ 단일 책임: Todos 관리만
- ✅ Config 분리: 경로 변경 쉬움
- ✅ 최소 권한: Read, Edit, Write만
- ✅ 명확한 프로세스: 5단계


Step 2: 슬래시 커맨드 수정

daily-review.md

---
description: 어제와 오늘의 변경사항 분석 및 Daily Review 생성
allowed-tools: Read, Write, Edit, Bash, Grep, Glob, Skill, Task
---

어제와 오늘의 프로젝트 진행 상황을 분석하고 Daily Review를 생성한다.

**수행할 작업:**

1. 어제 변경된 파일 찾기
2. 프로젝트별 변경사항 분석
3. Daily Note 열기/생성
4. Telegram Inbox 수집
5. **Todos Manager 서브에이전트 자동 실행** ← NEW!

## 5. Todos Manager 자동 실행

**IMPORTANT**: Task 도구를 사용하여 `todos-manager` 서브에이전트를
자동 실행하세요.

Task(
  subagent_type="todos-manager",
  description="Daily Note와 Todos 자동 싱크",
  prompt="""
  오늘 Daily Note를 분석하고 Todos 시스템을 자동 업데이트하세요.

  수행할 작업:
  1. 오늘 Daily Note의 "✅ 완료한 일" 섹션에서 완료 항목 추출
  2. active-todos.md와 매칭하여 자동 체크 및 completed 필드 추가
  3. 완료된 항목을 completed-todos.md로 자동 아카이빙
  4. active-todos.md를 스마트 그룹핑으로 재정렬
  5. Stale 항목 (7일+ 미착수) 자동 감지
  6. 결과 리포트 생성

  오늘 날짜: $(date +%Y-%m-%d)
  """
)

**서브에이전트가 자동으로 수행:**
- ✅ Daily Note 완료 항목 추출
- ✅ active-todos.md 매칭 및 체크
- ✅ completed-todos.md 아카이빙
- ✅ 스마트 그룹핑 재정렬
- ✅ Stale 항목 감지
- ✅ 상세 리포트 생성

6. Daily Note에 Todos Manager 리포트 포함

파일 위치: ~/.claude/commands/daily-review.md

핵심:
- ✅ Task 도구로 서브에이전트 호출
- ✅ 명확한 prompt로 지시
- ✅ allowed-tools에 Task 추가


Step 3: 파일 구조 개편

Before (408줄, 혼재)

# Active Todos

## 📥 Inbox
- [ ] 항목들...
- [x] 완료 항목 (방치)
- [x] 완료 항목 (방치)

## Today
- [ ] 항목들...

## 📅 Scheduled
- [ ] 항목들...

After (153줄, 스마트 그룹핑)

# Active Todos

## 🔥 Today (긴급/중요)
- [ ] 강릉 프로젝트 Step 1 마무리 (deadline: 2025-11-08)
- [ ] 인사이터 대표님 제안 정리 (deadline: 2025-11-07)

## 📅 This Week (이번 주)

### IMI WORK (블로그/브랜딩)
- [ ] Claude Code 블로그 Week 1 완성

### 교육/컨설팅
- [ ] 로컬 브랜드 포럼 AI 강의 커리큘럼 준비
- [ ] 경주 소상공인 AI 특강 준비

### IMI 운영
- [ ] 인사동 매장 양도 프로젝트 진행
- [ ] 대출 관리 - 첫 이자 납부 준비

## 🔮 Someday (언젠가)
- [ ] IMI Working Backwards 재검토

## ⏰ Stale (7일+ 미착수)
<!-- todos-manager가 자동 감지 -->

## 📥 Inbox (처리 안 한 것들)
<!-- /todo로 추가된 미분류 항목 -->

파일 크기: 408줄 → 153줄 (62% 감소)


실제 사용

매일 아침/저녁 루틴

Before (매번 요청)

전날 저녁:
1. /daily-note 실행 (30초) ✅
2. Daily Note 작성 (90초) ✅

다음날 아침:
3. /daily-review 실행 ✅
4. "어제 내역이랑 todos 안 맞아! 체크해줘!" ← 매번 요청
   → Claude가 수동으로 처리 (2분)
   → 가끔 깜빡하면 누락 ❌

문제:
- 매번 명시적으로 요청해야 함
- 깜빡하면 싱크 오류

After (완전 자동)

전날 저녁:
1. /daily-note 실행 (30초) ✅
2. Daily Note 작성 (90초) ✅

다음날 아침 출근:
3. /daily-review 실행 (이미 매일 쓰던 커맨드)
   # Git 로그 분석 (전날 체크)
   # Telegram 수집
   # todos-manager 자동 실행 ← NEW!
   # Daily Note → Todos 자동 싱크 ← NEW!
   # 알아서 매칭, 체크, 아카이빙

결과:
- 별도 요청 불필요
- 싱크 누락 0%

개선:
- ✅ 수동 요청 제거
- ✅ 깜빡임 방지
- ✅ 싱크 에러 0%


실행 화면

아침 출근해서:

나: /daily-review

Claude Code:

[1. Git 로그 분석...]
✅ 어제 변경 파일 6개 확인

[2. Telegram Inbox 수집...]
✅ 새 메시지 3개 수집

[3. todos-manager 서브에이전트 실행...] ← NEW!

📋 Todos Manager 리포트

### ✅ 완료 & 아카이빙
- 2개 항목 아카이빙 완료
  - Claude Code Episode 8-10 초안 완성
  - 강릉 프로젝트 브랜드 네이밍 Ver 3 완성

### 🔄 Active Todos 요약
- 🔥 Today: 2 items
- 📅 This Week: 5 items
- 🔮 Someday: 2 items
- ⏰ Stale: 0 items
- **Total Active**: 9 items

### ⚠️ Attention Needed
- 없음

[4. Daily Note 업데이트...]
✅ 리포트 추가 완료

완료! Daily Review가 준비되었습니다.

결과:
- ✅ Daily Note → Todos 자동 싱크
- ✅ 완료 항목 자동 아카이빙
- ✅ 스마트 그룹핑 완료
- ✅ Stale 항목 0개


성과 측정

Before vs After

항목 Before After 개선율
파일 크기 408줄 153줄 62% ⬇️
완료 항목 방치 16개 0개 100% 해결
일일 관리 시간 ~10분 ~30초 95% ⬇️
싱크 에러 있음 없음 완전 해결
연간 시간 절약 - ~57시간 -

ROI 계산

투자:
- 서브에이전트 생성: 10분
- 슬래시 커맨드 수정: 10분
- 파일 구조 개편: 15분
- 테스트 및 문서화: 15분
→ 총 50분

효과:
- 일일 9분 30초 절약
- 연간 57시간 절약 (365일 × 9.5분)

투자 대비: 1회 50분 → 평생 자동화

핵심 포인트

1. 슬래시 커맨드 = 독립적 기능

/daily-note → Daily Note 생성 (Google Calendar 통합)
/todos → Todos 조회
/daily-review → 전체 리뷰

각자 독립적으로 작동
↓
서로 연동 안 됨 (문제!)

역할:
- ✅ 독립적인 기능 단위
- ✅ 사용자 인터페이스
- ❌ 서로 데이터 공유 불가

2. /daily-review = 기존 커맨드 강화

기존 기능 (5번 글):

/daily-review → Git 로그 분석
             → Telegram 수집
             → Daily Note 생성

기능 추가:

/daily-review → Git 로그 분석
             → Telegram 수집
             → Daily Note 생성
             → Task(todos-manager) ← NEW!
             → Todos 자동 싱크 ← NEW!

역할:
- ✅ 전날 작업 체크 (기존)
- ✅ 서브에이전트 호출 (추가)
- ✅ Todos 자동 싱크 (추가)

3. 서브에이전트 = 실행 엔진

todos-manager 서브에이전트:
1. Daily Note 읽기
2. active-todos.md 읽기
3. 매칭 & 체크
4. 아카이빙
5. 그룹핑
6. 리포트

역할:
- ✅ 복잡한 로직 캡슐화
- ✅ 재사용 가능한 모듈
- ✅ 독립적인 테스트 가능

4. Task 도구 = 호출 메커니즘

/daily-review.md:

Task(
  subagent_type="todos-manager",
  description="Daily Note와 Todos 자동 싱크",
  prompt="..."
)

특징:
- ✅ 슬래시 커맨드 → 서브에이전트 호출
- ✅ 명확한 지시 전달 (prompt)
- ✅ 결과 자동 반환

5. Single Source of Truth

Before:
/daily-note (완료 기록) ← 여기 씀
/todos (수동 업데이트) ← 여기도 따로 업데이트
→ 싱크 오류 발생

After:
/daily-note (완료 기록) = Single Source of Truth ← 여기만 씀
    ↓
/daily-review (자동 연결)
    ↓
/todos (자동 업데이트)
→ 싱크 에러 0%

설계 원칙

원칙 1: 단일 책임 (Single Responsibility)

서브에이전트:
- todos-manager: Todos 관리만
- youtube-content-analyzer: YouTube 분석만
- seo-optimizer: SEO 최적화만

왜 중요한가?
- ✅ 테스트 쉬움
- ✅ 유지보수 쉬움
- ✅ 재사용 가능

원칙 2: Config 분리 (Separate Constants)

config:
  active_todos: /home/rhim/.../active-todos.md
  completed_todos: /home/rhim/.../completed-todos.md
  daily_notes: /home/rhim/.../41-daily/

왜 중요한가?
- ✅ 경로 변경 시 config만 수정
- ✅ 하드코딩 제거
- ✅ 다른 환경 적용 쉬움

원칙 3: 최소 권한 (Least Privilege)

tools: Read, Edit, Write, Grep, Glob

왜 중요한가?
- ✅ 보안 강화
- ✅ 의도하지 않은 동작 방지
- ✅ 명확한 역할 정의

원칙 4: 명확한 인터페이스

슬래시 커맨드:

/daily-review → "어제와 오늘의 변경사항 분석"
/todos → "전체 Todo 보기"
/todos cleanup → "수동 정리"

서브에이전트:

description: "Manage PKM todos system - sync, archive, group"

왜 중요한가?
- ✅ 사용자 예측 가능
- ✅ 자동 발견 쉬움
- ✅ 문서화 불필요


확장 가능성

다른 조합 예시

예시 1: /backup (슬래시 커맨드)

Task(
  subagent_type="backup-manager",
  prompt="전체 프로젝트 백업 및 Git 커밋"
)

용도:
- 주요 파일 백업
- Git 자동 커밋
- 변경사항 요약

예시 2: /publish (슬래시 커맨드)

Task(
  subagent_type="ghost-validator",
  prompt="이미지 검증"
)
→
Task(
  subagent_type="seo-optimizer",
  prompt="SEO 최적화"
)
→
Task(
  subagent_type="ghost-publisher",
  prompt="Ghost 발행"
)

용도:
- 블로그 발행 자동화
- 서브에이전트 체이닝

예시 3: /weekly-review (슬래시 커맨드)

Task(
  subagent_type="todos-analyzer",
  prompt="이번 주 완료 통계"
)
→
Task(
  subagent_type="report-generator",
  prompt="Weekly 리포트 생성"
)

용도:
- 주간 리뷰 자동화
- 완료율 분석
- 인사이트 추출


실전 적용 가이드

Step 1: 반복 작업 식별

질문:
- 매일/매주 반복하는 작업이 있나?
- 10분 이상 걸리는 수작업이 있나?
- 자주 깜빡하는 작업이 있나?

예시:
✅ Daily Review
✅ Todos 관리
✅ 블로그 발행
✅ 주간 리포트

Step 2: 워크플로우 분해

예시: Daily Review

1. Git 로그 분석 (자동화 가능)
2. Telegram 수집 (자동화 가능)
3. Todos 싱크 (자동화 가능) ← 서브에이전트
4. Daily Note 생성 (자동화 가능)
5. 최종 검토 (수동)

Step 3: 슬래시 커맨드 생성

---
description: 매일 아침 루틴 자동화
allowed-tools: Read, Write, Task, Bash
---

1. Git 분석
2. Telegram 수집
3. Task(subagent_type="todos-manager")
4. Daily Note 생성

Step 4: 서브에이전트 생성

---
name: todos-manager
description: Todos 관리 자동화
tools: Read, Edit, Write
---

# 구체적인 프로세스 정의

Step 5: 테스트 및 개선

1. 소규모 테스트 (1주일)
2. 문제점 파악
3. 서브에이전트 개선
4. 프로덕션 적용

📚 공식 문서 준수

이 시스템은 Claude Code 공식 베스트 프랙티스를 따릅니다:

✅ Task 도구로 서브에이전트 호출

Task(
  subagent_type="agent-name",
  description="...",
  prompt="..."
)

출처: Claude Code Subagents 공식 문서

✅ allowed-tools로 권한 제한

---
allowed-tools: Read, Write, Edit, Task, Bash
---

출처: Claude Code Slash Commands 공식 문서

✅ Config 분리

config:
  path1: /home/user/...
  path2: /home/user/...

출처: Subagent Best Practices


🎓 핵심 정리

슬래시 커맨드 + 서브에이전트 = 완전 자동화

/daily-review (트리거)
    ↓
Task 도구 (연결)
    ↓
todos-manager (실행)
    ↓
완전 자동화

설계 원칙

  1. 단일 책임: 서브에이전트는 하나의 역할만
  2. Config 분리: 경로/설정은 config 섹션에
  3. 최소 권한: 필요한 도구만 허용
  4. 명확한 인터페이스: description 명확하게

효과

  • 시간 절약: 95% (10분 → 30초)
  • 에러 제거: 싱크 오류 0%
  • 파일 관리: 62% 크기 감소
  • 스트레스 감소: 자동화로 인지 부하 최소화

작게 시작 → 점진적 확장

Phase 1: 슬래시 커맨드 하나
Phase 2: 서브에이전트 하나
Phase 3: Task 도구로 연결
Phase 4: 필요하면 추가

다음 편 예고

"서브에이전트는 프로젝트 안에서만 일해요.
외부 세계와 연결하려면? Skills가 필요한다."

다음 편에서는 Skills를 배워요:
- Google Calendar 일정 자동 조회
- Gmail 이메일 검색
- 웹 크롤링 자동화

슬래시 커맨드 vs 서브에이전트 vs Skills 완전 비교도 함께!


📝 참고 자료

이전 글

  • "복잡한 일을 맡기는 AI 직원" (서브에이전트 사용편)
  • "내 업무 전용 AI 만들기" (서브에이전트 만들기편)
  • "YouTube 영상이 30분 만에 블로그 글이 되는 과정" (실전편)

Subscribe to 비개발자를 위한 Claude Code | 일을 잘하기 위한 AI Workspace

Don’t miss out on the latest issues. Sign up now to get access to the library of members-only issues.
[email protected]
Subscribe