# Contributing to Clarvis AI Thanks for your interest in contributing! Clarvis AI is built from several components, each with its own repo. ## Where to contribute | What you want to change | Where to open the PR | |-------------------------|----------------------| | CLI commands, AI generation, slicing, printer control | [makermate/claw3d](https://github.com/makermate/claw3d) | | AI agent behavior, intent routing, workflow instructions | [makermate/claw3d-skill](https://github.com/makermate/claw3d-skill) | | Slicing API, mesh conversion, profile management | [makermate/curaengine-slicer-api](https://github.com/makermate/curaengine-slicer-api) | | Setup script, Docker config, distro packaging | [makermate/clarvis-ai](https://github.com/makermate/clarvis-ai) (this repo) | ## How to contribute 1. Fork the relevant repo 2. Create a branch from `main` (`git checkout -b my-feature`) 3. Make your changes — one topic per PR 4. Test your changes locally 5. Open a pull request with a clear description of what and why ## Guidelines - Keep PRs focused — one feature, one fix, or one improvement per PR - Follow the existing code style in each repo - Add comments only where the logic isn't self-evident - If adding a new CLI command, update the skill instructions in `claw3d-skill` too - For new printer backends or AI providers, follow the existing base class patterns ## Reporting issues Open an issue on the relevant repo, or on [clarvis-ai](https://github.com/makermate/clarvis-ai/issues) if you're not sure which component is involved. ## Adding printer support If you've tested Clarvis with a printer model that isn't documented yet, you can contribute by sharing your working Cura 3MF export. This helps other users with the same printer get started without manual profile setup.