Security and Privacy

We built Pushpen for developers who care about their code. Here's exactly how we handle your data, your GitHub access, and your privacy — no fine print, no spin.

Start free

Access

How Pushpen accesses your code

Pushpen uses GitHub OAuth to access your repositories, and only ever acts on repositories you explicitly connect — regardless of what the underlying OAuth grant covers. You authorize access when you connect a repository, and you can revoke it at any time from GitHub Settings → Applications.

What Pushpen reads

  • Repository structure and file listings
  • Diff data on pull requests and push events
  • Source files relevant to documentation (routes, controllers, schemas)
  • Commit messages for changelog generation

What Pushpen never reads

  • Issues, discussions, or pull request comments
  • GitHub Actions secrets or environment variables
  • Personal data of repository contributors
  • Your private keys, tokens, or credentials
  • Any file outside the scope of documentation generation

Data handling

How your data is handled

When Pushpen processes your code, here is exactly what happens to every byte:

Code is processed, not stored

Your code diffs are sent through our AI pipeline to generate documentation. Once generation is complete, the transient data is discarded. We do not permanently store your source code.

No AI training on your repos

Your code is never used to train or fine-tune AI models. Our AI providers (Anthropic Claude via OpenRouter) do not train on API data. We enforce this in our own pipeline as well.

Only the PR remains

After generation, the only artifact in our system is the pull request we opened in your repository. The code itself is not retained anywhere on Pushpen infrastructure.

Encrypted in transit

All data transmitted between Pushpen, GitHub, and our AI provider is encrypted using TLS 1.3. We never transmit your entire repository — only the relevant diff context.

Control

Access control

You are always in control of Pushpen's access to your GitHub account and repositories.

  • Revoke access anytime

    Go to GitHub Settings → Applications → Authorized OAuth Apps → Pushpen and click Revoke. That's it — access is terminated immediately.

  • No direct writes to default branch

    Pushpen never commits directly to your main or default branch. All generated documentation arrives as pull requests that you review and merge on your terms.

  • Granular permissions

    Pushpen requests only the permissions it needs. You can see exactly what we have access to in your GitHub OAuth settings at any time.

  • Selective repository access

    When you connect a repository, you choose which one. Pushpen does not automatically gain access to all your repositories.

Retention

Data retention

Documentation

Generated documentation lives in your GitHub repository — in your pull requests and commit history. We do not host or retain copies on Pushpen servers.

Account data

We retain your email, GitHub profile information, and usage records as long as your account is active. This data is used for authentication, billing, and support.

Usage logs

Aggregated, anonymized usage data may be retained for product improvement. Individual diffs and generated content are not logged or stored.

Account deletion

When you delete your account, all stored personal data is permanently removed. See our Privacy Policy for details.

Third parties

Third-party processing

Pushpen relies on a small number of carefully chosen third-party services to operate. Here is exactly how each one handles your data:

  • Anthropic Claude (via OpenRouter)

    Code diffs are sent to Anthropic Claude models through OpenRouter for documentation generation. These providers do not use API data for training by default. Only the minimum diff context is transmitted — never your entire repository.

  • GitHub

    Pushpen interacts with GitHub solely through the OAuth-scoped API. We read repository data and create pull requests as authorized by you. No data is synced or stored outside of these operations.

  • Infrastructure (Supabase, Vercel)

    Supabase stores account and billing data. Vercel hosts the application. Both are SOC 2 compliant and follow industry-standard security practices.

We do not sell your data. We do not share your code with advertisers, analytics providers, or any third party beyond what is listed above. See our Privacy Policy and Terms of Service for more detail.

FAQ

Frequently asked questions

Is my code used to train AI models?

No. Pushpen sends code diffs to Anthropic's Claude models via the OpenRouter API solely for the purpose of generating documentation. These providers do not train on API data by default, and we do not share your code with any other party for training purposes. Your code is processed transiently and is not retained or used to improve AI models.

Can I revoke Pushpen's GitHub access?

Yes, at any time. Go to GitHub Settings → Applications → Authorized OAuth Apps → Pushpen, and click Revoke. Your access will be terminated immediately, and Pushpen will no longer be able to read your repositories or create pull requests on your behalf.

Does Pushpen read my entire repository?

Pushpen reads your repository structure, diff data on pull requests and pushes, and relevant source files needed to generate documentation. It does not read issues, discussions, Actions secrets, workflows, or any personal data stored in your repository.

What happens if I delete my account?

When you delete your Pushpen account, all stored account data and usage records are permanently removed from our systems. Documentation already merged into your repository remains in your git history. To request deletion, contact info@pushpen.dev.

Where is my documentation stored?

Documentation generated by Pushpen is stored directly in your GitHub repository as pull requests or committed files. We do not retain copies of your documentation on our servers after delivery. Only account metadata and billing records are stored in our systems.

Your code stays yours.

Start free and see how Pushpen documents your code — without compromising on privacy.

Start free