From 27d427ce5cbe3c7e7c01589bf9c3a4f969959f1c Mon Sep 17 00:00:00 2001 From: mason-at-pieces Date: Tue, 9 Apr 2024 14:54:33 -0400 Subject: [PATCH 01/13] docs: update privacy & security doc paths --- docs/extensions-plugins/azure-data-studio.mdx | 2 +- docs/extensions-plugins/visual-studio.mdx | 2 +- docs/extensions-plugins/vscode.mdx | 2 +- docs/features/user-settings.mdx | 4 ++-- ...vacy-security-data.mdx => security-and-privacy.mdx} | 1 - docusaurus.config.ts | 4 ++++ sidebars.ts | 10 +++++----- vercel.json | 5 +++++ 8 files changed, 19 insertions(+), 11 deletions(-) rename docs/{product-highlights-and-benefits/privacy-security-data.mdx => security-and-privacy.mdx} (99%) diff --git a/docs/extensions-plugins/azure-data-studio.mdx b/docs/extensions-plugins/azure-data-studio.mdx index 6d3db6bf9..8a59320df 100644 --- a/docs/extensions-plugins/azure-data-studio.mdx +++ b/docs/extensions-plugins/azure-data-studio.mdx @@ -135,7 +135,7 @@ This setting enables automatic copying for generated Pieces links. If enabled, y If you choose to enable auto-save, Pieces will automatically save highly re-used and potentially useful snippets while you work. This cuts down on the number of snippets you need to save manually and helps to prevent searching for code in all of your files. ### Cloud Capabilities -Here you can choose which type of ML models you'd like to use in Pieces for Azure Data Studio: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/product-highlights-and-benefits/privacy-security-data#our-machine-learning-models). +Here you can choose which type of ML models you'd like to use in Pieces for Azure Data Studio: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/privacy-and-security#our-machine-learning-models). ### Display In this section, you can choose what aspect of your snippets to display in the snippet list. diff --git a/docs/extensions-plugins/visual-studio.mdx b/docs/extensions-plugins/visual-studio.mdx index 9cbec9935..f2ea1e724 100644 --- a/docs/extensions-plugins/visual-studio.mdx +++ b/docs/extensions-plugins/visual-studio.mdx @@ -76,7 +76,7 @@ You can generate a shareable link for a code snippet by selecting the code you w This setting enables automatic copying for generated Pieces links. If enabled, you won't need to copy a Pieces link before sharing it with a teammate or friend. ### Cloud Capabilities -Here you can choose which type of ML models you'd like to use in Pieces for Visual Studio: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/product-highlights-and-benefits/privacy-security-data#our-machine-learning-models). +Here you can choose which type of ML models you'd like to use in Pieces for Visual Studio: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/privacy-and-security#our-machine-learning-models). ### Custom Pieces OS URL If you're using a [custom Pieces OS URL](/product-highlights-and-benefits/connecting-to-a-remote-pieces-os-instance), you can update it here. This is useful if you're using a self-hosted version of Pieces OS. diff --git a/docs/extensions-plugins/vscode.mdx b/docs/extensions-plugins/vscode.mdx index 4f8a1973a..76e505343 100644 --- a/docs/extensions-plugins/vscode.mdx +++ b/docs/extensions-plugins/vscode.mdx @@ -152,7 +152,7 @@ This setting enables automatic copying for generated Pieces links. If enabled, y If you choose to enable auto-save, Pieces will automatically save highly re-used and potentially useful snippets while you work. This cuts down on the number of snippets you need to save manually and helps to prevent searching for code in all of your files. ### Cloud Capabilities -Here you can choose which type of ML models you'd like to use in Pieces for VS Code: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/product-highlights-and-benefits/privacy-security-data#our-machine-learning-models). +Here you can choose which type of ML models you'd like to use in Pieces for VS Code: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/privacy-and-security#our-machine-learning-models). ### Display In this section, you can choose what aspect of your snippets to display in the snippet list. diff --git a/docs/features/user-settings.mdx b/docs/features/user-settings.mdx index 520ec0ae1..b3c3809f3 100644 --- a/docs/features/user-settings.mdx +++ b/docs/features/user-settings.mdx @@ -260,12 +260,12 @@ You can choose to use local or blended processing to manage your code snippets. Try both modes to find what works best in your environment. -**Note:** Choosing local-only processing ensures that your code remains solely on your device. Learn more about [Privacy & Data Security](/product-highlights-and-benefits/privacy-security-data) at Pieces to determine which processing mode is best for you. +**Note:** Choosing local-only processing ensures that your code remains solely on your device. Learn more about [Privacy & Security](/privacy-and-security) at Pieces to determine which processing mode is best for you. ## Telemetry You can always adjust the amount of anonymous data that you share with us. By unchecking this box, you ensure that we will not collect data and analytics from your machine. Regardless of collection preferences, we do not collect your code snippets! They are stored on your machine. The data we collect helps us see how often particular actions are taken, what sections of the application are used by the community as a whole, and other data so that we can provide a better experience for you. Personal data is not collected and your code is not shared with any other parties, even when you generate shareable links. -Read more about our [Privacy & Data Security](/product-highlights-and-benefits/privacy-security-data) to get a full look. +Read more about our [Privacy & Security](/privacy-and-security) to get a full look. ## Information To share the version number and specific platform build of your version of the Pieces Desktop App, just press the copy button next to either of these items. These are helpful when working with Support on installation and debugging issues. diff --git a/docs/product-highlights-and-benefits/privacy-security-data.mdx b/docs/security-and-privacy.mdx similarity index 99% rename from docs/product-highlights-and-benefits/privacy-security-data.mdx rename to docs/security-and-privacy.mdx index f01fb8145..364d0b79e 100644 --- a/docs/product-highlights-and-benefits/privacy-security-data.mdx +++ b/docs/security-and-privacy.mdx @@ -3,7 +3,6 @@ title: Privacy, Security & Your Data description: Let's jump in and touch on privacy, data, cloud-based features, and our ML models. --- -# Privacy, Security, & Your Data From Day 1 of engineering Pieces for Developers, we've had a first principle that everything is local first and built with speed, privacy, security, and offline-productivity in mind. We also know that our partners **operate in highly secure and sensitive environments**, and we want to be prepared to operate in such environments, e.g., HIPAA, SOC 2, FERPA/COPPA, etc. That being said - we can't tell you how happy we are that we have stayed true to this philosophy for cases just like yours! diff --git a/docusaurus.config.ts b/docusaurus.config.ts index 69e9a7ae5..d0243e89d 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -216,6 +216,10 @@ const config: Config = { { title: 'Terms & Policies', items: [ + { + label: 'Security & Privacy', + href: '/security-and-privacy', + }, { label: 'Privacy Policy', href: '/privacy-policy', diff --git a/sidebars.ts b/sidebars.ts index 1d10348f3..9fc84935e 100644 --- a/sidebars.ts +++ b/sidebars.ts @@ -159,11 +159,6 @@ const sidebars: SidebarsConfig = { id: 'product-highlights-and-benefits/in-project-snippet-discovery', label: 'In-Project Snippet Discovery', }, - { - type: 'doc', - id: 'product-highlights-and-benefits/privacy-security-data', - label: 'Privacy & Security', - }, { type: 'doc', id: 'product-highlights-and-benefits/sync-across-multiple-devices-using-github', @@ -214,6 +209,11 @@ const sidebars: SidebarsConfig = { type: 'doc', id: 'support', }, + { + type: 'doc', + id: 'security-and-privacy', + label: 'Security & Privacy', + }, { type: 'doc', id: 'faq', diff --git a/vercel.json b/vercel.json index ea8ac9041..4f7838afd 100644 --- a/vercel.json +++ b/vercel.json @@ -90,6 +90,11 @@ "destination": "/product-highlights-and-benefits/saving-to-and-from-github-gists", "statusCode": 301 }, + { + "source": "/product-highlights-and-benefits/privacy-security-data", + "destination": "/privacy-and-security", + "statusCode": 301 + }, { "source": "/frequently-asked-questions", "destination": "/faq", From ee05ae05b6a6fe45273a1887b42d6a11c68fa6c4 Mon Sep 17 00:00:00 2001 From: mason-at-pieces Date: Tue, 9 Apr 2024 14:56:24 -0400 Subject: [PATCH 02/13] docs: Update Privacy & Security links --- docs/extensions-plugins/azure-data-studio.mdx | 2 +- docs/extensions-plugins/visual-studio.mdx | 2 +- docs/extensions-plugins/vscode.mdx | 2 +- docs/features/user-settings.mdx | 4 ++-- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/docs/extensions-plugins/azure-data-studio.mdx b/docs/extensions-plugins/azure-data-studio.mdx index 8a59320df..628b07925 100644 --- a/docs/extensions-plugins/azure-data-studio.mdx +++ b/docs/extensions-plugins/azure-data-studio.mdx @@ -135,7 +135,7 @@ This setting enables automatic copying for generated Pieces links. If enabled, y If you choose to enable auto-save, Pieces will automatically save highly re-used and potentially useful snippets while you work. This cuts down on the number of snippets you need to save manually and helps to prevent searching for code in all of your files. ### Cloud Capabilities -Here you can choose which type of ML models you'd like to use in Pieces for Azure Data Studio: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/privacy-and-security#our-machine-learning-models). +Here you can choose which type of ML models you'd like to use in Pieces for Azure Data Studio: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/security-and-privacy#our-machine-learning-models). ### Display In this section, you can choose what aspect of your snippets to display in the snippet list. diff --git a/docs/extensions-plugins/visual-studio.mdx b/docs/extensions-plugins/visual-studio.mdx index f2ea1e724..8ea4183b0 100644 --- a/docs/extensions-plugins/visual-studio.mdx +++ b/docs/extensions-plugins/visual-studio.mdx @@ -76,7 +76,7 @@ You can generate a shareable link for a code snippet by selecting the code you w This setting enables automatic copying for generated Pieces links. If enabled, you won't need to copy a Pieces link before sharing it with a teammate or friend. ### Cloud Capabilities -Here you can choose which type of ML models you'd like to use in Pieces for Visual Studio: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/privacy-and-security#our-machine-learning-models). +Here you can choose which type of ML models you'd like to use in Pieces for Visual Studio: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/security-and-privacy#our-machine-learning-models). ### Custom Pieces OS URL If you're using a [custom Pieces OS URL](/product-highlights-and-benefits/connecting-to-a-remote-pieces-os-instance), you can update it here. This is useful if you're using a self-hosted version of Pieces OS. diff --git a/docs/extensions-plugins/vscode.mdx b/docs/extensions-plugins/vscode.mdx index 76e505343..082a70c0d 100644 --- a/docs/extensions-plugins/vscode.mdx +++ b/docs/extensions-plugins/vscode.mdx @@ -152,7 +152,7 @@ This setting enables automatic copying for generated Pieces links. If enabled, y If you choose to enable auto-save, Pieces will automatically save highly re-used and potentially useful snippets while you work. This cuts down on the number of snippets you need to save manually and helps to prevent searching for code in all of your files. ### Cloud Capabilities -Here you can choose which type of ML models you'd like to use in Pieces for VS Code: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/privacy-and-security#our-machine-learning-models). +Here you can choose which type of ML models you'd like to use in Pieces for VS Code: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/security-and-privacy#our-machine-learning-models). ### Display In this section, you can choose what aspect of your snippets to display in the snippet list. diff --git a/docs/features/user-settings.mdx b/docs/features/user-settings.mdx index b3c3809f3..cf5063059 100644 --- a/docs/features/user-settings.mdx +++ b/docs/features/user-settings.mdx @@ -260,12 +260,12 @@ You can choose to use local or blended processing to manage your code snippets. Try both modes to find what works best in your environment. -**Note:** Choosing local-only processing ensures that your code remains solely on your device. Learn more about [Privacy & Security](/privacy-and-security) at Pieces to determine which processing mode is best for you. +**Note:** Choosing local-only processing ensures that your code remains solely on your device. Learn more about [Privacy & Security](/security-and-privacy) at Pieces to determine which processing mode is best for you. ## Telemetry You can always adjust the amount of anonymous data that you share with us. By unchecking this box, you ensure that we will not collect data and analytics from your machine. Regardless of collection preferences, we do not collect your code snippets! They are stored on your machine. The data we collect helps us see how often particular actions are taken, what sections of the application are used by the community as a whole, and other data so that we can provide a better experience for you. Personal data is not collected and your code is not shared with any other parties, even when you generate shareable links. -Read more about our [Privacy & Security](/privacy-and-security) to get a full look. +Read more about our [Privacy & Security](/security-and-privacy) to get a full look. ## Information To share the version number and specific platform build of your version of the Pieces Desktop App, just press the copy button next to either of these items. These are helpful when working with Support on installation and debugging issues. From 0589e6e77c0223679362d45c83808c333629f446 Mon Sep 17 00:00:00 2001 From: mason-at-pieces Date: Tue, 9 Apr 2024 14:58:46 -0400 Subject: [PATCH 03/13] chore: Update redirect rule in vercel.json --- vercel.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/vercel.json b/vercel.json index 4f7838afd..5211ba745 100644 --- a/vercel.json +++ b/vercel.json @@ -92,7 +92,7 @@ }, { "source": "/product-highlights-and-benefits/privacy-security-data", - "destination": "/privacy-and-security", + "destination": "/security-and-privacy", "statusCode": 301 }, { From 24c20132e50e1e236f513ad1601aba37fb66fdbd Mon Sep 17 00:00:00 2001 From: mason-at-pieces Date: Tue, 9 Apr 2024 15:15:22 -0400 Subject: [PATCH 04/13] docs(security-and-privacy): Update content for clarity --- docs/security-and-privacy.mdx | 41 ++++++++++++----------------------- 1 file changed, 14 insertions(+), 27 deletions(-) diff --git a/docs/security-and-privacy.mdx b/docs/security-and-privacy.mdx index 364d0b79e..a89d27a37 100644 --- a/docs/security-and-privacy.mdx +++ b/docs/security-and-privacy.mdx @@ -3,38 +3,26 @@ title: Privacy, Security & Your Data description: Let's jump in and touch on privacy, data, cloud-based features, and our ML models. --- -From Day 1 of engineering Pieces for Developers, we've had a first principle that everything is local first and built with speed, privacy, security, and offline-productivity in mind. +From day 1 of building Pieces for Developers, we've had a first principle that everything is local first and built with speed, privacy, security, and offline-productivity in mind. We also know that our partners **operate in highly secure and sensitive environments**, and we want to be prepared to operate in such environments, e.g., HIPAA, SOC 2, FERPA/COPPA, etc. That being said - we can't tell you how happy we are that we have stayed true to this philosophy for cases just like yours! -## Where Snippets are Stored -Your snippets are stored completely locally on your device. This is what the path looks like for an installation on macOS: +## We are SOC 2 Compliant 🔒 -### macOS - -`/Users/[YOUR-USERNAME]/Library/com.pieces.os/` - -### Windows - -`C:/Users/[YOUR-USERNAME]/Documents/com.pieces.os/` - -### Linux - -`/Users/[YOUR-USERNAME]/Documents/com.pieces.os/` - -You can easily copy this directory to a flash drive and bring it to another computer. - - -## We are SOC 2 Compliant! - -![SOC 2 Compliance Badge](/assets/soc-2-badge.png) +[//]: # (![SOC 2 Compliance Badge](/assets/soc-2-badge.png)) SOC 2 is a prestigious benchmark in the tech industry, especially important for companies like ours. It verifies that we meet strict organizational controls and practices, enhancing our credibility and trustworthiness in the market. This achievement is a collective triumph for our team, reflecting our dedication to maintaining a secure and reliable service. It's an essential step forward in our mission to provide word class developer tools. ## Our Machine Learning Models -Our ML models can be completely local and offline (i.e., they're shipped within the application's binary & require no internet) as long as you opt out of blended processing. +Pieces has our own internal ML models that we use to power some of our features. We have a few different models, and they are all built with privacy and security in mind. + +:::info Local Processing + +Our ML models are designed to function entirely offline and on-device, eliminating the need for internet connectivity. This is possible by opting out of blended processing, as the models are integrated within the application's binary, ensuring seamless operation without requiring an internet connection. + +::: If you have **not opted out of blended processing,** then some of the models will offload computation to the cloud. A few of our models are **only** available in the cloud, but we are working on making them local. @@ -58,13 +46,12 @@ This table shows which models are available locally and which will use cloud com | Tag Generation | ✅ | ✅ | | Title Generation | ✅ | ✅ | - -Our ML models are not trained continuously. They do not train on your data as you use the product! +Our ML models are not trained continuously. **They do not train on your data** as you use the product! ## Saving Code Snippets in the Cloud The Pieces cloud is entirely opt-in. Authentication is managed by our enterprise-ready authentication partners at Auth0 (now owned by Okta). -Even when a user signs in, they do not have a cloud until they specifically connect it in their Settings. +Even when a user signs in, they do not have a cloud until they specifically connect it in their [settings](/features/user-settings#private-cloud-beta). If a user opts into the cloud, the data is only uploaded when something is shared. @@ -78,12 +65,12 @@ Finally, a note on cloud architecture for the things that are backed up: Every user's cloud scales up and down completely independent of other users. The cloud is only running when a shared snippet is being accessed, backed up, or updated, and we can easily port our docker images over to an existing "Panasonic Cloud" if needed. ## Telemetry & Crash Data -Most importantly, all data collection is opt-out and we give all the control to our users. +Most importantly, all data collection is opt-out, and we give all the control to our users. The data that we do collect is completely anonymous and highly secure (we take data very seriously). ### Why do we collect data? -Long story short, we're a seed stage startup and the data helps us to report on overall growth and hopefully help us earn more funding. +Long story short, we're an early-stage startup and the data helps us to report on overall growth and hopefully earn more funding to continue building amazing products for our users. Here are some screenshots of Telemetry opt-outs from the Pieces products: From a36b0d3a55fd5ed4add819dad1a0e38c03cf782b Mon Sep 17 00:00:00 2001 From: mason-at-pieces Date: Tue, 9 Apr 2024 15:17:14 -0400 Subject: [PATCH 05/13] docs: Update compliance section for clarity --- docs/security-and-privacy.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/security-and-privacy.mdx b/docs/security-and-privacy.mdx index a89d27a37..2f5b22bcf 100644 --- a/docs/security-and-privacy.mdx +++ b/docs/security-and-privacy.mdx @@ -5,7 +5,7 @@ description: Let's jump in and touch on privacy, data, cloud-based features, an From day 1 of building Pieces for Developers, we've had a first principle that everything is local first and built with speed, privacy, security, and offline-productivity in mind. -We also know that our partners **operate in highly secure and sensitive environments**, and we want to be prepared to operate in such environments, e.g., HIPAA, SOC 2, FERPA/COPPA, etc. That being said - we can't tell you how happy we are that we have stayed true to this philosophy for cases just like yours! +We also know that our partners **operate in highly secure and sensitive environments**, and we want to be prepared to operate in such environments (HIPAA, SOC 2, FERPA/COPPA, etc.). That being said - we can't tell you how happy we are that we have stayed true to this philosophy for cases just like yours! ## We are SOC 2 Compliant 🔒 From 365945240945b23e31af90ce4bccf59a70c3b2dd Mon Sep 17 00:00:00 2001 From: mason-at-pieces Date: Tue, 9 Apr 2024 16:31:10 -0400 Subject: [PATCH 06/13] docs: Update security and privacy details --- docs/security-and-privacy.mdx | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/docs/security-and-privacy.mdx b/docs/security-and-privacy.mdx index 2f5b22bcf..145710352 100644 --- a/docs/security-and-privacy.mdx +++ b/docs/security-and-privacy.mdx @@ -9,8 +9,6 @@ We also know that our partners **operate in highly secure and sensitive environm ## We are SOC 2 Compliant 🔒 -[//]: # (![SOC 2 Compliance Badge](/assets/soc-2-badge.png)) - SOC 2 is a prestigious benchmark in the tech industry, especially important for companies like ours. It verifies that we meet strict organizational controls and practices, enhancing our credibility and trustworthiness in the market. This achievement is a collective triumph for our team, reflecting our dedication to maintaining a secure and reliable service. It's an essential step forward in our mission to provide word class developer tools. @@ -46,7 +44,7 @@ This table shows which models are available locally and which will use cloud com | Tag Generation | ✅ | ✅ | | Title Generation | ✅ | ✅ | -Our ML models are not trained continuously. **They do not train on your data** as you use the product! +Our ML models are not trained continuously. **They do not train on your data** as you use the product. ## Saving Code Snippets in the Cloud The Pieces cloud is entirely opt-in. Authentication is managed by our enterprise-ready authentication partners at Auth0 (now owned by Okta). From 2d99cd1dd9d9ea32ea221ac145e77f1c6c953f69 Mon Sep 17 00:00:00 2001 From: mason-at-pieces Date: Tue, 9 Apr 2024 16:37:29 -0400 Subject: [PATCH 07/13] docs: Add anchor ID to SOC 2 compliance section --- docs/security-and-privacy.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/security-and-privacy.mdx b/docs/security-and-privacy.mdx index 145710352..7016e20b4 100644 --- a/docs/security-and-privacy.mdx +++ b/docs/security-and-privacy.mdx @@ -7,7 +7,7 @@ From day 1 of building Pieces for Developers, we've had a first principle that e We also know that our partners **operate in highly secure and sensitive environments**, and we want to be prepared to operate in such environments (HIPAA, SOC 2, FERPA/COPPA, etc.). That being said - we can't tell you how happy we are that we have stayed true to this philosophy for cases just like yours! -## We are SOC 2 Compliant 🔒 +## We are SOC 2 Compliant 🔒 {#we-are-soc-2-compliant} SOC 2 is a prestigious benchmark in the tech industry, especially important for companies like ours. It verifies that we meet strict organizational controls and practices, enhancing our credibility and trustworthiness in the market. From ff41493bbf15f94837c3e94cb9286839470a5f90 Mon Sep 17 00:00:00 2001 From: Mason Williams Date: Mon, 15 Apr 2024 19:02:59 -0400 Subject: [PATCH 08/13] docs: Add CTAButton import and section in security doc --- docs/security-and-privacy.mdx | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/docs/security-and-privacy.mdx b/docs/security-and-privacy.mdx index 7016e20b4..cd4dcd376 100644 --- a/docs/security-and-privacy.mdx +++ b/docs/security-and-privacy.mdx @@ -3,6 +3,8 @@ title: Privacy, Security & Your Data description: Let's jump in and touch on privacy, data, cloud-based features, and our ML models. --- +import CTAButton from "../src/components/CTAButton"; + From day 1 of building Pieces for Developers, we've had a first principle that everything is local first and built with speed, privacy, security, and offline-productivity in mind. We also know that our partners **operate in highly secure and sensitive environments**, and we want to be prepared to operate in such environments (HIPAA, SOC 2, FERPA/COPPA, etc.). That being said - we can't tell you how happy we are that we have stayed true to this philosophy for cases just like yours! @@ -13,7 +15,13 @@ SOC 2 is a prestigious benchmark in the tech industry, especially important for This achievement is a collective triumph for our team, reflecting our dedication to maintaining a secure and reliable service. It's an essential step forward in our mission to provide word class developer tools. -## Our Machine Learning Models + + + ## Our Machine Learning Models Pieces has our own internal ML models that we use to power some of our features. We have a few different models, and they are all built with privacy and security in mind. :::info Local Processing From f28d4ff43c03e530302ddc275cf25572b81867ae Mon Sep 17 00:00:00 2001 From: Mason Williams Date: Mon, 15 Apr 2024 19:03:31 -0400 Subject: [PATCH 09/13] docs: Fix markdown formatting in security doc --- docs/security-and-privacy.mdx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/security-and-privacy.mdx b/docs/security-and-privacy.mdx index cd4dcd376..13663e675 100644 --- a/docs/security-and-privacy.mdx +++ b/docs/security-and-privacy.mdx @@ -21,7 +21,7 @@ This achievement is a collective triumph for our team, reflecting our dedication type={'secondary'} /> - ## Our Machine Learning Models +## Our Machine Learning Models Pieces has our own internal ML models that we use to power some of our features. We have a few different models, and they are all built with privacy and security in mind. :::info Local Processing From ec7a4755660649a1298686d8e6257beb20efd5fb Mon Sep 17 00:00:00 2001 From: Mason Williams Date: Fri, 7 Jun 2024 08:51:37 -0400 Subject: [PATCH 10/13] refactor: Rename and update docs, fix typos, adjust imports --- ...d-privacy.mdx => privacy-and-security.mdx} | 60 +++++++++++-------- sidebars.ts | 2 +- vercel.json | 5 ++ 3 files changed, 41 insertions(+), 26 deletions(-) rename docs/{security-and-privacy.mdx => privacy-and-security.mdx} (65%) diff --git a/docs/security-and-privacy.mdx b/docs/privacy-and-security.mdx similarity index 65% rename from docs/security-and-privacy.mdx rename to docs/privacy-and-security.mdx index 95ebd4bd7..0ba257f2e 100644 --- a/docs/security-and-privacy.mdx +++ b/docs/privacy-and-security.mdx @@ -1,9 +1,9 @@ --- title: Privacy, Security & Your Data -description: Let's jump in and touch on privacy, data, cloud-based features, and our ML models. +description: Let's jump in and touch on privacy, data, cloud-based features, and our ML models. --- -import CTAButton from "../src/components/CTAButton"; +import CTAButton from "/src/components/CTAButton"; From day 1 of building Pieces for Developers, we've had a first principle that everything is local first and built with speed, privacy, security, and offline-productivity in mind. @@ -13,7 +13,7 @@ We also know that our partners **operate in highly secure and sensitive environm SOC 2 is a prestigious benchmark in the tech industry, especially important for companies like ours. It verifies that we meet strict organizational controls and practices, enhancing our credibility and trustworthiness in the market. -This achievement is a collective triumph for our team, reflecting our dedication to maintaining a secure and reliable service. It's an essential step forward in our mission to provide word class developer tools. +This achievement is a collective triumph for our team, reflecting our dedication to maintaining a secure and reliable service. It's an essential step forward in our mission to provide world-class developer tools. ## Our Machine Learning Models + Pieces has our own internal ML models that we use to power some of our features. We have a few different models, and they are all built with privacy and security in mind. :::info Local Processing @@ -33,49 +34,56 @@ Our ML models are designed to function entirely offline and on-device, eliminati If you have **not opted out of blended processing,** then some of the models will offload computation to the cloud. A few of our models are **only** available in the cloud, but we are working on making them local. This table shows which models are available locally and which will use cloud compute unless processing is set to local. -| **Model** | **Local** | **Blended** | -|-------------------------------- |----------- |------------- | -| Code vs Text | ✅ | ✅ | -| Coding language classification | ✅ | ✅ | -| Code Similarity | ✅ | ❌ | -| Description Generation | ✅ | ✅ | -| Framework Detection | ✅ | ✅ | -| Image to text (OCR) | ✅ | ✅ | -| Link Extraction | ✅ | ❌ | -| Neural Code Search | ✅ | ❌ | -| Related Links | 🚧 | ✅ | -| Suggested tags from tags | ✅ | ❌ | -| Suggested Save | ✅ | ❌ | -| Snippet Discovery | ✅ | ❌ | -| Secret Detection | ✅ | ✅ | -| Search Queries | 🚧 | ✅ | -| Tag Generation | ✅ | ✅ | -| Title Generation | ✅ | ✅ | + +| **Model** | **Local** | **Blended** | +|-------------------------------- |----------- |------------- | +| Code vs Text | ✅ | ✅ | +| Coding language classification | ✅ | ✅ | +| Code Similarity | ✅ | ❌ | +| Description Generation | ✅ | ✅ | +| Framework Detection | ✅ | ✅ | +| Image to text (OCR) | ✅ | ✅ | +| Link Extraction | ✅ | ❌ | +| Neural Code Search | ✅ | ❌ | +| Related Links | 🚧 | ✅ | +| Suggested tags from tags | ✅ | ❌ | +| Suggested Save | ✅ | ❌ | +| Snippet Discovery | ✅ | ❌ | +| Secret Detection | ✅ | ✅ | +| Search Queries | 🚧 | ✅ | +| Tag Generation | ✅ | ✅ | +| Title Generation | ✅ | ✅ | Our ML models are not trained continuously. **They do not train on your data** as you use the product. ## Live Context -The Live Context feature in Pieces enhances the functionality of the Pieces Copilot by utilizing our proprietary Workstream Pattern Engine (WPE). This feature is designed with privacy and efficiency in mind, ensuring that all data processing and storage occur locally on your device. +The **Live Context** feature in Pieces enhances the functionality of the Pieces Copilot by utilizing our proprietary Workstream Pattern Engine (WPE). This feature is designed with privacy and efficiency in mind, ensuring that all data processing and storage occur locally on your device. ### How Live Context Works 1. **On-Device Processing and Storage:** All WPE algorithms, processing, and storage take place directly on your device. This ensures that your data remains secure and private, without being transmitted over the internet unless necessary. + - TODO: Add why it may be necessary to transmit data over the internet 2. **Querying Local Data:** When Live Context is enabled, and you ask a question to the Copilot, the system queries data aggregated from the WPE. This data is processed entirely on your device to find content that is relevant to your query. -3. **Utilizing [Retrieval-Augmented Generation (RAG)](/build/glossary/terms/retrieval-augmented-generation) for Contextual Relevance:** The relevant content identified by the WPE is then used as context for the Copilot prompt. +3. **Utilizing Retrieval-Augmented Generation (RAG) for Contextual Relevance:** The relevant content identified by the WPE is then used as context for the Copilot prompt. 4. **Interaction with Language Models (LLM):** - **Cloud LLM:** If you are using a cloud-based LLM, the data identified as relevant is sent to the cloud LLM for processing. - **Local LLM:** If you are using a local LLM, the data remains on your device, ensuring that all processing happens locally without any data leaving your device. +Our ML models are designed to function entirely offline and on-device, eliminating the need for internet connectivity. This is possible by **opting out of blended processing**, as the models are integrated within the application's binary, ensuring seamless operation without requiring an internet connection. We do not train our models continuously on your data. + +The data that we do collect is completely anonymous and highly secure. We also know that our partners operate in highly secure and sensitive environments, and we want to be prepared to operate in such environments (HIPAA, SOC 2, FERPA/COPPA, etc.). + ### Privacy Recommendations -For users concerned about privacy, we strongly recommend using a Local LLM with the Pieces Copilot. Options include Mistral, Phi-2, Llama2, among others. Using a local LLM ensures that all data and processing remain on your device, providing an additional layer of security and privacy. +For users concerned about privacy, we strongly recommend using a Local LLM with the Pieces Copilot. Options include Mistral, Phi, Llama, among other powerful local models. Using a local LLM ensures that all data and processing remain on your device, providing an additional layer of security and privacy. ### Performance Note Please note that results may vary depending on the selected LLM. Each model has its strengths and capabilities, which can influence the effectiveness of the Live Context feature. ## Saving Code Snippets in the Cloud + The Pieces cloud is entirely opt-in. Authentication is managed by our enterprise-ready authentication partners at Auth0 (now owned by Okta). Even when a user signs in, they do not have a cloud until they specifically connect it in their [settings](/features/user-settings#private-cloud-beta). @@ -92,11 +100,13 @@ Finally, a note on cloud architecture for the things that are backed up: Every user's cloud scales up and down completely independent of other users. The cloud is only running when a shared snippet is being accessed, backed up, or updated, and we can easily port our docker images over to an existing "Panasonic Cloud" if needed. ## Telemetry & Crash Data + Most importantly, all data collection is opt-out, and we give all the control to our users. -The data that we do collect is completely anonymous and highly secure (we take data very seriously). +The data that we do collect is completely anonymous and highly secure. ### Why do we collect data? + Long story short, we're an early-stage startup and the data helps us to report on overall growth and hopefully earn more funding to continue building amazing products for our users. Here are some screenshots of Telemetry opt-outs from the Pieces products: diff --git a/sidebars.ts b/sidebars.ts index cbe75e891..0135dec61 100644 --- a/sidebars.ts +++ b/sidebars.ts @@ -282,7 +282,7 @@ const sidebars: SidebarsConfig = { }, { type: 'doc', - id: 'product-highlights-and-benefits/privacy-security-data', + id: 'privacy-and-security', label: 'Privacy & Security', }, ] diff --git a/vercel.json b/vercel.json index cf4589d22..0b4a20d3d 100644 --- a/vercel.json +++ b/vercel.json @@ -195,6 +195,11 @@ "source": "/ama/building-a-more-extensible-development-environment", "destination": "/community/events/ama/building-a-more-extensible-development-environment", "statusCode": 301 + }, + { + "source": "/product-highlights-and-benefits/privacy-security-data", + "destination": "privacy-and-security", + "statusCode": 301 } ] } From d0494ec2037453f6323b2363d5ad585869559750 Mon Sep 17 00:00:00 2001 From: Mason Williams Date: Fri, 7 Jun 2024 08:55:08 -0400 Subject: [PATCH 11/13] docs: Update definitions and live-context links --- definitions.json | 41 +++++++++++++++++++++++++++++++-- docs/resources/live-context.mdx | 2 +- 2 files changed, 40 insertions(+), 3 deletions(-) diff --git a/definitions.json b/definitions.json index cd409dea7..c96394a65 100644 --- a/definitions.json +++ b/definitions.json @@ -3,6 +3,7 @@ "AIML", "Assets", "CS Fundamentals", + "Frontend", "Pieces Specific", "Search" ], @@ -201,7 +202,7 @@ }, { "term": "Hyper Parameter Tuning", - "definition": "Hyperparameter tuning is the process of optimizing the hyperparameters of a machine learning model to improve its performance.", + "definition": "Hyperparameter tuning is a crucial step in the process of building and optimizing machine learning models. Hyperparameters are the configuration variables that govern the training process and structure of a machine-learning model. These could include the learning rate in a neural network, depth in a decision tree, or number of clusters in K-means clustering.", "category": "AIML", "referencePath": "terms/AIML/hyper-parameter-tuning" }, @@ -223,6 +224,18 @@ "category": "CS Fundamentals", "referencePath": "terms/CS Fundamentals/iterable" }, + { + "term": "LLM Fine-Tuning", + "definition": "The process of adjusting a pre-trained AI model's parameters so it can perform better on specific tasks or datasets. Fine-tuning large language models is particularly beneficial when the model needs to adapt to specific or niche tasks where general models might not perform well without adjustments.", + "category": "AIML", + "referencePath": "terms/AIML/llm-fine-tuning" + }, + { + "term": "LangChain", + "definition": "An open-source framework designed to streamline the development of applications powered by large language models (LLMs).", + "category": "AIML", + "referencePath": "terms/AIML/langchain" + }, { "term": "Language Server Protocol", "definition": "Language Server Protocol (LSP) is an open, JSON-RPC-based protocol for use between source code editors or integrated development environments (IDEs) and servers that provide language intelligence tools.", @@ -241,6 +254,12 @@ "category": "Pieces Specific", "referencePath": "terms/Pieces Specific/linkify" }, + { + "term": "Masked Language Modeling", + "definition": "Masked Language Modeling (MLM) is a pre-training technique in natural language processing (NLP) that enables AI models to predict masked tokens within an input sequence, enhancing their understanding of language context and structure.", + "category": "AIML", + "referencePath": "terms/AIML/masked-language-modeling" + }, { "term": "Neural Code Search (NCS)", "definition": "Neural Code Search (NCS) is a method that leverages neural networks to find similar code snippets within a codebase based on natural language queries.", @@ -249,7 +268,7 @@ }, { "term": "Neural Machine Translation", - "definition": "The frame of reference that a language model uses to understand or generate language based on a fixed span of words or tokens surrounding a specific point.", + "definition": "Neural Machine Translation (NMT) is an innovative technology that allows computers to translate languages with human-level fluency. Unlike previous approaches, NMT uses artificial intelligence to analyze and create translations that match the natural flow of language. It analyzes context, idioms, and subtleties to provide more accurate and contextually appropriate translations. This transformational technology uses neural networks to comprehend complicated linguistic patterns, allowing seamless communication across several languages. NMT's capacity to adapt and learn from varied linguistic data sets is a huge step forward in breaking down language barriers, boosting global connectedness, and improving cross-cultural communication.", "category": "AIML", "referencePath": "terms/AIML/neural-machine-translation" }, @@ -271,6 +290,12 @@ "category": "CS Fundamentals", "referencePath": "terms/CS Fundamentals/pkce-flow" }, + { + "term": "Patterns Engine", + "definition": "A software tool that can be used to identify and extract patterns from data.", + "category": "Pieces Specific", + "referencePath": "terms/Pieces Specific/patterns-engine" + }, { "term": "Plural vs Singular API", "definition": "Plural APIs are used to handle multiple resources at once, while singular APIs are used to handle single resources.", @@ -283,6 +308,12 @@ "category": "AIML", "referencePath": "terms/AIML/quantized-generative-pre-trained-transformer" }, + { + "term": "React Server Components", + "definition": "React Server Components are a new addition to the React framework, designed to enable developers to build more efficient, performant applications. Learn how they work, how to create them, and their benefits and limitations.", + "category": "Frontend", + "referencePath": "terms/Frontend/react-server-components" + }, { "term": "Reaction", "definition": "The Reaction endpoint is used to react to the response given from the suggestion endpoint, allowing for a hybrid approach of user interaction/confirmation and auto-recommended uploads.", @@ -397,6 +428,12 @@ "category": "CS Fundamentals", "referencePath": "terms/CS Fundamentals/telemetry" }, + { + "term": "Vector Search", + "definition": "Vector search is a sophisticated data retrieval method that utilizes mathematical vectors to analyze and process complex, unstructured data. Learn more about vector search, its benefits, drawbacks, and key takeaways.", + "category": "AIML", + "referencePath": "terms/AIML/vector-search" + }, { "term": "Well-Known Health", "definition": "The Well-Known Health model is a read-only model that provides information about the health of the OS server, including properties such as the OS health and the schema version.", diff --git a/docs/resources/live-context.mdx b/docs/resources/live-context.mdx index ce23a4374..d013a875c 100644 --- a/docs/resources/live-context.mdx +++ b/docs/resources/live-context.mdx @@ -20,7 +20,7 @@ Live Context elevates the Pieces Copilot, allowing it to understand your workflo - [Live Context Documentation Page](https://docs.pieces.app/product-highlights-and-benefits/live-context) - [Tsavo's Excellent Demo and Discussion](https://x.com/i/broadcasts/1YpKkwQNZDmKj) - Demo Timestamps: 10:18-18:43 -- [Live Context Privacy and Security Documentation](https://docs.pieces.app/product-highlights-and-benefits/privacy-security-data#live-context) +- [Live Context Privacy and Security Documentation](/privacy-and-security#live-context) - [The Pieces Team Magic Moments](https://www.youtube.com/watch?v=pEHdZyR83BU) ## Privacy and Security From 340089741fe708c8a41d492350f659f4a6c79d5b Mon Sep 17 00:00:00 2001 From: Mason Williams Date: Fri, 7 Jun 2024 08:57:31 -0400 Subject: [PATCH 12/13] docs: Update privacy and security links --- docs/extensions-plugins/azure-data-studio.mdx | 2 +- docs/extensions-plugins/visual-studio.mdx | 2 +- docs/extensions-plugins/vscode.mdx | 2 +- docs/features/user-settings.mdx | 4 ++-- docusaurus.config.ts | 4 ++-- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/docs/extensions-plugins/azure-data-studio.mdx b/docs/extensions-plugins/azure-data-studio.mdx index 99dd7bf3f..898ca722d 100644 --- a/docs/extensions-plugins/azure-data-studio.mdx +++ b/docs/extensions-plugins/azure-data-studio.mdx @@ -135,7 +135,7 @@ This setting enables automatic copying for generated Pieces links. If enabled, y If you choose to enable auto-save, Pieces will automatically save highly re-used and potentially useful snippets while you work. This cuts down on the number of snippets you need to save manually and helps to prevent searching for code in all of your files. ### Cloud Capabilities -Here you can choose which type of ML models you'd like to use in Pieces for Azure Data Studio: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/security-and-privacy#our-machine-learning-models). +Here you can choose which type of ML models you'd like to use in Pieces for Azure Data Studio: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/privacy-and-security#our-machine-learning-models). ### Display In this section, you can choose what aspect of your snippets to display in the snippet list. diff --git a/docs/extensions-plugins/visual-studio.mdx b/docs/extensions-plugins/visual-studio.mdx index 098c22854..dcfcac54f 100644 --- a/docs/extensions-plugins/visual-studio.mdx +++ b/docs/extensions-plugins/visual-studio.mdx @@ -113,7 +113,7 @@ Easily modify tags, links, content, or delete assets directly within the Pieces This setting enables automatic copying for generated Pieces links. If enabled, you won't need to copy a Pieces link before sharing it with a teammate or friend. ### Cloud Capabilities -Here you can choose which type of ML models you'd like to use in Pieces for Visual Studio: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/security-and-privacy#our-machine-learning-models). +Here you can choose which type of ML models you'd like to use in Pieces for Visual Studio: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/privacy-and-security#our-machine-learning-models). ### CodeLens To enable or disable Pieces CodeLens, go to `Tools > Options > Pieces > User Preferences` and check the `Enabled` option for CodeLens. diff --git a/docs/extensions-plugins/vscode.mdx b/docs/extensions-plugins/vscode.mdx index a789f90b1..3da8b682a 100644 --- a/docs/extensions-plugins/vscode.mdx +++ b/docs/extensions-plugins/vscode.mdx @@ -163,7 +163,7 @@ This setting enables automatic copying for generated Pieces links. If enabled, y If you choose to enable auto-save, Pieces will automatically save highly re-used and potentially useful snippets while you work. This cuts down on the number of snippets you need to save manually and helps to prevent searching for code in all of your files. ### Cloud Capabilities -Here you can choose which type of ML models you'd like to use in Pieces for VS Code: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/security-and-privacy#our-machine-learning-models). +Here you can choose which type of ML models you'd like to use in Pieces for VS Code: Cloud, Local, or Blended. To learn more about the types of ML models and their privacy implications, [visit this section of our documentation](/privacy-and-security#our-machine-learning-models). ### Display In this section, you can choose what aspect of your snippets to display in the snippet list. diff --git a/docs/features/user-settings.mdx b/docs/features/user-settings.mdx index 9cdf1d9b2..639179728 100644 --- a/docs/features/user-settings.mdx +++ b/docs/features/user-settings.mdx @@ -273,12 +273,12 @@ You can choose to use local or blended processing to manage your code snippets. Try both modes to find what works best in your environment. -**Note:** Choosing local-only processing ensures that your code remains solely on your device. Learn more about [Privacy & Security](/security-and-privacy) at Pieces to determine which processing mode is best for you. +**Note:** Choosing local-only processing ensures that your code remains solely on your device. Learn more about [Privacy & Security](/privacy-and-security) at Pieces to determine which processing mode is best for you. ## Telemetry You can always adjust the amount of anonymous data that you share with us. By unchecking this box, you ensure that we will not collect data and analytics from your machine. Regardless of collection preferences, we do not collect your code snippets! They are stored on your machine. The data we collect helps us see how often particular actions are taken, what sections of the application are used by the community as a whole, and other data so that we can provide a better experience for you. Personal data is not collected and your code is not shared with any other parties, even when you generate shareable links. -Read more about our [Privacy & Security](/security-and-privacy) to get a full look. +Read more about our [Privacy & Security](/privacy-and-security) to get a full look. ## Information To share the version number and specific platform build of your version of the Pieces Desktop App, just press the copy button next to either of these items. These are helpful when working with Support on installation and debugging issues. diff --git a/docusaurus.config.ts b/docusaurus.config.ts index c8c1a818b..8da7f39a5 100644 --- a/docusaurus.config.ts +++ b/docusaurus.config.ts @@ -191,8 +191,8 @@ const config: Config = { title: 'Terms & Policies', items: [ { - label: 'Security & Privacy', - href: '/security-and-privacy', + label: 'Privacy & Security', + href: '/privacy-and-security', }, { label: 'Privacy Policy', From 800b55f4645ee33b4fb0962f7827433216af85ae Mon Sep 17 00:00:00 2001 From: Mason Williams Date: Wed, 12 Jun 2024 10:52:43 -0400 Subject: [PATCH 13/13] docs: Remove TODO in privacy-and-security doc --- docs/privacy-and-security.mdx | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/privacy-and-security.mdx b/docs/privacy-and-security.mdx index 0ba257f2e..376b7a111 100644 --- a/docs/privacy-and-security.mdx +++ b/docs/privacy-and-security.mdx @@ -63,7 +63,6 @@ The **Live Context** feature in Pieces enhances the functionality of the Pieces ### How Live Context Works 1. **On-Device Processing and Storage:** All WPE algorithms, processing, and storage take place directly on your device. This ensures that your data remains secure and private, without being transmitted over the internet unless necessary. - - TODO: Add why it may be necessary to transmit data over the internet 2. **Querying Local Data:** When Live Context is enabled, and you ask a question to the Copilot, the system queries data aggregated from the WPE. This data is processed entirely on your device to find content that is relevant to your query. 3. **Utilizing Retrieval-Augmented Generation (RAG) for Contextual Relevance:** The relevant content identified by the WPE is then used as context for the Copilot prompt. 4. **Interaction with Language Models (LLM):**