콘텐츠로 이동
DOC–00 TECHNICAL WHITEPAPER / PUBLIC RELEASE AUTHORIZED

3 · 시스템 아키텍처

NERV는 등록 에이전트 46개로 구성된 멀티에이전트 시스템이다. 한 명의 PI(연구 책임자)가 Discord 봇 하나로 7명의 캐릭터(역할)를 호출하면, 각 캐릭터가 소유한 전문 에이전트들이 작업을 수행하고, 그 결과가 공유 데이터 계층과 핸드오프 스키마를 거쳐 흐릅니다.

이 장은 그 전체 지도를 레이어 구조로 펼쳐 보여준다.


3.1 인벤토리 한눈에

46 = 39 + 7

  • 39 Claude 서브에이전트 정의.claude/agents/*.md에 등록 (강의 전용 5개는 현재 도메인 호출 중단)
  • 7 Python 파이프라인scripts/ 아래 실행되는 처리기 (미사토 6 + 리츠코 github-hunter 1)
  • 등록 합계 46개 — NERV 원본 저장소에서 python3 scripts/check_agent_inventory.py로 검증

Agents/{캐릭터}/*/SKILL.md는 메타·워크플로우 문서 전용이며, 실제 실행 정의는 .claude/agents/ 쪽만 런타임에 로드된다. 인벤토리 카운트는 위 스크립트가 SSOT로 검증하여 문서·정의·설정 사이의 드리프트를 자동 감지한다.


3.2 레이어 구조

PI의 요청은 위에서 아래로 흐르고, 산출물은 공유 계층을 거쳐 다시 소비된다. 아래 다이어그램이 전체 레이어 구조를 한눈에 보여준다.

흐름 해설

  1. PI → Discord 봇 — 모든 요청의 단일 진입점. 봇은 MAGI 중앙 코디네이터로서 요청을 분석해 적합한 캐릭터로 라우팅한다.
  2. 봇 → 7 캐릭터 — 캐릭터별 Webhook으로 분기되어, 각 역할이 자기 도메인의 작업만 받는다.
  3. 캐릭터 → 소유 에이전트 — 각 캐릭터는 자기가 소유한 서브에이전트(또는 미사토의 Python 파이프라인)를 디스패치한다.
  4. 에이전트 → 공유 계층 — 역할 간 공유가 필요한 산출물은 Research/.shared/에 게시되고, 역할 간 교환은 핸드오프 스키마(정규 8 유형 + 카오루 하위 계약 2종)로 표준화된다.
  5. 공유 계층 → 산출 → PI — 요약·분석·작성·발굴·전문 지식·이미지 등 최종 산출물이 PI에게 전달된다.

신지 강의 도메인 상태

아래 구조도는 등록 인벤토리 전체를 보여준다. 신지의 강의 전용 에이전트 5개는 2026-06-21부로 강의 도메인에서 호출하지 않지만 실행 정의와 active 등록 상태는 유지한다. NERV에서 현재 사용하는 신지 에이전트는 imotions-expertimage-generator이다.


진입점
PI 사용자모든 요청의 단일 진입점
오케스트레이션
Discord 봇 · MAGI 중앙 코디네이터
7 캐릭터 Webhook 라우팅
7 캐릭터 (역할)
리츠코리츠코Project Command
미사토미사토Operations
레이레이Analysis · Knowledge
아스카아스카Quality · Review
카오루카오루Discovery · Insight
마리마리Creative · Writing
신지신지Personal · Learning
각 캐릭터 → 소유 에이전트
캐릭터별 소유 에이전트
서브에이전트 5
+ github-hunter Py
Python 파이프라인 6
문서 처리
서브에이전트 7
분석·지식
서브에이전트 4
품질·검토
서브에이전트 9
탐색·발굴
서브에이전트 7
+ 전용 스킬 3
서브에이전트 7
2 현재 사용 · 강의 5 호출 중단
+ 전용 스킬 1
모든 산출물이 공유 계층으로 수렴
공유 계층
발행-구독Research/.shared
핸드오프 스키마8 + 하위 2 유형
산출
요약 · 분석 · 작성 · 발굴 · 전문지식
PI에게 전달 (순환)
PI 사용자

