Privacy policy
Offsprint is a service in which AI agents plan, build and demo work from a brief you write. This policy explains what data Offsprint collects, what it does with it, who else processes it, where it is kept, for how long, and how you remove it.
Who we are
Offsprint is operated by Shams Sherif, an individual ("we", "us"). For anything about your data, write to shamsheg@gmail.com. We are responsible for the data Offsprint processes, including the data it receives from the services you connect. Google, Slack, GitHub, Figma, Canva and Miro are not responsible for the privacy, security or integrity of that data once Offsprint has received it.
What we collect
- Your account: your name and email address, and the workspace you belong to.
- What you give us: briefs, answers to questions, feedback on demos, and files you attach.
- The work: plans, code, documents, decks, spreadsheets, research sources, demo recordings and the apps Offsprint hosts for you, plus a record of every step the agents take.
- Connections you make: the access tokens a provider issues when you connect it, the account name and id it reports, and the content Offsprint reads through it, as described below.
- Technical data: request logs (IP address, time, address requested) and error logs, used to run and secure the service.
We do not use cookies for advertising or analytics, and these pages set no cookies.
How we use it
Only to provide Offsprint to you: to plan, build, review and demo the work you ask for, to deliver it where you asked, to keep the service secure, and to answer you. We do not sell your data, use it for advertising, or build profiles from it. We do not use your data, or anything read from a service you connect, to train or improve any AI or machine learning model, and we do not let our providers do so.
AI model processing
The agents are AI models. Each piece of work an agent does, such as planning a milestone, building one task or reviewing it, is called a run below. To do the work, Offsprint sends your briefs, your attachments, the project's work so far, and any content a run reads from a connected service to our model provider, Anthropic, PBC, in the United States. Research runs search and fetch public web pages through the provider's web search and web fetch tools. Anthropic processes this content to return the model's answers under its commercial terms, which do not allow it to train its models on that content. Anthropic deletes it within 30 days, or keeps it for up to 2 years if its safety systems flag it as breaking Anthropic's usage policy. We keep our own record of what each run sent to the model and got back, called the run's transcript, for the period in the retention table below.
Agents never receive your access tokens and have no tool that writes to your connected accounts or sends messages for you. They propose actions, and Offsprint's own code carries them out after the checks and approvals described below.
Google user data
If you connect Google, Offsprint asks for one permission: https://www.googleapis.com/auth/drive.file. It lets Offsprint see and change only the Google Drive files it creates for you, or files you choose to open with it. Offsprint cannot see or list your other Drive files.
- What we access: the files Offsprint creates, and the email address of your Google account, which identifies the connection and, when you approve an email Offsprint sends for you, is that email's Reply-To address.
- What we do with it: create a folder named
Offsprint/<project>in your Drive, save deliverables there as Google Docs, Slides and Sheets, update them when a milestone changes, and read them back so a project's later runs can build on them. Before each save, Offsprint checks that nobody but you can see the file. Sharing a file with anyone else happens only after you approve that share. - Where it goes: content read from these files is processed as described under "AI model processing" and kept as listed in the retention table.
Offsprint's use and transfer to any other app of information received from Google APIs will adhere to the Google API Services User Data Policy, including the Limited Use requirements. In particular:
- we use Google user data only to provide and improve the features you can see in Offsprint;
- we transfer it to others only as needed to provide those features (to our model provider, as above, and your Google account's email address to the recipients of an email you approve, as its Reply-To address), for security, or to comply with the law;
- we never use it for advertising, never sell it, and never use it to train or improve any AI or machine learning model, generalized or not;
- no person reads it unless you ask us to, it is needed for security or to comply with the law, or it has been aggregated and anonymized for internal operations.
Offsprint requests no sensitive or restricted Google scope today. These commitments apply anyway, and will cover any scope we add later.
Slack, GitHub and email
- Slack: the Offsprint bot reads only channels that you name for a project and have invited it into. When a message you approve is addressed to a person, it also looks up that member of your Slack workspace by email address. Message text is sent to the model in that project's runs and kept only in the transcript. It is never copied into a project's files, events or logs, which refer to messages by link. The bot posts a message, in a channel or directly to a person, only after you approve it.
- GitHub: Offsprint creates repositories for your projects and pushes the work to them. It works only on repositories it created, and checks before each push that the repository's visibility has not changed.
- Email: email that Offsprint sends for you after your approval, and sign-in email sent by the apps it hosts for you, goes through Resend, Inc., in the United States. Resend keeps the recipients and the content of each message for 30 days. We keep message details, but never the body, for 30 days.
Figma, Canva and Miro
- Figma: for the frames a project's plan names, Offsprint stores a snapshot for each milestone (images of the frames, their exported assets, and their structure without comments or hidden layers) and uses it to build and check the work. Comments, and any frame the plan does not name, are read only by runs that have no internet access. Offsprint writes to Figma only to add a comment you have approved. It never edits a design.
- Canva: Offsprint imports a deck into your Canva account after you approve it. Designs you point a project at are read only by runs that have no internet access.
- Miro: Offsprint creates a board in your team, private to you, after your approval or (on a paid Miro plan) without one. Boards you point a project at are read only by runs that have no internet access.
Text read from Figma comments, Canva designs and Miro boards is never copied into a project's files. The work refers to it by id with a one-sentence summary. Transcripts of runs that read it are kept for 14 days, not 30. Anthropic's copy is deleted on its own schedule, within 30 days (see "AI model processing"), and the ids and one-sentence summaries stay in the project for its life. Nothing from these services is used to train any model, sold, shared for marketing, or combined with data from elsewhere for any purpose other than your project.
Who else processes your data
We share your data only with the providers that run Offsprint for us, and only for that purpose:
| Provider | What for | Where |
|---|---|---|
| Google Cloud | Hosting the service, its database, files, logs and backups; hosting the apps Offsprint builds | Doha, Qatar (me-central1); hosted apps in Belgium (europe-west1) |
| Anthropic, PBC | AI model processing, web search and fetch | United States |
| GitHub, Inc. | Project repositories (in our organization, or in your account if you connect GitHub) | United States |
| Neon, Inc. | Databases of the apps Offsprint hosts for you, when an app needs one | Frankfurt, Germany |
| Resend, Inc. | Sending email | United States |
We may also disclose data when the law requires it. If Offsprint is ever transferred to someone else, this policy continues to apply to the data collected under it.
How we protect it
- Access tokens from your connections are encrypted with Google Cloud Key Management Service and stored in a separate internal service that is the only part of Offsprint able to decrypt them. Agents and internet-facing parts of Offsprint cannot read them, and every use of a token is logged.
- Data is encrypted in transit and at rest. Each part of the service runs with its own identity and only the permissions it needs.
- Runs that read your Slack channels, your Drive files, Figma comments, Canva designs or Miro boards have no internet access, and after the first such run, no later run in that project has internet access either, so that content cannot be sent anywhere by a run. The Figma frames you name for a project are different: they are handed to the build like a file you attach, and build runs do have internet access, unless you ask Offsprint to treat the design as confidential.
- You can freeze your workspace at any time, which stops every action that would leave Offsprint.
How long we keep it
| Data | Kept |
|---|---|
| Project files and repository (code and notes, never Slack message text, Figma comments, or text from Canva designs or Miro boards) | For the life of the project. A repository in your own GitHub account is yours. |
| Deliverables, demo recordings, research source snapshots, Figma snapshots and design comparison images | For the life of the project, deleted with it |
| Transcripts of model calls (which include what a run read from Slack, your Drive, Figma, Canva or Miro, and the Figma frames a build used) | 30 days; 14 days for runs that read Figma comments, Canva designs or Miro boards |
| Record of actions taken on your behalf (what, where, when, and who approved) | For the life of the workspace; the content of each action is removed 90 days after it finishes |
| Research sources (addresses, titles, short extracts) | For the life of the project |
| Email message details (no body) | 30 days |
| Sign-in email captured on an app's preview, never delivered | 7 days |
| Request logs | 30 days |
| Security audit logs (token use, actions, key use) | 400 days |
| Database backups (everything above, with access tokens still encrypted) | 7 days |
| Content sent to Anthropic for model processing | Deleted by Anthropic within 30 days; up to 2 years if its safety systems flag it as breaking its usage policy |
| Email at Resend (recipients and content) | 30 days, under Resend's policy |
| Access tokens | Until you disconnect, or the connection stops working |
Disconnecting and deleting
- Disconnecting a service revokes Offsprint's access at the provider (Google, Slack, Canva and Miro) and deletes the stored tokens straight away. Actions that were waiting on that connection are not carried out.
- GitHub is revoked in two parts. Disconnecting revokes your authorization of Offsprint and deletes its tokens, and Offsprint stops using the connection. The Offsprint app stays installed on your account, with access to the repositories you chose, until you uninstall it: open GitHub, go to Settings → Applications → Installed GitHub Apps → Offsprint and choose Uninstall.
- Figma offers no way for an app to revoke its own access. When you disconnect Figma, Offsprint makes every access token it ever handed out stop working and deletes its tokens, but Figma keeps listing Offsprint as connected. To remove it, open Figma, go to Settings → Security → Connected apps and remove Offsprint.
- Deleting a project stops its work and deletes its files, repository in our organization, deliverables, recordings, source records, Figma snapshots, preview email and the content of its actions. It does not delete what Offsprint delivered into your own accounts: files in your Google Drive, a repository in your GitHub account, decks imported into Canva and boards in Miro stay yours, and you remove them there.
- Deleting everything: write to shamsheg@gmail.com from your account's address. We delete your workspace, its projects and connections within 14 days. Transcripts, request logs, security audit logs and backups expire on the schedule above, and Anthropic deletes its copy as described there.
Your rights
You can ask us for a copy of your data, to correct it, to delete it, to restrict or object to how we use it, or to receive it in a portable format. Write to shamsheg@gmail.com. We answer within 30 days. You may also complain to the data protection authority where you live.
Children
Offsprint is for adults using it for their work. It is not meant for anyone under 18, and we do not knowingly collect data from children.
Changes to this policy
We will post any change here and update the date at the top. If a change means Offsprint reads a new kind of data from a service you have connected, we will ask for your consent in Offsprint before it does.