Your miner just learned to build on Ritual.
DAI Miner ships with nine skill documents from Ritual Chain. Ask your node how to call an on-chain LLM precompile, and it knows the answer — the address, the execution model, the shape of the data that comes back.
Here is what that is, and just as importantly, what it is not.
Knowledge, not a connection
This is the part worth being clear about up front: the node does not talk to Ritual Chain.
There is no RPC endpoint for it, no bridge, no precompile implementation. Nothing in the miner reaches out to Ritual at runtime.
What shipped is documentation the model can read. Your node became knowledgeable about Ritual, not connected to it. If you are building a Ritual dApp, that is the difference between an assistant that guesses and one that knows 0x0802 is the LLM precompile.
Plenty of “integrations” in this industry are a logo on a slide. This one is 88 KB of real reference material, and it earns its keep the moment you ask a question it covers.
The nine skills
| Skill | What it covers |
|---|---|
| ritual_overview | Chain architecture, the transaction lifecycle |
| ritual_precompiles | The complete precompile ABI reference |
| ritual_contracts | System contract addresses, ABI encoding |
| ritual_llm | On-chain inference via the 0x0802 precompile |
| ritual_scheduler | Time-triggered operations |
| ritual_wallet | Fee deposits, RitualWallet integration |
| ritual_x402 | Micropayment and paid-API patterns |
| ritual_deploy | Deployment and chain configuration |
| ritual_block_time | Block-time estimation and conversion |
They come from ritual-foundation/ritual-dapp-skills under the Clear BSD licence, and every file carries its source and licence at the foot.
Why they are condensed
Upstream skills are written for an agent with no context budget — one that can open bundled files whenever it likes.
A miner node is not that. It injects one truncated block into whatever local model the operator happens to be running, which might be a 1.7B model on a home machine.
So each skill is cut to a section boundary that fits the injection budget, then footed with a pointer to fetch the untruncated original through the gitmcp MCP. Depth stays one request away without shipping 898 KB of skill text to every node on the network.
There is a test that enforces this. If a skill grows past the budget, the build tells you.
Why none of them need an API key
The importer rejects any skill that is inert without an operator credential.
That rule cost us one: ritual-dapp-da covers data availability, and it needs GCS, HuggingFace or Pinata keys to do anything. It was dropped automatically.
That gate is the reason the shipped set needs no API key at all. Download the miner, and all nine work immediately — no signup, no dashboard, no free tier that expires.
The trade-off is honest: ritual_llm describes conversation history living on a DA provider, and the skill that covers that provider is not in the box. You get the inference patterns; you bring your own storage story.
Finding the right skill
Triggers are hand-written, one list per skill.
That sounds like a detail until you see what happens without it. Retrieval scores on trigger overlap, so a generated trigger list produces skills that technically ship and are never found — dead weight in the bundle.
Descriptions count too. Ask “help me with conversation history and streaming text generation” and ritual_llm surfaces, even though that phrasing appears in no trigger list.
Ask a conversational question and nothing fires at all, which is the behaviour you want — a router that stays quiet beats one that injects a precompile reference into small talk.
Three commands on your own node
List them:
Nine results, out of 88 skills the node carries.
Ask something only the skill knows:
A working answer knows 0x0802, knows the call is async, and knows you read the settled output from the transaction receipt rather than registering a callback. Those specifics exist in one place: ritual_llm.md.
Run the suite:
Nine tests. Every skill parses, declares triggers, fits the budget, points at no file that does not ship, and is reachable from a question phrased outside its trigger list.
One honest caveat
If your node runs a small local model, a correct skill can still produce a muddled answer. The skill being injected and the answer being good are two different things.
Check the logs for the skill id when you are testing. That tells you retrieval worked. Whether the model did something sensible with it is a separate question, and it depends on the model you chose.
Ritual is one of two upstreams in this release — sixteen skills arrived from Ritual Chain and MiniMax together. The same importer, the same budget rule, the same no-credentials gate applies to both.
Put an idle computer to work
A Mac mini, an old gaming PC, a server with spare hours. Download it, pick a model, and it starts earning while you get on with your day.