About
Privacy
All data stays local. Secrets are deny-gated. Transcripts are redacted before they persist.
- All data stays local. The home is markdown on your disk. No cloud sync unless you commit it somewhere.
- Secrets live in the deny-gated
.kevin/secrets/.env: API keys, database connection strings, Google OAuth. Non-secret config lives in.claude/settings.local.json, runtime state in.kevin/. All gitignored by default, and Kevin's own shell is blocked from reading the secrets store on both hosts. - Transcripts are redacted before persisting. Session capture exact-matches every value in the secrets store and the local settings, and runs prefix heuristics for common key formats.
- Nothing on the dashboard leaves your machine. The page makes zero external requests: no CDN, no webfonts, no analytics.
- Keys never enter chat. Neither init nor
configure-skillsasks for a credential in conversation, because a pasted secret would land in the transcript and the model API. You fill values in your editor. - Training opt-out and telemetry off are recommended on your host. Claude Code: docs.claude.com. Codex: the user-level note the plugin generates carries the analytics and telemetry keys.
- The folder is the product. If anything goes wrong, the markdown plus its git history is the complete backup.
Keep homes private
dashboard.html sits at the home root and reflects your tasks, knowledge stats, and redacted settings. If you publish the home repo, it publishes too.