Your raw commands never leave your machine. Classification happens entirely on-device. Only a coarse category for a command (like docker or python) is ever sent — never the command text, arguments, file paths, environment variables, secrets, or output.
What's sent
- The command category (one of ~20 tags), exit status, and a coarse timing bucket.
- Your OS and shell.
- An optional, aggregated behavioral profile (a decayed histogram of categories + a derived persona) — never the underlying commands.
What's never sent
- Raw command lines, arguments, paths, env vars, secrets, or output.
- Anything tagged sensitive (e.g.
ssh,sudo,gpg,vault) — dropped before anything is sent.
Dependency detection
When you work in a project, TermWorks can detect which public, well-known libraries you use (from package.json, requirements.txt, etc.) so advertisers can target by library — anonymously. Only libraries in our curated public catalog are ever reported; your private/internal packages and file paths never leave the machine.
Your controls
termworks profile off— stop sharing the aggregated profile.termworks profile deps off— stop reporting detected libraries.termworks disable/termworks uninstall— pause or remove entirely.
Full details are in the security FAQ.