[Claude Code] Subagent 개념도 몰랐던 내가 1시간 만에 subagent를 활용한 3개 웹사이트 자동 수집기를 만든 방법

📝 한줄 요약

Claude Code의 Subagent 개념을 학습하면서, FDA/MFDS/Google Patents 3개 사이트를 자동으로 수집하는 시스템을 1시간 만에 구축하고 Gap 분석까지 완료했습니다.

🎯 이런 분들께 도움돼요

  • AI로 어떤 것들을 할 수 있는지 궁금한 분

  • 코딩 경험이 적지만 AI로 자동화하고 싶은 비개발자/연구원

  • Claude Code를 처음 사용해보려는 분

  • 복잡한 작업을 AI와 어떻게 나눠서 진행하는지 알고 싶은 분

😫 문제 상황 (Before)

Subagent가 뭔지도 몰랐다

1주차에 FDA 가이드라인을 수집하는 간단한 collector를 만들어봤습니다. 그런데 이걸 MFDS(한국 식약처), 특허 검색까지 확장하려니 막막했습니다.

"Subagent를 활용하면 된다"는 말을 들었지만, Subagent가 뭔지, 어떻게 활용하는지 전혀 감이 안 왔습니다.

웹사이트마다 크롤링 방식이 다 달랐다

더 큰 문제는 각 웹사이트마다 구조가 완전히 달랐다는 점입니다:

  • FDA는 봇 탐지가 있어서 일반적인 방법으로는 접근이 안 됨

  • MFDS는 테이블 구조가 복잡해서 원하는 데이터를 찾기 어려움

  • Google Patents는 JavaScript로 동적 렌더링되어서 일반 크롤링이 불가능

하나의 코드로 세 사이트를 다 처리하는 건 불가능해 보였습니다.

🛠️ 사용한 도구

  • 도구명: Claude Code (VSCode Extension)

  • 모델: Claude Opus 4.5

  • 방법론: bkit PDCA (Plan-Do-Check-Act)


🔧 작업 과정

1단계: Claude와 대화하며 Subagent 개념 이해하기

처음에는 Subagent가 뭔지 몰라서 Claude에게 직접 물어봤습니다.

"Subagent가 뭐야? 예시를 들어서 설명해줘"

Claude가 보여준 예시와 설명을 통해 드디어 이해할 수 있었습니다. Subagent란 하나의 큰 작업을 여러 개의 전문화된 작은 에이전트로 나누는 것이었습니다.

마치 회사에서 "마케팅팀", "개발팀", "디자인팀"이 각자 전문 분야를 담당하고, "팀장"이 조율하는 것과 같은 구조였습니다.

💡 인사이트: 복잡한 개념도 Claude에게 "예시를 들어서 설명해달라"고 하면 훨씬 이해하기 쉬워집니다.


2단계: 작업지시서 만들기

개념을 이해한 후, 바로 코딩에 들어가지 않았습니다. 대신 Claude와 함께 작업지시서를 먼저 만들었습니다.

"2개 작업 지시서를 다시 분석해서 subagent 생성으로 플랜을 구현해줘. FDA, MFDS, 특허검색 3가지를 서브에이전트로 하는 플랜으로 해줘"

Claude가 제안한 아키텍처:

┌─────────────────────────────────────────────────────┐
│              Main Orchestrator                       │
│         (작업 조율 및 병렬 실행)                      │
└─────────┬───────────────┬───────────────┬───────────┘
          │               │               │
   ┌──────▼──────┐ ┌──────▼──────┐ ┌──────▼──────┐
   │  FDA Agent  │ │ MFDS Agent  │ │Patent Agent │
   └─────────────┘ └─────────────┘ └─────────────┘

💡 인사이트: 바로 코딩하지 말고 작업지시서를 먼저 만들면 Claude가 전체 구조를 파악하고 일관성 있게 작업합니다.


3단계: 3개 에이전트 한 번에 구현

작업지시서가 준비되자, Claude가 순식간에 3개 에이전트를 만들어냈습니다:

  • FDA Agent: Selenium으로 봇 탐지를 우회하며 가이드라인 수집

  • MFDS Agent: 복잡한 테이블에서 view.do 링크를 직접 추출

  • Patent Agent: JavaScript 렌더링 후 data-result 속성에서 특허 정보 파싱

각 사이트의 특성에 맞게 완전히 다른 방식으로 구현되었지만, 하나의 시스템으로 통합되어 있었습니다.


4단계: 에러? Claude가 알아서 해결

테스트 중에 여러 에러가 발생했습니다:

  • ChromeDriver 경로 오류 (Mac ARM64 환경)

  • FDA 사이트에서 404 에러 (봇 탐지)

  • Google Patents에서 데이터가 안 잡히는 문제

놀라웠던 건 에러 메시지를 보여주기만 해도 Claude가 원인을 파악하고 해결책을 적용했다는 점입니다.

"대시보드가 안나오는데"

이 한마디에 Claude가 디버깅하고, 포트 설정을 수정하고, 정상 작동하는 대시보드를 완성했습니다.