3.3 캐릭터별 소유 에이전트

7명의 캐릭터가 명확한 도메인 경계로 에이전트를 나누어 소유한다.

캐릭터 역할 도메인 소유 에이전트 수
리츠코 (아카기 리츠코) Project Command 5 Claude + 1 Python (github-hunter)
미사토 (카츠라기 미사토) Operations 6 Python (문서 처리)
레이 (아야나미 레이) Analysis & Knowledge 7 Claude
아스카 (소류 아스카 랑그레이) Quality & Review 4 Claude
카오루 (나기사 카오루) Discovery & Insight 9 Claude
마리 (마키나미 마리) Creative & Writing 7 Claude + 3 스킬
신지 (이카리 신지) Personal & Learning 7 Claude (2 현재 사용 + 강의 5 호출 중단) + 1 스킬

미사토의 6개는 모두 GPU·API 호출 등 결정론적 처리에 특화된 Python 파이프라인이다. 마리의 kaeim-formatter·humanize-english·pi-voice와 신지의 image-prompt는 에이전트 카운트와 별도인 스킬로, 등록 인벤토리 46개에는 포함되지 않는다.

각 캐릭터의 기능을 일반적 수준에서 요약하면 다음과 같다.

  • 리츠코 — 연구 아이디어 토론, 프로젝트 일정 추적, 연구비 예산 관리, GitHub 저장소 도입 평가, 외부 에이전트 설치, 저장소 자동 발굴.
  • 미사토 — PDF→Markdown 변환, 변환 품질 검사, DOI 식별, 인용 추출, 그림·표 추출, 파이프라인 오케스트레이션.
  • 레이 — 논문 요약, 방법론 분석, 키워드·태그 추천, 자동 백링크, 수동 위키 복리 갱신, 라이브러리 정합성 감시, 단일 논문 통독 브리프.
  • 아스카 — 학술 문체 검사, 연구 갭 식별, 재투고 응대 지원, 질적 데이터 주제 분석.
  • 카오루 — 관련 논문 검색, 인용 네트워크 분석, 연구 동향 분석, 심층 자료 탐색, 일일 논문 추천, 논문-코드 정합성 감사, 다중 소스 비교, 원고 인용 정합성 감사, 통계 수치 정합성 감사.
  • 마리 — 서론·방법·결과·논의 섹션 작성, 초록 생성, IRB 문서 작성, PI 문체 재작성, 학회지 서식 편집·영문 AI-tell 정제·PI 문체 조건화(스킬).
  • 신지 — iMotions 센서 전문 조회와 이미지 생성(운영), 이미지 프롬프트 컴파일(스킬). 강의 내러티브·웹 조사·HTML 슬라이드·내레이션 대본·콘텐츠 설계 에이전트 5개는 정의 등록을 유지하되 현재 강의 도메인에서 호출하지 않음.

3.4 디렉토리 구조 개요

시스템은 크게 네 갈래로 나뉩니다 — 에이전트 정의, 연구 데이터·산출, Discord 봇, 실행 스크립트.

NERV/
├── Agents/                     # 캐릭터별 에이전트 정의 + 역할 문서
│   ├── Lab Director/           #   메타 오케스트레이션 (설정·감사·프로토콜)
│   ├── ritsuko/ … shinji/      #   7 캐릭터 디렉토리 (각 에이전트 SKILL.md)
│   ├── ROLE-*.md               #   역할 정의서 7개
│   └── HANDOFF_SCHEMA.yaml      #   역할 간 데이터 교환 스키마
├── Research/                   # 연구 산출·공유 데이터
│   ├── Analysis/               #   요약·방법론·질적 분석 결과
│   ├── Wiki/                   #   Knowledge Wiki (transaction shadow·생산 적용 비활성)
│   ├── Library/                #   논문 라이브러리
│   └── .shared/                #   역할 간 공유 데이터 (발행-구독)
├── discord-claude-bot/         # MAGI 중앙 코디네이터
│   ├── bot.py                  #   1봇 + 7 캐릭터 Webhook 라우팅
│   └── requirements.txt
└── scripts/                    # 실행 스크립트·Python 파이프라인
    ├── (미사토 문서 처리 6)     #   PDF 변환·DOI·인용·그림표 등
    ├── github-hunter/          #   리츠코 저장소 발굴 파이프라인
    ├── magi-patrol/            #   12·18·23시 정기 자율 순찰
    ├── wiki_compounder/        #   Codex proposal + 임시 vault transaction 검증
    ├── postprocess/            #   요약 검증 + parsed 인용 복구 shadow
    └── _lib/                   #   공통 유틸리티

