Thank you for your interest in contributing to ClaudeAutoPM! This project uses a flexible hybrid workflow that adapts to different types of contributions.
If you're a trusted contributor making small fixes:
git checkout main
git pull origin main
# Make your changes
npm test
git commit -m "fix: description"
git push origin mainFor new features or if you're a new contributor:
git checkout -b feat/your-feature
# Make your changes
npm test
git commit -m "feat: description"
git push origin feat/your-feature
# Open PR on GitHubgraph TD
Start[Want to contribute?] --> Q1{Trusted contributor?}
Q1 -->|Yes| Q2{Type of change?}
Q1 -->|No| PR[Create Pull Request]
Q2 -->|Hotfix/Docs| Direct[Direct Commit]
Q2 -->|Feature| Q3{Size?}
Q3 -->|Small| Direct
Q3 -->|Large| PR
Q2 -->|Breaking| PR
-
Clone the repository
git clone https://github.com/rafeekpro/ClaudeAutoPM.git cd ClaudeAutoPM -
Install dependencies
npm install
-
Run tests
npm test -
Install locally for testing
npm link autopm --help
We use Conventional Commits for all contributions:
feat:New featurefix:Bug fixdocs:Documentationstyle:Formatting (no code change)refactor:Code restructuringtest:Adding testschore:Maintenance
✅ fix: resolve installation error on Windows
✅ feat: add GitLab CI/CD support
✅ docs: clarify Azure DevOps setup
❌ fixed stuff
❌ update
❌ wip
Appropriate for:
- Critical hotfixes
- Documentation typos
- Small bug fixes
- Config updates
- Trusted contributors
Requirements:
- Pass all tests locally
- Follow commit conventions
- Small, focused changes
Required for:
- New features
- Breaking changes
- Large refactors
- External contributors
- Dependency updates
- Experimental work
Benefits:
- Code review
- CI/CD validation
- Discussion platform
- Change documentation
This project follows strict TDD methodology. Before submitting any contribution:
-
Run all tests
npm test # Jest unit tests npm run test:node # Node.js native tests npm run test:security # Security validation npm run test:regression # Regression tests
-
Run linting
npm run lint npm run lint:fix
-
Test installation scenarios
npm run test:install # Installation validation npm run test:install:scenarios -
For new features - TDD approach REQUIRED
- Write failing tests FIRST - Before implementing any code
- Create test files in
test/directory - Use Jest framework for new tests
- Follow existing patterns in
test/unit/andtest/integration/ - Ensure 100% coverage for new code
AUTOPM/
├── autopm/ # Framework resources
│ └── .claude/ # Claude configuration
├── bin/ # CLI executables
├── install/ # Installation scripts
├── test/ # Test suites
└── docs/ # Documentation
Our GitHub Actions run on:
- Direct commits to main: Quick validation
- Pull requests: Comprehensive testing
- Installation scenarios
- Security checks
- Docker integration (if applicable)
- Kubernetes deployment (if applicable)
- Cross-platform compatibility
# Test installation locally
./install/install.sh /tmp/test-project
# Test specific scenario
echo "1" | ./install/install.sh /tmp/test-minimal
# Test CLI commands
node bin/autopm.js --help# Enable verbose output
export VERBOSE=1
npm test
# Debug installation
export AUTOPM_DEBUG=1
autopm install- Additional CI/CD platform support (GitLab CI, Jenkins)
- Windows compatibility improvements
- More language-specific templates
- Performance optimizations
- Agent registry expansion (currently 50+ agents)
- Documentation improvements
- Add more examples to
autopm/.claude/examples/ - Improve error messages in commands
- Add unit tests for existing commands
- Update agent documentation
- Web UI for configuration
- Plugin system for custom commands
- More specialized AI agents
- Integration with more project management tools
- Context optimization features
- Constructive feedback only
- Help newcomers
- Respect different opinions
- Stay on topic
- No spam or self-promotion
- Follow GitHub's terms
- Questions: Open a Discussion
- Bugs: Open an Issue
- Ideas: Start a Discussion
Contributors are recognized in:
- Release notes
- Contributors file
- Project README
By contributing, you agree that your contributions will be licensed under the MIT License.
For security vulnerabilities, please email directly instead of opening a public issue.
Thank you for helping make ClaudeAutoPM better! 🚀