Community연구 & 데이터 분석github.com

AuditCore 다중 에이전트 협업 감사

재무 스프레드시트(.xlsx 또는 .csv) 감사, 회계 사기 탐지, 분할 거래, 벤포드 법칙 이상 징후 또는 내부 통제 결함 식별, 중국 감사 기준(CSA) 또는 기업 내부 통제 규정 검색, CSA-1131 준수 감사 워크페이퍼(.docx 및 .md) 생성을 위해 사용됩니다.

AuditCore 다중 에이전트 협업 감사란 무엇인가요?

AuditCore 스킬은 재무 데이터 감사를 위한 다중 에이전트, '호스트-브레인 + 결정론적 코어' 아키텍처를 구현합니다. 이는 Claude Code, Antigravity, Codex, OpenClaw와 같은 호스트 에이전트의 하위 에이전트 디스패치 기능을 활용하여 네 개의 물리적으로 격리된 감사 역할(초급 감사관, 이의 제기 감사관, 사실 확인자, 선임 파트너)을 시작하고, 이들이 독립적으로 작업하여 편향을 방지합니다. 내부에는 고유한 알고리즘 코어(`scripts/audit_cli.py`)가 있어 PII 암호화 및 SHA-256 해시 체인 감사 로그를 적용하고, 3단계 중요성 수준 필터링을 시행하며, 6차원 결정론적 규칙 침투(벤포드 법칙, Z-점수, 정수 100,000/10,000 이상 징후, 주말 거래, 동일일 분할 거래 승인 회피, 적자 상계/중복 전표)를 수행합니다. 또한 무료 PyTorch 3방향 하이브리드 법률 검색, 4계층 증거 토폴로지 인과 그래프 및 이분 그래프 손실 검증, DAG 상태 머신 최소 컷 로컬 롤백을 지원합니다. 결정론적 CLI 엔진을 통해 기술 감사와 규제 준수를 모두 보장하는 CSA-1131 호환 Word 및 Markdown 워크페이퍼를 생성합니다.

지원 대상✓Claude Code✓Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/Cyrus060224/auditcore-skill/tree/HEAD

Installed? Explore more 연구 & 데이터 분석 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

AuditCore 다중 에이전트 협업 감사 스킬 (AuditCore Multi-Agent Audit Skill)

1. 아키텍처 개요 (Overview)

AuditCore Skill은 "호스트-브레인 + 결정론적 코어(Host-Brain + Deterministic-Core)" 아키텍처를 채택합니다.

  • 외부 API 키가 필요 없는 다중 에이전트 블라인드 리뷰 위원회: 호스트 에이전트(Claude Code, Antigravity, Codex, OpenClaw 등)의 하위 에이전트 디스패치 기능을 직접 재사용하여 컨텍스트가 물리적으로 격리된 4개의 감사 역할(junior-auditor, challenger-auditor, fact-checker, senior-partner)을 시작합니다.
  • 결정론적 특허 알고리즘 코어 (scripts/audit_cli.py): 상태 저장 CLI 엔진을 통해 PII 암호화 및 SHA-256 해시 체인 감사 로그, 3단계 중요성 수준 필터링, 6차원 결정론적 규칙 침투(벤포드 법칙, Z-점수, 정수 10만/1만 이상 징후, 주말 거래, 동일일 분할 거래 승인 회피, 적자 상계/중복 전표), 무료 PyTorch 3방향 하이브리드 법률 검색 $H(q, c_i)$ , 4계층 증거 토폴로지 인과 그래프 및 이분 그래프 손실 검증, DAG 상태 머신 최소 컷 로컬 롤백, CSA-1131 4요소 Word (.docx) / Markdown (.md) 워크페이퍼 자동 생성 및 PII 역복원을 강제 실행합니다.

2. 세 가지 핵심 철칙 (IRON RULES — 위반 시 감사 무효로 간주)