5단계: Gap 분석으로 품질 검증

시스템이 완성된 후, 정말 설계대로 잘 만들어졌는지 궁금했습니다.

"PDCA-analyze 구현 검증은 아직 안해봤는데 한번 해봐도 지금 구축해둔 플랜에는 문제 없나?"

Claude가 gap-detector를 실행해서 설계 문서와 실제 구현 코드를 자동으로 비교 분석했습니다.

결과:

  • 전체 일치율: 75%

  • 구현 완료: 32개 항목

  • 부분 구현: 5개 항목

  • 미구현: 5개 항목 (EMA 등 의도적 제외 포함)

  • 보너스: 설계에 없던 특허 검색 기능까지 추가 구현!

💡 인사이트: 만들고 끝이 아니라 Gap 분석으로 빠진 것을 확인할 수 있습니다. 이게 PDCA의 Check 단계입니다.


✅ 결과 (After)

Before vs After

항목

Before

After

Subagent 이해도

전혀 모름

개념 이해 + 실제 적용

데이터 수집

수동으로 각 사이트 방문

자동 수집 (FDA 8건, MFDS 20건, 특허 10건)

소요 시간

-

약 1시간

품질 검증

없음

Gap 분석으로 75% 일치율 확인

결과물

  1. 3개 서브에이전트 기반 자동 수집 시스템

    • FDA, MFDS, Google Patents 자동 수집

  2. Streamlit 대시보드

    • 전체 현황, 각 기관별 목록, 필터링, CSV 다운로드

      한국어가 포함된 웹사이트의 스크린샷
  3. 주간 Excel 리포트

    • 자동 생성되는 주간 요약 보고서

      Microsoft Excel의 프로젝트 일정 스크린샷
  4. Gap 분석 보고서

    • 설계-구현 일치율 검증 결과

      한국 컴퓨터 화면의 스크린샷

💬 이 과정에서 배운 AI 활용 팁

효과적이었던 것

  1. 작업지시서를 먼저 만들기

    • Claude와 대화로 작업지시서를 먼저 만들면, Claude가 전체 맥락을 이해하고 일관성 있게 작업합니다

    • "바로 코딩해줘"보다 "먼저 플랜을 세워줘"가 결과물 품질이 높습니다

  2. 복잡한 작업은 Subagent로 분리하기

    • 하나의 만능 코드보다 각 역할에 특화된 에이전트 조합이 유지보수와 확장에 유리합니다

    • 한 에이전트에서 문제가 생겨도 다른 에이전트는 정상 작동합니다

    • 이러한 subagent 분리도 claude 가 어떤 방법이 좋을지 선택지를 줍니다

  3. Gap 분석으로 품질 검증하기

    • 만들고 끝이 아니라, 설계대로 잘 만들어졌는지 확인하는 과정이 중요합니다

    • bkit의 PDCA 방법론이 이 과정을 자동화해줍니다

이렇게 하면 안 돼요

  1. 개념 이해 없이 바로 시작하기

    • "Subagent로 만들어줘"라고만 하면 내가 뭘 만드는지 모르게 됩니다

    • 먼저 개념을 이해하고 시작하면 결과물을 더 잘 활용할 수 있습니다

  2. 하나의 코드로 모든 것을 처리하려고 하기

    • 웹사이트마다 구조가 달라서 하나의 방법으론 안 됩니다

    • 각각에 맞는 전문 에이전트를 만드는 게 현실적입니다


🌍 다른 업무에 적용한다면?

이 경험을 바탕으로 다른 상황에도 Subagent 패턴을 적용할 수 있습니다:

  • 여러 SNS 모니터링: Twitter Agent, LinkedIn Agent, Instagram Agent

  • 경쟁사 분석: 경쟁사A Agent, 경쟁사B Agent, 뉴스 Agent

  • 데이터 수집 자동화: 각 데이터 소스별 전문 Agent

핵심은 "하나의 복잡한 작업 → 여러 개의 전문화된 작은 작업"으로 나누는 것입니다.


🚀 앞으로의 계획

  1. 다른 규제 기관 확장: PMDA(일본), Health Canada, TGA(호주) 에이전트 추가

  2. 실제 업무에 적용: 회사/연구실에서 실제로 활용해볼 예정

  3. Gap 분석 90% 달성: 미구현된 비교 분석, 통합 검색 페이지 추가 구현


📋 재사용 가능한 프롬프트

프롬프트 1: Subagent 아키텍처 설계 요청

[작업 목적]을 위해 subagent 기반 아키텍처를 설계해줘. [데이터소스1], [데이터소스2], [데이터소스3] 3가지를 각각 서브에이전트로 하는 플랜으로 해줘. Main Orchestrator가 작업을 조율하고 병렬 실행할 수 있게 해줘.

프롬프트 2: Gap 분석 요청

지금까지 구현한 내용이 설계대로 잘 만들어졌는지 Gap 분석해줘. 설계 문서와 실제 구현 코드를 비교해서 일치율을 알려줘.

2
1개의 답글

뉴스레터 무료 구독

👉 이 게시글도 읽어보세요