zioinfo-mail/CLAUDE.md
DESKTOP-TKLFCPR\ython d76caea5dd feat(harness): Upstage OCR 연동 하네스 — Document AI + 7개 워크플로우
에이전트:
- upstage-ocr-dev: Document Parse/Information Extraction/QA API 엔진
- ocr-workflow-dev: 7개 워크플로우 (계약서/납품서/청구서/감사/장애/회의록/브랜드계약)

오케스트레이터: upstage-ocr-orchestrator
- Upstage API Base URL 연동
- 현대백화점 등 브랜드 계약서 스키마 포함
- 7종 내장 추출 템플릿
- 민감 정보 자동 마스킹
- multimodal.py (온프레미스) 와 보완 관계

API 가이드: references/upstage-api-guide.md
- Document Parse/Extract/QA 요청·응답 구조
- 6개 시나리오별 추출 스키마 (계약서/납품서/청구서/보고서/회의록)

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-06-02 18:24:26 +09:00

20 KiB

GUARDiA — AI 기반 레거시 인프라 자율 운영 플랫폼

Claude Code용 프로젝트 마스터 컨텍스트 파일 이 파일을 읽고 프로젝트의 전체 구조와 규칙을 파악한 뒤 작업을 시작하라.


프로젝트 비전

1,000개 이상의 다중 관공서(Multi-tenant) 레거시 인프라를 타겟으로 하는
AI 기반 통합 ChatOps 오케스트레이션 플랫폼.

  • 메신저 한 줄 명령 → sLLM 파싱 → 에이전트리스(SSH/SFTP) 배포·운영 자동화
  • 에이전트 설치 불필요 — 표준 SSH/FTP 프로토콜만 활용
  • 개발(Dev), SM 운영, PM 관리 세 역할의 워크플로우를 단일 메신저로 통합

디렉터리 구조

C:\GUARDiA\
├── CLAUDE.md                     # ← 지금 이 파일 (Claude Code 진입점)
├── docs/                         # 설계 문서 (아키텍처 명세 등)
├── workspace/                    # ← 모든 프로젝트 소스 (2026-05-31 통합)
│   ├── zioinfo-web/              # 지오정보기술 홈페이지 (Spring Boot + React)
│   ├── guardia-itsm/             # GUARDiA ITSM 웹 애플리케이션 (FastAPI)
│   ├── guardia-manager/          # GUARDiA 관리자 포털 (FastAPI + React)
│   ├── guardia-messenger/        # GUARDiA Messenger 앱 (React Native + Expo)
│   └── guardia-docs/             # 매뉴얼 및 운영 가이드 문서
├── repos/                        # 독립 Gitea 저장소 (git push 용)
│   ├── zioinfo-web/              → Gitea zio/zioinfo-web
│   ├── guardia-itsm/             → Gitea zio/guardia-itsm
│   ├── guardia-manager/          → Gitea zio/guardia-manager
│   ├── guardia-messenger/        → Gitea zio/guardia-messenger
│   └── guardia-docs/             → Gitea zio/guardia-docs
└── .claude/                      # 하네스 에이전트 + 스킬

# 이전 경로 (2026-05-31 이전)
# itsm/     → workspace/guardia-itsm/
# manager/  → workspace/guardia-manager/
# app/      → workspace/guardia-messenger/
# manual/   → workspace/guardia-docs/

workspace/guardia-itsm 구조 (GUARDiA ITSM)

workspace/guardia-itsm/
│   ├── main.py                   # FastAPI 앱 진입점 (포트 8001)
│   ├── models.py                 # SQLAlchemy ORM 모델 + Pydantic 스키마
│   ├── main.py                   # FastAPI 앱 진입점 (포트 8001)
│   ├── models.py                 # SQLAlchemy ORM 모델 + Pydantic 스키마
│   ├── database.py               # DB 연결 및 세션
│   ├── core/
│   │   ├── auth.py               # JWT 인증, RBAC
│   │   └── events.py             # SSE 실시간 이벤트 버스
│   ├── routers/
│   │   ├── tasks.py              # SR CRUD + 상태 전이
│   │   ├── approvals.py          # PM 승인 워크플로우
│   │   ├── dashboard.py          # 대시보드 통계 + SSE + 7일 추이
│   │   ├── cmdb.py               # CMDB 서버 자산 조회
│   │   ├── kb.py                 # 기술 문서 지식베이스
│   │   ├── assign.py             # 엔지니어 자동 배정
│   │   ├── ai_cmd.py             # AI 자연어 명령 인터페이스
│   │   ├── institutions.py       # 기관/사이트 + 담당자 관리 (신규)
│   │   ├── servers.py            # 서버 자산 확장 관리 (신규)
│   │   ├── shell_scripts.py      # 쉘 스크립트 라이브러리 CRUD (신규)
│   │   └── timetable.py          # 작업 타임테이블 + Excel 다운로드 (신규)
│   └── static/
│       ├── index.html            # SPA 진입점
│       ├── app.js                # 프론트엔드 로직 (64 KB)
│       └── style.css             # Nifty 다크 테마 CSS
├── skills/
│   ├── guardia-deploy/SKILL.md   # 배포 엔진 구현 스킬
│   ├── guardia-agent/SKILL.md    # Python 역방향 에이전트 스킬
│   └── guardia-messenger/SKILL.md # 메신저 연동 스킬
└── src/  (생성 예정)
    ├── api/          # FastAPI 백엔드
    ├── agent/        # Python 역방향 에이전트
    ├── llm/          # sLLM 파서 모듈
    ├── deploy/       # SSH/SFTP 배포 엔진
    └── db/           # DB 마이그레이션 & 모델

