# Overview

## How to contribute?

The purpose of these guidelines is to serve as a living contribution and collaboration guide for all our projects.

Everyone, not just Kleros team members, is welcome to participate in its writing and editing. We are always looking to enhance and improve our processes so we can decentralize justice faster!

## Table of Contents

This guide is a compilation of years of experience in the fields of traditional software engineering, and smart contract and financial software auditing. We've broken it down into three parts:

| General Workflow                                                | Smart Contract Workflow                     | Code Style & Guidelines                                | License & Code of Conduct                    |
| --------------------------------------------------------------- | ------------------------------------------- | ------------------------------------------------------ | -------------------------------------------- |
| General process and standards for writing and pushing software. | Smart contract specific security protocols. | Stylistic guidelines for our main languages and tools. | Our standard license and conduct guidelines. |

## Kathari CLI \[Deprecated]

~~To make following our standards easier, we made~~ [~~Kathari~~](https://github.com/kleros/kathari)~~, a linting and formatting scripts for multiple types of projects.~~

{% hint style="info" %}
~~Kathari means "Clean" in Greek.~~
{% endhint %}

~~It's a CLI that can easily be integrated into new projects to provide automatic linting and formatting that adheres to our standards on everything from code to git commit messages.~~

~~It's based on very popular open source technologies so there are integrations for all of the most popular text editors and IDEs.~~

## Main Repos

* [kleros](https://github.com/kleros) - [Kleros whitepaper](https://kleros.io/assets/whitepaper.pdf) arbitrator implementation smart contracts.
* [kleros-interaction](https://github.com/kleros-interaction) - Arbitrable smart contracts and other contracts that can interact with Kleros.
* [archon](https://github.com/kleros/archon) - Wrapper that simplifies interfacing with smart contracts that adhere to the [arbitration (ERC792)](https://github.com/ethereum/EIPs/issues/792) and [evidence (ERC1497)](https://github.com/ethereum/EIPs/issues/1497) standards.

## Referencing This Guide

All of our projects' `CONTRIBUTING.md` files should link to this page, but they can also specify their own project-specific guidelines in that same file.

{% hint style="info" %}
This site is maintained at [github.com/kleros/CONTRIBUTING.md](https://github.com/kleros/CONTRIBUTING.md) and hosted at [contributing.kleros.io](https://contributing.kleros.io)!
{% endhint %}

The rules in this guide are meant to be followed as much as possible, but should not override common sense.

> The golden rule is that there are no golden rules.
>
> -George Bernard Shaw-


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.kleros.io/contribution-guidelines/overview.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
