이기종 AI 에이전트 협업 — 클로드 코드와 코덱스를 한 프로젝트에서 화면

공직 현장(개인 개발) · 공직 개인 · 공통·범용 · 2026-09-09 게시

Claude Code와 Codex CLI를 한 프로젝트에서 함께 쓰는 협업 방식을 정리한 실험. 터미널 타이핑과 마크다운 게시판만으로 두 에이전트가 작업을 주고받게 해 별도 설치 없이 이기종 협업을 만든다.

상세 정보

사례 성격
개인 개발
출처 채널
오픈채팅
수집일
2026-09-09
태그
#에이전트 #협업 #워크플로
실행 환경
AI 도구 설정
AI 모델
해외 상용 API
라이선스
MIT (확인 2026-09-09)
저장소
★ 1 · 유지보수 활발
링크 점검
정상 (2026-11-02)

개발자

GitHub·공공 GitLab 공개 프로필 기준 — 공공AX 챔피언 디렉토리와 같은 자료입니다.

4축 평가

AX 단계AI-Ready
업무 범위S1 Single tool
업무 완결성C1 결과 제공
권한(P축)P1 산출물 생성(잠정)
위험도R0 최소
인간 통제해당 없음
증거 등급E1 코드·도구 확인
신뢰도낮음

깃랩 정기 조사 배치(09-09, 289건 대조) — Claude Code와 Codex CLI를 한 프로젝트에서 함께 쓰는 협업 방식을 정리한 실험. 저장소 설명·메타 기준 일괄 판정이며 실측 시 재평가한다.

디자인 패턴 분석

『모두의 공공AX 디자인 패턴』 카탈로그 v0.7.1 기준 — 사례를 기관이 함께 쓰는 AI 부품과 그 조립으로 읽은 결과입니다. · 패턴 성좌에서 전체 보기 ↗

업무 패턴 B6 에이전트 오케스트레이터 보조 B1 코파일럿 변형: 오케스트레이션(이기종 코딩 에이전트·사람 중계)

서비스 유형 12 개발 코파일럿 · 전이 단계 개인 사용 · 판정 카탈로그 v0.6

환경 축 배포:미확인 네트워크:인터넷 필수 모델:해외 상용 API 런타임:AI 도구 설정 권한:P1 산출물 생성

이 사례의 패턴 구성도 — 층별 부품과 배선서비스 블록업무 컴포넌트제어 흐름공통 서비스운영보안상호작용D8.0D8.0 기타·범용B6 · 주 패턴B6 에이전트 오케스트…B1B1 코파일럿B′7B′7 ReAct 도구…B′+B′+ 기억 관리A7A7 자체 제작 환경A2.1A2.1 모델 서빙 ·…A9 · 보완 필요A9 업무 규범 스킬A2.2 · 보완 필요A2.2 모델 서빙 ·…C1 · 보완 필요C1 검토 큐C9 · 보완 필요C9 평가 세트·회귀시험S9 · 보완 필요S9 임시 샌드박스F2 · 보완 필요F2 편집 가능한 출력
패턴 구성도 — 층별 부품과 배선. 실선은 확인된 부품, 점선은 계획, 회색 점선은 보완이 필요한 필수 부품. 부품을 누르면 아래 상세로 간다.
제어 흐름(B′)
B′7 ReAct 도구 루프 B′+ 기억 관리
공통 서비스(A)
A7 자체 제작 환경 A2.1 모델 서빙 · 상용 API 호출
서비스 블록(D)
D8.0 기타·범용
부품 배선
A2.1 → B6 · B6 → B′7 · B6 → B′+ · B′+ → D8.0 · A7 → B6

판정 근거

Claude Code와 Codex CLI를 한 프로젝트에서 함께 쓰는 협업 방식 실험. 두 상용 코딩 에이전트가 각자 도구 호출 루프(B′7)로 작업하고 마크다운 게시판을 공유 기억(B′+)으로 삼아 작업을 주고받으므로 R2 요건(복수 LLM 역할·도구 루프·AI의 계획 선택)을 충족해 B6 오케스트레이터. 다만 에이전트 간 전달은 사람의 터미널 타이핑이 중계하므로 개발자 관점에서는 B1 코파일럿 성격도 있어 secondary. 상용 API(Claude·Codex)라 A2.1, 실험 설계 자체 제작 A7. 개발 업무이므로 D8.0, 유형 12 개발 코파일럿(A9·A2.2·C1·C9·S9·F2 미확인). 로컬 코드 파일 쓰기는 운영 시스템 쓰기가 아니라 P1. 상용 API로 인터넷 필수 보정. MIT. URL 없음.

구현 가이드

주 패턴 B6 에이전트 오케스트레이터을 구현할 때

구현 단계

  1. 업무를 도구 목록으로 나누고 도구마다 읽기/쓰기, 되돌리기 비용을 적어 C8 권한표를 먼저 만든다.
  2. 단일 에이전트 + ReAct 루프(B′7)로 시작해 C9 평가 세트로 재고, 하위 작업이 분리될 때만 B′4·B′3으로 승급한다.
  3. 신뢰 불가 입력(외부 문서·API 응답)을 읽는지 확인하고, P2 이상이면 S5 계획 고정 또는 S6 격리를 설계한다.
  4. 단계 상태·되돌림(C3), 호출 추적(C4), 되돌리기 어려운 조치 앞 확인(F6)을 붙인다.
  5. 모델 장애 대비 C7과 킬스위치를 시험하고 결정적 재생(S10) 기록을 남긴다.

점검표

환경 조건

E3 MCP·CLI. E1 폐쇄망이면 A8 로컬 MCP 호스트 + A2 로컬 모델 변형만 가능하다. E2 해외 상용 API면 A2 게이트웨이 + C7 + C8 도구별 승인. E4가 P2 이상으로 올라가기 가장 쉬운 부품이라 C2·C3·C4·C8 킬스위치가 필수이며, 신뢰 불가 입력 + P2 이상이면 S5 또는 S6 + S9가 필요하다(§5 매트릭스).

주의할 점

기본 배선 예

A8 → B6 (B′7 · B′3) → C8 → C4 · B6 → F6 (실행 전 확인)

보완이 필요한 필수 부품

이 조합에서 카탈로그가 함께 갖추라고 권하는 부품 가운데 아직 확인되지 않은 것이다.

피해야 할 안티패턴

관련 가이드라인

이 사례가 쓰는 부품과 이어지는 공공 AX 안내서·지침이다 (부록 E 공공 AX 가이드라인 문서 해설 기준, 겹치는 부품이 많은 순).

같은 주 패턴(B6)을 쓰는 다른 사례

같은 업무 패턴으로 조립된 사례를 서비스 유형이 같은 것부터 모았다 외 2건. 구현할 때 비교해 볼 수 있다.

이 사례에 쓰인 패턴

B1 코파일럿 업무 컴포넌트

사람이 하던 문서·판단 작업 옆에 AI가 초안·요약·검토안을 놓고, 사람이 고쳐서 확정한다.

PAX 사례 111건이 이 부품을 쓴다

맥락

문서·기안·검토의견처럼 산출물 형식이 정해져 있고 최종 확정자가 사람인 업무에 쓴다. BYO 코딩 에이전트와 A9 스킬을 쓰는 스킬 코파일럿이 PAX 자생 도구에 많다.

맞서는 힘(긴장)

  • 초안 속도 vs 전건 검토에 드는 사람 시간
  • 상용 모델 품질 vs 행정망·민감정보 제약(E1·E5)
  • 양식 일관성(A9 규범) vs 사안별 유연성

해법

업무 서식과 참고 자료를 입력으로 받아 모델(A2 또는 BYO 구독)이 초안·근거·신뢰도를 내고, 사람이 편집 가능한 형태(F2)로 받아 고쳐서 확정한다. 보고서 구조·문체·검증 절차는 A9 규범 스킬로 코드 밖에 두고, 공공 문서 형식은 A10 어댑터로 입출력한다. 확정 전 검토는 C1 검토 큐로 운영하고 수정 내역을 C4·C6의 입력으로 남긴다. First로 가려면 저위험 건을 C2로 자동 확정하는 분기를 더한다.

이럴 때 쓴다

  • 산출물 형식이 정해진 문서를 반복 작성할 때
  • 최종 판단과 책임이 사람에게 남아야 할 때(P1 산출물 생성)
  • 유형 ④ 내부 문서·기안, 유형 ⑫ 개발 코파일럿의 기본 조립일 때

이럴 때는 쓰지 않는다

  • 답이 기관 규정·선례 속에 있어 접지와 출처가 핵심일 때(B3)
  • 추출 결과가 사람 확정 없이 다음 판정 단계로 흐를 때(B4)
  • 런타임에 모델이 필요 없는 정형 취합일 때(B0)

얻는 것

  • 문서 작성 시간 단축
  • 책임 소재가 사람에게 명확히 남음
  • 도입이 쉬워 Enabled의 전형 경로

점검표

  • 담당자가 최종 확정한다는 절차가 운영되는가
  • 서식·문체 규범이 A9 스킬로 분리되어 있는가
  • 초안을 이용자가 직접 고칠 수 있는가(F2)
  • 수정 내역이 기록되어 품질 개선에 쓰이는가

구조 — 참여 부품

  • A2 모델 서빙 계층 — 초안 생성 모델 호출(행정망이면 내부망 프록시)
  • A9 업무 규범 스킬 — 서식·문체·검증 절차를 프롬프트 템플릿으로 고정
  • A10 문서 형식 어댑터 — HWPX·엑셀 입출력
  • C1 검토 큐 — 담당자가 초안을 확인·수정·확정
  • 담당자 — 최종 확정자이자 책임자

변형

  • 시스템 내장형: 기관 업무 시스템 안에 초안 기능을 넣은 형태
  • 스킬 코파일럿: BYO 코딩 에이전트 + A9 스킬로 배포되는 형태(PAX Enabled 사례에서 가장 흔한 형태)

참조 구현 예

  • PAX gov-report-skill — 기획보고서 7대 항목 스킬 코파일럿(카드 참조 구현)

관련 부품

