A rules engine and a console, or the whole lifecycle around them.
ROOST is a nonprofit that publishes free, open-source trust and safety tools: Osprey, the real-time rules engine Discord donated, and Coop, a review console.
What ROOST is
Osprey evaluates rules on events as they arrive. Coop is where reviewers work the cases that those rules open.
What Swiftward does differently
| Capability | ROOST | Swiftward |
|---|---|---|
| Rules a policy person edits, live | Yes | Yes |
| Reviewer queues and case management | Yes | Yes |
| Bring your own detectors, no lock-in | Yes | Yes |
| Runs on your own infrastructure | Yes | Yes |
| Versioned policy, rolled back by naming a version | partial | Yes |
| Backtest a candidate against your recorded history, verdict by verdict | no | Yes |
| Shadow-test a change on live traffic before it takes effect | no | Yes |
| A/B two policy versions on live traffic | no | Yes |
| Tamper-evident audit trail | no | Yes |
| Defend a past decision with the rule and the frozen version that made it | no | Yes |
| DSA Article 17 statement of reasons, generated from the decision | no | Yes |
| One deployment with SSO, row- and field-level access, multi-tenancy and support | no | Yes |
| The same engine also decides payments, claims and agent tool calls | no | Yes |
The first four rows are equal, and they are the work a moderation team does every day. The other rows are about what a policy change costs you, and what you can prove afterwards.
What those rows mean in practice
You want to tighten a threshold. Here you write the candidate, run it over last month and read every account whose verdict flips, then put it in shadow on live traffic before it decides anything. On the open-source path you reason about the change, ship it, and watch the queue.
A user disputes a takedown eight months later. Here the decision record names the rule, the frozen version it ran on and the signals it read, in a tamper-evident record an auditor can verify. Rule history in a repository tells you what the rules were, not which one decided that account, and it does not prove the record is unchanged.
Your security review starts. Here it meets one binary plus Postgres, with SSO, access control down to the row and the field, multi-tenancy and secrets already in it, and a support line to call. With two components across several services, you set all of that up and answer for it yourself.
Beyond moderation
A platform that moderates content and also moves money governs both from one place, on the same records and the same review queues. Gateways for LLM, MCP, network, FIX and blockchain calls are part of the same binary.