기술 스택 (변경 금지)

레이어 기술 비고
Backend API Python 3.11+ / FastAPI 비동기 WebSocket 처리
LLM 온프레미스 sLLM (Llama-3-8B / Solar-10.7B) 외부 API 호출 절대 금지
Infra 연결 paramiko (SSH/SFTP) 에이전트리스
Database PostgreSQL (CMDB + SR + Audit)
배포 자동화 쉘 스크립트 + Ansible (선택)
프론트 React.js 또는 HTML5/Vanilla JS

핵심 구현 원칙

  1. 에이전트리스: 대상 서버에 어떤 소프트웨어도 설치하지 않는다.
  2. 결정론적 파싱: sLLM은 JSON만 출력한다. 자연어 부연 설명 금지.
  3. Fail-Safe: 모든 배포는 백업 → 배포 → 헬스체크 → 롤백 시퀀스를 따른다.
  4. 감사 추적: 모든 명령과 결과는 TB_AUDIT_LOG에 기록한다.
  5. 최소 권한: 관제 전용 일반 계정(opsagent) 사용. root SSH 직접 접속 금지.
  6. 보안 우선: 서버 자격증명은 암호화 DB에만 저장. 메신저 응답에 노출 금지.

작업 시작 순서 (권장)

1단계: docs/db_schema.md 읽기 → PostgreSQL DDL 작성
2단계: docs/messenger_integration.md 읽기 → FastAPI 웹훅 서버 구현
3단계: docs/deployment_engine.md 읽기 → SSH/SFTP 배포 엔진 구현
4단계: docs/ai_orchestration.md 읽기 → sLLM 파서 & 워크플로우 연동
5단계: docs/security_governance.md 읽기 → 권한 검증 & 감사 모듈 구현
6단계: docs/site_user_management.md 읽기 → 기관/담당자/서버 자산 확장 구현
7단계: docs/shell_scripts_guide.md 읽기 → 쉘 스크립트 DB 관리 구현
8단계: docs/work_timetable.md 읽기 → 타임테이블 + Excel 다운로드 구현

Workspace 소스 분석 워크플로우

사용법:

  1. C:\GUARDiA\workspace\<프로젝트명>\ 폴더에 소스코드를 넣는다
  2. Claude에게 "workspace에 소스 넣었어" 또는 "분석해줘" 라고 말한다
  3. workspace-analyzer 스킬이 자동으로:
    • 기술스택 탐지 (Java/Python/Node.js/PHP 등)
    • 개발환경 설치 가이드 제공
    • .claude/ 하네스 자동 생성 (에이전트 + 스킬)
    • CLAUDE.md 자동 생성

트리거: workspace-analyzer 스킬을 사용하라 — "소스 분석", "workspace", "개발환경 가이드", "하네스 적용" 요청 시.


하네스: GUARDiA ITSM

목표: SR 접수·배포·코드리뷰·SLA·인시던트·RCA·보안패치 등 ITSM 운영 전반 자동화

트리거: ITSM 운영 관련 작업 요청 시 guardia-orchestrator 스킬을 사용하라. 단순 질문(API 경로, 모델 설명 등)은 직접 응답 가능.

변경 이력:

