M82 LABS — EARLY ACCESS

Self-healing API integrations: your vendors changed, and the fix is already open.

m82 Labs watches the APIs you depend on, detects the breaking changes and deprecations, finds the call sites they reach, and opens a pull request carrying the evidence. What a self-healing API integration is →

VENDOR API CHANGES — FOUND · CONFIRMED · FIXED — 

THE PIPELINE

Every fix arrives with its evidence.

Five steps, and the second one is the product. Nothing reaches your repositories until the change has been confirmed against the vendor’s own spec.

  1. 01

    Detect

    Every watched vendor’s spec and changelog is polled and stored as a snapshot. A new snapshot is diffed against the last one, and the difference is what starts everything.

    Poll · Snapshot

  2. 02

    Confirm

    An announcement is a claim. A spec snapshot or a probe of the live API decides whether the change actually happened — never the wording of a blog post.

    Spec probe · Live API

  3. 03

    Match

    Call sites are found across your repositories and checked against the version you are pinned to. If the change cannot reach your code, nothing else happens.

    Call sites · Pins

  4. 04

    Fix

    An agent edits files in a fresh clone. It holds no credentials, reaches no network, and its licence to edit is bounded by the one change it was sent for.

    Fresh clone · Sandboxed

  5. 05

    Verify

    m82 Labs runs your tests, checks what was touched against what was allowed, and opens a pull request carrying all of it.

    Tests · Review

WHAT LANDS IN YOUR REPO

A pull request that argues for itself.

The diff, the evidence and the test run, in one place.

PULL REQUESTacme/payments
Vendor
Stripe
Change
Charges.source removed
Confirmed by
spec snapshot 2026-07-09
Reach
3 of 4 repositories
  • acme/payments
  • acme/jobs
  • acme/legacy
  • acme/docs

billing/charges.py:84

- charge = stripe.Charge.create(amount=amount, source=token)+ charge = stripe.Charge.create(amount=amount, payment_method=token)
baseline126 passed2 failedafter fix128 passed0 failed

jobs/sync.py:210 passes a token from a config value I could not resolve. The replacement is correct if that value is a payment method id. Worth a look.

BOUNDARIES

Limits with no off switch.

What m82 Labs will not do.

  • Never merges

    No auto-merge flag and no high-confidence bypass. Every fix waits for a person, every time.

  • Agent holds no credentials

    The agent process can only edit files in a directory. git, tokens, network and merge decisions remain outside.

  • Never touches workflows, secrets or lockfiles

    CI configuration, .env files and the git directory are off limits.

  • Never opens a PR on opinion

    Only an artifact decides whether it happened, and a judgement with nothing observed behind it opens nothing.

VENDORS WATCHED

The APIs your code depends on.

  • Stripe

    clean spec — teaches false positives

    Payments, subscriptions, invoicing and payouts — the billing layer under a large share of software businesses.

  • OpenAI

    high churn — model deprecations

    Hosted models behind one API: chat completions, embeddings, audio and images, addressed by model id.

  • Slack

    stale spec — forces the prose path

    The workplace messaging platform’s API — posting messages, reading channels, and building bots and app surfaces.

  • Clerk

    dated versions — pinned callers

    Drop-in user management — sign-up and sign-in, sessions, organisations, and the backend API behind them.

  • Firebase Authentication

    not OpenAPI — a Discovery document

    Google’s hosted sign-in service — email, phone and federated identity providers, with tokens your backend verifies.

  • Anthropic

    no spec at all — the SDK is the artifact

    The Claude models over an API — messages, tool use and long-context work, addressed by model id.

  • Resend

    two published copies — one of them stale

    Transactional email for developers — sending, domains, audiences, and delivery webhooks.

  • Shopify

    GraphQL — a dated version that falls forward

    The commerce platform’s Admin API — products, orders, inventory and customers, queried over GraphQL by apps and storefront backends.

  • Coming soon

    an open slot — not a roadmap

    The next vendor is decided by what teams actually ask for. Tell us which one you need.

PRICING

Pick a plan, start shipping fixes.

Every feature on every plan. Change or cancel any time.

Starter

Pricing soon

Repositories monitored
3
Pull requests per month
10
Concurrent runs
1
Evidence for every change
Included

FEATURED

Team

Pricing soon

Repositories monitored
10
Pull requests per month
50
Concurrent runs
2
Evidence for every change
Included

Scale

Pricing soon

Repositories monitored
30
Pull requests per month
200
Concurrent runs
5
Evidence for every change
Included

EARLY ACCESS

Find out what your repos are already behind on.

Connect a repository and m82 Labs shows you every vendor change that reaches it — including the ones that do not.

One email when it opens. No newsletter, no sharing.

Diagram: the vendor APIs you use feed an engine that opens a single pull request, Replace removed Charges.source with payment_method”, in your repositories acme/payments, acme/jobs and acme/legacy. How it works describes the same run in full.