If you discover a security vulnerability in Claude PP, please report it responsibly:
- DO NOT open a public GitHub issue for security vulnerabilities
- Email the maintainer directly with details of the vulnerability
- Include steps to reproduce the issue
- Allow reasonable time for a fix before public disclosure
- All data is stored locally in
~/.claude_peepee/claude_peepee.db - SQLite database with WAL mode for safe concurrent access
- No data is transmitted to external servers
- No cloud storage or synchronization
- All database queries use parameterized statements
- FTS5 queries are sanitized to prevent injection attacks
- User input is never interpolated directly into SQL
- Fact content limited to 1MB maximum
- Message content limited to 64KB maximum
- Tag length limited to 100 characters
- Maximum 50 tags per fact
- Query results limited to 1000 entries
- No telemetry data is collected (telemetry is disabled by default)
- No personal information is stored or transmitted
- Machine identification uses one-way SHA256 hash (if telemetry enabled)
- Users can opt-out with
CLAUDE_PP_NO_TELEMETRY=1orDO_NOT_TRACK=1
- Communication happens over stdin/stdout (local only)
- JSON-RPC 2.0 protocol with proper error handling
- No network listeners or exposed ports
- Instance communication is local (same machine only)
- Keep the binary updated - Install latest releases for security fixes
- Protect your data directory - Ensure
~/.claude_peepee/has appropriate permissions - Don't share database files - They may contain sensitive project information
- Review stored facts periodically - Remove any sensitive information
# Data directory
chmod 700 ~/.claude_peepee
# Database file
chmod 600 ~/.claude_peepee/claude_peepee.db| Variable | Purpose | Default |
|---|---|---|
CLAUDE_PP_NO_TELEMETRY |
Disable telemetry | - |
DO_NOT_TRACK |
Disable telemetry (standard) | - |
HOME |
User home directory | System default |
When contributing to Claude PP:
- Never commit secrets, API keys, or credentials
- Use parameterized SQL queries
- Validate and sanitize all user input
- Follow the principle of least privilege
- Add tests for security-critical code paths
| Dependency | Purpose | Security Notes |
|---|---|---|
go-sqlite3 |
Database | CGO-based, audited SQLite |
cobra |
CLI framework | No security concerns |
uuid |
Instance IDs | Cryptographically random |
go-toml |
Config parsing | Safe parsing only |
| Version | Security Updates |
|---|---|
| 0.1.0 | Initial release with security measures |
Last Updated: January 2025