날짜 변경 내용 대상 사유
2026-05-20 초기 하네스 구성 전체 GUARDiA ITSM 30개 고도화 항목 완료
2026-05-29 G-1~G-12 확장 기능 구현 오케스트레이터, sr-manager, incident-responder, deploy-engineer 메신저봇/대량처리/자동RCA/영향분석/AI분류/패치추적/Jira/PWA/다중승인/PostgreSQL
2026-05-29 봇 명령어 확장 (/sr /status /license /bulk) messenger.py 슬래시 스타일 명령어 추가
2026-05-29 설치 스크립트 추가 setup/ Ubuntu/CentOS/RHEL/Windows 설치 자동화
2026-05-31 DR·네트워크·CSAP 3종 추가 dr-coordinator, network-guardian, csap-auditor + 스킬 3종 + 라우터 3종 DR자동화/네트워크장비관리/CSAP자동점검

하네스: CI/CD 파이프라인

목표: Jenkins + Gitea webhook + deploy_server.py 기반 5개 repo 완전 자동화 파이프라인. 빌드-테스트-배포-롤백-알림 전 단계 구축.

트리거: CI/CD 파이프라인, Jenkins 설정, Jenkinsfile 작성, 빌드 자동화, 배포 자동화 요청 시 cicd-pipeline-orchestrator 스킬을 사용하라.

현재 인프라:

  • Gitea webhook → port 9999 (deploy_server.py)
  • Jenkins port 8080 설치됨, 초기 설정 미완 ⚠️
  • 5개 독립 repo (workspace/)

변경 이력:

날짜 변경 내용 대상 사유
2026-06-01 초기 하네스 구성 전체 CI/CD 파이프라인 구축

하네스: GUARDiA Manager

목표: GUARDiA ITSM·홈페이지·서버 인프라·CI/CD 통합 관제 관리자 포털 구축

참조 디자인: 네이버 클라우드 콘솔(NCloud Console) 패턴 적용.
메인화면: 대시보드 차트 중심 (SR 추이·서버 상태·리소스·배포 이력).

트리거: C:\GUARDiA\manager 관련 작업 요청 시 manager-orchestrator 스킬을 사용하라.
M-01 대시보드, 관리자 UI, Manager 배포, 다시 실행, 업데이트 요청 시 포함.

변경 이력:

날짜 변경 내용 대상 사유
2026-05-30 초기 하네스 구성 전체 GUARDiA Manager 신규 구축
2026-05-30 라이선스·Export-Import·AI플랫폼·GUARDiA CI-CD·SMTP 구축 다수 추가 기능 완료

하네스: workspace 통합 재구성

목표: itsm/, manager/, app/, manual/을 workspace/ 하위로 통합. git mv로 히스토리 보존, 모든 경로 참조 업데이트.

트리거: workspace로 이동, 소스 workspace 통합, 프로젝트별 workspace 정리 요청 시 workspace-reorganize-orchestrator 스킬을 사용하라.

목표 구조:

workspace/
├── zioinfo-web/       (현재 위치 유지)
├── guardia-itsm/      ← itsm/
├── guardia-manager/   ← manager/
├── guardia-messenger/ ← app/
└── guardia-docs/      ← manual/

변경 이력:

날짜 변경 내용 대상 사유
2026-05-31 초기 하네스 구성 전체 workspace 통합 요청

하네스: 레파지토리 분리

목표: C:\GUARDiA 모노레포를 4개 독립 Gitea 저장소로 분리. GitHub 제거, Gitea 전용 운영.

트리거: 레파지토리 분리, 저장소 분리, repo 분리, GitHub 제거, Gitea 전용 운영 요청 시 repo-split-orchestrator 스킬을 사용하라.

변경 이력:

날짜 변경 내용 대상 사유
2026-05-31 초기 하네스 구성 전체 모노레포 → 독립 repo 전환 요청

하네스: UI 전면 개편

목표: Playwright MCP + Variant(variant.com/community)로 zio 4개 시스템(홈페이지·ITSM·Manager·Messenger) UI를 전면 개편. Before/After 시각적 비교 + 통합 디자인 토큰 적용.

트리거: UI 개편, 디자인 전면 개편, Variant 활용, 디자인 토큰, Before/After 비교, 컴포넌트 리팩토링 요청 시 ui-overhaul-orchestrator 스킬을 사용하라.

메신저 봇 명령어 (/design):

/design capture          → Playwright MCP로 현재 UI 스크린샷 캡처
/design variant <검색어> → Variant에서 디자인 레퍼런스 탐색
/design tokens           → 통합 tokens.css 생성
/design <시스템>         → 특정 시스템 컴포넌트 개편 (homepage/itsm/manager/app)
/design qa               → Before/After 시각적 QA
/design ab <컴포넌트>    → A/B 테스트 컴포넌트 생성

변경 이력:

날짜 변경 내용 대상 사유
2026-05-31 초기 하네스 구성 전체 99.디자인전면개편.md 기반

하네스: GUARDiA 풀스택 통합

목표: GUARDiA ITSM·zioinfo-web·Manager·Messenger 4개 시스템을 단일 오케스트레이터로 연결. 크로스 시스템 신기능 추가·API 계약 관리·통합 QA 자동화.

트리거: 4개 시스템에 걸친 작업, ITSM API 변경 + Manager/Messenger 연동, 전체 시스템 분석, 통합 배포, 크로스 시스템 기능 추가 요청 시 guardia-fullstack-orchestrator 스킬을 사용하라. 단일 시스템 작업도 영향 범위 분석이 필요하면 사용하라.

시스템 맵:

GUARDiA ITSM (허브, :9001/:8443)
  ├── GUARDiA Manager (관제, :8002/:8090) — ITSM JWT 재사용
  ├── GUARDiA Messenger (EAS APK)         — ITSM API 호출
  └── zioinfo-web (홈페이지, :8082)       — 독립 (문의만 연결)

에이전트: full-stack-analyst, itsm-dev, homepage-dev, manager-dev, messenger-dev, cross-system-qa

시스템 상세: .claude/skills/guardia-fullstack-orchestrator/references/system-landscape.md

변경 이력:

날짜 변경 내용 대상 사유
2026-06-01 초기 하네스 구성 전체 4개 시스템 전체 분석 + 마스터 하네스 생성

하네스: Upstage OCR 연동

목표: Upstage Document AI API(Document Parse·Information Extraction·Document QA)를 연동하여 계약서·납품서·청구서·장애보고서·감사보고서·회의록을 자동 처리하고 ITSM 기능에 연동. 현대백화점 등 기업 브랜드 계약서 포함.

트리거: OCR, Upstage, 문서 파싱, 계약서 자동 처리, 현대백화점 계약, 브랜드 계약서, 납품서 CMDB 등록, 청구서 자동 처리, 장애보고서 이미지→SR 요청 시 upstage-ocr-orchestrator 스킬을 사용하라.

에이전트: upstage-ocr-dev (Document AI API 엔진) · ocr-workflow-dev (6개 워크플로우 + 브랜드 계약 연동)

신규 라우터: upstage_ocr.py · doc_workflow.py · doc_template.py

지원 시나리오:

  1. 나라장터 계약서 → ProcurementRecord 자동 등록
  2. 서버납품서 → CMDB 자동 등록
  3. 브랜드 계약서 (현대백화점 등) → 계약 이력 관리
  4. 세금계산서 → 과금 연동
  5. 장애보고서 이미지 → SR 자동 생성
  6. 회의록 → 액션아이템 SR 생성
  7. CSAP 보고서 → 준수율 자동 업데이트

API 가이드: .claude/skills/upstage-ocr-orchestrator/references/upstage-api-guide.md

변경 이력:

날짜 변경 내용 대상 사유
2026-06-02 초기 하네스 구성 전체 Upstage OCR 연동 + 기업 계약서 처리

하네스: GUARDiA 고급 확장

목표: GUARDiA ITSM 현재 104개 라우터(667 엔드포인트)에서 20개 신규 라우터 추가. CMDB 자동 발견·Text-to-SQL·구성 드리프트·멀티클라우드·공공기관 특화 5개 영역 확장. 목표: 124개 라우터, ~764개 엔드포인트.

트리거: CMDB 자동 발견, 자연어 쿼리, 구성 드리프트, 멀티클라우드, 나라장터/공공API/ISP/K-Cloud 요청 시 guardia-advanced-orchestrator 스킬을 사용하라.

에이전트: cmdb-autodiscovery-dev · nlquery-dev · config-drift-dev · multicloud-dev · public-sector-dev

분석 근거:

  • CMDB: 수동 등록만 → 자동 발견으로 커버리지 100%
  • Text-to-SQL: API/UI만 → 운영자 자연어 접근
  • 드리프트: 설정 변경 미감지 → 보안·규정 위반 즉시 탐지
  • 멀티클라우드: NCloud만 → 공공기관 멀티클라우드 전략 대응
  • 공공기관: 기본 CSAP만 → 국내 공공 ITSM 시장 차별화

로드맵: .claude/skills/guardia-advanced-orchestrator/references/advanced-roadmap.md

변경 이력:

날짜 변경 내용 대상 사유
2026-06-02 초기 하네스 구성 전체 GUARDiA 추가·확장 기능 분석 후 5개 영역 선정