실제 에이전트 실행 정의는 .claude/agents/*.md에 있고, Agents/{캐릭터}/*/SKILL.md는 메타·워크플로우 문서이다. 두 위치는 인벤토리 스크립트가 교차 검증한다.


3.5 모델 배정 요약

NERV는 작업 성격에 따라 모델을 차등 배정한다. NLG·추론은 Claude 계열, 결정론적 문서 처리는 Python, 종합·분류 단계는 Codex(gpt-5.6 terra/sol/luna · gpt-6-astra)로 위임한다.

계층 모델 개수 용도
최상위 추론 Claude Fable 5.1 2 서브에이전트 다회차 소크라틱 추론, 고위험 논증 종합
오케스트레이터·고급 생성 Claude Opus 5 8 서브에이전트 다회차 추론, 고급 작성, 조율
NLG·추론 중심 Claude Sonnet 25 서브에이전트 분석·검토·탐색·작성
구조화 추출·plumbing Claude Haiku 4 서브에이전트 결정론적 추출·설치
Python 주도 파이프라인 Python + 선택적 LLM 7 파이프라인 GPU 변환·API 조회·품질 검사·외부 후보 평가

Claude 서브에이전트 정의 39개 = Fable 2 + Opus 8 + Sonnet 25 + Haiku 4. 이 모델별 집계에는 현재 강의 도메인에서 호출하지 않는 신지 에이전트 정의 5개가 포함된다.

Codex(gpt-5.6) 라우팅 — 14개 에이전트

GPT 쿼터를 적극 활용하기 위해 14개 에이전트가 Codex 단계로 라우팅된다. 13개는 Claude 안에서 종합·분류를 강제 위임하고 시스템 오류에만 Claude로 폴백한다. wiki-compounder는 예외적으로 표준 post-sync에서 Claude를 건너뛰고 Codex gpt-5.6-luna를 read-only proposal actor로 직접 호출한다. 이 경로는 Python controller가 검증하며 Sonnet fallback과 생산 적용을 허용하지 않는다.

위임 대상은 레이·카오루·아스카의 분석·탐색·검토 에이전트와 리츠코의 평가 에이전트, 그리고 마리의 영문 작성 에이전트 일부에 걸쳐 있다.


3.6 Feedback Control Plane

2026-08-29 NERV는 세 개의 bounded shadow loop를 아키텍처의 횡단 계층으로 추가했다. daily-paper-recommender는 정확히 귀속된 결과 20건, wiki-compounder는 임시 vault transaction 20건, paper-summarizer는 parsed 요약 50건을 사전 등록된 분모로 사용한다. 세 루프 모두 현재 실사용 관측 0건이며, 0을 성공으로 해석하지 않고 awaiting_observation으로 표시한다.

actor는 후보만 만들고 Python controller가 독립 검증하며, 코호트 동안 생산 정책·위키·요약 파일은 변경하지 않는다. 상세 구조와 승격 기준은 Feedback Control Plane에서 다룬다.

3.7 RASM 구성요소 → 구현 매핑

2 · NERV-RASM 모형의 아홉 구성요소(C0–C8)를 이 장에서 설명한 실제 구현 요소·현행 상태에 대응시키면 다음과 같다. 상태 표기는 2장의 「구현 상태」 경고표와 같다.

