Thanks for your interest in contributing! 🪨
- Fork the repository
- Clone your fork:
git clone https://github.com/YOUR_USERNAME/grugbot420.git - Install Julia 1.9+: julialang.org/downloads
- Setup:
julia --project=. -e 'using Pkg; Pkg.instantiate()' - Branch:
git checkout -b my-feature - Test:
julia --project=. -e 'using Pkg; Pkg.test()' - Push and open a pull request
- Improve wiki pages or README sections
- Add usage examples
- Clarify existing docs
- New action types for action packets
- Pattern scanner optimizations
- Additional PhagyMode maintenance actions
- Thesaurus seed dictionary expansions
- Test coverage improvements
Share interesting trained specimens! Save with /saveSpecimen and include the .specimen.gz file.
- Follow existing Julia conventions
- Use
@coinflipfor stochastic branching - One responsibility per function
- No silent failures — log or error explicitly
- Add comments for non-obvious logic
- One feature or fix per PR
- Include tests for new functionality
- Update docs if behavior changes
- Describe what and why in the PR description
# Full suite
julia --project=. -e 'using Pkg; Pkg.test()'
# Individual test files
julia --project=. test/test_brainstem.jl
julia --project=. test/test_immune.jl
julia --project=. test/test_input_queue.jlPlease include:
- What you expected vs what happened
- Steps to reproduce
- Julia version (
julia --version) - OS and version
- Founder: @marshalldavidson61-arch
- Organization: grug-group420
grug say: "ship code, not complexity" 🪨