Thank you for your interest in contributing to DUDA! This guide will help you get started.
- Use GitHub Issues for bug reports and feature requests
- Include your Claude Code version and OS
- For contamination detection issues, include (sanitized) project structure
- Fork the repository
- Create a feature branch:
git checkout -b feature/my-improvement - Make your changes
- Run evals: ensure all test cases pass
- Submit a Pull Request
- All existing evals pass (weighted avg >= 98)
- New features include eval test cases
- English-only in user-facing content
- Python scripts use stdlib only (no pip dependencies)
- Code follows existing style conventions
# Clone
git clone https://github.com/popup-studio-ai/duda-skill.git
cd duda-skill
# Install as Claude Code skill (for testing)
cp -r duda ~/.claude/skills/duda
# Run evals
# (Use Claude Code eval framework)Add new test cases to evals/evals.json:
{
"id": 17,
"mode": "TRANSPLANT",
"prompt": "Your test prompt here",
"expected_output": "Expected behavior description",
"expectations": [
"Specific expectation 1",
"Specific expectation 2"
]
}Each expectation should be independently verifiable.
Add new patterns to references/patterns.md following the format:
### X-N. Pattern Name
**Risk Pattern:**
(code block with ❌ prefix comment)
**Fix Pattern:**
(code block with ✅ prefix comment)- Python: PEP 8, type hints where helpful, docstrings for public functions
- JavaScript: ES6+, JSDoc for exported functions
- Markdown: ATX headings, fenced code blocks with language tags
By contributing, you agree that your contributions will be licensed under the Apache License 2.0.