Install to overwatch
in five moves.
What the app touches, what it never touches, and how the non-destructive contract is enforced rather than promised.
MOV-01 — Operator: you
Install
One click from the App Store or a custom link. You approve three scopes on Shopify’s own consent screen.
There is no password to share, no staff account to create and no developer access to grant. The install is an OAuth handshake against Shopify, and the token it returns is scoped to exactly those three permissions.
You can revoke them from your Shopify admin at any moment, and uninstalling does the same thing. Nothing about the connection depends on us being trusted after the fact.
MOV-02 — Operator: Rank Sniper
Read
Your full catalogue is pulled through the Admin GraphQL API — variants, metafields, media, inventory and policies.
The read runs entirely against the admin API. It never requests a page of your storefront, so shoppers are unaffected and your theme is not involved.
A first install reads the whole catalogue rather than only what has changed since — an app that only reads deltas on a fresh install indexes nothing you already had.
MOV-03 — Operator: Rank Sniper
Write Back
Enriched fields land in a dedicated metafield namespace. Your titles, descriptions and copy are never touched.
This is the part worth checking rather than believing. Writes are confined to one metafield namespace, and every other mutation — including the ordinary product update every other app in your admin uses — is refused at the API client before the request is issued. It is an allowlist, not a policy: a field nobody put on the list cannot be written even by a bug.
Revert removes what we added and nothing else. It has been proven byte-for-byte on real products: the catalogue hash before the write and after the revert are the same value.
MOV-04 — Target: agents
Publish
A hosted endpoint serves your canonical record to anything that asks for it, in the formats agents actually read.
The endpoint is the part we control and it works without touching your theme at all.
A theme extension publishes the same record as JSON-LD on your product pages. You switch that on yourself in the theme editor — enabling an app embed requires permission to write to your theme, and we deliberately do not ask for it. That is a product decision, not an oversight: the alternative is an app that can rewrite your storefront.
MOV-05 — Duration: forever
Overwatch
A daily pass catches new and changed products, so the record does not go stale the week after you install.
Your plan also covers drift checks — tags and schema stripped by a theme update — and re-verification that AI crawlers are still allowed to read you.
None of it is an upsell. Continuous scanning is in every tier, including the smallest.