Testnet only (Arkiv Tiramisu). OpenTrigger 0.1 has not had an outside audit.
OpenTrigger

Introduction

Rules on Arkiv. Actions on time. OpenTrigger workers act when an entity expires or a time arrives, and leave a signed receipt.

Arkiv stores data as entities that expire. When an entity expires, Arkiv sends no event: it simply stops showing up in queries. So every app that needs "do something when this expires" writes its own watcher, and its own cron job, and has no way to prove the job ran.

OpenTrigger closes that gap with three pieces, all of them on Arkiv:

PieceWhat it isWho writes it
Rule"When this entity expires (or at this block), do this." An entity of type trg.ruleYou, with your own wallet
WorkerAn open-source program that watches deadlines and runs the actionAnyone; there is a public one
ReceiptSigned proof that a rule fired: when, the result, and which workerThe worker that fired it

Workers never talk to apps and apps never talk to workers. Apps write rules and read receipts; workers read rules and write claims and receipts. If the dashboard goes down, rules still fire. If one worker goes down, any other worker picks its rules up.

Apps and the dashboard write rules to Arkiv and read receipts back. Workers read rules, write receipts to Arkiv, and deliver Telegram messages or webhooks.
Arkiv connects apps and workers. A worker calls an outside service only to deliver an action. Select the diagram to open it at full size.

What a rule can do

A rule has one trigger and one action from a fixed menu. Rules never contain code.

WhenThen
An entity expires, optionally some blocks earlySend a Telegram message
A block height (a date and time) arrivesCall a webhook with a signed POST
Record a receipt and nothing else
Extend an entity

Where to start

Testnet only

OpenTrigger 0.1 runs on Arkiv's Tiramisu testnet (chain 7738577). It has not had an outside audit, and the entity format may change (every entity carries a version, v = 1).

On this page