IRON RULE 1: PII 제로 유출 물리적 격리 게이트 (Zero-Leakage Privacy Gate)

  • 원본 장부 직접 읽기 금지: scripts/audit_cli.py init 실행 전후에 절대 pandas, python, cat, head 또는 파일 읽기 도구를 사용하여 사용자의 원본 .xlsx/.csv 파일 내용을 직접 보지 마십시오!
  • 암호화 금고 접근 금지: init이 생성한 .auditcore_workspace/cases/<CASE_ID>/.vault_do_not_read.json은 XOR-SHA256-HMAC으로 암호화되어 실제 기업 및 계정 매핑을 저장합니다. 호스트 및 모든 하위 에이전트는 이 파일을 읽거나 해독하는 것이 엄격히 금지됩니다.
  • 전 과정 비식별화 추론: 모든 SQL 탐색 및 4역할 블라인드 리뷰 추론은 PERSON_0001, ACCT_0001 등의 비식별화된 플레이스홀더를 엄격히 사용해야 합니다. 실제 기업 이름은 최종 audit_cli.py export 단계에서만 결정론적 스크립트에 의해 로컬에서 역복원됩니다.

IRON RULE 2: 4역할 하위 에이전트 독립 블라인드 리뷰 계약 (Blinded Subagent Isolation)

  • full-audit 모드에서는 주 대화에서 "단일 모델이 네 역할을 자체적으로 연기"하는 것이 엄격히 금지됩니다.
  • 상태 머신 순서에 따라 agents/의 해당 역할 계약 파일을 읽고 독립적인 하위 에이전트를 파생시켜야 합니다(호스트의 invoke_subagent / Task / Agent 도구 사용):
    1. 1차 심사: agents/junior-auditor.md -> --role junior 제출
    2. 독립 검토: agents/challenger-auditor.md -> --role challenger 제출
    3. 사실 확인: agents/fact-checker.md -> --role factcheck 제출
    4. 최종 심사 파트너: agents/senior-partner.md -> --role senior 제출
  • 다운그레이드 호환 규칙: 호스트 환경이 하위 에이전트 디스패치 도구를 지원하지 않는 경우에만 메인 세션에서 각 역할 JSON을 단계별로 독립적으로 생성할 수 있지만, 각 단계 생성 후 즉시 audit_cli.py commit을 호출하여 결정론적 증거 그래프 검증을 수행해야 하며 단계를 건너뛰거나 병합하는 것은 절대 허용되지 않습니다.

IRON RULE 3: 상태 저장 CLI 강제 게이트 및 최소 컷 롤백 폐루프 (Stateful CLI & Minimum-Cut Rollback)

  • 각 역할 결론은 scripts/audit_cli.py commit --role <role>을 통해 제출되어야 합니다. 상태 머신 순서를 위반하면 CLI는 종료 코드 2 (STATE_GUARD_VIOLATION)를 반환합니다.
  • factcheck 제출 후 전역 일관성 점수 $S_{\text{global}}$ 가 $\theta$ (기본값 0.80) 미만이면 CLI가 자동으로 의존성 인식 최소 컷 로컬 롤백을 실행하고 "rollback_triggered": true 및 rollback_diagnosis.arbitration_probe(검증 프로브)를 반환하며 상태를 STATE_JUNIOR_AUDIT 또는 STATE_CHALLENGER_REVIEW로 되돌립니다.
  • rollback_triggered: true가 발생하면 rollback_diagnosis를 대상 역할에 주입하여 하위 에이전트를 다시 파생해야 하며, 일관성이 기준을 충족하여 STATE_SENIOR_PARTNER에 도달할 때까지 이 과정을 반복해야 합니다! 수동으로 워크페이퍼를 작성하여 export를 건너뛰는 것은 엄격히 금지됩니다.

3. 다섯 가지 운영 모드 라우팅 테이블 (5 Operational Modes)

사용자 요청에 따라 해당 모드를 자동으로 선택합니다(기본값은 full-audit 실행):