구성요소(C코드) 실제 구현 요소 현행 상태 증거·위치
C0 · PI 목적·책임 중심 연구목적·제약·예외와 최종 판단권을 보유하는 인간 통제 경로 운영 루트 PI_DECISIONS_PENDING.md, CLAUDE.md 운영 불변식
C1 · 맥락 접수·위험 프레이밍 Discord 봇의 요청 접수와 캐릭터·에이전트·실행 모드 판정 운영 discord-claude-bot/bot.py, lab-director-config.yaml
C2 · 역할소유·디스패치 7 캐릭터가 46개 등록 실행 단위(Claude 39 + Python 7)를 소유·디스패치 운영 Agents/ROLE-*.md, .claude/agents/*.md, check_agent_inventory.py
C3 · 계약형 조정망 HANDOFF_SCHEMA.yaml v2.1(정규 8 + 하위 2종)과 Research/.shared/ 발행-구독. 자동 트래픽·자동 반려는 제한적 부분 7 · 교차 시스템, Agents/HANDOFF_SCHEMA.yaml
C4 · 이종 실행·종합 엔진 7개 Python 파이프라인과 Claude·Codex·Gemini 경로. 14개 에이전트는 Codex 단계로 라우팅되며 wiki-compounder 표준 경로는 Codex direct 운영 6 · 파이프라인, 8 · 모델 전략
C5 · 위험비례 보증 게이트 8개 품질 임계값과 explore/produce/publish 정책. MAGI L0–L3는 v2에서 검문 강도로 재정의되어 결정론 차단 게이트 3종 등재(v1 LLM 자동 개입 실행기는 종결. 설정값은 2026-07-26 enabled:true — 등록부 가동 선언이며 v1 실행기 가동이 아니다) 부분 구현 (3/10) 7 · MAGI Gate, MAGI_GATE_PROTOCOL.md
C6 · 누적 연구기억 라이브러리→분석→위키 3계층. 자동 생산 적용은 비활성이며 Codex direct transaction shadow로 안전성 코호트 관측 중 shadow Research/{Library,Analysis,Wiki}/, wiki-compounder
C7 · 거버넌스·자율유지 magi-patrol, launchd 44잡, pre-commit 하드게이트, main/worktree 불변식, A/B 측정, 세 bounded feedback loop 운영+관측 7 · Patrol·Feedback Control Plane·launchd
C8 · 연구산출·책임결정 계획·분석·원고·검토 결과를 PI에게 전달, PI가 채택·수정·출판·후속 결정 운영 Research/, PI_DECISIONS_PENDING.md

위의 PI → 봇 → 캐릭터 → 에이전트 → 공유계층 → PI는 대표 전달 경로일 뿐이다. C6 기억층과 C7 거버넌스층은 전 계층을 가로지르며, C5 실패는 C3의 반려·수정명세를 거쳐 C2/C4 재작업으로 돌아가고(F1), 최종 채택은 C8의 PI 승인을 거친다. 또한 Discord 코디네이션은 요청 접수·역할 라우팅(C1/C2)의 관심사이고, MAGI 보증은 산출물 검증·시스템 상태 통제(C5/C7)의 관심사이므로 동일한 노드로 합쳐 읽어서는 안 된다.

3.8 정리

  • NERV는 등록 에이전트 46개(Claude 39개 + Python 7개)를 7 캐릭터가 도메인별로 소유하는 구조이다. 강의 전용 Claude 정의 5개는 등록 상태를 유지하되 현재 강의 도메인에서 호출하지 않는다.
  • Discord 봇(MAGI 중앙 코디네이터)은 대표적인 대화형 진입점으로, 요청을 캐릭터로 라우팅한다(수동 /compound·명시 호출 agent-council·직접 Python 실행 등 다른 경로도 존재한다).
  • 역할 간 산출물은 공유 데이터 계층(발행-구독)핸드오프 스키마(정규 8 + 하위 2 유형)로 흐릅니다.
  • 모델은 Fable 2 / Opus 8 / Sonnet 25 / Haiku 4 + Python 7로 차등 배정하고, 14개 에이전트를 Codex(gpt-5.6) 단계로 라우팅한다. 세 bounded shadow loop는 생산 변경 없이 실사용 증거를 모은다.

다음 장에서는 7 캐릭터의 역할 매트릭스와 도메인을 자세히 다룹니다.