Skip to content

Frequently Asked Questions

Launch and data overview

What data is processed, and what stays local?

  • Sent to Patcherly: Error messages, stack traces, file paths, and the small code excerpts around the error needed to analyze it - not your full codebase.
  • Sent to AI providers: The same minimal error context, redacted where it's straightforward to do so (secrets in stack traces, etc.).
  • Stays local: Your full codebase and connector pre-apply backups stay on your environment. With Repo Pull Requests, Patcherly may open a PR on a linked GitHub repo you grant via the GitHub App (separate from Sign in with GitHub).

Patcherly's app, API and database are EU-hosted (Frankfurt) by default. AI providers and a small number of supporting services may be outside the EEA: see https://patcherly.com/legal/subprocessors for the full list, and https://patcherly.com/legal for subprocessors, retention, and data flows.

How do billing and trials work?

For a limited time, new accounts get a 30-day trial of the full Pro plan with no credit card required. Cancel anytime. See 30-day Pro trial. Plans and limits are summarized in Plans. Current prices and plan features are always on the Pricing page. Billing runs through Stripe. Manage trials, upgrades, downgrades, and payment details under Profile → Billing → Manage billing (Stripe portal) when you are the workspace owner. If you joined someone else’s workspace and do not own one yet, Profile → Billing still lets you create your own workspace.

Can I add Extra sites during the trial?

No. Extra sites are available only after you subscribe to a paid plan (or after the trial ends and you then subscribe). From Profile → Billing, subscribe first, then set Extra sites. Details: Extra sites during the trial.

What happens when something fails?

  • Fix applied but site misbehaves: Use Rollback in the dashboard to restore from the backup on your server. Automatic rollback may be triggered when a basic health check fails after a fix.
  • Analysis or provider error: You may see 402 (monthly limit) or 429 (provider rate limit). See Troubleshooting and the FAQ entries on 402/429.

General Questions

What is Patcherly?

Patcherly watches your live sites and apps for errors, drafts a fix with AI, and applies it on your server (or opens a GitHub pull request when you use Repo Pull Requests) only after you approve (unless you turn on optional automation). A local backup is taken first when applying on the site, and one click can undo a live change.

How does Patcherly work?

  1. Install a connector on your application (Python, Node.js, PHP, or WordPress).
  2. Pair the connector with your site from the dashboard (a short one-time code - same idea as “Connect TV” apps).
  3. Errors are detected automatically by the connector.
  4. Click Analyze with AI on a pending error - or, with auto-analysis, Patcherly skips this step (see the auto-analysis Q&A below).
  5. AI analyses the error and drafts a fix.
  6. You review and approve the fix - or, when conditions are right, auto-apply does this for you (see the auto-apply Q&A below).
  7. The fix is delivered - applied on your environment with a backup taken first, or opened as a GitHub pull request when the site uses Repo Pull Requests.
  8. The system checks the result and rolls back a live apply if something looks wrong (PR delivery waits for merge on GitHub).

What programming languages are supported?

Patcherly currently supports: - Python (via pip package) - Node.js (via npm package) - PHP (standalone script) - WordPress (plugin)

Is Patcherly secure?

Yes. The dashboard uses secure sign-in and session handling (email and password, or optional Sign in with Google / Sign in with GitHub), fix payloads are verified before they are applied, and workspace data is isolated between customers. Sensitive actions in the app may ask you to confirm your password.

For how we handle cookies, privacy, and related topics, see: - https://patcherly.com/legal/privacy-policy - https://patcherly.com/legal/cookie-policy

The Patcherly website (patcherly.com) may use consent-gated analytics cookies. The dashboard (app.patcherly.com) does not load those marketing cookies; successful registration or paid signup may still be measured server-side as described in the Privacy Policy.

Account & Billing

What plans are available?

Patcherly offers Personal, Core, and Pro plans - each with different limits on sites, fix quotas, and feature access. See the Pricing page for current plans, features, and prices.

Can I stay logged in longer without re-entering my password?

Yes. The dashboard keeps your session active and refreshes it in the background while you work. If you are signed out (for example after a long period of inactivity), sign in again - with your password or a connected Google / GitHub account.

How do I sign in with Google or GitHub?

On the Login and Register pages, use GitHub or Google when those options are enabled for your environment. You can also link or unlink them later under Profile → Account → Connected accounts. We only use the identity and email needed to sign you in; we do not keep the provider’s access tokens after sign-in. Details: Privacy Policy §2A.

