Contributions are welcome. This document covers the process and standards.
git clone https://github.com/copyleftdev/allman.git
cd allman
cargo build
cargo check --all-targets- Fork the repository and create a feature branch from
master. - Keep changes small and focused. One logical change per pull request.
- Run checks before submitting:
cargo fmt
cargo check --all-targets
cargo test- Open a pull request with a clear description of what changed and why.
- Run
cargo fmton all Rust files. cargo check --all-targetsmust pass with zero warnings.- No new dependencies without justification in the PR description.
- Follow existing code style and comment conventions.
- Hot-path code must avoid disk I/O and heap allocation where possible.
Use concise, imperative-mood subjects:
fix: resolve inbox drain race on empty DashMap entry
feat: add batch broadcast to send_message
docs: update MCP tools table in README
Open a GitHub issue with:
- Steps to reproduce
- Expected vs. actual behavior
- Server logs (set
RUST_LOG=allman=debug)
Do not open public issues for security vulnerabilities. See SECURITY.md.