CloneGuard

Open-source release security

Expose less.
Release with evidence.

Audit public artifacts, protect private diagnostics, and verify releases across web, Swift, mobile and desktop.

CloneGuard meets REA.

REA is a reverse-engineering agent. Follow a release through audit, staging, inspection and verification. Private files stay out; public code and behavior remain inspectable.

CloneGuard and REA: reducing release exposure Illustrative workflow. CloneGuard finds a source map and environment file, keeps them in private storage, and stages JavaScript and HTML publicly. REA can read the public files but the removed source map is not shipped. A release receipt detects a later file modification. This does not demonstrate prevention of cloning. CloneGuard Release workflow Audit, stage, verify app.js + index.html .map + .env Keep the original build. REA Analysis agent Inspect public files Read the bundle Observe the UI Public behavior stays visible. Public release app.js index.html Private files foundOriginal bytes retained.Keep private files outOriginal bytes retained.Source map not shippedPublic code is readable.Modification detectedReceipt comparison. Private storage .map + .env Release receipt Record what will be shipped. Record hashes of the staged files. Retain the receipt outside the public release. Modified asset → receipt mismatch app.js .map? app.js Audit release inputsStage the public releaseREA inspects public filesVerify the release receipt
CloneGuard and REA: reducing release exposure Illustrative workflow. CloneGuard finds a source map and environment file, keeps them in private storage, and stages JavaScript and HTML publicly. REA can read the public files but the removed source map is not shipped. A release receipt detects a later file modification. This does not demonstrate prevention of cloning. CloneGuard Release workflow Audit, stage, verify app.js + HTML .map + .env REA Analysis agent Inspect public files Read the bundle Observe the UI Public release app.js index.html Inputs reviewedOriginal bytes retained.Public files stagedOriginal bytes retained.Map not shippedPublic code is readable.File change detectedReceipt comparison. Private storage .map + .env Release receipt Prepare inventory Hash staged files Keep the receipt Changed asset app.js .map? app.js Audit release inputsStage the public releaseREA inspects public filesVerify the release receipt

Illustrative workflow. Select a step to inspect it.

A public product.
A smaller footprint.

Your users need the experience. They rarely need your original source, internal debug files or privileged API access.

Start with what ships

Find source maps, exposed credentials and private build artifacts in the release customers receive.

Use the right boundary

Apply native build controls and server authorization. Preserve signing, accessibility and the behavior people rely on.

Keep a verifiable record

Record release hashes, detect changes and retain scoped markers with clear evidentiary limits.

One workflow.
Respect for every platform.

The audit is language-independent. Hardening follows the build and signing rules of your actual application.

Browser assets and backend boundaries

Ship less implementation.

Keep source maps private, stage a clean public asset tree, and move privileged decisions behind server authorization.

Read the platform guide

What the workflow covers

  • Source-map and credential screening
  • Separate staging for loose web assets
  • API authorization and quota review

WASM and encrypted client payloads remain inspectable.

Start locallygit clone https://github.com/anishpras/cloneguard.git

Measured, with limits

A result you can
reproduce yourself.

Our synthetic web fixture goes through audit, public staging and release verification. Every retained byte stays unchanged.

This measures release hygiene. It does not measure an AI agent's ability to recreate your product.

Inspect the benchmarks
Synthetic web release4 files
Before staging3
Public release0

High or critical exposure findings

  • 2 private files omitted from public output
  • Remaining file bytes preserved
  • Subsequent modification detected
View the recorded result

Different tools.
Clear tradeoffs.

BLA has a broader artifact-transformation engine. CloneGuard starts with release exposure, native workflows and reviewable evidence.

BLA and CloneGuard approach comparison
Where it helpsBLA CloneGuard
Artifact changesFormat-specific decoys and analyzer budget payloadsPublic release staging and native-toolchain guidance
ExperimentsIn-tree REA probes and estimated cost showcaseRecorded local checks and explicit unassessed surfaces
Apple buildsPlist and native artifact payloadsSwift build, ABI, signing and private-symbol workflow
Read our BLA source review

Understand the exposure.
Choose the right control.

Practical guides to release security, REA and BLA research, and planning for 2027. Concrete checks, primary sources and clear limits.

Browse all 60 articles

Application reviews

Let's look at
what you're shipping.

Get a scoped review of your application, its exposed implementation and the practical controls that fit your stack.

  • Release and API exposure assessment
  • Prioritized hardening recommendations
  • Validation, limitations and next steps

No promise that a public product becomes impossible to copy. No private code or credentials in public issues.

Book an application review.

Choose a time to discuss your app and the scope of a review.

Loads Cal.com here when you choose to book. You can also open it in a new tab.

Before you ship.

Can this make my application impossible to clone?

No. Public behavior can be observed and distributed code can be inspected. CloneGuard helps remove accidental exposure, apply native controls and preserve release evidence.

Does the audit upload my source code?

No. The CLI and skill helper run locally. The helper does not execute inspected code, follow symlinks or call an external service. Your coding agent's own data handling still depends on the agent you use.

Will it rewrite or re-sign my Swift app?

No. The skill guides native build changes before signing. The CLI can screen supported artifacts and hash the final release, but signature validation, device checks and distribution remain native-toolchain tasks.

Is a canary match proof of infringement?

No. A match confirms a token is present. It is one investigation lead, with alternative explanations. Legal conclusions and independently verified provenance require more evidence.