Introducing CKAutomata: Payment Automation and Nervos DAO Harvest on CKB

Hello everyone,

I have been working on CKAutomata, a payment automation application built for CKB.

The idea is simple: you choose what a payment should do and when it should happen. Your wallet
shows you the complete plan before you approve it. CKAutomata then watches the chain and submits
only the payment you approved when the right time arrives.

The main feature is Nervos DAO Harvest. It helps a user collect earned DAO compensation and put
the original CKB amount back into a new DAO deposit without having to remember each withdrawal
step. CKAutomata also supports one-time scheduled payments and recurring payments.

CKAutomata is live on CKB Testnet. It does not hold a user’s private key, and the service cannot
change the approved amount, recipient, schedule, or recovery address.

Project Links

The Problem: Some Payments Still Need You to Come Back Later

Many CKB actions cannot be completed in one sitting.

A Nervos DAO user may need to wait for the right withdrawal window, prepare the withdrawal, wait
again for it to mature, claim the CKB, separate the earned compensation, and make a new deposit.
Missing the right time can mean waiting for another DAO cycle.

The same problem appears in normal payments. A user may want to send CKB next week or pay the same
recipient every month. Today, the user or an application server must remember the date and submit
each transaction.

CKB can check whether a payment follows the rules, but the chain does not wake up and send a
transaction by itself. CKAutomata adds that missing payment service. It watches for the right time,
builds the approved transaction, and submits it for CKB to check.

Main Feature: Nervos DAO Harvest

Nervos DAO lets CKB holders earn compensation while their CKB is deposited. Withdrawing from the
DAO is a two-step process.

First, the deposit must be prepared for withdrawal. After that, the user must wait until the
withdrawal becomes mature before the CKB can be claimed. This process is described in
RFC 23.

Harvest Compensation automates this cycle for users who want to receive the earned compensation
while keeping the original amount in Nervos DAO.

How the Harvest Works

  1. Choose the original amount. The user chooses the amount of CKB that should remain in Nervos
    DAO.
  2. Choose the compensation address. This is where the earned compensation will be sent after
    each completed harvest.
  3. Choose how many harvests to run. The user can choose one harvest or a fixed number of
    harvests. CKAutomata cannot add more later.
  4. Review the full deposit. The review shows the original amount, the automation charges, and
    the total amount the wallet will deposit. The charges are added separately and do not reduce the
    chosen original amount. Part of the extra amount is a reserve needed by the on-chain
    automation.
  5. Approve once. The wallet signs the setup transaction and locks in the exact amount,
    compensation address, number of harvests, charges, and recovery rules.
  6. Wait for the right DAO window. CKAutomata tracks the DAO cycle and prepares the withdrawal
    when the approved rules allow it.
  7. Wait for maturity. Nervos DAO still requires the normal waiting period. CKAutomata cannot
    skip or shorten it.
  8. Collect and deposit again. After maturity, the earned compensation goes to the chosen
    address and the exact original amount enters a new DAO deposit.
  9. Repeat only when approved. If the user selected more harvests, the next cycle begins. After
    the final harvest, no new cycle is created.

For example, if a user chooses 10,000 CKB as the original amount, that exact 10,000 CKB is the
amount that must return to Nervos DAO after each harvest. Only the compensation earned above that
amount is sent to the compensation address.

Who Controls the DAO Funds?

The user’s wallet approves the rules at the beginning. CKAutomata’s contracts then limit what an
executor can do with the deposited funds.

The owner keeps separate wallet-controlled options:

  • Stop prevents another harvest cycle from being created.
  • Exit begins the normal DAO withdrawal process so the owner can leave the automation.
  • Recover returns mature funds through the owner’s approved recovery path if the service is
    unavailable or the automation cannot continue.

If a DAO withdrawal has already been prepared but is not mature, The owner must wait for the normal maturity time before recovery can finish.

Other Payment Automation

Scheduled Payment

A user chooses an amount, recipient, refund address, and future date and time. The payment cannot be completed before that time. When the time arrives, CKAutomata submits the
approved recipient. The user can cancel or recover a live payment with the owner
wallet.

Recurring Payments

A user chooses one recipient, one amount for every payment, the first payment date, how often the
payment should repeat, and the total number of payments.

After each payment, the contracts create one next payment with the same recipient and amount. The
executor cannot add more payments or change the schedule. After the final payment, the automation
ends and the remaining value follows the approved owner return.

Recurring payments are fully funded when they are created. They are not an unlimited permission
to take money from the user’s wallet later.

Why CKB Is a Good Fit

On CKB, an automation can live in its own cell. That cell can record the payment rules, schedule,
remaining amount, executor charge, and owner recovery details.

CKB’s since rule
can stop a payment from being accepted too early. The CKAutomata scripts also check the payment
recipient, amount, executor reward, remaining funds, and next payment together.

This means the executor provides the action, but CKB provides the final check.

The wallet connection uses CCC. CCC completes the wallet
inputs, network fee, change, signing, and submission. CKAutomata checks the completed transaction
again before asking the user to approve it.

How Automatic Payments Are Completed

The current payment flow has five simple parts:

  1. The user chooses DAO Harvest, Scheduled Payment, or Recurring Payments.
  2. CKAutomata shows the complete amount, charges, destination, timing, and recovery rules.
  3. The user’s wallet approves the exact setup transaction.
  4. CKAutomata watches the chain and submits the approved payment when it becomes ready.
  5. CKB scripts check the transaction. A correct transaction completes; an incorrect one is
    rejected.

What Works Today

The current CKB Testnet release includes:

  • Nervos DAO Harvest setup, cycle tracking, compensation payment, repeat deposit, stop, exit, and
    recovery tools.
  • One-time scheduled CKB payments.
  • Finite recurring CKB payments.
  • Wallet connection, transaction review, signing, and submission through CCC.
  • Deployed CKB contracts for payment rules, DAO funds, automation jobs, and owner recovery.
  • Two live executors supporting Harvest, scheduled, and recurring payments.
  • A public automation dashboard, activity history, confirmation progress, and transaction links.
  • Tests for contracts, payment building, failures, recovery, APIs, executors, and browser flows.

The blockchain remains the final record. The dashboard and database help people read what is
happening, but they cannot change the on-chain payment rules.

Try CKAutomata

Open the live application and connect a supported wallet on CKB
Testnet.

Start with Harvest Compensation to review the original DAO amount, compensation address,
number of harvests, charges, and owner recovery controls. You can also create a Scheduled Payment
or Recurring Payments plan.

After submission, open Automations to follow it through confirmation, waiting, processing, and
completion. The How it works page explains every
flow without requiring knowledge of block numbers or transaction details.

Use only testnet funds and review every wallet request. The current deployment is an open testnet
experiment, not a production financial service.

What Comes Next

The next work is focused on making Harvest Compensation safer and reliable
over many DAO cycles. This includes more testnet use, clear measurement of charges and timing.

CKAutomata will also continue improving scheduled and recurring payments and make it easier for
other CKB applications to add payment automation without building their own private-key bot.

Feedback From the Community

I would especially appreciate feedback on:

  • Whether Harvest Compensation would be useful to Nervos DAO users.
  • Whether the Harvest steps, charges, waiting time, and recovery choices are easy to understand.
  • Which part of the Harvest contracts should receive the deepest independent review.
  • Which scheduled or recurring CKB payments people currently handle manually.
  • Which part of the CKAutomata need changes, fix or improvement.

Thanks for reading. I look forward to discussing the design and improving CKAutomata in the open.

3 Likes