Skip to content

Contributing

Documentation for working on beetkeeper itself. If you just want to run beetkeeper, see the getting started page.

Contributions are welcome! If you are interested in contributing, please read through this page first.

Whether you want to contribute a doc change, a new feature, or a bug fix, it is recommended that you open an `

AI / LLM Usage Rules

  • All AI usage in any form must be disclosed. You must state the tool you used (e.g. Claude Code, Cursor, Amp) along with the extent that the work was AI-assisted.

  • The contributor must fully understand all code they are sharing. If you can't explain what your changes do and how they interact with the greater system without the aid of AI tools, do not contribute to this project.

  • All community interactions, including comments, discussion, issues, PR titles, and descriptions must be composed by a human. The one exception here is LLM-assisted translations. Please note when this is in use (ex: "I am translating from LANGUAGE with an LLM")

  • No AI-generated media or "art" is allowed. This means, no AI-generated images, videos, audio, etc. Code is the only acceptable AI-generated content, per the other rules in this policy. As beetkeeper is itself a celebration of music and art, this a zero-tolerance rule.

This AI policy was adopted from the ghostty-org AI policy and the Pantsbuild LLM Assistance Notice.

Development Guides

  • Testing & development — local dev setup, running the test suite, and the Pants-based build workflow.
  • Building artifacts — packaging the wheels, the per-arch image PEXes, and the server image; regenerating the complete-platform JSONs.
  • Release management — how releases are cut and published.

The source lives on GitHub; issues and feature requests are welcome on the issue tracker.