Skip to the content.

Contributing to Mac Admins Open Source Projects

Mac Admins Open Source projects live across a number of repositories under the github.com/macadmins organization. Each project has its own maintainers, goals, constraints, and technical details, but we expect the same basic contribution process across the organization.

We welcome thoughtful contributions, including bug fixes, documentation improvements, tests, new features, and maintenance work. The best contributions usually start with a clear discussion of the problem before code is written.

Discuss first, code second

Before opening a pull request that changes code, please open or comment on an issue first.

This is especially important for:

In the issue, describe:

This helps maintainers and contributors agree on the shape of the change before anyone spends time writing code.

A pull request can compile, pass tests, and still not be the right approach for the project. Discussing the work first reduces wasted effort and leads to better contributions.

AI-assisted contributions

AI-assisted contributions are allowed, but they are not exempt from the same standards as any other contribution.

If you use AI tools to help write code, tests, documentation, or issue content, you are still responsible for the result. That means you must understand the change, be able to explain it, and be prepared to revise it based on maintainer feedback.

Please do not submit AI-generated code that you do not understand.

Please do not submit large AI-generated rewrites, speculative refactors, or broad cleanup pull requests without prior discussion.

Please do not use AI tools as a substitute for understanding the project’s existing design, conventions, tests, and maintenance constraints.

Maintainers may close pull requests that appear to be generated without sufficient understanding of the project, even if the underlying idea is reasonable.

When a pull request is appropriate

A pull request is usually appropriate after:

Small documentation fixes, typo fixes, clearly isolated bug fixes, and very small maintenance changes may not need prior discussion. Use judgment. When in doubt, open an issue first.

Pull requests without prior discussion

Maintainers may close pull requests that introduce features, refactors, behavioral changes, compatibility changes, large rewrites, or broad cleanup without prior discussion.

This is not intended to discourage contributions. It is intended to make contribution work more useful, more maintainable, and more likely to be accepted.

Opening an issue first is usually the fastest path to a successful contribution.