How to contribute

July 28, 2026 · View on GitHub

We're excited to have you consider contributing to our chaos! Contributions are always appreciated.

Krkn

Contributing to Krkn

If you would like to contribute to Krkn, but are not sure exactly what to work on, you can find a number of open issues that are awaiting contributions in issues.

Please start by discussing potential solutions and your proposed approach for the issue you plan to work on. We encourage you to gather feedback from maintainers and contributors and to have the issue assigned to you before opening a pull request with a solution.

Proposing Roadmap Items

If you have an idea that is larger in scope than a single bug fix or configuration option — a new capability, a new integration, or a significant architectural change — consider proposing it as a roadmap item. See the Roadmap contribution process for the full steps, including how to open a proposal issue, the community discussion period, and how the Maintainer Council votes on inclusion.

Adding New Scenarios and Configurations

New Scenarios

We are always looking for new scenarios to make krkn better and more usable for our chaos community. If you have any ideas, please first open an issue to explain the new scenario you are wanting to add. We will review and respond with ideas of how to get started.

If adding a new scenario or tweaking the main config, be sure to add in updates into the CI to be sure the CI is up to date. Please read the developers guide for more information on updates.

Scenario Plugin Development

If you're gearing up to develop new scenarios, take a moment to review our Scenario Plugin API Documentation. It's the perfect starting point to tap into your chaotic creativity!

New Configuration to Scenarios

If you are currently using a scenario but want more configuration options, please open a github issue describing your use case and what fields and functionality you would like to see added. We will review the suggestion and give pointers on how to add the functionality. If you feel inclined, you can start working on the feature and we'll help if you get stuck along the way.

Work in Progress PR's

If you are working on a contribution in any capacity and would like to get a new set of eyes on your work, go ahead and open a PR with '[WIP]' at the start of the title in your PR and tag the maintainers for review. We will review your changes and give you suggestions to keep you moving!

Office Hours

If you have any questions that you think could be better discussed on a meeting we have monthly office hours zoom link. Please add items to agenda before so we can best prepare to help you.

AI-Assisted Contributions

We welcome contributions that use AI tools (LLMs, code generators, AI coding agents, etc.) as development assistants. If you use AI tools in your contribution, please review our AI Contribution Policy for disclosure requirements, safety guidelines, and quality expectations. In short: disclose AI usage in your commit trailers and make sure you understand and can explain every line of code you submit.

Good PR Checklist

Here's a quick checklist for a good PR, more details below:

  • One feature/change per PR
  • One commit per PR (squash your commits)
  • PR rebased on main (git rebase, not git pull)
  • Good descriptive commit message, with link to issue
  • No changes to code not directly related to your PR
  • Includes functional/integration test (more applicable to krkn-lib)
  • Includes link to documentation PR (documentation hosted in https://github.com/krkn-chaos/website)

Helpful Documents

Refer to the docs below to be able to test your own images with any changes and be able to contribute them to the repository

Joining the Contributor Ladder

The following explains how to formally join the Krkn community at each level of the contributor ladder. For a description of what each role entails, see GOVERNANCE.md and MAINTAINERS.md.

Contributor

Anyone who participates in the project is a contributor. There is no application required — opening an issue, submitting a PR, reviewing someone else's work, improving documentation, or helping others in Slack all count.

To get started:

  1. Find something to work on in the open issues, or open one of your own.
  2. Join the #krkn channel on Kubernetes Slack to introduce yourself and ask questions.

Dedicated Contributor

Dedicated Contributors are active contributors who have moved beyond one-off participation and are consistently engaging with the project. This is the first formal step on the contributor ladder and requires an application.

Requirements — before applying, you should have:

  • Been actively contributing for at least 2 months
  • Submitted at least 2 non-trivial PRs that have been merged
  • Reviewed at least 3 PRs from other contributors
  • Shown familiarity with the project's coding style, testing practices, and documentation standards

How to apply:

  1. Open a Dedicated Contributor Application issue and complete all sections.
  2. Tag two current Maintainers to review your application.

Maintainers will evaluate the application and respond within two weeks. A simple majority vote of Maintainers is required for approval. Once approved, you will be added to MAINTAINERS.md and acknowledged in the project community.

Member

Members are Dedicated Contributors who have demonstrated sustained, high-quality involvement in the project — becoming a reliable presence in reviews, discussions, and mentoring. This role recognizes community members who are on the path toward Maintainership but have not yet taken on the full responsibilities of project oversight.

Requirements — before applying, you should have:

  • Been an active Dedicated Contributor for at least 3 months
  • Submitted at least 5 non-trivial PRs that have been merged
  • Reviewed at least 10 PRs from other contributors
  • Helped onboard or mentor at least one newer contributor (e.g., guided them through a PR, answered questions in Slack, or co-reviewed their work)
  • Demonstrated deep familiarity with at least one subsystem or area of the codebase

How to apply:

  1. Open a Member Application issue and complete all sections.
  2. Tag two current Maintainers to review your application.

Maintainers will evaluate the application and respond within two weeks. A simple majority vote of Maintainers is required for approval. Once approved, you will be added to MAINTAINERS.md and granted the appropriate repository permissions.

Maintainer

Maintainers are responsible for the overall health and direction of the project. They have write access to the repository and can merge pull requests.

Requirements — before applying, you should have:

  • Been an active Member for at least 6 months
  • Performed reviews for at least 5 non-trivial pull requests
  • Contributed at least 3 non-trivial pull requests that have been merged
  • Demonstrated the ability to mentor contributors and provide constructive, timely feedback
  • Shown a clear understanding of the project's technical direction and goals

How to apply:

Maintainer nominations are peer-driven — an existing Maintainer must sponsor your application.

  1. Reach out to an existing Maintainer (via Slack or a GitHub issue) and ask them to nominate you.
  2. The sponsoring Maintainer opens a Maintainer Nomination issue and completes all sections.
  3. The Maintainer Council votes on the issue or at the next monthly meeting. A simple majority is required for approval.

Once approved, you will be added to MAINTAINERS.md, granted write access to the repository, and invited to the maintainer mailing list.

Stepping down: To request removal from any role, see the "Requesting Removal" section in GOVERNANCE.md.

Questions?

Reach out to us on slack if you ever have any questions or want to know how to get started. You can join the kubernetes Slack here and can join our Krkn channel