Refract: the open claim-history layer for public knowledge
Refract reveals how claims change across public revision histories.
npx @refract-org/cli analyze "Earth" --depth brief
Node.js 20+ or Bun 1.2+ · Git 2.x · Any MediaWiki instance
The printing press froze knowledge in editions. Wikipedia made it mutable. Refract makes the mutation legible — a deterministic event stream showing where every claim came from, what changed, what supported it, what challenged it, when it stabilized, and what context altered its meaning.
Why Refract?
| 🔍 Deterministic — Same input, same output. Every run byte-for-byte identical. No model, no variance. | ⚙️ Provenance-tagged — Every event carries revision, section, timestamp, and analyzer identity. |
| 🔐 Configurable heuristics — Every threshold is a BYO-inference boundary. Plug a model where you need one; the defaults work offline. | 📊 26 event types — Sentence lifecycle, citations, templates, reverts, sections, categories, wikilinks, talk pages, clusters, protection changes. |
| 🔧 Merkle-provable — Signed bundles and replay manifests for audit trail integrity. | 🧩 Pluggable architecture — Swap analyzers and storage without changing the core pipeline. |
Quick start
# 1. Install (zero install also works via npx)
npx @refract-org/cli analyze "Earth" --depth brief
# 2. Explore results in the web UI
refract explore "Earth"
# 3. Export as structured data
refract export "Earth" --format ndjson > earth-events.jsonl
# 4. Save as a signed evidence bundle
refract export "Earth" --bundle > earth-bundle.json
# 5. Output an ObservationReport with claim lifecycle
refract analyze "Earth" --report > earth-report.json
What Refract does not do
- No model interpretation — semantic analysis of what a change means is handled by downstream systems
- No truth claims — Refract reports what changed, not whether the change is accurate
- No prediction, sentiment analysis, or editor scoring
- No claims about compliance, policy violations, or decision relevance
By use case
| You are | Start here |
|---|---|
| Journalist or researcher | Live Demo → Quick Start → Tutorials |
| Data scientist or OSINT analyst | Analytics with DuckDB → Notebook analysis → Export with --flatten |
| ML engineer building RAG | Downstream integration → Python SDK → LangChain loader |
| Regulatory or policy monitor | CLI cron → GitHub Actions observe workflow → Tutorial: Citation churn |
| AI agent developer | MCP / AI integration → BYO-inference boundaries → Classify command |
| System integrator | SDK reference → Production DDL → Version compatibility |
Contents
Getting Started
Reference
- CLI command reference — SDK / package reference
- Event schema — Event taxonomy
- Analysis depth levels — Export formats
Integration
Tutorials
Appendix
License
AGPL-3.0. Built and maintained by NextConsensus.