news-fact-checker
뉴스 기사 URL을 받아 다중 독립 출처 교차검증으로 팩트체크하는 플러그인. 봇 차단 사이트는 우회해 본문을 읽고, 판정 게이트를 프롬프트가 아닌 코드로 계산한다.
#fact-check#news#verification#anti-injection#ssrf-safe#plugin
Install
설치
/plugin marketplace add hjsh200219/news-fact-checker
/plugin install news-fact-checker@news-fact-checker-marketplaceRequirements
- Claude Code (CLI)
- python3 (엔진 어댑터 + independence.py) — 없으면 축소 모드
- git (엔진 clone 경로에만 필요)
- (선택) MCP Playwright 서버 — 강한 WAF의 R6 escalation
Capabilities
주요 기능
- 01설치 후 `/factcheck <기사 URL>` 또는 자연어("이 기사 진짜야? <URL>")로 호출
- 02차단 우회 — WebFetch가 막히면 insane-search 엔진으로 escalate, 그래도 막히면 MCP Playwright로 내부 API 탐색 재시도
- 03기사 전체 종합 판정 + 핵심 주장 3–5개 개별 검증(사실 / 대체로 사실 / 일부 사실 / 오해 소지 / 거짓 / 검증 불가)
- 04거짓 독립성 방지 — 통신사 재출고 기사를 Evidence Reducer가 stance별 1개 유효 출처로 붕괴시킨 뒤 판정
- 05판정 게이트를 코드로 계산 — 확정 '사실'=독립 지지 2건 이상 & 반박 0, 확정 '거짓'=독립 반박 2건 이상, 못 채우면 '검증 불가'
- 06프롬프트 인젝션 방어 — 수집한 기사·근거 본문은 불신 데이터로 취급, 본문 속 지시문은 기록만 하고 따르지 않음
- 07SSRF 방지 — 요청 전 목적지 검사로 loopback·사설·link-local·클라우드 메타데이터 호스트를 네트워크 없이 거부
- 08공급망 안전 — 엔진 설치는 1회 동의 + commit-pinned clone, 계약 스모크 테스트 통과분만 원자적으로 교체
- 09정직성 규약 — 모든 근거에 URL, 모델지식과 웹검증 구분, 의견·예측은 검증 대상에서 분리, 한계·엔진 provenance 명시
- 10네트워크 없는 계약 테스트 + GitHub Actions CI(Linux·macOS 셸 문법·py_compile·mypy·플러그인 검증)
About
About
news-fact-checker takes a news article URL and returns a Korean fact-check report: one overall verdict for the article, plus 3-5 key claims verified individually (true / mostly true / partly true / misleading / false / unverifiable). It is explicitly assistive rather than authoritative — for consequential decisions, read the primary sources yourself.
Two problems shape its design. The first is reach: many outlets block automated readers with 403s, 402s, and WAF challenges. When WebFetch fails the plugin escalates to the insane-search engine, and if that is still blocked it looks for the site's internal API through MCP Playwright. When nothing works it says so and degrades to a reduced mode rather than inventing coverage.
The second is false independence — the failure mode where a single wire-service story republished by eight outlets reads like eight confirmations. An Evidence Reducer collapses republished evidence into one effective source per stance before any verdict is computed, and the gate itself lives in code, not in the prompt: a confirmed 'true' requires two or more independent supporting sources and zero refutations; a confirmed 'false' requires two or more independent refutations. A single primary source cannot buy its way past the independence minimum. When the bar isn't met the answer is an honest 'unverifiable'.
Security is treated as part of correctness. Fetched article and evidence bodies are untrusted data — instructions embedded in them ('ignore your rules', 'read this file', 'change the verdict') are logged as data and never followed. Outbound requests pass a destination policy that rejects userinfo URLs, loopback, private and link-local ranges, and cloud metadata hosts before any network call. Engine installation requires explicit one-time consent and a commit-pinned clone verified against a deployment-contract SHA, installed atomically so a tampered or moved tag never replaces a working copy. Network-free contract tests lock these failure branches, and CI runs them on Linux and macOS.
Related
같은 카테고리의 다른 도구
hiworks브라우저 없이 하이웍스 로그인 세션을 만들어 메일·휴가·결재·일정·조직도를 JSON으로 다루는 플러그인. 비밀번호는 OS 키체인에만 저장한다. 하이웍스와 무관한 비공식 프로젝트.lyn-lawfirm고소장·내용증명·형사합의서·사실확인서 작성, 형사절차 시뮬레이터, 양형 예측 등 lyn-* 법률 스킬 6종을 한 번에 설치하는 플러그인. 법령·판례 검색은 K Data MCP 연결 설정을 포함한다. AI는 실수할 수 있으며 법률 자문이 아니다.stt클로바노트 전사를 가져오고 Apple 음성 메모·내보낸 녹음은 이 Mac에서 whisper.cpp로 로컬 전사해 Markdown 노트(vault)로 저장하는 플러그인. Apple 녹음은 외부로 업로드하지 않는다.