C1 짝 — 사람 확정 절차 · F2 이용자 쪽 대응 — 편집 가능 출력은 B1의 필수 면 · A9 끼울 자리 — 서식·규범 스킬 · B′5 기본 배선 — 유형 ④·⑫ 조립 템플릿의 생성자-비평가 · C2 다음 단계 — 저위험 자동 확정으로 First · B3 승급 경로 — §7.2 진행 경로 1 → 4

참고 자료

Fowler Direct Prompting · InfoQ Editable Output · GoF Decorator

이 부품과 이어지는 가이드라인

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

B6 에이전트 오케스트레이터 업무 컴포넌트

역할을 나눈 LLM들이 도구를 호출하며 계획을 세우고 다단계 업무를 이어 가며, 사람은 승인과 예외 처리를 맡는다.

PAX 사례 15건이 이 부품을 쓴다

맥락

여러 시스템·도구(A8 MCP·API·문서)를 오가는 다단계 업무, 데이터 조회·분석 에이전트(유형 5b), 망분리 환경의 로컬 MCP 호스트에 쓴다. 하위 작업이 실제로 분리되거나 AI가 도구를 골라야 할 때만 해당한다.

맞서는 힘(긴장)

  • 자율성 vs 권한 통제(P2 이상에서 C8 필수)
  • 멀티에이전트의 분업 vs 조정 비용·충돌(X11)
  • 도구 출력 활용 vs 도구 출력 속 지시가 명령이 되는 위험(X13)
  • 탐색적 유연성 vs 재생·감사 가능성

해법

목표와 도구 목록(A8 MCP·API)을 받아 AI가 계획을 세우고 도구를 골라 호출하며, 필요하면 하위 전문 에이전트에 위임한다(B′4·B′7·B′8). 단일 에이전트에서 시작해 하위 작업이 분리될 때만 계층·병렬로 승급한다. 도구별 읽기/쓰기 권한과 실행 승인은 C8로, 단계 상태와 되돌림은 C3로, 모든 호출은 C4 추적 로그로 남긴다. 신뢰 불가 입력을 읽는 경우 S5 계획 고정이나 S6 격리로 도구 출력이 새 행동을 끼워 넣지 못하게 하고, 되돌리기 어려운 조치 앞에는 F6 확인을 둔다.

이럴 때 쓴다

  • 한 건의 처리가 여러 시스템 조회·작성·검증에 걸쳐 있고 AI가 도구 순서를 골라야 할 때
  • 하위 작업이 실제로 분리되거나 컨텍스트 창이 부족할 때
  • C8·C3·C4 통제를 함께 갖출 수 있을 때

이럴 때는 쓰지 않는다

  • 단계 순서가 고정된 파이프라인일 때(B′1을 가진 B1·B4)
  • 실제 흐름이 초안 → 사람 확정일 때(B1)
  • 스케줄러·크롤러 수준 자동화일 때(agent_system=true라도 B6 아님)
  • 단일 에이전트가 되기 전에 멀티에이전트부터 만들려 할 때(X11)

얻는 것

  • 여러 시스템을 오가는 업무 흐름 자체를 재설계
  • 도구 교체로 다른 기관이 그래프를 재사용 가능
  • First 지향 구조

점검표

  • 복수 LLM 역할·도구 호출 루프·AI의 계획 선택이 실제로 있는가(R2)
  • 도구별 읽기/쓰기 권한과 실행 승인이 명시되어 있는가
  • 모든 도구 호출이 추적되는가
  • 도구 출력이 새 행동을 촉발하지 못하게 막는 구조가 있는가

구조 — 참여 부품

  • 계획·감독 에이전트 — 목표를 쪼개고 도구·하위 에이전트를 선택
  • 전문 하위 에이전트 — 조회·작성·검증 등 역할별 수행
  • A8 MCP 서버·호스트 — 도구 인터페이스와 레지스트리
  • C8 권한 경계·킬스위치 — 도구별 권한·실행 승인·즉시 중단
  • C4 감사 로그·지표 — 호출 추적
  • 담당자 — 승인 관문과 예외 처리

변형

  • 멀티에이전트 오케스트레이션: 감독자가 역할별 에이전트에 일을 맡기고 결과를 합친다
  • 관문 내장형(스테이지-게이트): 파이프라인 안에 사람 승인 관문이 여럿 있다(R2)
  • 단일 에이전트 도구 연쇄: 하나의 에이전트가 계획하고 여러 도구를 호출한다(R2)
  • 자가검증 루프 내장: 실행 결과를 스스로 검증하고 재시도한다(R2)
  • 로컬 MCP 호스트: 망분리 환경에서 도구별 위험도·실행 승인·감사 대시보드를 갖춘다(E1 폐쇄망이면 이 변형만 가능)
  • 시뮬레이션: 여러 에이전트로 정책·여론 등을 모의 실행한다
  • 에이전트 함대 오케스트레이션: 한 사람이 다수의 독립 코딩 에이전트를 병렬로 지휘하고 일을 배정·수합한다(R25)

참조 구현 예

  • PAX 망분리 환경용 로컬 AI 에이전트 + KOSIS 공식 MCP — 로컬 MCP 호스트, 도구별 위험도·실행 승인·감사 대시보드(§9)
  • PAX MOPAN — RAG·MCP·워크플로 조합 바탕 시스템(카드 참조 구현)
  • PAX c54ee4b5fb3ee4c5 — Orca ADE — 여러 코딩 에이전트 병렬 지휘, B6-f 해외 참고(§13)

관련 부품

C8 필수 통제 — 도구별 권한·실행 승인 · A8 끼울 자리 — MCP 도구 · B′4 기본 배선 — 계층 분해·감독자 · B′7 시작 배선 — 단일 에이전트 ReAct에서 승급 · S5 보안 짝 — 계획 고정으로 도구 출력 인젝션 차단 · F6 이용자 쪽 대응 — 에이전트 행동 확인

참고 자료

Google ADK 8패턴 · Gulli ch.7 Multi-Agent·ch.6 Planning·ch.2 Routing · Springer Supervisor/Collaboration · GoF Mediator, Microservice Aggregator

이 부품과 이어지는 가이드라인

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

B′7 ReAct 도구 루프 제어 흐름

생각 → 도구 호출 → 관찰 → 생각을 반복하며 답을 찾는 배선이다. 추론 흔적이 남아 근거 추적의 원료가 된다.

PAX 사례 16건이 이 부품을 쓴다

맥락

대민 상담(B3, 유형 ①)의 검색 루프, 데이터 조회·분석 에이전트(B6 로컬 호스트, 유형 5b), MCP 도구 연결(A8)에 쓴다. §7.2 진행 경로의 7단계이고, 단일 에이전트는 여기서 출발한다.

맞서는 힘(긴장)

  • 탐색적 유연성 vs 긴 정형 과제에서의 실행 무질서
  • 도구 출력 활용 vs 도구 출력 속 지시가 명령이 되는 위험(X13)
  • 추론 흔적의 투명성 vs 호출 수·비용

해법

모델이 현재 목표에 대해 생각을 적고, 도구 하나를 골라 호출하고, 결과를 관찰한 뒤 다음 행동을 정한다. 추론 흔적과 호출 순서는 C4 추적 로그로 남기고 답에는 근거(F1)를 붙인다. 도구는 A8 레지스트리에 등록된 것만 쓰게 하고 도구별 권한을 C8로 제한한다. 신뢰 불가 데이터를 읽은 뒤 새 행동을 부를 수 있으면 S5 계획 고정이나 S6 격리로 막고, 최대 호출 횟수를 둔다.

이럴 때 쓴다

  • 질의가 탐색적이라 순서를 미리 정할 수 없을 때
  • 답의 근거와 도구 호출 순서를 보여 줘야 할 때(§7.5)
  • 단일 에이전트로 시작하는 첫 에이전트 배선일 때

이럴 때는 쓰지 않는다

  • 긴 정형 과제로 단계 누락이 문제일 때(B′8)
  • 순서가 고정된 파이프라인일 때(B′1)
  • 신뢰 불가 입력을 읽고 P2 이상 행동을 하는데 S5·S6을 둘 수 없을 때

얻는 것

  • 근거와 호출 순서의 투명성
  • 탐색적 질의에 적합
  • C4 추적의 원료

점검표

  • 도구 호출 순서와 추론 흔적을 지금 볼 수 있는가
  • 최대 호출 횟수가 있는가
  • 도구 출력이 새 행동을 부르지 못하게 막는 구조가 있는가

구조 — 참여 부품

  • 추론 모델 — 생각을 적고 다음 도구를 선택
  • A8 MCP 서버·호스트 — 호출 가능한 도구와 레지스트리
  • C4 감사 로그·지표 — 추론 흔적·호출 순서 기록
  • C8 권한 경계·킬스위치 — 도구별 읽기/쓰기 제한

관련 부품

A8 끼울 자리 — 호출할 도구 · C4 기록처 — 추론 흔적·호출 추적 · B′8 대안 — 긴 정형 과제 · B′4 승급 — 하위 작업이 분리되면 계층화 · S5 보안 짝 — 도구 출력이 행동을 바꾸지 못하게

참고 자료

Towards AI #2·#4 · Gulli ch.5 Tool Use · Springer ReAct

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

B′+ 기억 관리 제어 흐름

세션 안의 맥락과 세션을 넘는 장기 기억을 유지하는 배선이다. 공공에서는 개인정보 축적과 직결되므로 등급·비식별 없이 장기 기억을 두지 않는다.

PAX 사례 15건이 이 부품을 쓴다

맥락

다회차 상담, AI 코딩 지원처럼 이전 결정·서식을 이어 써야 하는 업무에 쓴다. S3 컨텍스트 방화벽은 이 원형을 의존 대상으로 두고, 이용자 쪽 면은 F8 대화 이력·되돌리기다. 사건 기록은 C4가 맡는다.

맞서는 힘(긴장)

  • 맥락 유지로 인한 효율 vs 개인정보·등급 정보 축적
  • 장기 기억의 편의 vs 기억 오염(잘못된 기억의 재사용)
  • 토큰 절약 vs 요약 과정의 정보 손실

해법

