Fig Privacy

Last updated: 26 Jan 2021


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


Note: This privacy page is not an official Privacy Policy. We will have our official Privacy Policy ready before our general public launch. It will be a more legalese version of the above. For the moment, please accept our good faith effort to tell you how our app works while we go through the motions of getting something legal drafted up.


Overview


Fig does not send sensitive data to the cloud. Our products (autocomplete, sidebar, apps etc) process data locally on your device.


Fig tracks basic usage metrics (outlined below). This enables us to make better product decisions and provide better support. During our private beta, this telemetry will be de-anonymized. After publicly launching (ie Fig is accessible for anyone to download), all telemetry will be anonymous. At this time, Fig is still in its private beta.


What Information Fig Collects and Why


CLI Usage

Each time you run a fig cli command (like fig update or fig source) 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 completion specs won't be downloaded for users, meaning Fig will break. Note: only the subcommand selected (e.g. "update" or "source") is sent. An 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). We will then phase it out in favour of the Terminal Usage ping below.


Terminal Usage

Sometimes developers use the Terminal 100+ times a day. Other times they don't use it at all. If somone 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 instrusive 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 uncaptured errors.


App Usage

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


Information Fig Does Not Collect


Other than what is mentioned above, Fig never sends data from your Terminal or device to its servers unless you specifically opt into it.


Why is your tracking de-anonymised during your private beta?


Our aim with de-anonymising telemetry during our private beta is to work more closely with our users. When we say closely, we actually want to personally get to know our first 1,000 users. We see de-anonymity as a two way street: if you are willing to try our product and let us know who you are, you should 1. know who we are and 2. have a say in shaping our product and vision.


Fig is still early. Making product decisions in the early days with minimal users and minimal data is very hard. Rather than track every single event and never speak to you, we are asking to see high level metrics about your usage of Fig. We may then send you an email asking for some more information e.g. if there is a bug, we would love to know what happened, if everything is okay, and what steps we could take to reproduce it.


Inevitably, there will be users who, for whatever reason, don't want their usage of Fig to be personally tracked. Of course. It's your data and software on your device. You shouldn't even need a reason. We want to cater to these users. And we will. But unfortunately, we are so early on in the process of building Fig that we need to be able to speak to our users. De-anonymising telemetry for the time being while minimisng the events tracked enables us to do this in a non intrusive way. But it is of course not for everyone. Therefore, once we reach a critical mass of usage in the coming months, we will then anonymise all telemetry, making Fig more accessible.


How does Fig load Autocomplete?


Fig's autocomplete is built using web technologies (html/css/javascript). We load the autocomplete site from our server when you activate the Fig application on macOS. It is then hosted locally through our Swift app. It 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, it will stop working.


Contact

If you ever have any questions about how Fig manages your data, please feel free to email us at any time: hello@fig.io