What is Cicero?

Smart agreements require machine executable components to be included within the text of documents. The Cicero format enables contract text to be converted to structured templates.

Cicero templates consist of:

  • a data model defining the agreement variables and their format
  • agreement text; and
  • optional business logic to add executable functions to the document.

Why is it helpful?

With Cicero, users are able to build templates and agreements using reusable domain models and markup to define clauses, sections, links, lists, tables, expressions, embed execution logic, and more. Cicero also includes a Node.js VM designed to be easily embeddable across a wide-variety of form factors: web, middleware, SaaS, on-blockchain execution and off-blockchain execution.

Example Clause Template

This is a template for a Late Delivery Clause, which automatically notifies the seller that they owe a penalty to the buyer if the delivery is late.







Cicero is designed to be technically neutral — a ‘.doc’ format for executable agreements. Templates formatted using Cicero enable components (e.g. clauses or sections) to be executed in separately defined environments. For example, an agreement may comprise clauses that execute off-chain and clauses that execute on a blockchain.



Quickly and easily structure an agreement using markup language.



The Cicero templating system is built to be easily extensible in order to support new, additional, and updated components.



By supporting reusable models, users are able to quickly and easily create structured templates using industry standard business domain schemas and specifications (e.g. patents, loans, etc); enabling contracts and clauses to be standardized and content verified.