세션 기억과 장기 기억을 구분하고, 장기 기억에 넣을 항목(결정·제약·서식 프로필 등)을 명시적으로 정한다. 저장 전 E5 등급을 확인하고 C5로 비식별하며, 기억은 신뢰 구역을 분리해(S3) 지시와 섞이지 않게 한다. 보관 기간과 삭제·열람 경로를 두어 이용자가 F8로 확인·되돌릴 수 있게 하고, 사건·처리 기록은 기억이 아니라 C4에 남긴다.

이럴 때 쓴다

  • 다회차 업무에서 이전 결정·제약을 이어 써야 할 때
  • 같은 맥락을 반복 주입해 비용·지연이 커질 때(§7.5)
  • 비식별과 보관 규칙을 운영할 수 있을 때

이럴 때는 쓰지 않는다

  • E5 S 이상 정보를 비식별 없이 저장해야 할 때
  • 처리 이력·감사 기록이 목적일 때(C4)
  • 단발성 질의응답일 때

얻는 것

  • 토큰 낭비 감소
  • 맥락 상실 방지
  • 서식·결정의 재사용

점검표

  • 장기 기억에 들어가는 항목이 명시되어 있는가
  • 저장 전 비식별이 되는가
  • 보관 기간과 삭제 경로가 있는가
  • 기억이 지시와 구분된 구역으로 주입되는가

구조 — 참여 부품

  • 기억 저장소 — 세션·장기 기억 보관(로컬 저장 등)
  • C5 가드레일 필터 — 저장 전 비식별
  • S3 컨텍스트 방화벽 — 기억 구역을 지시와 분리
  • F8 대화 이력·되돌리기 — 이용자가 이력 열람·되돌리기

변형

  • 세션 기억: 한 세션 안의 대화·작업 맥락을 유지한다
  • 장기 기억: 세션을 넘어 결정·제약을 저장하고 다음 세션에 되읽는다(MCP 메모리 서버 등)
  • 서식 기억: 읽어 둔 기관 서식을 프로필로 캐시해 재사용한다

참조 구현 예

  • PAX 17ed2d7a88c03119 — 기관 서식을 프로필로 캐시해 재사용하는 서식 기억(§13)
  • PAX c483c6ad4ccff0ab — 세션 종료 훅으로 결정·제약을 로컬 SQLite에 저장하고 다음 세션에 되읽는 MCP 메모리 서버(§13 A8)

관련 부품

C5 필수 전제 — 비식별 · S3 보안 짝 — 기억 구역 분리 · F8 이용자 쪽 대응 — 대화 이력·되돌리기 · C4 경계 — 사건 기록은 C4 · A8 메모리 서버를 MCP 도구로 제공

참고 자료

Gulli ch.8 Memory · Towards AI #6 · aiux Thread History

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

A7 자체 제작 환경 공통 서비스

외부 용역 없이 기관 인력이 저작도구·AI 코딩 에이전트로 도구를 직접 만들고 고치는 제작 환경이다.

PAX 사례 317건이 이 부품을 쓴다

맥락

업무 담당자가 AI 코딩 도구·저작도구·오픈소스로 직접 만드는 과제에 쓴다. 유형 8(취합·변환 자동화)에서는 필수 기반이다. PAX 557건에서 A7이 붙고 BYO 모델을 쓰는 사례는 29건이다.

맞서는 힘(긴장)

  • 제작 속도·현장 적합성 vs 유지보수 연속성
  • 개인 역량 의존 vs 조직 인수인계
  • 무예산 제작 vs 보안 검토·기관 공식화 절차

해법

기관 인력이 AI 코딩 에이전트·저작도구·오픈소스로 직접 만들되, 처음부터 전이를 전제로 한다. 설정·데이터(연락처·업무분장 등)는 코드 밖 파일로 빼 비개발자도 고치게 하고, 작업 지시서 자체를 코딩 에이전트가 수행할 프롬프트로 설계해 제작 절차를 남긴다. MIT·Apache 등 라이선스를 명시하고 공공 깃랩(A3)이나 혁신24 자료실에 등재해 담당자가 바뀌어도 이어지게 한다. 실사용 건수로 성과를 재 기관 공식으로 올린다.

이럴 때 쓴다

  • 반복 업무를 줄이는 소규모 도구를 빠르게 만들 때
  • 용역 없이 작은 수정을 계속해야 할 때
  • 유형 8 취합·변환 자동화

이럴 때는 쓰지 않는다

  • P2 이상 시스템 쓰기·처분이 걸려 보안 검토·통제 부품이 먼저 필요한데 이를 갖출 수 없을 때
  • 라이선스·저장소·인수인계를 정할 수 없어 전이가 불가능할 때(X9 위험)

얻는 것

  • 제작 속도와 현장 적합성
  • 내부 유지보수 역량 축적
  • 무예산·소예산 제작

점검표

  • 라이선스가 명시되어 있는가
  • 저장소가 개인 PC가 아닌 공유 위치에 있는가
  • 담당자가 바뀌어도 고칠 수 있는 문서·설정 분리가 있는가
  • 실사용 지표가 있는가

구조 — 참여 부품

  • 업무 담당자 — 요구를 알고 직접 만드는 제작자
  • AI 코딩 에이전트·저작도구 — 코드·화면·워크플로 생성
  • A3 공공 깃랩·자료실 — 등재처 — 담당자 이동 후에도 이어지게
  • A9 업무 규범 스킬 — 제작 규범·지시서를 재사용 가능한 형태로

변형

  • 비개발자 바이브코딩: 교육 후 비개발 직원이 AI 코딩으로 웹앱을 만들고 실사용 지표까지 잰다.
  • 용역 탈피 단계형: 1단계는 전문기업과, 2단계는 직원이 도구를 대여해 라벨링·학습·개발을 직접 한다.
  • 오픈소스 조립형: n8n·FastAPI·Qdrant·LM Studio 등 오픈소스로 워크플로를 직접 조립하고 설정을 공유한다.
  • 사람+에이전트 작업 단위형: 작업 지시서를 코딩 에이전트 입력 프롬프트로 설계해 '사람 1인 + 에이전트 1세션' 단위로 일한다.

참조 구현 예

  • PAX 145a534a79c6fc53 — 공무원 1인 개발 도구가 혁신24 자료실로 여러 기관에 확산(§13 A7)

관련 부품

A3 등재처 — 공공 깃랩 · A9 짝 — 제작 규범을 스킬로 · B0 주 산출물 — 결정적 도구 · A10 짝 — 유형 8 필수 · X9 주의 — 담당자와 함께 사라지는 도구

참고 자료

GoF Prototype · PAX 전이 플레이북

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

A2.1 모델 서빙 · 상용 API 호출 공통 서비스

GPT·Gemini·Claude·HyperCLOVA X·Upstage 등 상용 모델 API를 서빙 계층을 거쳐 호출해 자체 인프라 없이 최신 모델 성능을 쓴다.

PAX 사례 88건이 이 부품을 쓴다

맥락

E2는 해외 상용 API(또는 국산 상용 모델 API), E1은 인터넷망·클라우드다. E5 등급이 O이거나 비식별 후 전송해도 되는 업무에 맞는다. 대민 상담(B3)·코파일럿(B1)·콘텐츠 생성(B7)에서 흔하다.

맞서는 힘(긴장)

  • 모델 성능·도입 속도 vs 데이터 반출·주권
  • 종량 과금의 초기 저비용 vs 호출량 증가 시 비용 예측 어려움
  • 벤더의 모델 개선 vs 예고 없는 품질 회귀
  • 단일 API의 단순함 vs 장애 시 서비스 중단

해법

업무 코드는 서빙 계층만 부르고, 서빙 계층이 상용 API를 호출한다. 행정망 본문이 나가는 경로 앞에는 C5 비식별 전처리를 두고, 대체 모델을 등록해 C7 폴백을 건다(§5 매트릭스 E2 해외 상용 API 행). 모델 버전을 고정하고 모델·프롬프트·설정 조합을 릴리스처럼 관리해 업데이트 전후를 C9로 비교한다. 비용이 문제면 라우팅·캐싱으로 큰 모델 호출을 줄인다. E5가 S 이상이면 이 변형 단독으로는 안 되고 A2.4 내부망 프록시를 거친다.

이럴 때 쓴다

  • 인터넷망·클라우드 환경이고 데이터 등급이 O이거나 비식별 후 전송 가능할 때
  • PoC 초기에 모델 성능을 빠르게 확인해야 할 때
  • 자체 GPU·운영 인력이 없을 때

이럴 때는 쓰지 않는다

  • E1이 폐쇄망이면 조립 오류(A2.2·A2.4로)
  • E5가 S 이상인데 내부망 프록시가 없을 때(A2.4 필수)
  • 상시 서비스인데 대체 경로를 둘 수 없을 때

얻는 것

  • 인프라 없이 최신 모델 성능
  • 빠른 PoC
  • 벤더의 지속적 개선

점검표

  • 업무 코드가 상용 API를 직접 부르지 않는가
  • 외부로 나가는 프롬프트에서 무엇이 걸러지는지 답할 수 있는가
  • API 장애 시 대체 경로가 있는가
  • 모델 버전과 호출당 비용·지연이 기록되는가

구조 — 참여 부품

  • A2 서빙 계층 — 업무 코드 대신 상용 API를 호출하고 버전·사용량을 기록
  • C5 가드레일(비식별 전처리) — 외부 전송 전 민감정보 제거
  • 상용 모델 API — 기관 밖에서 추론을 수행
  • C7 폴백 스위치 — API 장애·품질 저하 시 대체 모델·수동 처리로 전환

변형

  • 해외 상용 API: GPT·Gemini·Claude 등이다. E2 값은 해외 상용 API.
  • 국산 상용 API: HyperCLOVA X·Upstage 등 국내 사업자 API. 망·등급 조건은 해외와 같이 따진다.
  • 구조화 호출: function calling·JSON Schema로 출력 형식을 고정해 부른다. 판정은 규칙 엔진에 남긴다.

관련 부품

C7 필수 짝 — 상용 API 의존이면 폴백 필수 · C5 선행 — 외부 전송 전 비식별 · A2.4 대안 — 행정망·민감 등급일 때 중계 경유 · C9 짝 — 모델 업데이트 회귀시험