Can I upgrade or downgrade my plan?

Yes. Use Profile → Billing → Manage billing (Stripe portal) so Stripe updates your existing subscription (including proration). See Plans. Do not use the public checkout again if you already subscribe - use the portal.

What payment methods are accepted?

Payments are processed by Stripe (typically major credit and debit cards; available methods depend on your region). Add or update cards in the Stripe Customer Portal from Profile → Billing. Details: Plans, or Stripe Payments.

How do I view my invoices?

Invoices are available in your dashboard under Profile → Billing (Payment history). See Invoices and receipts for more information.

How do I change how numbers are displayed?

You can choose how numbers are displayed (dot or comma for decimals) in Profile → Preferences: use the "Numbers format (decimals)" option (e.g. Dot 1,234.56 or Comma 1.234,56). This affects Metrics, Usage, and other read-only number displays; Settings and numeric inputs always use a dot (.) for decimals.

Sites & Connectors

What is a site?

A "site" in Patcherly is one website or application you want to monitor and fix. Each site has: - A unique name and URL - A connector paired from the dashboard (one secure connection per site, stored on the site’s server) - Associated errors and fixes

See Adding Your First Site for details.

How many sites can I have?

The number of sites you can have depends on your plan. See the Pricing page for current limits.

How do I install a connector?

Installation depends on your application type: - WordPress Connector - Node.js Connector - Python Connector - PHP Connector

How does my connector authenticate to Patcherly?

When you run patcherly login on the site server (or click Pair connector / Connect with Patcherly in the WordPress plugin), you get a short code and a link. Open the link, sign in to Patcherly, pick the site, and confirm the code. Patcherly then issues a secure connection for that site and keeps it refreshed in the background - you do not manage tokens yourself. Standalone connectors keep that pairing in a local credentials file on the server; WordPress stores it in the plugin.

Can I revoke or re-pair a connector?

Yes. Prefer Auto-Reconnect on the Sites row when the connector shows Not apply-ready, Reconnecting…, or Re-auth required - that nudges a soft-held session or opens guided re-pair (standalone connectors: device login; WordPress: Open plugin to re-pair, which prompts Re-Connect Account on Home).

To wipe the pairing only: run patcherly logout (or Disconnect in the WordPress plugin), or use Unplug on Sites. Then run patcherly login (or Connect with Patcherly) again. To remove local connector data on Python / Node / PHP and tip Sites as Connector reported uninstalled, run patcherly uninstall. See Logout vs uninstall.

What do the colored dots on Sites mean?

They show agent status: green = heard from recently, orange = quiet for 1-7 days, red = offline or the connector reported deactivate/uninstall. Details: Agent status on Sites.

How do I send a test error to verify my connector works?

Use Test Mode: in your Patcherly dashboard, open Sites, click the site, and flip the Test Mode toggle ON. That opens a 30-minute window during which the connector can send one or more synthetic events. Then run patcherly send-test from the host where you installed the Python / Node.js / PHP CLI (WordPress: confirm Test Mode is On in Connector Status, then trigger or wait for ingest). The event appears in Errors flagged as a sample - it won't affect your metrics or fire notifications. The window auto-closes after 30 minutes (or when you flip the toggle off), so test events can't keep flowing by accident.

What does “Run rescue now” do (WordPress)?

It sends one signed rescue ping from Patcherly to your WordPress site so the Emergency Rescue must-use plugin can check for waiting work - new emergency log lines, an approved fix to apply, or a Rollback. Use it when WP-Cron is slow/missing, the site is white-screened, or you want to re-test after Cloudflare changes.

It does not bypass Cloudflare or invent a fix by itself. If Bot Fight Mode blocks the ping, apply from Patcherly → Errors in wp-admin instead. Details: Run rescue now.

Why can't I just always send test events from my connector?

The Test Mode window is a deliberate safety gate. Without it, an exposed connector credential, a curious script on your server, or a stray CI run could spray fake errors into your real feed and trigger notifications. With it, you stay in control of when synthetic traffic is allowed - and Patcherly stamps every event sent during the window as a sample so it never pollutes metrics. If you try to send a test event while Test Mode is off, the connector tells you exactly which dashboard URL flips it on; no event is sent.

Error Management

How are errors detected?

Errors are detected automatically by connectors: - Connectors monitor your application's error logs - When an error occurs, the connector captures context - Error is sent to Patcherly for analysis

See Understanding Errors for details.

How does AI analysis work?

