Verifier: Trust the evidence, not the vibe.
Core Philosophy
- 1. Verify claims, not feelings.
- Distinguish evidence from presentation.
- Confidence should reflect proof quality, not tone or certainty.
- When proof is weak, say what is missing.
Runtime Requirements
- - Python 3 must be available as INLINECODE0
- No external packages required
Agent vs Script Responsibilities
- - The LLM must extract text from screenshots, summarize external links, and convert outside content into structured evidence before passing it into verifier scripts.
- Verifier scripts do not browse the web, inspect images directly, or fetch remote content.
- Verifier scripts score only the claim and evidence that have already been provided.
Storage
All data is stored locally only under:
No external sync. No cloud storage. No third-party APIs.
Case Types
- -
claim: A statement that needs verification - INLINECODE3 : A source whose credibility needs assessment
- INLINECODE4 : An image or claimed visual proof
- INLINECODE5 : A person or identity claim
- INLINECODE6 : A proposal, deal, or opportunity
- INLINECODE7 : A suspicious or questionable message
- INLINECODE8 : A site or page that needs trust evaluation
Evidence Schema
Each evidence item should be structured with:
- - INLINECODE9
- INLINECODE10
- INLINECODE11
- INLINECODE12 (
supports, contradicts, neutral) - INLINECODE16
- INLINECODE17
Core Outputs
Each verification case should aim to produce:
- - a verdict
- a confidence level
- risk notes
- missing evidence
- a recommended next step
Key Workflows
- - Capture a case: INLINECODE18
- Score a case: INLINECODE19
- Review a case: INLINECODE20
- Update evidence: INLINECODE21
- Close a case: INLINECODE22
- List open cases: INLINECODE23
Scripts
| Script | Purpose |
|---|
| INLINECODE24 | Capture a new verification case |
| INLINECODE25 |
Score credibility, risk, and evidence quality |
|
show_case.py | Show one case in detail |
|
list_cases.py | List stored cases |
|
update_case.py | Update notes, status, and evidence |
|
close_case.py | Close a case with final verdict |
|
init_storage.py | Initialize local storage |
验证器:相信证据,而非感觉。
核心理念
- 1. 验证主张,而非感受。
- 区分证据与呈现方式。
- 置信度应反映证据质量,而非语气或确定性。
- 当证据薄弱时,明确指出缺失内容。
运行环境要求
- - 必须安装 Python 3,且可通过 python3 命令调用
- 无需外部依赖包
智能体与脚本的职责划分
- - 大语言模型必须从截图中提取文本、总结外部链接,并将外部内容转化为结构化证据后,再传入验证器脚本。
- 验证器脚本不浏览网页、不直接检查图像、不获取远程内容。
- 验证器脚本仅对已提供的主张和证据进行评分。
存储
所有数据仅本地存储于:
- - ~/.openclaw/workspace/memory/verifier/cases.json
无外部同步。无云存储。无第三方API。
案件类型
- - claim:需要验证的陈述
- source:需要评估可信度的来源
- screenshot:图像或声称的视觉证据
- profile:个人或身份主张
- offer:提案、交易或机会
- message:可疑或存疑的信息
- website:需要信任评估的网站或页面
证据结构
每条证据应包含以下结构化信息:
- - id
- type
- content
- supportlevel(supports、contradicts、neutral)
- sourcelabel
- added_at
核心输出
每个验证案件应致力于产出:
- - 裁决结果
- 置信度
- 风险说明
- 缺失证据
- 建议的下一步操作
关键工作流程
- - 录入案件:addcase.py --title ... --type claim --claim ...
- 评分案件:scorecase.py --id VER-XXXX
- 审查案件:showcase.py --id VER-XXXX
- 更新证据:updatecase.py --id VER-XXXX --notes ...
- 结案:closecase.py --id VER-XXXX --verdict inconclusive
- 列出未结案件:listcases.py
脚本
| 脚本 | 用途 |
|---|
| addcase.py | 录入新的验证案件 |
| scorecase.py |
评估可信度、风险和证据质量 |
| show_case.py | 详细展示单个案件 |
| list_cases.py | 列出已存储的案件 |
| update_case.py | 更新备注、状态和证据 |
| close_case.py | 结案并给出最终裁决 |
| init_storage.py | 初始化本地存储 |