handbook / contributing

Contributing

The honest state first. Hanji is pre-release, and it is not accepting external contributions yet. A lightweight contributor agreement will be in place before that opens. So this section is a standing invitation and a map, not an open door quite yet.

When it opens

Here is what contributing will look like, and what already holds today for anyone building on it.

  • Every commit needs a DCO sign-off. Use git commit -s. It is the Developer Certificate of Origin, a one-line statement that you wrote the code and can license it.
  • The history stays clean and human. Commits read like a person wrote them, because a person did.
  • Read Developing for how to run the project and the tests, Conventions for how the code is kept, and Open core for the license and what stays free.

Bringing your agent

You will likely write your contribution with a coding agent at your side - we do, and this product exists because of that way of working. So the policy is explicit rather than awkward: agent-assisted contributions are welcome. A human signs the DCO and answers for the change; the gates - the tests, the corpus round-trip, the leak suite - judge the code without asking who typed it. What we ask is the same thing we ask of any contributor: understand the change you are proposing, keep the history human, and never let an agent negotiate a review for you.

The spirit

Hanji has a small number of beliefs, listed in Principles, and the code is meant to hold them. A contribution that makes the product faster, clearer, or more honest about its limits is welcome. One that bundles a model, meters a feature, or quietly rewrites the user's files is not, however clever it is. The tie-breakers are the principles, for the code as much as the product.