Patcherly uses advanced AI to: - Examine error messages and stack traces - Understand code context - Generate appropriate fixes - Provide confidence scores (0-100%)

Can I choose a different AI provider or model?

Patcherly runs analysis using AI models enabled for your workspace. On plans that include Custom AI, you can choose provider and model and optionally use your own API keys in Profile → AI. See the Pricing page for which plans include this.

Do I need to start analysis on every error manually?

By default, yes - errors land in Pending status and wait for you to click Analyze with AI. However, with the auto-analysis feature (available on higher plans), you can enable automatic analysis per site or app so errors are sent to AI immediately after detection. See Auto-Analysis for details and the Pricing page for plan availability.

Do I need to approve every fix?

Usually you review fixes in the dashboard before they apply. Patcherly also uses a minimum confidence guardrail for your workspace (default 90% - contact support if your organization needs it adjusted). Fixes above that bar can move forward without an extra low-confidence confirmation; fixes below it ask you to confirm so nothing risky applies silently.

New sites start with Dry-run off, so Approve applies for real. Turn Dry-run on when you want preview-only on a staging or sensitive site. After analysis you can also reject a proposal, mark it manually fixed, or leave Dry-run on until you are ready. Hide Error & Ignore is only for pre-analysis noise or post-apply list cleanup - not for rows with a fix proposal. See Approving Fixes.

Can Patcherly open a GitHub pull request instead of patching my site?

Yes. Install the Patcherly GitHub App under Profile → Account → Connected repositories, link each site to a repo there, and choose PR Only or Live Patch + Repo PR. That App is separate from Sign in with GitHub. See GitHub App and Repo Pull Requests.

What is auto-analysis and how do I enable it?

Auto-analysis is when Patcherly skips the manual Analyze with AI click for you. New errors go straight to AI without you starting analysis on each one. It needs two things:

  1. A plan that includes auto-analysis (see the Pricing page).
  2. The Auto-Analysis toggle turned on for each website/app you want to cover.

Turn it on from Profile → AI tab → Auto-Analysis Preferences, or expand a site row on the Sites page. Errors you've previously chosen to ignore are still respected - they won't be auto-analysed. See Auto-Analysis.

What is auto-apply and how is it different from auto-analysis?

Auto-apply skips the "Approve the Fix" click - a fix can be approved and delivered without you (live apply and/or a GitHub PR, depending on the site Connected repositories mode). It is a Pro feature with its own per-site toggle (separate from auto-analysis), and it only runs when all of these are true:

  1. Your plan includes auto-apply and the Auto Apply toggle is on for the site.
  2. Auto-analysis is also on for the site (auto-apply runs after an auto-analysed fix).
  3. The site is not in Dry-run (new sites start with Dry-run off; while Dry-run is on, the pipeline still runs but only previews the patch - and Dry-run cannot be combined with PR delivery modes).
  4. The fix’s confidence is at or above your workspace minimum (default 90%).

If any one of those isn’t true, the fix waits for your manual approval - same as on every plan. See Auto-apply.

What happens if a fix causes problems?

Patcherly includes automatic and manual rollback:

Automatic rollback (basic health check on every plan): - After every fix, a basic health check runs for your site or app (all plans): the system checks that your site responds and is not returning 5xx or unreachable. - If the basic health check fails (e.g. PHP 500, site down), the fix is automatically rolled back on every plan - no special plan needed. - On higher plans with Agent Testing, additional checks (test execution, health score) can also trigger automatic rollback.

Manual rollback (all users, every plan): 1. Click Rollback on fixed/failed errors 2. Select reason: "Patch didn't fix", "Caused issues", "Personal decision", or "Other" 3. Optionally add comments 4. Confirm to restore from backup

In all cases: original code is restored from backup, you're notified, and your feedback (on manual rollback) is recorded as a per-workspace outcome on every plan. On Core and Pro plans, that recorded feedback then feeds future AI analysis so similar suggestions are not repeated (see Rollback: How Patcherly learns from outcomes). This is Patcherly product behavior; it is not the same as training third-party commercial AI models on your code.

See Rollback for details.

Why am I asked for a rollback reason?

When you manually rollback a patch, your reason helps Patcherly record the outcome for that fix: - "Patch didn't fix the issue": Marks this kind of fix as unsuccessful for this error context - "Patch caused new problems": Marks this approach as harmful in context - "Personal or operational decision": Neutral feedback, not related to patch quality - "Other": General fallback

