These documents have not been reviewed by a lawyer

They are a reasonable, good-faith starting point written for this specific product, but platform-liability law is moving quickly — several US states now impose social-media-specific duties on top of federal law. Have counsel review these before real users sign up, and revisit them periodically rather than treating them as finished.

Privacy Policy

What MeshSail collects, why, how long we keep it, and what you can do about it. We do not sell your data and we do not run third-party advertising.

Last updated 27 July 2026

1. What we collect

You give us

  • Account details — email address, display name, handle, and date of birth. Date of birth is collected solely to enforce the 18+ requirement and is never shown publicly.
  • Profile content — bio, avatar URL, linked GitHub username.
  • Project content — names, descriptions, tags, repository and live URLs, images.
  • Ratings, comments, collaboration requests and messages.
  • Reports you file, including any detail you write.

Your connected services give us

  • GitHub (sign-in) — your GitHub username and email, to create and link your account.
  • GitHub App (repositories) — pull request, review, push and branch protection events for repositories you connect to a team. We store the commit SHA, branch, PR title, author username, review outcome and timestamps, so the in-app audit trail and review status work. We do not store your source code.
  • Your own application — if you configure the ingest API, whatever metrics you choose to send: uptime status, user counts, sessions, page views, error counts. You decide what to send; we never reach into your app.

We generate

  • Credit ledger entries (historical)MeshSail used to run an in-app credit balance. That feature is retired: nothing earns or spends credits any more. The append-only record of what you earned and spent while it existed has been kept rather than deleted, because it is your own history and it is still included in your data export. It gives you nothing and costs you nothing.
  • Friend requests and connections — who you have asked to connect with and who has accepted. Visible only to the two people involved; we do not publish it, and there is no follower-style count of it anywhere in the product. Declining a request deletes it outright rather than recording that you said no.
  • Impression counts — that a project card was displayed. Counted per card view, not tied to a viewer identity in a way that builds a browsing profile.
  • Project embeddings— a numerical representation of your project's public description and tags, used to find similar projects.
  • Moderation records — reports, decisions taken, and by whom.
  • Connected agent records — if you connect an AI coding assistant through our MCP connector, we store which client is connected, which permissions you approved, and a log of every action it took on your behalf: the tool it called, the arguments, and whether it succeeded. This is what lets you audit and revoke it, and it is visible to you at Settings → Security. Access tokens themselves are stored only as a one-way hash — we cannot read them back, and neither can anyone who obtains a copy of the database.
  • Team status entries — when you or your connected session posts what you are working on, that text and the file paths you listed are stored and are visible to the other members of that team. Post at the level of detail you would say out loud in a standup; it is not private to you.
  • Verification records — the outcome of any code-verification check run for a team, who ran it, and what it found. These are append-only and cannot be edited or deleted, because their entire purpose is to be an audit trail.
  • Agent workspace records— if your connected session joins a team's shared workspace, we store what it said it was working on, which files it claimed, the messages it exchanged with your teammates' agents, and the team's shared notes about the project. All of it is visible to the other members of that team.
  • Shared code snippets — agents on a team can send each other extracts of your source code so they can check their work fits together. Those extracts are stored on our servers, readable by that team, and deleted 30 daysafter the session that shared them ends. This is the one place your source code itself reaches us, so it is worth stating plainly rather than leaving you to infer it. Two limits apply and neither can be switched off by an agent: files matching your team's blocked path patterns — which always include .envfiles, private keys, certificates and credential files — are refused before anything is written, and so is any path that points outside the repository. You can add your own patterns, and tighten them further for your own sessions, under your team's agent permissions. If you would rather no code ever reached us, set your team's code sharing to off; agents then describe code to each other instead of sending it.
  • Your prompts, only if your team chooses that— a team can set whether teammates see the exact words you type to your agent, only your agent's one-line summary, or nothing. The default is the summary. On anything other than “full”, the verbatim text is discarded before it is written down, so a later change to that setting cannot expose what you typed under a stricter one. You can restrict this further than your team does, and never further open.

2. Why we use it

  • To operate the service and show you the features you asked for.
  • To compute health scores, ratings, and discovery recommendations.
  • To enforce our rules, investigate abuse, and keep the platform safe.
  • To send you transactional email, and any optional email you have opted into.
  • To meet legal obligations.

3. What we do not do

  • We do not sell your personal information, and we do not share it for cross-context behavioural advertising.
  • We do not run third-party ad networks or advertising trackers.
  • We do not read your source code, and the GitHub App does not request code contents permission.

4. Who processes data on our behalf

We use a small number of service providers, each bound to process data only on our instructions: Supabase (database, authentication, storage), Vercel (hosting), Resend (transactional and digest email), GitHub(repository integration), and, if configured by the operator, an embeddings provider that receives your project's public description text and a URL safety provider that receives submitted links.

5. How long we keep it

  • Account and content — until you delete it or close your account.
  • Metrics — rolling snapshots; the health score uses a 30-day window.
  • Moderation records — retained after deletion where we need them to explain or defend a decision, or to prevent a banned account being recreated.
  • Shared code snippets — deleted 30 days after the agent session that shared them ends. They exist so two agents can check their work fits together, which is not a purpose that outlives the session.
  • Backups — deleted data may persist in encrypted backups for a short period before rotating out.

6. Deleting your account

Deletion from Settings → Data & deletion is real deletion, not a hidden flag. It removes your profile, projects and their metrics and incidents, your credit ledger, your teams, your friends and friend requests, your follows and blocks, your notifications, and your login credentials.

Two things are treated differently, and we want to be explicit about it:

  • Ratings you gave other people's projects.The individual rating records are deleted, but their contribution to each project's aggregate score is preserved. What remains is a number inside a sum, with nothing linking it to you. We do this because otherwise closing an account would become a tool for retaliating against — or inflating — someone else's score.
  • Messages you sent.They remain in their conversation with the sender detached, so the other participant's side of the conversation still makes sense.

7. Your rights

We build to the standard of GDPR and CCPA-style rights regardless of where you are, because it is cheap to do from the start and expensive to retrofit. You can:

  • Access and port — download everything tied to your account as JSON from Settings → Data & deletion.
  • Correct — edit your profile and project content at any time.
  • Delete — close your account, with the two disclosed exceptions above.
  • Object and restrict — turn off optional email in notification settings, and limit who can contact you in privacy settings.
  • Non-discrimination — exercising any of these does not degrade the service you receive.

To exercise a right we have not built a button for, email privacy@meshsail.dev.

8. Children

MeshSail is not directed to children. Accounts require the holder to be 18 or older, which is enforced at signup and in our database. We do not knowingly collect personal information from anyone under 18; if we learn we have, we delete it and close the account.

9. Security

Data is encrypted in transit and at rest by our infrastructure providers. Access to user data is restricted by row-level security policies enforced in the database itself, so a bug in the application layer does not become a data breach. Ingest API keys are stored only as SHA-256 hashes and can never be retrieved after creation.

No system is perfectly secure. If you find a vulnerability, please report it to privacy@meshsail.dev rather than disclosing it publicly.

10. International transfers

Our infrastructure is hosted in the United States. If you are outside the US, using MeshSail involves transferring your information there.

11. Changes

We will post any change here and update the date above. Material changes will be notified in the product or by email before taking effect.

12. Contact

privacy@meshsail.dev
MeshSail, 000 Example St, City, ST 00000, USA