Developer documentation

Kani is an open source project open to external contributions.

The easiest way to contribute is to report any issue you encounter while using the tool. If you want to contribute to its development, we recommend looking into these issues.

In this chapter, we provide documentation that might be helpful for Kani developers (including external contributors):

  1. Coding conventions.
  2. Useful command-line instructions for Kani/CBMC/Git.
  3. Development setup recommendations for working with cbmc.
  4. Development setup recommendations for working with rustc.
  5. Guide for testing in Kani.
  6. Transition to StableMIR.

NOTE: The developer documentation is intended for Kani developers and not users. At present, the project is under heavy development and some items discussed in this documentation may stop working without notice (e.g., commands or configurations). Therefore, we recommend users to not rely on them.