참고 자료

Fowler Direct Prompting · InfoQ 모델 라우팅·캐싱 · Microservice 패턴 Circuit Breaker

이 부품과 이어지는 가이드라인

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

D8.0 기타·범용 서비스 블록

동작 키워드로 판정되지 않는 내부 운영 도구(범용 플랫폼·에이전트 개발 환경·교육)를 담는 블록이다. 다음 판에서 하위 블록을 추가할 후보군이다.

PAX 사례 45건이 이 부품을 쓴다

맥락

국민 접점이 없고 D8.1~D8.10의 어느 동작 키워드에도 걸리지 않는 내부 도구. PAX 45건. 범용 플랫폼, 에이전트 개발 환경, 교육·학습 도구, AI 런타임 없는 행정정보시스템(R24) 등. 업무 영역별 PAX 건수(557건 태깅): 공통·범용 26, 문서·기안 4, 기획·정책 4, 시설·안전 3, 인사·복무 3, 감사·법무 2, 데이터·통계 2, 회계·정산 1.

맞서는 힘(긴장)

  • 분류 완결성 vs 억지 분류로 인한 블록 의미 희석
  • 범용 도구의 넓은 재사용성 vs 업무 산출물 불명확(X8·X1 위험)
  • 후보군 보존 vs 카탈로그 세분화 과잉

해법

먼저 동작 키워드 우선순위를 끝까지 적용해 D8.1~D8.10 중 하나로 판정되는지 확인한다. 어느 것에도 걸리지 않을 때만 D8.0에 두고, 카탈로그 피드백(missing_patterns)에 반복 구조를 기록한다. 범용 도구는 그 자체보다 그것이 어느 업무 산출물로 이어지는지가 중요하므로, 대표 사용 시나리오를 하나 골라 해당 하위 블록의 조립 템플릿으로 설계를 점검한다. AI 런타임이 없는 행정정보시스템은 유형 0 기타·X1 표기로 따로 표시한다(R24).

이럴 때 쓴다

  • 동작 키워드 우선순위를 끝까지 적용해도 D8.1~D8.10 어디에도 걸리지 않을 때
  • 범용 플랫폼·개발 환경·교육처럼 특정 업무 동작이 없을 때

이럴 때는 쓰지 않는다

  • 하나라도 동작 키워드가 걸리면 그 하위 블록
  • 국민 접점이 있으면 D1~D7
  • 범용 도구라도 대표 PoC가 특정 업무 산출물을 내면 그 산출물의 블록(R1)

얻는 것

  • 억지 분류를 피해 하위 블록 의미 보존
  • 새 하위 블록 후보군 확보

점검표

  • 우선순위를 끝까지 적용했는가
  • 대표 업무 산출물이 무엇인지 적혀 있는가
  • 반복 구조가 피드백으로 기록되었는가

구조 — 참여 부품

  • 공직자(개발자·학습자) — 범용 도구를 써서 자기 업무 도구를 만들거나 배움
  • B6 도구 호출 에이전트 — 범용 에이전트·멀티에이전트 프레임워크
  • B0 결정적 도구 — AI 런타임 없는 범용 플랫폼·행정시스템
  • A7 자체 제작 환경 — 기관 인력이 직접 제작하는 환경

변형

  • 범용 에이전트·멀티에이전트 프레임워크: 특정 업무에 묶이지 않는 에이전트 개발 환경(DevEval Agents).
  • 교육·학습 도구: AI 활용 교육, 챔피언 인증 학습관리 등.
  • AI 무관 행정정보시스템: AI 런타임이 없는 순수 행정시스템. 유형 0 기타, X1 명시(R24).

참조 구현 예

  • DevEval Agents — 카탈로그 D8.0 카드 예: ODA 사업평가 멀티 에이전트 프레임워크
  • 정부 지원사업 전수조사 에이전트 스킬 ir-search — 카탈로그 D8.0 카드 예

관련 부품

D8.1 가장 흔한 재판정처 — 탐색·조회 · D8.3 재판정처 — 개발 코파일럿 · X11 범용 멀티에이전트 환경의 함정 · X1 AI 런타임 없는 행정시스템 표기(R24)

참고 자료

카탈로그 §6 D8 교차표 · PAX 업무 10분류

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

A9 업무 규범 스킬 공통 서비스

보고서 구조·문체·서식·검증 절차 같은 업무 규범을 모델 중립 스킬(지침 + 검증기 + 출력 서식)로 패키징해 어떤 모델·에이전트에서든 재사용한다.

PAX 사례 54건이 이 부품을 쓴다

맥락

기안·보고서·콘텐츠처럼 서식과 문체가 정해진 산출물을 만드는 B1·B7, BYO 코딩 에이전트 환경(E2 모델 중립), 개발 코파일럿에서 쓴다. 유형 4·6·12에서는 필수 기반이고, §7.2 진행 경로에서는 3단계에 놓인다.

맞서는 힘(긴장)

  • 규범 고정(일관성) vs 담당자 재량
  • 모델 중립(이식성) vs 특정 모델 최적화
  • 규범 공개·재사용 vs 프롬프트·규범 유출
  • 가중치에 넣기(튜닝) vs 문서로 주입하기

해법

규정집·매뉴얼·서식 예시에서 업무 규범을 뽑아 지침(구조·문체·금지 사항), 검증기(형식·인용·수치 검사), 출력 서식(HWPX·DOCX 등)으로 묶은 스킬 패키지로 만든다. 모델 호출 코드와 분리된 파일로 두어 어떤 코딩 에이전트·모델에서도 같은 절차가 돌게 한다(External Configuration). 산출·검증된 수치와 출처만 주입하고 미제공 수치·순위 생성을 금지하는 식으로 생성 범위를 규범으로 좁힌다. 스킬은 버전으로 관리해 규범 유출·변경을 추적하고, C9로 스킬 변경 전후 품질을 잰다.

이럴 때 쓴다

  • 산출물 서식·문체·구조가 정해져 있을 때
  • 출력 품질이 들쭉날쭉할 때(§7.5)
  • BYO 환경에서 모델과 무관하게 같은 절차를 돌려야 할 때
  • 갱신이 잦은 규범을 튜닝 없이 반영해야 할 때

이럴 때는 쓰지 않는다

  • 규범이 문서로 정리되지 않았고 정리할 담당도 없을 때
  • 지식 검색이 필요한 문제(B3 접지가 먼저)
  • 스킬 내용 자체가 민감해 배포할 수 없는데 버전 관리·접근 통제를 둘 수 없을 때

얻는 것

  • 출력 일관성
  • 모델 교체 가능(BYO에서는 교체 가능성이 곧 C7)
  • 타 기관 재사용
  • 튜닝 없이 규범 갱신

점검표

  • 규범이 모델 호출 코드와 분리된 파일로 있는가
  • 검증기가 출력 형식·인용·수치를 실제로 검사하는가
  • 스킬에 버전이 있는가
  • 다른 모델로 바꿔도 같은 서식이 나오는지 확인했는가

구조 — 참여 부품

  • 규범 원천(규정집·매뉴얼·서식) — 스킬로 옮길 업무 규범의 출처
  • 스킬 패키지 — 지침·검증기·출력 서식을 모델 밖 파일로 묶음
  • 코딩 에이전트·모델(BYO) — 스킬을 불러 규범대로 산출
  • A10 문서 형식 어댑터 — 출력 서식을 HWPX·DOCX로 내보냄
  • C9 평가 세트 — 스킬 변경 전후 품질 비교

변형

  • 보고서·문서 규범 스킬: gov-report-skill(기획보고서 7대 항목), 원페이퍼 스킬(A4 한 쪽·DOCX 검증).
  • 스타일·콘텐츠 스킬: Public Cardnews(6개 스타일), 제작 가이드·검수 체크리스트를 묶은 제작 스킬 패키지.
  • 검증 스킬: paper-verify(인용 검증)처럼 검증 절차 자체를 패키징한다.
  • 규정집→스킬 변환: book-to-skill은 PDF 규정집을 에이전트 스킬로 자동 변환한다(A9+A10 조합).
  • 지식 가이드 In-Context 주입: 파인튜닝 대신 추출·판정 기준을 문서형 가이드로 증류해 주입한다.

참조 구현 예

  • PAX gov-report-skill — 기획보고서 7대 항목 스킬(§6 A9 카드)
  • PAX paper-verify — 인용 검증 스킬(§6 A9 카드)

관련 부품

A10 짝 — 스킬 출력 서식을 공공 문서 형식으로 · B1 소비처 — 스킬 코파일럿 · C9 짝 — 스킬 변경 회귀시험 · A2.0 짝 — BYO 환경의 모델 중립 · A2.3 대안 — 가중치에 넣는 방식

참고 자료

GoF Template Method · Microservice 패턴 External Configuration · InfoQ Few-shot·Role·CoT · aiuxpatterns Prompt Templates

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

A2.2 모델 서빙 · 주권형 온프레미스 공통 서비스

오픈웨이트 모델을 기관 서버·폐쇄망·로컬 PC 안에서 Ollama·vLLM 등으로 구동해 데이터를 기관 밖으로 내보내지 않고 추론한다.

PAX 사례 54건이 이 부품을 쓴다

맥락

E1은 폐쇄망·행정망·로컬 PC, E2는 해외 오픈웨이트(로컬) 또는 국산 오픈웨이트, E5는 S 이상이다. 폐쇄망 B3·B6·B8, 유형 3(현장 폐쇄망 서버 추론), 유형 12 개발 코파일럿은 이 변형을 기본으로 쓴다.

맞서는 힘(긴장)

  • 데이터 주권 vs 상용 최신 모델 대비 성능
  • GPU·서버 고정비 vs 종량 과금
  • 모델 운영·갱신 역량 vs 외부 의존 제거
  • 저사양 장비 구동 vs 모델 크기

해법

