CellFabric: A UTXO-Generation and Inter-Protocol Composition Layer for CKB

Thanks for sharing this. It points in a different but important direction, so let me expand a bit.

Nervos is a family of protocols, with CKB at its core as the system’s verification layer and source of truth. Because CKB is optimized for decentralized verification, it intentionally leaves computation and scalability to off-chain layers. This naturally gives rise to two categories of protocols that complement CKB.

One category is Layer 2 protocols that improve system scalability. Examples include Godwoken (rollup), Fiber / Perun (channel), PoB-based Invisibook, and perhaps, someday, a transaction-DAG design.

The other category is UTXO-generation protocols. These protocols execute user intents and turn them into results that are ultimately settled as CKB transactions. They add programmability and make it easier to build interoperable applications on CKB, but they do not directly improve scalability, because in the end everything is still compiled into CKB transactions and settled on-chain. This category is unique to the UTXO model because its computation and verification are separated. For example, UTXO wallets are doing this because they need to translation user’s “payment” intention into actual UTXOs through some clever UTXO picking and generation algorithms. Several open-transaction efforts fall into this category too.

I believe UTXO-generation protocols are a very important yet still underexplored area for both CKB and UTXO chains more broadly. Because the UTXO model emphasizes verification, it needs a complementary protocol layer for computation and execution to complete the stack. The lack of UTXO-generation protocols in UTXO systems is one reason they are often difficult to use and build on. A blockchain for verification alone is not enough if there is no shared understanding of what the UTXO-generation side should look like. The freedom and flexibility of off-chain UTXO construction are powerful, but they also create fragmentation, compatibility issues, and poor interoperability across applications.

The main difficulty in creating a UTXO-generation protocol lies in deployment. In practice, it usually requires coordinated adoption and upgrade across wallets and existing on-chain scripts; simply using it in a new application is often not enough. That said, these challenges can be managed if the protocol is developed openly and communicated clearly with ecosystem participants in advance.

I wanted to make this distinction because, if I understand correctly, CellFabric is a protocol in the UTXO-generation category rather than a layer 2. It may deserve even more exploration than the transaction-DAG L2 idea as the direction remains underexplored yet essential.

Looking forward to seeing more of your work in this area.

3 Likes