하네스: GUARDiA 플랫폼 확장

목표: GUARDiA ITSM 81개 라우터에서 25개 신규 라우터 추가. 클라우드/컨테이너·AI 고도화·멀티테넌트 SaaS·엔터프라이즈 통합·BI 5개 영역 확장.

트리거: GUARDiA 확장, 신규 기능 추가, 고도화 요청 시 guardia-expansion-orchestrator 스킬을 사용하라. K8s/Docker/Jira/Slack/KPI/RAG/SaaS/화이트라벨/구독 관련 모든 요청 포함.

에이전트: cloud-container-dev · ai-platform-dev · saas-platform-dev · enterprise-integrator · bi-analytics-dev

로드맵: .claude/skills/guardia-expansion-orchestrator/references/expansion-roadmap.md

변경 이력:

날짜 변경 내용 대상 사유
2026-06-01 초기 하네스 구성 전체 GUARDiA 플랫폼 확장 5개 영역

하네스: zioinfo-mail 웹메일 시스템

목표: 지오정보기술 Postfix/Dovecot SMTP 서버를 활용한 React+FastAPI 웹메일 클라이언트 구축. mail.zioinfo.co.kr:8025, IMAP/SMTP 연동, 3-패널 메일 UI.

트리거: 웹메일, zioinfo-mail, 메일 클라이언트, IMAP/SMTP 연동 요청 시 zioinfo-mail-orchestrator 스킬을 사용하라.

에이전트: mail-backend-dev (FastAPI IMAP/SMTP 프록시), mail-frontend-dev (React SPA), mail-infra-setup (nginx/systemd/배포)

인프라: Postfix(25/587) + Dovecot(143/993) 기운영 중 | 계정: ythong/info/admin @zioinfo.co.kr

변경 이력:

날짜 변경 내용 대상 사유
2026-06-01 초기 하네스 구성 전체 zioinfo SMTP 기반 웹메일 구축

하네스: 5개 시스템 배포 동기화

목표: guardia-itsm·zioinfo-web·guardia-manager·guardia-messenger·guardia-docs 5개 시스템의 workspace↔repos↔Gitea↔서버 4-way 동기화 상태를 검증하고 이슈를 자동 수정한다.

트리거: 배포 상태 확인, 서버 동기화, 최신본 확인 요청 시 system-sync-orchestrator 스킬을 사용하라. "5개 시스템", "배포 확인", "서버 최신", "동기화", "전체 확인" 요청 포함.

에이전트: deploy-verifier (검증), deploy-fixer (수정)

변경 이력:

날짜 변경 내용 대상 사유
2026-06-01 초기 하네스 구성 전체 5개 시스템 배포 상태 점검 자동화

하네스: 폴더 정리

목표: 루트에 쌓이는 임시 Python 스크립트·구버전 소스·로그 파일을 용도별로 분류·이동·아카이브.

트리거: 폴더 정리, 루트 정리, 파일 정리, 스크립트 정리 요청 시 folder-cleanup-orchestrator 스킬을 사용하라.

현재 구조 (2026-06-01 기준):

scripts/deploy/  (26개) scripts/check/ (16개)
scripts/push/    (6개)  scripts/setup/ (13개) scripts/misc/ (21개)
_archive/        (backend/ frontend/ messenger/ 구버전)

변경 이력:

날짜 변경 내용 대상 사유
2026-06-01 초기 폴더 정리 루트 82개 파일 → scripts/, docs/, _archive/ 루트 산재 정리

보안 제약 (불변)

아래 규칙은 어떤 상황에서도 위반 불가

규칙 내용
외부 API 금지 on-premise sLLM(Ollama)만 허용. 외부 호출 절대 금지
자격증명 보호 IP, SSH계정, 비밀번호를 API 응답/메신저/에러메시지에 절대 노출 금지
암호화 필수 os_pw_enc 컬럼 AES-256-GCM 암호화 저장 필수
root 금지 root SSH 직접 접속 금지 — opsagent 전용 계정 사용
에러 응답 스택트레이스 미노출 — SR ID + 요약 메시지만 전달
ServerOut 스키마 ip_addr, ssh_user, os_pw_enc 컬럼 API 응답에서 완전 제외

스킬 파일 참조 방법

특정 기능 구현 전 해당 스킬 파일을 반드시 먼저 읽어라.

  • 배포 엔진 작업 시 → skills/guardia-deploy/SKILL.md
  • 역방향 에이전트 작업 시 → skills/guardia-agent/SKILL.md
  • 메신저 연동 작업 시 → skills/guardia-messenger/SKILL.md