오픈웨이트 모델을 기관 안에 설치하고 서빙 계층(Ollama·vLLM·LM Studio 등)으로 업무 부품에 노출한다. 임베딩 모델도 로컬로 두어 B3 검색까지 망 안에서 끝낸다(§5 E1 폐쇄망 행 '로컬 임베딩'). 모델 선정은 C9 평가 세트로 상용·온프레미스 후보를 같은 조건에서 비교해 정한다. 폐쇄망에서 C7 경로는 수동 전환·다른 로컬 모델로 제한되므로 둘 이상의 로컬 모델이나 수동 절차를 미리 둔다. 모델·패키지 반입은 S11 인제스천 검증을 거친다.

이럴 때 쓴다

  • E1이 폐쇄망·행정망이거나 문서가 PC 밖으로 나가면 안 될 때
  • E5가 S 이상인데 내부망 프록시(A2.4)를 쓸 수 없을 때
  • 현장 폐쇄망 서버에서 추론해야 하는 유형 3
  • C7의 대체 경로로 로컬 모델을 둘 때

이럴 때는 쓰지 않는다

  • 추론 인프라·운영 인력을 확보할 수 없을 때
  • 현장 기기 자체에서 돌아야 하면 A5(엣지 런타임)
  • 모델을 재학습했으면 A2.3

얻는 것

  • 데이터가 기관 밖으로 나가지 않음
  • 호출 비용이 고정비로 바뀜
  • 폐쇄망에서도 LLM 사용 가능
  • C7의 대체 경로 후보

점검표

  • 추론·임베딩 어디에서도 데이터가 망 밖으로 나가지 않는가
  • 모델 선정 근거(평가 세트 비교)가 남아 있는가
  • 반입한 모델·패키지의 무결성 검사 기록이 있는가
  • 대체 로컬 모델 또는 수동 전환 절차가 있는가

구조 — 참여 부품

  • A2 서빙 계층 — 로컬 모델을 업무 부품에 노출
  • 오픈웨이트 모델·로컬 임베딩 — 기관 안에서 추론·색인
  • GPU 서버 또는 워크스테이션 — 추론 인프라
  • S11 인제스천·공급망 검증 — 폐쇄망 반입 모델·패키지 검사

변형

  • 기관 서버형: vLLM 등으로 기관 GPU 서버에서 다수 이용자에게 서빙한다.
  • 로컬 PC·워크스테이션형: Ollama·LM Studio로 개인 PC나 단일 워크스테이션에서 돌린다(온나라 sAIde).
  • 범정부 공통기반 내부망 설치형: 국산 독자모델·오픈웨이트를 공통기반 내부망에 직접 설치해 여러 부처에 제공한다(PAX 행정안전부 사례).

참조 구현 예

  • PAX 58420e002644542c — 행정안전부, 엑사원·Gemma4를 범정부 공통기반 내부망에 설치해 약 8천 명에 롤아웃(§13 A2.2)
  • PAX 01963ce2b093182c — 양산시, 저사양 온프레미스 로컬 LLM으로 보고서 작성 전 과정을 폐쇄망 안에서 처리(§13 A2.2)
  • PAX 온나라 sAIde — 온나라 사이드패널 + 로컬 Ollama 요약(§9)

관련 부품

C7 대체 경로 — 상용 API 장애 시 전환 대상 · A8 짝 — 폐쇄망 로컬 MCP 호스트 · S11 선행 — 폐쇄망 반입 검증 · A5 대안 — 현장 기기 추론 · C9 선행 — 모델 선정 근거

참고 자료

Heiland '업무 로직과 ML 모델 분리' · GoF Strategy

이 부품과 이어지는 가이드라인

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

C1 검토 큐 운영 컴포넌트

AI 산출물이 다음 단계로 넘어가기 전에 사람이 맞고 틀림을 확인·수정·확정하는 대기열을 두어, 오류가 업무 결과로 흘러가지 않게 한다.

PAX 사례 46건이 이 부품을 쓴다

맥락

AI 산출물이 공문·처분·대민 안내·기록으로 이어지는 모든 B 부품(B1 코파일럿, B4 인식 파이프라인, B2 예측기, B7 콘텐츠 생성기 등). 이용자 본인이 최종 확정자인 자기서비스형 도구도 포함한다(R16).

맞서는 힘(긴장)

  • 정확성·책임성 vs 처리 속도(전건 검토는 자동화 이득을 깎는다)
  • 검토자의 숙련 vs 자동화 편향(AI 결과를 그대로 승인하는 경향)
  • 전건 검토의 안전 vs 위험도별 분기(C2)로 가야 하는 효율 압력

해법

AI 산출물에 신뢰도·근거를 붙여 검토 대기열에 올리고, 검토자가 승인·수정·반려 중 하나를 고르게 한다. 수정·반려 내역은 C4 감사 로그에 남겨 수정률을 집계하고 C6 환류의 입력으로 쓴다. 검토 화면은 원문 위치·근거를 함께 보여 줘 확인 비용을 줄인다. 전건 검토로 시작하되, 수정률 실측이 쌓이면 C2 위험도 라우터로 저위험 건을 자동 종결하는 단계로 옮긴다.

이럴 때 쓴다

  • AI 산출물이 공문·처분·대민 안내로 그대로 이어질 때
  • E4가 P1 이상이고 되돌리는 데 사람 시간이 많이 드는 조치가 있을 때
  • 서비스 유형 ② 접수·심사, ④ 기안 코파일럿, ⑥ 콘텐츠 제작, ⑦ 대조·점검, ⑩ 위험 예측, ⑪ 추천·매칭, ⑫ 개발 코파일럿처럼 C1이 필수인 유형

이럴 때는 쓰지 않는다

  • B0 결정적 도구처럼 런타임 AI 산출물이 없을 때
  • 쉽게 되돌릴 수 있고 저위험인 조치를 이미 C2로 자동 종결하도록 실측 근거를 갖춘 구간(전건 검토를 영원히 남기지 않는다)

얻는 것

  • 오류가 업무 결과로 나가기 전에 차단
  • 책임 소재가 명확해짐
  • 수정 내역이 C4 지표와 C6 환류의 원천 데이터가 됨

점검표

  • AI 산출물이 확정 전 상태로 머무는 지점이 명시되어 있는가
  • 검토자와 승인·수정·반려 선택지가 정해져 있는가
  • 검토 결정과 수정 내역이 로그로 남는가
  • 실증 기간의 검토·수정 건수가 기록되어 있는가
  • 전건 검토에서 분기로 옮길 조건이 정해져 있는가

구조 — 참여 부품

  • 검토 대기열 — AI 산출물을 확정 전 상태로 보관하고 검토자에게 배정
  • 검토자(담당자 또는 이용자 본인) — 승인·수정·반려를 결정하는 최종 책임자
  • F2 편집 가능한 출력 — 검토자가 산출물을 직접 고치는 화면
  • C4 감사 로그·지표 — 검토 결정과 수정 내역을 적재해 수정률로 집계

변형

  • 전건 검토형: 모든 AI 산출물을 담당자가 확인·확정
  • 예외 검수형: 정상 건은 일괄 승인하고 저신뢰 항목만 개별 검수하는 검수 UI
  • 파이프라인 내장 관문형: 멀티에이전트·다단계 파이프라인의 각 관문에 승인·보완·재작성 선택지를 둠
  • 자기서비스형: 이용자 본인이 최종 확정자인 HITL. 실제 운영 중이면 C1 present(R16)
  • 심의 게이트: 팩트체크·법무·윤리처럼 제3자 전문가가 수행하는 승인 게이트

참조 구현 예

  • PAX 9dc1a7081bc869b1 — 광진구 — 담당자·팀장 최종 판단 책임 등 4대 관리 원칙 명문화

관련 부품

C2 다음 단계 — 전건 검토에서 위험도 분기로 승급 · C1.2 변형 — 제3자 전문가 심의 게이트 · F2 이용자 쪽 대응 — 검토자가 직접 고치는 화면 · F6 이용자 쪽 대응 — 에이전트 행동 실행 전 확인 · C4 기록처 — 검토 결정·수정 내역 · C6 후속 — 수정 내역이 환류의 입력

참고 자료

Google ADK HITL · Gulli ch.13 Human-in-the-Loop · Towards AI 동기·비동기 HITL · Chain of Responsibility

이 부품과 이어지는 가이드라인

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

C9 평가 세트·회귀시험 운영 컴포넌트

배포 전에 업무 맥락의 질문·정답·채점 기준을 세트로 만들어, 프롬프트·모델·설정의 모든 변경을 같은 자로 재고 회귀를 잡는다.

PAX 사례 15건이 이 부품을 쓴다

맥락

모델·프롬프트·검색 설정이 바뀌는 모든 AI 부품. 특히 B3 지식 접지(검색 품질은 평가 없이 개선 불가), E2 상용 API(예고 없는 모델 업데이트), 유형 ①④⑤a⑦⑩⑫.

맞서는 힘(긴장)

  • 평가 세트 구축 비용 vs 변경의 안전
  • 사람 라벨의 정확성 vs LLM 심판의 규모
  • 세트 고정(비교 가능성) vs 업무 변화 반영(세트 갱신)

해법

RAG를 붙이거나 모델을 고르기 전에 업무 질문·정답·채점 기준(사람 라벨 + LLM 심판)을 세트로 만든다. 프롬프트·모델·설정 조합을 릴리스처럼 버전 관리하고, 모든 변경마다 같은 세트로 재평가해 점수표와 회귀 실패 목록을 남긴다. 기준을 넘지 못하면 배포하지 않는 게이트를 둔다. 학습 데이터와 평가 세트는 누수 없이 분리한다.

이럴 때 쓴다

  • RAG·튜닝을 붙이기 전(§7.1 4단계, §7.2 진행 경로 2단계)
  • E2 상용 API로 모델 업데이트가 예고 없이 올 때(필수)
  • 폐쇄망 로컬 모델의 교체 시점
  • C6 환류·C7 모델 교체를 하려 할 때(선행 조건)

이럴 때는 쓰지 않는다

  • B0 결정적 도구처럼 비결정적 출력이 없을 때
  • 유형 5a 중 순수 시각화(R10: 면제)

얻는 것

  • 변경의 효과와 회귀를 숫자로 확인
  • 모델 교체·재학습의 안전
  • 모델 선정 근거 확보