모드 이름적용 시나리오 및 트리거 단어실행 경로
full-audit(기본 전체 프로세스)장부 파일 감사, 사기/내부 통제 결함 전면 점검 및 공식 워크페이퍼 발행아래 섹션 4: 표준 5단계 상태 머신 프로토콜 완전 실행 (init $\to$ sql $\to$ 4역할 블라인드 리뷰 및 최소 컷 롤백 루프 $\to$ export)
quick-scan(빠른 스캔)"이상 징후 빠르게 확인", "다중 에이전트 게임 필요 없음, 규칙 스캔 결과만 보기"1. audit_cli.py init --file <PATH> --case <ID> --mode quick 실행2. 선택 사항으로 audit_cli.py export --case <ID> --out-dir <DIR> 실행하여 규칙 스캔 워크페이퍼 빠른 내보내기
sql-explore(SQL 샌드박스 침투)초기화된 장부에 대해 사용자 정의 기간 간/그룹화 집계 쿼리 실행audit_cli.py sql --case <ID> --query "SELECT ... FROM financial_ledger ..." 실행(읽기 전용 SELECT / WITH만 허용)
law-lookup(법률 하이브리드 검색)"분할 거래/주말 입금/감사 증거 관련 기준 조항 확인"audit_cli.py law --query "<키워드 또는 질문>" --top-k 5 실행, 가중 증거 체인 $E(q)$ 및 정성적 추론 4단계 결론 $\Psi$ 직접 출력
workpaper(워크페이퍼 재내보내기)최종 심사 완료된 케이스의 단위명, 회계 기간 또는 내보내기 디렉토리 변경audit_cli.py export --case <ID> --entity-name "<단위명>" --period "<기간>" --out-dir <DIR> 실행

자세한 CLI 매개변수 및 JSON 스키마는 필요시 references/schemas.md를 참조하십시오.


4. full-audit 표준 5단계 상태 머신 실행 프로토콜 (5-Step Stateful Protocol)

스킬 루트 디렉토리를 <SKILL_DIR>(scripts/audit_cli.py 포함)이라고 가정합니다. 사용자가 장부 파일을 제공하지 않고 데모를 요청하는 경우 내장된 고성능 사기 시뮬레이션 샘플 장부 <SKILL_DIR>/examples/sample_vouchers_2026.xlsx를 직접 사용할 수 있습니다.

1단계: 장부 초기화, 암호화/비식별화 및 결정론적 규칙 침투 (init)

python3 <SKILL_DIR>/scripts/audit_cli.py init \
  --file "<USER_EXCEL_OR_CSV_PATH>" \
  --case "CASE_2026_01" \
  --workspace ".auditcore_workspace" \
  --lang "중국어"
  • 반환된 JSON 기록: stats, schema_ddl, rule_findings, anomaly_samples, evidence_chain.
  • 이제 상태 머신은 STATE_DYNAMIC_SQL_EXPLORATION에 있습니다.

2단계: 읽기 전용 SQLite 샌드박스 침투 쿼리 (sql)

schema_ddl 및 rule_findings를 기반으로 비식별화된 테이블 financial_ledger에 대한 집계 검증 SQL을 하나 작성합니다(예: 동일 공급업체의 동일일 분할 거래 건수 및 누적 금액 확인, 차변 계정별 이상 금액 집계 등):

python3 <SKILL_DIR>/scripts/audit_cli.py sql \
  --case "CASE_2026_01" \
  --workspace ".auditcore_workspace" \
  --query "SELECT Date, Vendor, COUNT(*) AS tx_count, SUM(Amount) AS total_amount FROM financial_ledger GROUP BY Date, Vendor HAVING tx_count >= 2 OR total_amount >= 100000 ORDER BY total_amount DESC"
  • 상태 머신이 STATE_JUNIOR_AUDIT으로 진행됩니다.

3단계: 다중 에이전트 독립 블라인드 리뷰 및 최소 컷 로컬 롤백 루프 (commit 루프)

3.1 초급 감사관 파생 (STATE_JUNIOR_AUDIT)

  1. <SKILL_DIR>/agents/junior-auditor.md를 읽습니다.
  2. 하위 에이전트(또는 독립 단계)를 파생하고 비식별화된 stats, rule_findings, anomaly_samples, sql 결과, evidence_chain만 전달합니다(롤백 재심사인 경우 rollback_diagnosis를 추가로 전달).
  3. 하위 에이전트가 반환한 JSON(analysis, risk_score, cited_reg_ids 포함)을 가져와 CLI에 제출합니다:
python3 <SKILL_DIR>/scripts/audit_cli.py commit \
  --case "CASE_2026_01" \
  --workspace ".auditcore_workspace" \
  --role junior \
  --payload '<JUNIOR_JSON>'
  • 상태 머신이 STATE_CHALLENGER_REVIEW으로 진행됩니다.

3.2 독립 검토관 파생 (STATE_CHALLENGER_REVIEW)

  1. <SKILL_DIR>/agents/challenger-auditor.md를 읽습니다.
  2. 독립 하위 에이전트를 파생하고 비식별화된 이상 증거, evidence_chain, 그리고 1차 심사의 junior_report 및 junior_score를 전달하며, 전문가적 회의적 태도로 독립적으로 검토하고 이의를 제기하도록 요청합니다.
  3. 반환된 JSON(rebuttal, adjusted_risk_score 포함)을 가져와 CLI에 제출합니다:
python3 <SKILL_DIR>/scripts/audit_cli.py commit \
  --case "CASE_2026_01" \
  --workspace ".auditcore_workspace" \
  --role challenger \
  --payload '<CHALLENGER_JSON>'
  • 상태 머신이 STATE_FACT_CHECK으로 진행됩니다.

3.3 사실 확인자 파생 및 전역 일관성 검증 (STATE_FACT_CHECK)

  1. <SKILL_DIR>/agents/fact-checker.md를 읽습니다.
  2. 독립 하위 에이전트를 파생하여 1차 심사 및 검토 결론에 대해 원자적 사실 분해 (claims) 및 이분 그래프 증거 매핑 (evidence_mapping) 을 수행합니다.
  3. 반환된 JSON(analysis, support_score, conflict_score, conflict_type, claims, evidence_mapping 포함)을 가져와 CLI에 제출합니다:
python3 <SKILL_DIR>/scripts/audit_cli.py commit \
  --case "CASE_2026_01" \
  --workspace ".auditcore_workspace" \
  --role factcheck \
  --payload '<FACTCHECK_JSON>'
  1. CLI가 반환한 current_state 및 rollback_triggered를 확인합니다:
    • "rollback_triggered": true인 경우: 증거 그래프에 심각한 충돌이 있음($S_{\text{global}} < \theta$)을 의미하며, CLI가 자동으로 최악의 추론 하위 그래프를 절단하고 rollback_target_state(일반적으로 STATE_JUNIOR_AUDIT)로 롤백했습니다. 반환된 rollback_diagnosis(arbitration_probe 및 csa_guidance 포함)를 추출하여 3.1(또는 3.2)로 돌아가 하위 에이전트를 다시 파생하여 결론을 수정해야 합니다!
    • "current_state": "STATE_SENIOR_PARTNER"인 경우: 증거 그래프 일관성이 기준을 충족했으며 4단계로 진행합니다.

4단계: 선임 파트너 파생, 최종 심사 판결 및 감사 조정 분개 (STATE_SENIOR_PARTNER)

  1. <SKILL_DIR>/agents/senior-partner.md를 읽습니다.
  2. 독립 하위 에이전트를 파생하고 비식별화된 통계, 규정 증거 체인, 검증된 1차 심사/검토 결론을 전달하여 최종 심사 판결(final_verdict, final_risk_score, reasoning, action_item, suggested_aje)을 생성합니다.
  3. CLI에 제출합니다:
python3 <SKILL_DIR>/scripts/audit_cli.py commit \
  --case "CASE_2026_01" \
  --workspace ".auditcore_workspace" \
  --role senior \
  --payload '<SENIOR_JSON>'
  • 상태 머신이 STATE_WORKPAPER_GENERATION으로 진행됩니다.

5단계: 4요소 워크페이퍼 조립, 품질 평가 $Q(Y)$, PII 역복원 및 CSA-1131 워크페이퍼 내보내기 (export)

