-
Notifications
You must be signed in to change notification settings - Fork 3
Security
nathan nelson edited this page Apr 13, 2026
·
1 revision
Longhand's threat model, trust boundaries, and hardening live in SECURITY.md in the main repo. That's the canonical document — this page is a summary and a pointer.
- Local-only. No network calls from the core pipeline. Your data never leaves your machine.
- No subprocess execution. Longhand never shells out based on content from JSONL files.
- Parameterized SQL everywhere. No string concatenation in queries. Every filter goes through bind parameters.
-
Read-only on source files.
~/.claude/projects/is never written to. - Fail-open hooks. A Longhand crash doesn't block Claude Code.
- Command injection
- SQL injection
- Path traversal
- OOM via oversized input
- Filesystem read access for a user who already controls the machine
- Malicious MCP client
- Secrets in prompts that get written to JSONL
Full audit notes, trust boundary diagrams, and parameterized-SQL guarantees are in SECURITY.md. If you find something, open an issue or contact the maintainer directly.