점검표

  • 업무 질문·정답·채점 기준 세트가 있는가
  • 프롬프트·모델·설정이 버전 관리되는가
  • 변경마다 재평가한 기록이 있는가
  • 기준 미달 시 배포를 막는 절차가 있는가

구조 — 참여 부품

  • A1 데이터 자산 서비스 — 정답의 출처
  • A2 모델 서빙 계층 — 평가 대상 모델의 버전 고정
  • 채점기 — 사람 라벨과 LLM 심판으로 점수 산출
  • 배포 게이트 — 기준 미달 변경의 배포 차단
  • C4 감사 로그·지표 — 운영 지표와 평가 점수 대조

변형

  • 모델 선정 블라인드 비교: 여러 모델을 동일 조건·평가 의도 은닉으로 채점해 운영 모델 선별
  • 배포 전 회귀검증 게이트: 응답 로직 변경 시 기준 질의의 기대응답 대조를 통과해야 배포
  • 재학습 모델 비교 게이트: 재학습 시 이전 버전 대비 성능을 비교해 기준 상회 모델만 배포
  • 공인시험 기반 검증 세트: 검출 기준을 명시한 검증 세트와 공인시험

참조 구현 예

  • PAX MOPAN — 기각한 시도 15건의 실패 기전을 기술 보고서로 남김

관련 부품

C6 후속 — 환류의 재검증 단계 · C7 후속 — 모델 교체(Blue-Green) 전 회귀시험 · B3 끼울 자리 — 검색 품질 개선의 전제 · A1 의존 — 정답 출처 · A2 의존 — 모델 버전 고정

참고 자료

Fowler Evals · InfoQ AI-Ops · Prompt-Model-Config Versioning · Gulli ch.19 Evaluation & Monitoring

이 부품과 이어지는 가이드라인

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

S9 임시 샌드박스 보안 패턴

에이전트가 만든 코드·명령을 일회용 격리 환경(컨테이너·microVM·제한 런타임)에서 실행하고 끝나면 파기해, 호스트·행정망은 결과값만 받게 한다.

PAX 사례 1건이 이 부품을 쓴다

맥락

개발 코파일럿(유형 ⑫), 코드 후 실행(S5), 도구 루프(B′7), AI 코딩 도구로 기관 인력이 직접 만든 스크립트(A7), 제출 파일의 OCR·파싱 실행, 매크로가 있을 수 있는 부서별 제출 파일 취합(유형 ⑧). 카탈로그 등재 상태는 후보(PAX 557건 중 1건).

맞서는 힘(긴장)

  • 격리 강도 vs 실행 환경 구축·유지 비용
  • 일회용 파기의 안전성 vs 상태 유지가 필요한 작업
  • 행정망 반입 제약 vs 컨테이너·microVM 런타임 도입

해법

코드·명령을 실행할 때마다 컨테이너·microVM·제한 런타임 중 하나로 일회용 격리 환경을 띄우고, 네트워크·파일 접근을 최소로 연다. 실행이 끝나면 결과값과 로그만 호스트로 넘기고 환경을 파기한다. 실행 전 정적 검사(AI 생성 코드 보안 린터)를 붙이면 샌드박스의 절반을 앞단에서 채운다. 격리 강도에 비례해 보호 수준이 정해지므로 행정망 자격 증명은 샌드박스 안에 두지 않는다.

이럴 때 쓴다

  • 개발 코파일럿(유형 ⑫)의 필수 부품(R7)
  • 취합·변환 자동화(유형 ⑧)의 필수(S11과 함께)
  • S5 코드 후 실행을 쓸 때
  • 신뢰 불가 입력 + P2 이상에서 B6 오케스트레이터(§5 매트릭스)
  • 제출 서류 OCR 실행(유형 ② 권장)·엣지 모델 격리(유형 ③ 권장)·코드 점검(유형 ⑦ 권장)

이럴 때는 쓰지 않는다

  • 코드·명령 실행이 없는 조회·생성 도구
  • 실행 대상이 기관이 검수·고정한 결정적 코드뿐일 때
  • 상태를 장시간 유지해야 하는 작업에 일회용 파기를 그대로 적용할 때 — 상태 저장 경로를 따로 설계

얻는 것

  • 원격 코드 실행 피해를 격리 환경 안으로 제한
  • 권한 상승·횡적 이동 축소
  • AI 코딩 산출물을 행정망에서 안전하게 시험

점검표

  • AI 생성 코드가 호스트에서 직접 실행되는 경로가 없는가
  • 실행 후 환경이 파기되는가
  • 샌드박스 안에 행정망 자격 증명이 없는가
  • 네트워크·파일 접근이 기본 차단인가

구조 — 참여 부품

  • 정적 검사기 — 실행 전 AI 생성 코드의 위험 패턴 점검
  • 격리 런타임 — 컨테이너·microVM·제한 런타임에서 일회 실행
  • S5 계획 후 실행·코드 후 실행 — 실행할 코드를 사전에 고정
  • S10 결정적 재생 — 실행 흔적 기록

변형

  • 컨테이너형: 실행마다 컨테이너를 띄우고 파기(Service per Container)
  • microVM·서버리스형: 경량 가상머신·서버리스 함수로 강한 격리
  • 제한 런타임형: GraalVM 같은 언어 런타임 샌드박스로 생성 코드·도구 실행 격리
  • 정적 검사 결합형: AI 생성 코드 보안 린터(vibecode-checker 유형)를 실행 전에 둠

참조 구현 예

  • PAX edf9a8632ff74a99 — GraalVM 샌드박스 기반 방어 심층 구조로 생성 코드·도구 실행 격리(§13)
  • PAX vibecode-checker — AI 생성 코드 보안 린터. 카드가 이 부품의 정적 검사 절반으로 지목했다

관련 부품

S5 짝 — 코드 후 실행의 실행 자리 · S11 짝 — 유형 ⑧ 필수 조합 S11 + S9 · A7 끼울 자리 — AI 코딩 도구가 만든 스크립트 · B′7 끼울 자리 — 도구 루프의 실행 · S10 기록처 — 실행 흔적

참고 자료

Vinodhkumar M AI 보안 패턴: Ephemeral Sandbox · Beurer-Kellner 외(2025) 부록: 샌드박스 실행 · Service per Container · Serverless

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

F2 편집 가능한 출력 상호작용 패턴

생성물을 이용자가 직접 고쳐 확정하게 한다. 통제감의 실체이며, 수정 내역은 C4 지표와 C6 환류의 입력이 된다.

PAX 사례 50건이 이 부품을 쓴다

맥락

B1 코파일럿(필수 면), B7 콘텐츠 생성기, B4 인식 결과 확정. 유형 ② 접수·심사, ④ 기안 코파일럿, ⑫ 개발 코파일럿, 5a-agg(R19), 2b 시민 제출 준비(R20).

맞서는 힘(긴장)

  • 편집 자유도 vs 원본 추적(무엇을 고쳤는지)
  • 편집 가능한 공공 서식(HWPX 등) 출력 vs 구현 비용

해법

생성물을 이용자가 바로 고칠 수 있는 형식(편집 화면, HWPX·PPTX 등 네이티브 파일)으로 내고, 이용자가 고친 뒤 확정하게 한다. AI 원안과 수정본의 차이를 기록해 C4 수정률과 C6 환류 입력으로 쓴다. 문서 형식 출력은 A10 어댑터가 받친다.

이럴 때 쓴다

  • B1 코파일럿 전반(필수 면)
  • 대민 서비스 D1~D7(F1·F2·F7이 최소 요건)
  • 유형 ②④⑫, 5a-agg, 2b처럼 F2가 필수인 유형

이럴 때는 쓰지 않는다

  • 이용자가 결과를 수정하면 안 되는 판정 결과(판정은 C1 확정 절차로 다룸)
  • 조회 결과만 보여 주는 P0 도구

얻는 것

  • 이용자 통제감
  • 수정 내역이 품질 지표·환류 데이터가 됨
  • 공공 서식 재작업 감소

점검표

  • 산출물을 이용자가 직접 고칠 수 있는가
  • 원안과 수정본 차이가 기록되는가
  • 공공 서식 형식으로 편집 가능한가

구조 — 참여 부품

  • 편집 화면·네이티브 파일 — 이용자가 직접 고치는 면
  • A10 문서 형식 어댑터 — HWPX·PPTX 등 편집 가능한 형식 출력
  • C4 감사 로그·지표 — 수정 내역 기록

변형

  • 화면 내 편집: 생성 결과를 화면에서 바로 수정·확정
  • 네이티브 파일 출력: PPTX·HWPX·피그마 등 이어서 고칠 수 있는 형식으로 산출

참조 구현 예

  • PAX cb0abc29707cc710 — PPTX 네이티브·피그마(로컬 MCP)·HTML 세 형식으로 수정 가능한 산출물 출력

관련 부품

C1 짝 — 확정 절차 · B1 끼울 자리 — 코파일럿의 필수 면 · A10 의존 — 편집 가능한 문서 형식 출력 · C6 후속 — 수정 내역이 환류 입력

참고 자료

InfoQ UX Editable Output

이 부품과 이어지는 가이드라인

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

X11 처음부터 멀티에이전트 안티패턴

하위 작업이 분리되지 않는데 에이전트를 여럿 두어 조정 비용만 늘리는 함정이다. 단일 에이전트로 되돌리면 더 잘 되는 경우가 많다.

맥락

B6 오케스트레이터를 설계하거나 B′3 병렬·B′4 계층 분해를 도입하려는 과제, 특히 단일 에이전트 구성을 시도해 본 기록이 없는 과제.

맞서는 힘(긴장)

  • 역할 분리의 설계 명료함 vs 에이전트 간 조정 비용
  • 병렬 처리의 지연 단축 vs 결과 통합의 복잡도
  • 기술적 인상 vs 단순한 구조의 품질·비용

해법

