Logica Voice is in early development (v0.x). Only the latest minor version receives security fixes.
| Version | Supported |
|---|---|
| 0.1.x | ✅ |
| < 0.1 | ❌ |
When v1.0 ships, we'll publish a longer-term support policy.
Please do NOT open a public issue for security vulnerabilities.
Email: sirambrosio@gmail.com with subject [SECURITY] Logica Voice — <short description>
Include:
- Description of the vulnerability
- Steps to reproduce (or proof-of-concept code)
- Affected version(s)
- Suggested fix (optional)
- Your contact info for follow-up
- Within 48 hours: acknowledgment that we received your report
- Within 7 days: initial assessment and severity classification
- Within 30 days: fix released (for critical/high severity) or detailed mitigation plan
We'll credit you in the release notes unless you prefer anonymity.
These parts of Logica Voice handle sensitive data — please pay extra attention:
- WhatsApp (
@logica-voice/adapter-whatsapp): handles auth credentials inauthDir. ACL is fail-closed by design — bypassing it is a security bug. - Telegram (
@logica-voice/adapter-telegram): bot token in env. ACL check onallowedChatIds.
- Voice embeddings (
config/voices/*.npy): can be used to clone voices of real people. The framework does NOT verify consent — that's the user's responsibility. - Reporting concerns: if you find a way the system enables non-consensual cloning at scale (e.g., bypassing the warning prompt), report it as a security issue.
- API keys stored in
logica-voice.yamlor.envshould never be committed. Our.gitignorecovers.env*by default. - LogicaOS bridge: validates response from
/api/chat/streambut trusts the brain's tool calls. If you find a way for a malicious response to escalate privileges, report it.
- pgvector / Chroma: stored conversation history may contain PII. Apps using Logica Voice should comply with GDPR/LGPD.
These are documented design choices, not bugs:
- WhatsApp via Baileys runs on a gray-area WhatsApp ToS. Use at your own risk.
- No end-to-end encryption between Logica Voice server and channel adapters (they share a process). E2E would require restructuring.
- Brain adapters trust their endpoints — a malicious OpenAI-compatible server could inject content. Use trusted providers.
- Never commit
.env— use.env.exampleas template - Use ACL fail-closed — empty
allowedPhones/allowedChatIds= deny all (default) - Rotate API keys regularly
- Run on isolated user account — don't give Logica Voice root
- Keep dependencies updated —
pnpm updateperiodically - Backup
authDir(WhatsApp) — losing it requires re-scanning QR
Reports made under this policy are not subject to additional legal restrictions beyond the MIT license. Reporters retain authorship.