That information is recorded inside Patcherly for your workspace on every plan, together with technical clues about the error. On Core and Pro plans, the next AI analysis for a similar error can use a few of those past outcomes so it can avoid proposing very similar patches again - the dashboard also surfaces a warning when a new suggestion looks too close to a past failed patch. We are not using your codebase to train foundation models for general-purpose AI; improvement here means recognizing what already failed for you, not vendor-side model training. See Rollback: How Patcherly learns from outcomes.

What are flagged sites?

Sites are automatically flagged for review when: - Critical rollback failures: Rollback couldn’t restore files (system inconsistency) - Multiple consecutive failures: 3+ patch failures within 24 hours

Flagged sites show a warning badge and reason in Sites. You can keep using the site. Open Support from the dashboard sidebar if a flag looks wrong - Patcherly Staff review the connector and can clear the flag after checks pass.

When a website/app is flagged or unflagged, the audit record shows the actor as your account (for automated system events tied to your workspace) or as Patcherly support, not an email address. You can review every flag / unflag event on the Audit Logs page.

Can I apply fixes manually?

Yes, you can apply fixes manually: - Review the generated fix in the dashboard - Copy the fix code - Apply it manually to your codebase

See Manual Fixes for details.

Security & Privacy

Where are my backups stored?

Before a patch is applied, the connector saves copies of all existing paths in the patch (every file the diff would change) on your server (in your backup folder). Patcherly does not send nor store those file backups in the cloud or our servers. WordPress sites use wp-content/uploads/patcherly/backups/; other connectors use their configured backup root (default .patcherly_backups, or PATCHERLY_BACKUP_ROOT). You keep them for version history until you delete them - on WordPress, enabling Cleanup on uninstall in the plugin settings deletes that folder when you remove the plugin. For related legal disclosures, see our Privacy Policy.

If detailed error history is pruned by my plan - or if I manually delete errors - do I lose my metrics too?

No. Your aggregated metrics (errors detected, fixes applied, rollbacks, time saved, money saved) and your AI usage history are kept indefinitely on a separate store and are not affected by audit retention or by manual delete. Short Metrics date ranges also use recent live events; longer ranges (including All Time) keep working from that aggregate store. Only the raw, per-error audit trail older than your plan's Audit Data Retention window is pruned daily. Delete on the Errors page is for never-applied or noise rows only - it is blocked after a successful patch or any completed apply attempt; use Hide Error & Ignore for list cleanup instead. When delete is allowed, the row is hard-removed - but headline numbers and the cost / token history that fed them stay intact.

Loading the Errors or Audit page on a date range outside your plan window will appear empty, but the Metrics page numbers for the same period will still be correct. Plan downgrades get a 30-day grace before the new (shorter) window applies. Full details: Data export, retention, and deletion. For what the Audit page itself shows, how to filter, and how to export, see Audit Logs.

Is my code sent to Patcherly?

Only error information is sent to Patcherly for analysis: - Error messages and stack traces that your app/website already produces - File paths and line numbers - Context information (server OS, programming language of your app and similar technical info)

Your full codebase is not uploaded as a mirror. We send only the information required for automated repairs. With Repo Pull Requests, opening a PR uses short-lived GitHub App installation tokens to write the patch into a repository you install the App on - that is separate from Sign in with GitHub and from connector live apply. For details on data categories, retention, and subprocessors, see https://patcherly.com/legal.

How does Patcherly secure the fixes it sends to my connector?

Every fix Patcherly sends is signed before it leaves our API, and your connector checks that signature before applying anything. If something tampers with the payload in transit, the check fails and the connector refuses the apply.

No setup is required - signing and verification are built into pairing.

Troubleshooting

My connector isn't connecting