B′ 원형 선택 규칙대로 단일 에이전트(B′1 순차, B′7 ReAct 도구 루프)에서 시작한다. 하위 작업이 진짜로 분리되거나, 병렬이 지연을 의미 있게 줄이거나, 컨텍스트 창이 부족할 때만 B′3 병렬·B′4 계층 분해로 승급한다. 승급 판단은 C9 평가 세트로 단일 구성과 비교해 내린다. 에이전트끼리 충돌·중복이 관측되면 B′4 감독자 계층이나 B′2 라우터로 정리하거나 단일 에이전트로 후퇴한다. B6 태그는 R2 요건(복수 LLM 역할 + 도구 호출 루프 + AI가 계획·도구를 선택)을 만족할 때만 붙인다.

이럴 때 쓴다

  • 에이전트가 여럿인데 하위 작업의 입력·출력이 서로 얽혀 독립적으로 돌지 않는다
  • 단일 에이전트 구성과 비교한 기록이 없다
  • 에이전트끼리 충돌·중복·재작업이 관측된다
  • 호출 비용·지연이 에이전트 수에 비례해 늘었는데 품질 개선 근거가 없다

이럴 때는 쓰지 않는다

  • 하위 작업이 진짜로 분리되고(서로 다른 데이터·도구), 병렬이 지연을 줄이거나 컨텍스트가 부족해 승급한 경우
  • R2 요건을 만족하는 B6로, 단일 구성보다 나음이 C9로 확인된 경우
  • 고정 순서 파이프라인을 B′1으로 정직하게 서술한 경우

얻는 것

  • 구조도가 명료하고 기술적으로 인상적이다
  • 역할별로 프롬프트를 나눠 관리하기 쉬워 보인다

점검표

  • 하위 작업이 서로 다른 데이터·도구로 독립적으로 도는가
  • 단일 에이전트 구성과 C9로 비교한 기록이 있는가
  • 승급 사유가 문서에 적혀 있는가
  • 에이전트 사이 충돌을 정리하는 감독자·라우터가 있는가

구조 — 참여 부품

  • B′1 순차 파이프라인 — 시작점이 되는 단일 흐름
  • B′7 ReAct 도구 루프 — 단일 에이전트 도구 사용의 기본형
  • B′4 계층 분해·감독자 — 하위 작업이 분리될 때만 승급하는 형태
  • C9 평가 세트·회귀시험 — 단일 vs 멀티 구성을 같은 자로 비교

변형

  • 페르소나 분할형: 같은 문서를 읽는 작업을 역할 이름만 다른 에이전트 여럿에 나눔
  • 고정 파이프라인 위장형: 실제로는 고정 순서 단계인데 에이전트 N개로 서술(R2상 B6 아님)
  • 무감독 협업형: 감독자·라우터 없이 에이전트끼리 대화하며 결과를 합침

관련 부품

B′7 대체 — 단일 에이전트 도구 루프에서 시작 · B′1 대체 — 고정 순서면 순차 파이프라인으로 · B′4 승급 목표 — 하위 작업이 분리될 때만 · B′2 정리 수단 — 충돌·중복을 라우터로 분기 · C9 판단 근거 — 단일 vs 멀티 비교

참고 자료

Towards AI '단일 에이전트에서 시작해 승급' · Google ADK Hierarchical·Coordinator · Gulli ch.7 Multi-Agent

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

X13 도구 출력이 지시가 되는 에이전트 안티패턴

검색 결과·첨부·API 응답을 읽은 모델이 그 안의 문장을 새 명령으로 받아 도구를 부르는 구조를, 탐지 필터 하나로 지키려는 함정이다.

맥락

E4가 P2 이상(시스템 쓰기·처분 보조)이면서 민원 입력·제출 서류·웹 문서·타 기관 API 응답 같은 신뢰 불가 입력을 읽는 에이전트. 특히 B6·5b 데이터 에이전트.

맞서는 힘(긴장)

  • 범용 에이전트의 유연성 vs 신뢰 불가 입력 뒤의 행동 제약
  • 단일 LLM 구조의 단순함 vs 격리·계획 고정의 설계 비용
  • 탐지 필터의 손쉬움 vs 증명 가능한 보증

해법

과제의 AI가 읽는 입력 중 기관 밖에서 작성된 것을 untrusted_inputs로 나열하고, §4.2 신뢰 불가 입력 규칙대로 S4 행동 선택기(미리 정한 행동 중 선택만, 결과가 LLM으로 돌아가지 않음), S5 계획 후 실행(외부 데이터를 읽기 전에 도구 호출 계획을 고정), S6 격리 LLM(도구 있는 LLM은 외부 데이터를 읽지 않고, 읽는 LLM은 도구가 없음) 중 하나를 갖춘다. S3 컨텍스트 방화벽과 S8 독립 검증기는 보조로 붙이되 S8만으로는 규칙을 충족하지 못한다. C8 승인 게이트도 신뢰 불가 입력 규칙의 대체 통제로 인정되지 않는다(R6). 그 전 단계에서는 E4를 P0~P1 읽기·산출물 범위에 묶어 두는 것이 곧 보안이다.

이럴 때 쓴다

  • E4가 P2 이상이고 untrusted_inputs가 비어 있지 않은데 S4·S5·S6이 모두 없다(신뢰 불가 입력 규칙 위반)
  • 외부 문서를 읽는 LLM이 같은 컨텍스트에서 쓰기 도구를 호출할 수 있다
  • 인젝션 대책이 탐지 필터·프롬프트 경고문뿐이다
  • 읽은 텍스트 중 어떤 것이 어떤 도구를 부를 수 있는지 답하지 못한다

이럴 때는 쓰지 않는다

  • E4가 P0~P1로 읽기·산출물 생성에만 묶여 도구 호출·시스템 쓰기가 없는 경우(S4·S5·S6 판정 전제 불충족, R6)
  • S4·S5·S6 중 하나가 구조적으로 갖춰진 경우(보안 목적 서술이 없어도 구조가 일치하면 충족)
  • AI가 읽는 입력이 모두 기관 내부에서 작성된 경우

얻는 것

  • 단일 LLM 범용 에이전트로 구조가 단순하다
  • 새 입력·새 도구를 자유롭게 붙인다

점검표

  • untrusted_inputs가 나열되어 있는가
  • 신뢰 불가 입력을 읽은 LLM이 쓰기 도구를 직접 부를 수 없는가
  • S4·S5·S6 중 하나가 구조로 구현되어 있는가
  • S8 탐지를 유일한 방어로 두지 않았는가

구조 — 참여 부품

  • S4 행동 선택기 — LLM이 정해진 행동 중 선택만 하게 제약
  • S5 계획 후 실행·코드 후 실행 — 외부 데이터를 읽기 전에 도구 계획 고정
  • S6 격리 LLM·맵리듀스 — 읽는 LLM과 도구 있는 LLM을 분리
  • S8 독립 검증기·이중 심판 — 보조 탐지. 단독으로는 보증이 아님

변형

  • 문서 속 지시: 첨부·제출 서류 안의 문장대로 에이전트가 도구를 호출
  • API 응답 오염: 타 기관 API·웹 검색 결과에 섞인 지시가 후속 행동을 바꿈
  • 탐지 단독 방어: 인젝션 탐지 필터(S8) 하나만 두고 구조적 제약이 없음

관련 부품

S6 대체 — 읽는 LLM과 도구 있는 LLM 격리 · S5 대체 — 외부 데이터 읽기 전 계획 고정 · S4 대체 — 정해진 행동 중 선택만 · S3 보조 — 신뢰 구역 분리 표기 · S8 보조 — 탐지(단독으로는 보증 아님) · S10 기록처 — 사고 재현

참고 자료

Beurer-Kellner 외(2025) 지도 원칙 '신뢰 불가 입력을 읽은 뒤에는 그 입력이 결과적 행동을 촉발할 수 없도록 제약' · Beurer-Kellner #1 Action-Selector, #2·#5 Plan-Then-Execute, #3·#4 Dual LLM

이 부품과 이어지는 가이드라인

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

X14 재생할 수 없는 사고 안티패턴

잘못된 처분이 나갔는데 그때의 프롬프트·검색·도구 호출 순서를 아무도 복원하지 못하는 함정이다. 지표는 있는데 기록이 없다.

맥락

E4가 P2 이상, 특히 P3 처분 보조(지급·승인·반려 결과에 직결)에 관여하는 AI 부품. 모델·프롬프트가 자주 바뀌는 상용 API 과제.

맞서는 힘(긴장)

  • 집계 지표의 손쉬움 vs 건별 재생 기록의 저장·보호 비용
  • 개인정보 최소 보관 vs 사고 재현 가능성
  • 빠른 모델·프롬프트 변경 vs 버전별 재현

해법

S10 결정적 재생으로 프롬프트·검색 결과·도구 호출·정책 결정·실행 흔적을 시각·주체·컨텍스트 해시와 함께 순서대로 기록하고, 필요하면 변조 방지 서명을 붙인다. 기록은 S1 단일 진입점에서 시작해 C4와 같은 파이프라인으로 적재하되, C4가 '얼마나'를 세고 S10은 '정확히 무엇이 일어났나'를 되돌리게 역할을 나눈다. 모델·프롬프트·설정 조합을 C9로 버전 고정해 그 시점의 구성을 재현할 수 있게 하고, 재생 기록을 C3 롤백·이의제기의 근거로 쓴다. 개인정보는 C5 비식별과 E5 등급에 맞춘 보관 기간으로 다룬다.

이럴 때 쓴다

  • 처리 건수·정확도 같은 집계 지표는 있으나 건별 프롬프트·검색·도구 호출 기록이 없다
  • '이 답의 근거 문서와 도구 호출 순서를 지금 볼 수 있는가'에 답하지 못한다
  • P3 처분 보조에 관여하면서 재생 기록이 없다
  • 모델·프롬프트 버전을 기록하지 않는다

이럴 때는 쓰지 않는다

  • B0 결정적 도구처럼 같은 입력이면 같은 출력이 나와 재생이 자명한 경우
  • E4가 P0~P1이고 산출물을 사람이 전건 확정해 AI 출력이 처분에 직접 닿지 않는 경우(S10 필요도는 낮지만 C4는 여전히 필요)
  • S10 수준의 건별 추적이 구현된 경우

