This Privacy Policy explains how Document Node Pty Ltd ("we", "us", "our"), a company registered in Western Australia, Australia, collects, uses, and protects information when you use the TermTree desktop application and the termtree.com website (together, the "Service"). Document Node Pty Ltd is the data controller for personal data processed under this policy.
TermTree is a desktop application that runs on your own machine. Your terminals, the commands you run, their output, and the files you open stay on that machine. An account is only needed for paid plans, and the cloud sync included with a subscription uploads the shape of your workspace — your task map and the coordinates each task works in — never your repositories, your files, or your terminal output unless you switch that on for a specific task.
This policy sits alongside our Terms of Service, which govern your use of the Service.
1. What stays on your device
TermTree is local-first. On every plan, the following stays on your machine as part of normal use, and we have no way to read it:
- Terminal output, scrollback buffers, and shell command history
- Shell environment variables, dotfiles, SSH keys, API keys, and any other credentials your shell or the tools you run can see
- The contents of files and repositories you open, edit, preview, or review in TermTree
- Git repository contents, including commits, diffs, and uncommitted changes
- Your task map, preferences, themes, layouts, editor state, and session snapshots, held in TermTree's application data directory on your device
To show live status on a task and to offer to resume an agent session, TermTree also inspects local signals: the process tree of the terminal running in that task, and — for tools that keep their own session files on disk, such as Claude Code — those files. That reading happens entirely on your device, to draw the interface. It is not transmitted to us.
2. Information we collect
2.1 Account and licence data
If you sign in to TermTree or buy a paid plan, we process:
- Your email address, used for licence delivery, purchase receipts, and essential account notices
- OAuth identity information — if you sign in with Google, Microsoft, GitHub, Apple, or Facebook, we receive a unique identifier and your email address from that provider, never your password
- Your licence key, plan, activation status, and whether you are eligible for an introductory offer, so we can validate your entitlement
- For Organisation plans, the seat assignments an administrator makes, so seats can be granted, revoked, and transferred
The Free edition needs no account. If you never sign in, we hold no account record for you at all.
2.2 Payment data
Payments are processed by Stripe. We do not receive, store, or have access to your full card number or bank details, and Stripe's own privacy policy governs how it handles your payment information. Where a copy of TermTree is bought through a platform store, that transaction is handled by the store operator under its own privacy policy, and we receive only confirmation of the purchase.
2.3 Synced workspace data (paid plans)
Cloud sync keeps one person's workspace consistent across their own devices. It requires signing in and a valid licence, so it does nothing until you sign in. When it runs, the following is stored on our cloud infrastructure:
- Each task's identifier, place in the tree, label, associated link, the command configured to launch in it, and whether it is collapsed
- Each task's working directory, rewritten so that a path inside your home directory is stored relative to it rather than as an absolute path containing your user name
- Each task's Git coordinates when its directory is a repository: a canonical repository identity such as host, organisation, and repository name, the current branch, its upstream, a best-effort commit pointer, and the worktree layout — so the same task can be set up again on another device
- Workspace settings: theme, layout type, panel and split positions, viewport pan and zoom, minimap visibility, whether onboarding has been seen, and the last working directory you used
- The bookkeeping needed to merge changes safely: a revision number, deletion markers, the time of the last change, and which of your devices wrote it
- Your device list: a device identifier derived from that machine's hardware, the friendly name you give it, its platform, and when it was last seen
Cloud sync never uploads repository contents, file contents, commits, diffs, or terminal output. Git remains the only channel that moves your code between machines.
You can switch on end-to-end encryption for your synced workspace. With it on, TermTree derives a key from your passphrase on your own device and uploads ciphertext only, so we hold data we cannot read. Your passphrase is never sent to us, which also means we cannot recover your synced data if you lose it.
2.4 Terminal scrollback (optional, one task at a time)
Syncing terminal scrollback is off by default and is enabled per task, from that task's menu. While it is enabled for a task, that task's saved scrollback is uploaded so it can be restored on another device — and scrollback is terminal output, so it can contain anything that terminal printed. Turn it off for a task and TermTree stops uploading it. Because this is the most sensitive thing TermTree can sync, we recommend enabling end-to-end encryption before you use it.
2.5 Task memory
When a Claude Code or Codex session is detected in a task, TermTree keeps a short memory record for that task so the work can be picked up on another device. It is assembled from signals TermTree already tracks locally — the working directory, the last command, local Git status, and which agent was detected — and syncs with the rest of the task. TermTree does not read your conversation with the agent to build it, and sends nothing to an AI provider to produce it.
2.6 Update checks
On every plan, including Free, TermTree periodically asks our update server whether a newer version exists. Each check sends:
- The application version, build target, and CPU architecture
- The operating system name and version, and your system locale
- An installation identifier derived from your machine's hardware, which stays the same across reinstalls on that machine
- Your IP address, which is inherent to making any network request
We also count these checks in aggregate to estimate how many installations are active; we do not build individual profiles from them. TermTree contains no other telemetry: there is no event tracking, no feature-usage reporting, and no automatic crash upload.
2.7 Feedback and diagnostic logs
Nothing leaves the Send Feedback dialog until you submit it. When you do, we receive:
- Your message, and your email address if you provide one so we can reply
- The application version, platform, CPU architecture, operating system version, and the same hardware-derived installation identifier used for update checks
- Your diagnostic logs, only if you tick the option to include them
If TermTree did not shut down cleanly, it may offer to send those same diagnostic logs the next time it starts. That offer is always a question, never automatic. The logs record application activity and error traces, which includes file and directory paths, Git branch names, task identifiers, and the commands configured to launch in a task; they do not include file contents or terminal output. We use them only to investigate the problem you reported.
2.8 Website data (termtree.com)
When you visit termtree.com we may process:
- Server logs — IP address, browser type, referring page, and pages visited — kept for up to 30 days for security and operational purposes
- Google Analytics, but only after you accept analytics cookies in the consent banner. Nothing analytics-related is set before you accept, and you can change your choice at any time using the Cookie preferences link in the footer
3. AI agents and other tools you run in TermTree
TermTree gives you ordinary terminals. It does not provide, resell, proxy, or bill access to any AI model. When you run Claude Code, Codex, or any other command-line tool in a TermTree terminal, that tool connects to its own provider using its own account and credentials. That traffic does not pass through us, and we do not see its prompts, its responses, or the files it reads or writes.
What TermTree does with those tools is observe them locally, as described in section 1, so it can show you which tasks are running, idle, waiting for input, or failed.
This means each tool you run — and the model provider behind it — is governed by its own privacy policy, independently of this one. If you work with sensitive material, review those policies before running such a tool against it.
4. How we use information
We use the information above to:
- Create and manage your account, and deliver and validate your licence
- Provide cloud sync between your own devices, and manage your device list
- Send transactional email — receipts, licence delivery, and account notices — through SendGrid
- Provide application updates, and estimate active installations in aggregate
- Investigate the feedback and diagnostic logs you choose to send us
- Understand aggregate website use to improve termtree.com, where you have consented to analytics
- Meet legal, tax, and accounting obligations, and enforce our Terms of Service
5. Sharing and sub-processors
We do not sell, rent, or trade your personal information, and we do not share it with third parties for their own marketing.
We share data only with the providers that operate the Service on our behalf:
- Stripe — payment processing
- Google Cloud Platform — cloud storage and hosting for account, licence, and synced workspace data
- SendGrid — transactional email delivery
- Google, Microsoft, GitHub, Apple, and Facebook — identity providers, where you choose to sign in with one of them
- Google Analytics — aggregate website analytics for termtree.com, only with your consent
- Platform store operators — where you obtain or buy TermTree through their store
These providers act under data processing agreements and may use your data only to perform their service for us. We may also disclose information where the law requires it, or where it is necessary to protect the rights, safety, and security of our users and our service.
6. How long we keep information
- Account and licence data — for as long as your licence or subscription lasts, and for up to 90 days after a verified deletion request
- Synced workspace data, including any task scrollback you opted in — until you delete it, close your account, or make a verified deletion request
- Device records — until you sign that device out or close your account
- Feedback and any diagnostic logs you send — for as long as needed to resolve the issue and to understand recurring problems
- Website server logs — up to 30 days
- Financial records — as required by applicable tax and accounting law, typically five to seven years
7. Security
- TLS encryption for everything transmitted to our servers
- Encryption at rest for data stored in our cloud infrastructure
- Access controls limiting who can reach personal data
- Per-device credentials for sync, so one device can be signed out without affecting the others
- Regular review of our infrastructure
Optional end-to-end encryption (section 2.3) is the strongest control available to you: with it on, your synced workspace is ciphertext to us. No system is perfectly secure, and we cannot guarantee absolute security.
8. Your rights
For everyone
- Ask what personal data we hold about you
- Ask us to correct data that is wrong
- Ask us to delete your data (see section 9)
- Withdraw consent for optional processing, such as analytics cookies or scrollback sync
- Sign out any device from your account, which stops it syncing
EU, EEA, and UK residents (GDPR)
You also have the right to:
- Receive your data in a structured, machine-readable format
- Restrict our processing of your data
- Object to processing based on legitimate interest
- Complain to your local data protection authority
Our legal bases for processing are:
- Performance of a contract — delivering your licence, your account, and cloud sync
- Legitimate interest — update checks, aggregate estimation of active installations, server security logs, and investigating problems you report
- Consent — analytics cookies on termtree.com, and any scrollback sync you switch on
- Legal obligation — tax, accounting, and other records we are required to keep
California residents (CCPA/CPRA)
- Know what personal information we collect and how we use it
- Request deletion of your personal information
- Opt out of the sale or sharing of personal information — we do neither
- Not be discriminated against for exercising your rights
We honour Global Privacy Control signals sent by your browser as a valid opt-out of any sharing of personal information under the CCPA and CPRA.
Australian residents
We handle personal information in accordance with the Australian Privacy Principles under the Privacy Act 1988 (Cth), including your right to seek access to, and correction of, the personal information we hold about you.
To exercise any of these rights, write to us using the contact details at the end of this policy. We may need to verify your identity before acting on a request.
9. Deleting your account and data
You can remove your data at any time:
- Sign a device out to stop it syncing. Nothing is deleted — your workspace stays on that device, on your other devices, and in the cloud, so you can sign back in later
- Delete a task, or turn off scrollback sync for it, to remove that data from your synced workspace
- Write to us to close your account and delete the data associated with it
When you ask us to close your account, we remove your account data and synced workspace within 90 days, except where we are legally required to keep records such as financial ones (section 6). Closing your account does not touch the files, repositories, or local workspace on your own machines.
10. International data transfers
Our cloud services run on Google Cloud Platform, currently in the Tokyo, Japan region, and supporting infrastructure may be located in Australia or the United States. Where we transfer personal data of EU, EEA, or UK residents outside their region, we rely on appropriate safeguards, including Standard Contractual Clauses approved by the European Commission or an equivalent mechanism.
11. Children's privacy
TermTree is intended for users aged 13 and over, or 16 and over in the EU and EEA. We do not knowingly collect personal information from children below those ages. If you believe a child has given us personal data, contact us and we will delete it promptly.
12. Changes to this policy
We may update this policy. When we make material changes we will post the revised policy on this page with a new "Last updated" date, and for significant changes we may also tell you by email or with a notice in the application.
13. Contact
For questions about this policy, or to exercise your data rights, contact us at:
Document Node Pty Ltd, Western Australia, Australia.