k3sm licensed apache-2.0 (DCO)

Community

Where to ask questions, how to contribute, and how the project is governed. GitHub Discussions is the front door.


k3sm is an early, small project with a discussions board, an issue tracker, and an email address; all three are read.

Start with Discussions#

GitHub Discussions is the front door. Questions, “is this the right tool for what I am doing”, design arguments, and half-formed ideas all belong there. Answering a question in the open is worth more than answering it privately, so please prefer it to email.

Use the issue tracker when you have a specific reproducible bug or a concrete change to propose. Issues live in the repository the problem is in:

repositoryfile an issue here when
k3smthe CLI, install, the control plane, the node, packaging, and anything you are not sure how to place
runtimedPod execution, the Seatbelt sandbox, images, resource limits
darwin-netPod IPs, Services, DNS, the multi-Mac mesh
apisthe shared gRPC, CRD, and Go contracts

Security problems do not go in any of those. See security.

Before You Open Anything#

Two pages save everyone time. limitations lists the behaviors that diverge by design: restartPolicy, CPU limits, NetworkPolicy, how volume mounts resolve without a mount namespace, which addresses a Service answers on. Read it and you can tell a bug from a documented trade. troubleshooting covers the failures that come up most often during bring-up.

If a documented trade seems wrong to you, open a discussion. If a documented limitation surprised you, open an issue saying the page did not warn you clearly enough.

Contributing#

Contributions are welcome, and the requirements are written down.

The code is four Go repositories that build together as one Go workspace: apis (the shared contracts), runtimed, darwin-net, and k3sm. They target Apple silicon on macOS 26 or later with Go 1.26. k3sm and runtimed build with CGO_ENABLED=1, because they call macOS system interfaces through cgo; apis and darwin-net are pure Go. Each repository’s hack/ci.sh runs the checks a commit must pass: gofmt, go vet, build, tests, the license-header check, and a pinned staticcheck. Each repository has its own contributing guide: k3sm, runtimed, darwin-net, and apis.

  • CONTRIBUTING covers the build and test commands, the commit-message format, and what a reviewable pull request looks like.
  • Every commit needs a Developer Certificate of Origin sign-off (git commit -s). An unsigned commit does not merge.
  • The Go conventions every repository shares are checked in, identical across all four, and linked from CONTRIBUTING.
  • Docs count. A correction to a page that was wrong, unclear, or too generous about what k3sm does is as valuable as code here.

Good first contributions: reproduce a documented limitation on your own hardware and say what you saw; improve a troubleshooting entry; port a real workload and write up where it broke.

Governance and Conduct#

  • GOVERNANCE sets out roles, decision-making, and how maintainers are added. It describes a maintainer-council model the project is growing into, and the thresholds become meaningful as the council grows.
  • MAINTAINERS currently lists a single founding maintainer, @kitsumiko.
  • The Code of Conduct governs all participation, in every repository and every discussion. Report a violation to kitsumiko@k3sm.io.

Contact#

k3sm is Apache-2.0 licensed. If you want to help fund the hardware the project needs, see support.