얻는 것

  • 저장 비용과 개인정보 보관 부담이 적다
  • 집계 지표만으로 운영 보고가 가능하다

점검표

  • 임의의 과거 건 하나를 골라 프롬프트·검색·도구 호출 순서를 복원할 수 있는가
  • 기록에 당시 모델·프롬프트 버전이 포함되는가
  • 기록의 변조 방지 장치가 있는가
  • 이의제기 처리에 재생 기록이 쓰이는가

구조 — 참여 부품

  • S10 결정적 재생 — 빠진 부품. 사고를 그대로 재현
  • C4 감사 로그·지표 — 집계 지표는 있으나 재생에는 부족
  • S1 AI 게이트웨이·단일 진입점 — 모든 호출의 기록 시작점
  • C3 상태 머신·롤백 — 재생 기록을 근거로 되돌림·이의 처리

변형

  • 지표만 있는 형: 대시보드 집계는 있으나 건별 입력·호출 기록이 없음
  • 최종 출력만 저장형: 산출물만 저장하고 프롬프트·검색·도구 호출 순서는 버림
  • 버전 미고정형: 기록은 있으나 당시 모델·프롬프트 버전을 몰라 재현 불가

관련 부품

S10 대체 — 건별 결정적 재생 기록 · C4 짝 — 같은 파이프라인의 집계 지표 · S1 끼울 자리 — 기록이 시작되는 단일 진입점 · C3 이용처 — 롤백·이의제기의 근거 · C9 선행 — 모델·프롬프트 버전 고정

참고 자료

DistriNet 행위 기록(부인 방지) · Distributed Tracing · Beurer-Kellner Log Entity Actions

이 부품과 이어지는 가이드라인

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

X7 도구 설명 ≠ 실제 권한 안티패턴

MCP 도구 설명은 '조회'인데 코드는 쓰기·실행 권한을 가져, 설명만 믿고 도구를 부르는 에이전트가 의도하지 않은 변경을 일으키는 함정이다.

맥락

E3 MCP·CLI 설정 환경에서 A8 MCP 서버·호스트를 만들거나 가져다 쓰는 과제. 특히 업무 시스템 MCP(쓰기, P2)와 공공데이터 MCP(읽기, P0)가 한 호스트에 함께 연결된 경우.

맞서는 힘(긴장)

  • 빠른 MCP 래핑 vs 도구별 권한 분리
  • 도구 하나로 묶는 편의 vs 읽기/쓰기 분리의 운영 부담
  • 에이전트 자율 호출 vs 실행 전 승인

해법

A8의 각 도구에 실제 권한 수준(P0~P4)을 설명과 함께 명시하고, C8 권한 경계로 읽기 전용 도구와 쓰기 도구를 서로 다른 서버·인증으로 분리한다. 쓰기·실행 도구는 도구별 실행 승인과 호출 상한, 킬스위치를 둔다. 반입하는 MCP 서버는 S11 인제스천·공급망 검증에서 PAX 6축(권한 표면·비밀·공급망·위생·인젝션·데이터 흐름)을 통과해야 활성화한다. 사람에게는 F6 에이전트 행동 검토·확인으로 실행 전 무엇을 할지 보여 주고, 승인·실패는 C4에 남긴다.

이럴 때 쓴다

  • MCP 도구 설명과 실제 권한(쓰기·삭제·발송)이 다르다
  • 읽기와 쓰기 도구가 같은 서버·같은 인증 토큰을 쓴다
  • 도구별 권한 수준·실행 승인이 문서에 없다
  • 6축 검증에서 권한 표면이 '주의'로 나왔다

이럴 때는 쓰지 않는다

  • 읽기 전용 MCP로 설계되어 쓰기 기능이 배제된 경우
  • 쓰기 도구가 있지만 설명에 부수 효과가 명시되고 C8 실행 승인이 있는 경우
  • MCP가 아닌 결정적 스크립트로 권한이 코드에 고정된 경우

얻는 것

  • 기존 API를 빠르게 에이전트 도구로 만든다
  • 도구 수가 적어 관리가 쉬워 보인다

점검표

  • 모든 도구의 설명에 실제 권한과 부수 효과가 적혀 있는가
  • 읽기와 쓰기 도구가 서로 다른 인증을 쓰는가
  • 쓰기 도구에 실행 전 승인이 있는가
  • 반입 MCP가 6축 검증을 통과했는가

구조 — 참여 부품

  • A8 MCP 서버·호스트 — 도구 설명과 실제 권한이 일치해야 하는 곳
  • C8 권한 경계·킬스위치 — 읽기/쓰기 분리, 도구별 승인
  • S11 인제스천·공급망 검증 — 반입 시 6축 검증
  • F6 에이전트 행동 검토·확인 — 실행 전 사람에게 행동을 보여 줌

변형

  • API 통째 래핑: 기존 API 클라이언트를 감싸 조회·수정 함수가 같은 도구·인증으로 노출
  • 과대 인증: 조회 도구가 쓰기 권한 토큰으로 실행됨
  • 설명 누락: 도구 설명에 부수 효과(삭제·발송)가 적혀 있지 않음

관련 부품

C8 대체 — 읽기/쓰기 분리와 도구별 실행 승인 · A8 발생 자리 — 도구 설명과 권한이 일치해야 하는 곳 · S11 선행 — 반입 시 6축 검증 · F6 이용자 쪽 대응 — 실행 전 행동 확인 · X13 이웃 안티패턴 — 권한 표면이 넓을수록 인젝션 피해가 커짐

참고 자료

PAX MCP 6축 검증(권한 표면·비밀·공급망·위생·인젝션·데이터 흐름) · Microservice Access Token

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

X8 MCP 서버 개수 세기 안티패턴

MCP 서버를 몇 개 만들었는지가 성과가 되고, 실제 업무에서 호출되는지·흐름이 바뀌었는지는 아무도 묻지 않는 함정이다.

맥락

공공데이터·업무 시스템을 MCP로 감싸는 과제, MCP 서버를 사례 단위로 등록하는 커뮤니티 아카이브, 'MCP N종 구축'을 성과 지표로 둔 과제.

맞서는 힘(긴장)

  • 보고하기 쉬운 개수 vs 측정하기 어려운 업무 전환
  • 서버 제공자 책임 vs 호스트·업무 쪽 활용 책임
  • 빠른 확장 vs 서버마다의 검증·유지보수

해법

서버마다 그것을 호출하는 B 업무 컴포넌트와 업무 산출물을 연결해 '어느 업무의 어떤 산출물에 쓰이는가'를 적는다. C4 감사 로그·지표로 호출 수·호출 주체·업무 건을 집계하고, transition.stage와 파급력 척도(M1~M5)로 전환 경로를 추적한다(PAX: 도구 수보다 전환 경로를 추적). R18대로 서버 제공자 사례(5b-server)와 호스트 통합 사례(5b-host)를 나눠 서버 쪽은 A8·S11·문서화된 스키마를, 호스트 쪽은 C4·F1·S5|S6을 갖춘다. 호출되지 않는 서버는 레지스트리에서 정리한다.

이럴 때 쓴다

  • 성과가 MCP 서버·도구 개수로 보고된다
  • 호출 수·호출 주체·업무 건 지표가 없다
  • 서버를 호출하는 업무 산출물이 서술되지 않는다
  • 흐름이 바뀌었다는 서술 없이 'MCP 기반 전환'을 주장한다

이럴 때는 쓰지 않는다

  • 단일 MCP 서버를 만들어 A8·S11·문서화된 스키마를 갖춘 5b-server 사례(R18). 서버 제공 자체가 사례 단위이므로 개수를 성과로 주장하지 않으면 함정이 아니다
  • MCP 서버 여러 개를 호스트 업무에 연결하고 호출 지표를 C4로 집계한 경우

얻는 것

  • 성과를 개수로 명확히 보고할 수 있다
  • 공공 API를 빠르게 에이전트 도구로 공개한다

점검표

  • 서버마다 호출하는 업무 산출물이 적혀 있는가
  • 서버별 월 호출 수와 호출 주체를 말할 수 있는가
  • 호출되지 않는 서버를 정리하는 절차가 있는가
  • 성과 지표가 개수가 아니라 업무 전환으로 잡혀 있는가

구조 — 참여 부품

  • A8 MCP 서버·호스트 — 개수로 세어지는 도구 인터페이스
  • C4 감사 로그·지표 — 호출 수·호출 주체·업무 건을 집계하는 빠진 부품
  • B 업무 컴포넌트 — 서버를 실제로 호출해 산출물을 만드는 쪽
  • S11 인제스천·공급망 검증 — 서버 제공자 쪽 필수 검증(R18)

변형

  • 개수 성과형: 'MCP N종 구축'이 과제의 주요 성과 지표
  • 호스트 없는 서버: 서버만 공개하고 어떤 호스트·업무에서 쓰이는지 기록이 없음
  • 방치 서버: 원천 API 변경 후 갱신되지 않아 호출이 실패하는 서버가 목록에 남음

관련 부품

C4 대체 — 서버별 호출 지표 · A8 발생 자리 — 개수로 세어지는 도구 인터페이스 · B6 교정 목표 — 도구를 호출해 산출물을 만드는 업무 컴포넌트 · S11 서버 제공자 필수 — 반입·공급망 검증(R18) · X1 이웃 안티패턴 — 탑재·개수를 성과로 세는 같은 뿌리

참고 자료

PAX '도구 수보다 전환 경로를 추적' · PAX 파급력 척도 M1~M5 · Microservice Service Discovery

웹북에서 전체 프로필 보기 ↗ · 패턴 성좌 디렉터리에서 보기 ↗

실무 도입 카드

필요한 것

실행환경: AI 도구 설정 · 라이선스: MIT

첫 3단계

① 스킬·GEM 파일 확보 → ② 내 AI 도구에 등록 → ③ 실제 업무 문서로 출력 품질 검증

주의사항

실사용 피드백이 미확인입니다 — 도입 전 소규모 검증을 권합니다 · 성과 수치는 출처가 확인된 것만 신뢰하세요

전이 절차(보안검토→품의→배포)는 전이 플레이북을 참고하세요.

비슷한 업무의 사례