Fig privacy policy

Last updated: 1 November 2022


Fig is a developer tool for the shell. The shell is an incredibly sensitive environment. Therefore, Fig takes your data, privacy, and security very seriously.


The below is a good faith effort to be fully transparent on how our app works + what we do and do not do with your data.


Note: This privacy page is not an official Privacy Policy. We are working on a more official Privacy Policy that will be a more legalese version of the below.


Overview

Fig does not send any of your local, potentially sensitive data to the cloud without your permission. In the case of our most popular app, Autocomplete all data is processed locally on your device (ie we do not send any keystrokes to the cloud).


Fig tracks basic usage metrics (outlined below) as well as error/crash reports. This enables us to make better product decisions and provide better support. At this time, tracking is de-anonymized. We are incredibly close with our users


You can disable all tracking by running fig telemetry disable


What information Fig collects and why?


CLI Usage

Each time you run a fig cli command (like fig update) we send a ping to Fig's servers. The CLI is an important part of the Fig app. If commands like fig update break, up to date versions of Fig can't be downloaded for users, meaning Fig will break. Note: only the subcommand selected (e.g. “update” or “source”) is sent. Any arguments passed to the subcommands are not sent.


Autocomplete Usage

We send a ping each time you select an autocomplete suggestion. The ping contains the root command you used (e.g. git, cd, aws, etc) and nothing else (ie if you select “commit” in “git commit”, all we see is git).


Fig Dashboard Usage

The “Fig Dashboard” is the interface for managing all other Fig apps (like Dotfiles, Scripts, Credential, etc). You access it by running fig. It is web-based but rendered using the operating system's native web view, rather than Electron/Chromium. Fig tracks interactions like navigation in the sidebar, creating new workflows/dotfiles, or adding a teammate. Any data you input into Fig is stored on Fig's servers unless you are an enterprise plan that is self-hosted. Any field labelled as “secret” is encrypted in transit and at rest using industry standards.


Terminal Usage

Sometimes developers use the Terminal 100+ times a day. Other times they don't use it at all. If someone uses Fig 50 times one day but 0 times the next day, is it because they turned off Fig or because they didn't use a Terminal? Having a high level picture of this without being intrusive will help us make better product decisions.


Therefore, once a day, Fig sends a single ping with aggregated metrics on how long you used the Terminal, how many times Fig popped up, and how many times you interacted Fig.


Errors

Fig uses Sentry as its error tracking tool. Fig send events to Sentry if the Fig app crashes and is then restarted. We also send any uncaught errors. We make sure these errors do not contain any potentially sensitive data (e.g. breadcrumbs do not contain any logs that could contain terminal keystrokes). Fig also uses telemetry to ensure that integrations such as Input Method and Accessibility APIs are installed correctly. Knowing if an integration is breaking helps us prioritize.


Basic App Usage

Fig sends a ping for basic app events like login, quit, onboarding completion, updating, and turning autocomplete on/off.


What does Fig not track?

To re-iterate, Fig does not send any of your terminal input, output, or keystrokes to our servers.


In the future we may build additional features/products that my require sending this data (e.g. SSH session replay or shared history across teams). These products will be entirely opt in and we will make sure to tell you how your data is managed.


Why does Fig have an email login?

The email login is not designed to be a hindrance. In fact, the login is designed to be one of the most valuable parts of Fig.


For individuals, logging into Fig allows you to sync your dotfiles, scripts, personal shortcuts SSH credentials, and more across devices. Developers are switching devices and logging into remote machines more than ever. In order to be most productive, it's incredibly important their dev environment comes with them. Our hope is that Fig becomes the source of truth for you dev configuration - in order to set up a new device, all you need to do is login to Fig!


For teams, we enable the exact same functionality, we just enable collaboration as a layer on top. Your dev environment is not just your personal configuration, but the environments, scripts, and credentials shared with your team too.


Can I turn telemetry off?

Yes. Run fig telemetry disable. This will disable all telemetry and crash reports


How does Fig store secrets?

Any field labelled as “secret” is encrypted in transit and at rest using an open source encryption library on top


What's your business model?

Fig's Free plan is for hobbyists, small teams, and open source. Fig's Pro plan is designed for teams with collaboration requirements and individuals who want more pro features and integrations. Fig's Enterprise plan is for teams looking for greater security, collaboration, and support.


See fig.io/pricing for more details.


How does Fig load Autocomplete

Fig's autocomplete app is a web app embedded into our rust-based desktop app. We don't use Electron (it's slow and a memory hog). Instead, we use Tauri (fast, lightweight, and written in rust).


When you launch the Fig desktop app, we load the autocomplete site from our server (or for enterprises, your self-hosted server). The web app is then cached locally until you quit Fig. This is like opening a static site / single page app in a new tab in your browser, then disconnecting your internet: everything still works!


You can try this: with Fig's autocomplete running, try turning off your wifi. Autocomplete will still work. However, if you restart Fig while wifi is still off, it will stop working.


Do you do anything specific for enterprises?

Fig allows enterprise to self-host Fig's server. SAML/SSO, and more on our enterprise plan. Please email enterprise@fig.io for more information.


Questions

Please feel free to email hello@fig.io with any questions / feedback. We would be more than happy to help.