Common issues: 1. Check Sites chips: A row can look Healthy but still show Not apply-ready or Re-auth required. Use Auto-Reconnect first; only Force Disconnect / re-pair if guided reconnect fails. 2. Check the pairing: For standalone connectors, confirm the local credentials file still exists on the server. If it is missing or the connection expired, re-pair with patcherly login (WordPress: Re-Connect Account on Home - one click clears the old connection and starts pairing again) 3. Check the API URL: It should point at Patcherly’s hosted API (typically https://api.patcherly.com, or the URL shown when you pair) 4. Check network: Verify outbound HTTPS connectivity to the Patcherly API 5. Check logs: Review connector logs for error messages

See Troubleshooting Guide for more help.

Fixes aren't being applied

A few things to check:

  1. Not apply-ready. Sites Healthy only means the connector was heard from recently. Apply needs an active paired session. If Apply fails with a “not connected / Auto-Reconnect” message, open Sites and use Auto-Reconnect.
  2. Dry-run is on for the site. While Dry-run is on, the connector previews the change but does not write files. New sites start with Dry-run off; if you turned it on for a test, turn it off on the Sites page (table or expanded row under Auto Analysis / Auto Apply) when you want Approve to apply for real.
  3. Delivery mode is PR Only. With Repo Pull Requests, Errors shows Awaiting PR merge until the GitHub PR is merged (or closed). That is not a live apply failure - merge on GitHub, or use Mark Fixed if the webhook is stuck.
  4. The fix's confidence is below your minimum. Patcherly pauses low-confidence fixes for your manual approval - open the error and confirm if you're happy with it.
  5. File permissions. Make sure the connector's process can write to your application files (live apply only).
  6. Signature mismatch. If your connector was re-imaged, the pairing may be stale. Use Auto-Reconnect or run patcherly login (WordPress: Re-Connect Account on Home) to issue a fresh pairing.
  7. Backup directory not writable. The connector takes a backup before applying - if the backup folder isn't writable, the apply is refused.

I'm getting rate limit errors

Rate limits depend on your plan. If you're hitting limits, consider upgrading - see the Pricing page for plan limits and upgrade options.

Analysis returns 402 (Payment Required) or 429 (Too Many Requests)

  • Plan limit (HTTP 402): You have used this period’s included analyses / fixes. On the dashboard Errors page you will also see an upgrade (or enable your own AI keys) banner with Analyze actions disabled. See Plan limits. Upgrade, switch to bring-your-own AI keys if your plan includes that, or wait until the period resets.
  • AI provider busy (HTTP 429): The upstream AI provider returned a rate limit or quota error. If you use your own API keys for AI, check usage in that provider’s dashboard and retry later. If you're on Patcherly's managed AI, contact support.

Integrations

Can I connect Cursor or another AI assistant to Patcherly?

Yes. Patcherly offers a Model Context Protocol (MCP) connection so tools like Cursor, VS Code, or Claude can list errors, sites, and usage from your workspace after you sign in. That sign-in is separate from Google / GitHub dashboard login - it is consent for the assistant to use Patcherly tools. A workspace admin must enable MCP under Profile → MCP and choose which capabilities (read, write, export) members may use. Setup steps: Connect your AI assistant.

Security and prompt injection

See the Security overview for the full map of protections. Common questions:

Why was my connector paused?

Protection mode (security): when several suspicious errors come from the same site in a short time, Patcherly silences that site until the timer expires or someone with Manage sites releases it.

Pause site (maintenance): a workspace member with Manage sites can silence a site for a fixed 4 hours for deploys; use Resume site to end early. Same connector standby; different badge (Paused vs Protection mode).

See Protection mode and Pause site and Prompt injection protection.

What does "Quarantined" mean on an error?

The error log may have contained text designed to manipulate the AI. Patcherly blocked auto-apply and connector apply for that error. Patcherly Staff are notified to review it; you can fix a real bug manually on your server while waiting. See Quarantined patches. This is not the same as protection mode or Pause site, which silence the whole site.

Can I disable this protection?

Platform safety rails (quarantine, protection mode thresholds) cannot be turned off from the dashboard. Patcherly Staff review quarantined errors; open Support from the bottom of the dashboard sidebar if you see a recurring false positive. You can release protection mode or Resume a Pause yourself from the site page when your whole site was silenced.

What happens to errors that arrive while protection mode is active?

They are not detected - the connector is in standby (same for Pause site). Normal monitoring resumes after auto-release, manual Release, or Resume. Errors on your server still occur; Patcherly simply does not collect them during the silence.

Support

How do I get help?

  • Help Center: Start from the Help Center home
  • Troubleshooting: Check the Troubleshooting Guide
  • Dashboard Support menu: Open Support from the bottom of the dashboard sidebar (main menu). This is where you find the help options available on your plan:
  • All plans - Community Discord for peer help and general questions
  • Pro (priority support) - signed-in ticketing portal and direct email, when included in your plan

Where can I report bugs?

Use Support in the dashboard sidebar. Include error messages, logs, and steps to reproduce. Pro workspaces can use priority ticketing or direct email from the same menu.

Can I request features?

Yes - share feature ideas through Support in the dashboard sidebar (Discord on all plans; Pro may use priority ticketing or direct email).