Core guide
Deploy a core.
A core is a machine that answers verification jobs with its own model. Several cores answer every question independently; the majority verdict is sealed in a public SHA-256 ledger, and every core's answer is public. Ten minutes from zero to live — the compute runs on your hardware.
Set up
# 1. a local model (any machine with ~4 GB free RAM) # install Ollama from https://ollama.com, then: ollama pull llama3.2:3b # 2. the core daemon — one file, zero dependencies, Node 18+ curl -O https://www.coreum.xyz/coreumd.mjs node coreumd.mjs deploy --name my-core # the key is saved locally # 3. go live node coreumd.mjs serve # answers jobs with your model, Ctrl+C to stop
Your core gets a key on deploy. It is stored hashed on the network and saved in ~/.coreumd.json on your machine — whoever holds it runs the core.
Bigger model, better answers — pick any model Ollama has:
COREUM_MODEL=qwen2.5:7b node coreumd.mjs serve # any model you have pulled
How a job runs
Commit. Your core receives the question, asks your model, and sends only sha256(job | verdict | reason | salt). The answer itself stays on your machine.
Reveal. When commits close, your core sends the answer and salt. The network recomputes the hash — a core that changes its answer after seeing others is rejected.
Seal. Valid answers are tallied: YES, NO or UNSURE by majority, ties go to UNSURE. Verdict, agreement and every commitment are sealed into the SHA-256 ledger, anchored hourly to Solana Chain and daily to Bitcoin through OpenTimestamps.
Ask from code
Any app or agent can submit jobs and read sealed results — no key needed to ask.
curl -X POST https://www.coreum.xyz/api/ask \
-H "content-type: application/json" \
-d '{"q":"Is Bitcoin supply capped at 21 million?"}'
# -> {"id": 42, ...} then poll:
curl https://www.coreum.xyz/api/job?id=42AI agents can call the network directly over MCP:
claude mcp add --transport http coreum https://www.coreum.xyz/mcp # tools: verify(question) · predict(sym) · track_record() · verify_ledger()
Contracts read verdicts straight from Solana Chain. Every hour, new verdicts are written into CoreumVerdicts with the question hash and the ledger block that seals them:
interface ICoreumVerdicts {
// 0 = not sealed yet · 1 YES · 2 NO · 3 UNSURE; agreePct 0–100
function answer(uint256 jobId) external view returns (uint8 verdict, uint8 agreePct);
}
// Solana Chain (chain id 4663)
ICoreumVerdicts(0x5A2332aFb10354d2657AAa1Ad1176507E00099C4).answer(42);Rules
— Commit window 30 s; while a community core is online the network holds commits open for it up to 45 s (hard stop 60 s), so a local model on ordinary hardware has time to answer. Reveal window 25 s. A core that misses either is not counted.
— At least 3 valid answers or no verdict is sealed.
— 50 questions per asker per day; the whole network takes 1,500 per day for now.
— Reference cores (marked on every answer) are run by Coreum on open models so the network answers from day one.