Fact-Check-X 통합 진입점
본 스킬은 오케스트레이션만 수행하며, 세 가지 비즈니스 레이어를 내장하지 않습니다. 다음 순서로 형제 스킬을 호출합니다:
llm-answer-reference-compare: 다중 플랫폼 답변, 참조 및 현장 증거 수집.fact-check-x-knowledge-compare: 로컬 지식 포인트 구조화 비교 (선택 사항).fact-check-x-authoritative-verify: 지식 포인트별 동시 권위 검증 및 플랫폼 성과 보고서.
모든 의미 분해 및 증거 판단은 현재 스킬을 호스팅하는 에이전트가 수행합니다. 스크립트는 어떤 모델 API도 호출하지 않습니다.
종속성 위치 설정
네 개의 스킬이 동일한 디렉토리에 있으면 바로 실행할 수 있습니다. 또는 다음을 설정할 수 있습니다:
export FACTCHECK_SKILLS_DIR="<네 스킬의 상위 디렉토리>"
의존성 확인:
python3 scripts/fact_check_x.py locate
전체 프로세스
먼저 results.json을 수집한 후 지식 포인트 비교를 준비합니다:
python3 scripts/fact_check_x.py prepare-comparison \
--results <results.json> \
--run-dir <run>
명령어는 원본 답변 및 참조 보고서를 동기적으로 생성하며, 실행 디렉토리 최상위에 01-capture-report.html을 생성하고 deliverables를 통해 사용자에게 표시 가능한 경로를 반환합니다. 호출자는 먼저 이 경로를 사용하여 실제 Markdown 파일 링크를 전송한 후에만 지식 포인트 비교를 진행해야 합니다; 백틱 경로만 표시하는 것은 금지됩니다.
기본 대화형 모드에서는 호출자가 이 단계의 산출물을 전송한 후 사용자에게 "다음 단계 계속", "현재 결과 수정", 또는 "여기서 종료하고 산출물 보관" 중 하나를 선택하도록 요청해야 하며, 계속 지시를 받은 후에만 다음 단계로 진행할 수 있습니다. 사용자가 초기 요청에서 명시적으로 전체 자동 완료를 요청한 경우에만 연속 실행이 가능하지만, 각 단계의 산출물은 여전히 단계적으로 표시되어야 합니다.
현재 에이전트는 <run>/comparison-task.json을 읽고 <run>/comparison-analysis.json을 작성한 후 다음을 실행합니다:
분해 시, 원자성은 지식 포인트와 각 플랫폼의 claim을 동시에 제약합니다. 하나의 원문장이 여러 개의 독립적인 의무, 조건, 객체, 수치 또는 결과를 포함하는 경우 반드시 분할해야 하며, 각 claim은 현재 사실만 유지합니다; 플랫폼 고유의 실질적 추가 사실도 앵커 없는 별도 지식 포인트로 만들어야 하며, 광범위한 지식 포인트에 통합한 후 심층 앵커를 재사용하여 검증을 회피할 수 없습니다.
python3 scripts/fact_check_x.py complete-comparison \
--results <results.json> \
--run-dir <run>
명령어는 실행 디렉토리 최상위에 02-comparison-report.html을 생성하고 deliverables를 통해 경로를 반환합니다; 호출자는 이를 사용자에게 독립적으로 클릭 가능한 파일로 표시해야 합니다. 보고서에는 명확히 "미검증"으로 표시된 종합 초안이 포함되어야 합니다. 기본 대화형 모드에서는 사용자가 계속을 확인한 후에만 권위 검증 단계로 진행할 수 있습니다.
각 지식 포인트에 대한 독립적인 클라우드 요청을 생성하고 동시에 증거를 수집합니다:
python3 scripts/fact_check_x.py prepare-authority --run-dir <run>
python3 scripts/fact_check_x.py search-authority --run-dir <run> --max-workers 12
검증 면제가 아닌 지식 포인트가 있지만 시스템에 신뢰 검색 구성이 없는 경우, prepare-authority와 search-authority는 status=configuration_required, userPrompt 및 configuration.command를 반환하고 0이 아닌 종료 코드로 종료합니다. 호출자는 먼저 로그인 프롬프트를 표시한 후 포그라운드에서 해당 명령을 실행합니다. 사용자는 자동으로 열린 Zhishenxiao MaaS 페이지에서 로그인만 하면 됩니다; 구성 요소는 자동으로 기존 완전한 키를 재사용하며, 없을 경우 Fact-Check-X 전용 키를 생성하고, 검증 후 ~/.fact-check-x/credentials/trusted-search-key에 저장합니다. Codex, Claude Code, WorkBuddy 등 다양한 호스트가 이 구성을 공유하며, 기존 키가 감지되면 로그인을 건너뜁니다. 구성이 완료되면 호출자는 자동으로 prepare-authority를 재실행하며, 사용자에게 키를 복사하거나, 셸 구성을 편집하거나, "구성 완료"라고 답변하도록 요구하지 않으며, Zhishenxiao 출처나 일반 검색으로 우회하지 않습니다.
신뢰 검색이 401/403을 반환하는 경우에만 기존 키를 무효로 간주하고 자동 구성을 시작합니다. 시간 초과, 네트워크 단절 또는 서비스 예외는 기존 구성을 유지하고 자동 재시도합니다; 재시도 후에도 실패하면 검색 단계에 머물며 기술 오류를 반환하고, 사용자에게 다시 로그인을 요구하지 않으며, 수동 사실 검증으로 전환하지 않습니다.
prepare-authority는 authority-gate.json을 작성합니다. 신뢰 검색 배치가 정상적으로 완료되고 게이트 상태가 searched가 된 후에만 finalize-authority 실행이 허용됩니다; evidence 또는 result를 수동으로 작성하여 우회할 수 없습니다.
현재 에이전트는 authority/requests와 authority/evidence를 하나씩 읽고, 판결을 authority/assessments/<지식포인트ID>.json에 작성한 후 다음을 실행합니다:
검증 면제 모드에서 trustedAnchor.officialAnswer는 현재 지식 포인트의 권위적 결론입니다; 앵커 증거 목록은 출처 추적에 사용되며, 제목이나 발췌문이 해당 결론을 그대로 반복할 필요는 없습니다. 플랫폼 주장이 officialAnswer와 의미적으로 일치하거나 직접 도출 가능한 경우, 판결은 supported이며 유효한 앵커 증거 ID를 참조합니다. 플랫폼 주장이 권위적 결론이 지지할 수 없는 실질적 사실을 추가하거나, 실제로 판단이 불가능한 경우에만 insufficient를 사용합니다. 지식 포인트 비교 단계의 참조 충실도와 본 단계의 사실 정확성은 각각 유지되며, 플랫폼 자체의 인용 부족을 이유로 이미 권위적 결론에 의해 확인된 주장에 대한 판단을 거부할 수 없습니다.
{
"authoritativeFinding": "권위적 증거로 뒷받침되는 지식 포인트 결론",
"verdicts": {
"<플랫폼ID>": {
"verdict": "supported",
"reason": "주장이 E1과 일치함",
"evidenceIds": ["E1"]
}
}
}
verdict는 supported, contradicted 또는 insufficient만 사용할 수 있으며, 증거 ID는 현재 evidence 파일에 존재해야 합니다. 구식 최상위 verdict, officialAnswer, platformAssessment는 거부됩니다.
python3 scripts/fact_check_x.py finalize-authority --run-dir <run>
finalize-authority는 권위 검증 후 최종 답변을 생성하며, 증거가 충분한 지식 포인트는 확정 답변에 포함하고, 증거가 부족한 지식 포인트는 evidenceGaps에 기록되어 확정 답변 및 정확도 분모에서 제외됩니다; 기술 체인이 성공하는 한 명령어는 status=completed를 반환하며, 호출자는 네 번째 단계를 계속 진행합니다. 기술 명령어가 0이 아닌 종료 코드를 반환하는 경우에만 현재 단계를 중지하고 재시도합니다.
finalize-authority가 판결을 완료한 후 독립적으로 03-authority-report.html을 생성하고 deliverables를 통해 경로를 반환합니다. 호출자는 먼저 이 권위 보고서를 표시해야 합니다; 기본 대화형 모드에서는 상태가 completed이고 사용자가 계속을 확인한 경우에만 다음을 실행합니다:
python3 scripts/fact_check_x.py deliver --results <results.json> --run-dir <run>
신뢰 검색이 no_evidence를 반환하면 insufficient_evidence로 기록합니다: 빈 결과는 이번에 판결 가능한 자료를 획득하지 못했음을 의미할 뿐, 직접 "조작"으로 판정할 수 없습니다; 증거 경계 기록이 완료된 후 계속해서 후속 보고서를 생성합니다.
deliver는 실행 디렉토리 최상위에 네 개의 독립적이고 읽을 수 있는 보고서를 생성하고 반환해야 합니다:
01-capture-report.html: 원본 답변, 참고 문헌 및 인용 증거.02-comparison-report.html: 지식 포인트 구조화 비교.03-authority-report.html: 지식 포인트별 권위적 결론, 공식 증거 및 각 플랫폼 판결.04-final-report.html: 플랫폼 성과, 종합 지표, 주요 발견 및 완전한 증거.
어느 보고서라도 누락되면 05-complete-report-package.zip을 생성하거나 전달해서는 안 됩니다.
최종 보관:
capture/results.json,capture/report.html,capture/report.md.comparison-task.json,comparison-analysis.json,comparison.json,comparison.html.- 각 지식 포인트별 독립적인 request, evidence, assessment, result.
authority/batch.json,verification.json,report.html,pipeline.json.- 네 개의 단계별 보고서 및
05-complete-report-package.zip.
지식 포인트 비교 건너뛰기
지식 포인트 비교는 선택적 기능입니다. 이미 구조화된 지식 포인트가 있는 경우, 권위 검증 모듈의 데이터 계약에 따라 단일 지식 포인트 요청을 직접 구축하고 fact-check-x-authoritative-verify를 독립적으로 호출할 수 있습니다. 통합 진입점은 사용자에게 먼저 여러 AI 답변을 수집하도록 강요하지 않습니다.
실행 경계
- 원본 답변 단계에서는 수집만 하고 검증하지 않습니다; 신뢰 검색 전체 매개변수를 사용하여 플랫폼이 이미 제공한 동일 출처의 본문을 보완할 수 있지만, 인용을 추가하거나 대체해서는 안 됩니다.
- 지식 포인트 비교는 원본 답변과 첨부된 출처만 비교하며, 인터넷에서 진실을 찾지 않습니다.
- 클라우드 계층은 현재 지식 포인트만 수신합니다; 각 플랫폼의 주장이 동일하면 주장을 업로드하지 않고, 다른 경우에만 차이점을 업로드합니다.
- Zhishenxiao에 이미 적격한 공식 앵커가 있는 경우 중복 검색하지 않습니다.
- 최종 보고서는 반드시 권위 검증 모듈 내의 안정적인 보고서 렌더러를 사용해야 합니다.
전달 게이트
python3 tests/smoke_test.py
python3 "${CODEX_HOME:-$HOME/.codex}/skills/.system/skill-creator/scripts/quick_validate.py" .
전체 표준은 수용 기준을 참조하십시오.