Thank you for your interest in contributing to the Sentinel Stack! As a kernel-native defense quadrant operating from Ring -3 to Layer 7, contributions require rigorous engineering standards to maintain deterministic security.
By participating in this project, you agree to abide by our Code of Conduct. We expect all contributors to maintain a professional, respectful, and inclusive environment.
- Fork & Branch: Fork the repository and create a feature branch (
feat/your-featureorfix/your-fix). - Build Locally: Ensure you can compile the entire monorepo using
make allfrom the repository root. - Run the Tests: Run
make testinside the respective component directory (e.g.,cd sentinel-cc && sudo make test). Do not submit PRs that break existing integration or unit tests. - Commit Formatting: We use Conventional Commits (e.g.,
feat: implement X,fix: resolve Y). - Pull Requests: Open a Pull Request against the
mainbranch. Provide a clear description of the problem solved, the architectural impact, and how it was tested.
If you find a bug or have a feature request, please open an issue with:
- The component affected (e.g.,
sentinel-smm,telos-runtime). - Steps to reproduce.
- Your OS and kernel version.
Warning
Security Vulnerabilities: If you discover a security vulnerability, please DO NOT open a public issue. See SECURITY.md for our coordinated disclosure process.
To bootstrap a local development environment:
- Ensure you have
clang,llvm,cmake,libbpf-dev,libelf-dev, andgolanginstalled. - Clone the repository and run
make allto build the daemons. - Refer to the individual
README.mdanddocs/folders inside each component for specific tooling requirements (e.g., Rust/Z3 fortelos-lang, EDK II forsentinel-smm).