Show HN: AI·rete·RAG – a Rete rule engine decides, RAG explains why (ai-rete-rag.com)
It runs the two in series instead:
1. A pure-Python Rete engine evaluates YAML rules against your facts. The verdict comes only from here. Same facts, same verdict, every time, with salience-based conflict resolution. 2. RAG retrieves passages from your own policy documents, and an LLM writes a plain-English explanation of the decision that was already made, citing those passages. It can't change the verdict.
A few things that went further than I expected: - Rules are a graph, not flat lists: nested all/any/not, and rules can assert facts that other rules consume (forward chaining). The decision trace shows the causal chain. - Audit mode records every rule evaluated, including the ones that didn't fire, condition by condition, with a snapshot of the rule set for replay. - Rules can steer retrieval (a fired rule narrows which documents get searched), and retrieved text can be turned into facts for the engine. - Non-technical authors can build rules in a visual editor, or paste a policy document and get LLM-drafted rules with citations. Drafts are never saved without review. YAML is still there for engineers.
The landing page has a live demo with no signup (8 demo domains: loan, fraud, clinical, insurance, legal, ops, e-commerce, blockchain). There's also an MCP server, so Claude and other agents can call /decide as a tool: `uvx ai-rete-rag-mcp`.
To be upfront: it's a hosted product with a free tier. The MCP client is open source (MIT, github.com/zaharajabeen13-create/ai-rete-rag-mcp); the engine and platform are not open source right now.
I'd especially like to hear from anyone who has had to explain an automated decision to a regulator or an auditor: what did they actually ask for?
33 comments
[ 1.6 ms ] story [ 166 ms ] threadWhen presented with the correct information, the model used it without issue. What it couldn’t reliably do was decide which information was still valid.
I’m curious about versioning on your end. When a rule changes, what happens to decisions made under the old rule? If someone asks six months later, “Why was this application rejected?”, does the explanation refer to the rule version at the time of the decision, or to the current one? Does the RAG side know that a policy passage has become invalid, or could it retrieve the old document to explain a new decision?