python3 <SKILL_DIR>/scripts/audit_cli.py export \
  --case "CASE_2026_01" \
  --workspace ".auditcore_workspace" \
  --out-dir "./audit_outputs" \
  --entity-name "피감사 단위" \
  --period "2026년"
  • CLI가 자동으로 PII 엔터티 이름을 역복원하고 다음을 생성합니다:
    1. workpaper_docx_path: 중국 공인회계사 감사 기준 제1131호를 준수하는 공식 .docx Word 감사 워크페이퍼;
    2. workpaper_markdown_path: 구조화된 .md 감사 워크페이퍼;
    3. quality_evaluation: $Q_{\text{ev}}$, $Q_{\text{con}}$, $Q_{\text{cmp}}$, 총점 $Q(Y)$ 및 제로 허용 환각 검증 결과를 포함한 평가 보고서.
  • 사용자에게 최종 감사 발견 사항을 보고하고, 역복원된 실제 관련 단위 이름, 감사 조정 분개(AJE), 품질 점수 $Q(Y)$ 및 생성된 .docx / .md 파일 경로를 표시합니다.

5. 일반적인 변명 및 방지 대조표 (Rationalization Table & Red Flags)

에이전트의 일반적인 게으름 변명 (Rationalization)객관적 사실 및 철칙 대응 (Reality & Iron Rule)
"장부 파일이 작으니 pandas.read_excel로 먼저 어떤 열과 공급업체가 있는지 확인해보겠습니다."심각한 위반 (IRON RULE 1 위반)! 원본 파일을 직접 읽는 순간 평문 기업 이름과 은행 계좌 번호가 LLM 컨텍스트에 노출되어 개인정보 보호 규정 준수 경계를 완전히 파괴합니다. 반드시 audit_cli.py init을 먼저 실행해야 합니다.
"시간을 절약하기 위해 하나의 코드 블록에서 1차 심사, 검토, 사실 확인, 파트너의 JSON을 동시에 작성하고 연속으로 commit하겠습니다."심각한 위반 (IRON RULE 2 위반)! 단일 컨텍스트에서 네 역할을 동시에 조작하면 심각한 확증 편향(Confirmation Bias)을 유발합니다. 호스트가 하위 에이전트를 지원하는 경우 반드시 독립적으로 파생시켜야 합니다. 순차 실행하더라도 각 commit 후 CLI의 증거 그래프 피드백을 읽고 다음 단계를 수행해야 합니다.
"factcheck 제출 후 rollback_triggered: true가 발생했지만, JSON에서 점수만 수정하고 senior를 제출하겠습니다."상태 게이트가 직접 차단 (종료 코드 2)! 롤백 후 상태 머신은 STATE_JUNIOR_AUDIT(또는 STATE_CHALLENGER_REVIEW)에 있습니다. rollback_diagnosis.arbitration_probe에 따라 이전 역할을 다시 실행하지 않으면 상태 머신이 STATE_SENIOR_PARTNER로 절대 진행을 허용하지 않습니다.
"이미 감사 결론을 알고 있으니 Markdown 보고서를 직접 작성하여 사용자에게 주면 됩니다. audit_cli.py export를 호출할 필요가 없습니다."심각한 위반 (IRON RULE 3 위반)! 수동 보고서는 .vault_do_not_read.json의 실제 기업 이름을 해독할 수 없으며(PERSON_0001만 출력 가능), 특허 4요소 구조 $Y={\text{idx},\text{aje},\text{jud},\text{log}}$, 품질 점수 $Q(Y)$ 및 CSA-1131 .docx 공식 워크페이퍼가 누락됩니다.

Red Flags — 다음 생각이 들면 즉시 중지하고 CLI 프로토콜로 돌아가십시오:

  • pd.read_excel / pd.read_csv / open()을 실행하여 사용자의 원본 재무 파일을 읽으려는 경우
  • .vault_do_not_read.json을 읽으려는 경우
  • 분석에서 evidence_chain에 없는 법률 조항 번호를 조작하는 경우(hallucinated_citations 제로 허용 다운그레이드가 트리거되어 $Q(Y)$가 강제로 $\le 0.40$으로 낮아짐)
  • sql 또는 임의의 commit --role 단계를 건너뛰고 export를 직접 시도하는 경우

관련 스킬