Currently supported versions of Hermes Evolution will receive security updates:
| Version | Supported | Security Updates |
|---|---|---|
| 0.1.x | ✅ Yes | Until 0.2.0 release |
| < 0.1.0 | ❌ No | N/A |
If you discover a security vulnerability, please do NOT create a public issue.
Instead, please:
- Send a private email: [security contact if applicable]
- Create a private security advisory: Use GitHub's "Report a vulnerability" feature
- Click "Security" → "Report a vulnerability"
- Provide detailed description
- Include steps to reproduce if applicable
When reporting a vulnerability, please include:
- Description: What the vulnerability is
- Impact: Potential impact on users/systems
- Reproduction: Steps to reproduce (if applicable)
- Environment: Version, OS, Python version
- Proof of Concept: If applicable, a safe demonstration
- Mitigation: Suggested mitigation (if known)
We aim to respond to security reports within:
- 48 hours: Initial response acknowledging receipt
- 7 days: Assessment of severity and proposed timeline
- 30 days: Patch release (for critical/high severity)
- Critical: Immediate risk, requires urgent patch
- High: Significant risk, expedited patch
- Medium: Moderate risk, next release
- Low: Minor risk, backlog for consideration
Hermes Evolution has two modes with different security considerations:
- Can read and create issues/PRs
- Cannot modify code directly
- Cannot merge changes
- Risk: Abuse of issue creation, spam
- Mitigation: Rate limiting, content filtering
- Can implement and merge changes
- Can self-update
- Can modify repository
- Risk: Unauthorized modifications, malicious updates
- Mitigation:
- Requires private token
- Extensive validation
- Human oversight for critical changes
- Rollback capabilities
Self-update capabilities introduce specific security concerns:
- Token Security: Private tokens stored securely
- Validation: All changes validated before implementation
- Testing: Tests must pass before merge
- Rollback: Automatic rollback on failure
- Human Review: Critical changes require human review
- Secure tokens: Keep GITHUB_PRIVATE_TOKEN secure
- Monitor changes: Review automated changes
- Report issues: Report unexpected behavior immediately
- Backup: Maintain backups before enabling evolution
When syncing with upstream Hermes Agent:
- Verify source: Confirm changes come from official upstream
- Review changes: Manual review of upstream changes
- Test thoroughly: Extensive testing after sync
- Document: Document all upstream changes
-
Token Management:
- Use separate tokens for PUBLIC and PRIVATE modes
- Rotate tokens regularly
- Use minimal required scopes
- Never commit tokens to repositories
-
Evolution Mode:
- Only enable PRIVATE mode if you're the repository owner
- Monitor evolution logs regularly
- Review automated changes before they're merged
- Keep backups
-
Updates:
- Review changelogs
- Test updates in non-production environments first
- Rollback plan before updating
-
Code Security:
- Follow secure coding practices
- Validate all inputs
- Sanitize data from external sources
- Use secure dependencies
-
Evolution Features:
- Document security implications
- Include security considerations in PRs
- Test for security vulnerabilities
- Avoid introducing new attack vectors
- Mode detection: Prevents unauthorized mode operations
- Input validation: All inputs validated
- Rate limiting: Prevents abuse of APIs
- Logging: Comprehensive logging for security monitoring
- Rollback: Automatic rollback on failures
- Evolution logs: Monitor for unusual activity
- GitHub audit logs: Review repository access
- Error tracking: Monitor for security-related errors
We regularly scan dependencies for vulnerabilities:
- Automated scans: GitHub Dependabot
- Manual reviews: Regular dependency reviews
- Updates: Prompt updates for vulnerable dependencies
If you discover a vulnerability in our dependencies:
- Check if already reported to the dependency maintainer
- Report to the dependency maintainer
- Optionally notify us via private channel
[Placeholder for past security audits]
For security researchers interested in auditing Hermes Evolution:
- Contact us via private channel
- Describe scope and timeline
- Agree on disclosure timeline
- Coordinate disclosure
We follow responsible disclosure:
- Acknowledge: Confirm receipt of report
- Assess: Determine severity and impact
- Fix: Develop and test fixes
- Release: Coordinate release with reporter
- Credit: Credit reporter (if desired)
- Timing: After fix is available
- Credits: At reporter's discretion
- Details: Sufficient detail for users to assess risk
For security-related matters:
- GitHub Security: Use "Report a vulnerability"
- Email: [security email if applicable]
- PGP Key: [PGP key if applicable]
To receive security updates:
- Watch repository: Enable "Watch for releases"
- Security advisories: Enable notifications
- Dependabot: Enable Dependabot alerts
When security updates are released:
- Review advisory for impact
- Assess if you're affected
- Update to latest version
- Monitor for issues
Security is a community effort. Thank you for helping keep Hermes Evolution safe. 🔒