Skip to content
tour · 2 · Finding workOpen Inbox

This page

What to finish here. The count is derived from the cards below, so it cannot disagree with them.

Connect plan

0/10

  • Sign in
  • Connect Claude or ChatGPT
  • Claude live handoff
  • ChatGPT live handoff
  • Official export imported
  • Connect a tool where work lives
  • Connect GitHub or HubSpot
  • Sync the first artifacts
  • Store an LLM keyoptional
  • Web capture counsel reviewcounsel review

Proof Scrape

Custom remote MCP connector

This is Proof Scrape. Claude (or ChatGPT) talks to /mcp over OAuth. Live handoff, official export, and web capture are channels on that card — share links, paste, and the Chrome add-on are backups, not this path. Nothing is shared until you confirm it in Inbox.

Claude

No work coming in yet

This is Proof Scrape. Add Proof once as a Claude custom connector. Then say “Send this work to Proof” in a conversation to create a private Inbox draft—never a confirmed Trace or a score.

Loading Claude status…

ChatGPT

No work coming in yet

This is the same Proof Scrape path on ChatGPT. Add Proof once as a custom connector. Then say “Send this work to Proof” in a conversation to create a private Inbox draft—never a confirmed Trace or a score.

Loading ChatGPT status…

  • ChatGPT live send is not at Claude parity yet. SCRAPE on Proof is the same OAuth + submit_work_to_proof path. ChatGPT itself still needs Developer Mode on a paid plan, workspace admins can block custom connectors, and the connector has to be enabled per conversation.

Tool connections

Read-only windows into where work lives

Each connection does two jobs: capture (pull shipped work and outcomes as candidate signals for your Inbox) and, later, corroborate claims inside a Trace. Connected is only the start — syncing is what makes a connection useful.

Loading connectors…
Loading extraction settings…

AI work capture

The browser extension itself

Install, coverage gaps, and counsel status for the optional extension. Whether it covers a given assistant is a channel on that assistant's card above — this section is the extension, not another place to set Claude or ChatGPT up.

Browser extension · live capture

Optional Chromium (Manifest V3) content scripts on explicit hosts parse your web chats into events and batch them to Proof. Off by default. Pause stops capture, enqueue, and flush. This add-on is not Proof Scrape.

Load unpacked from extension/ → Chrome → Extensions → Developer mode. See extension/README.md.

Web hosts in scope

  • Claude Web only
    claude.ai
    Counsel pending
  • ChatGPT Web only
    chatgpt.com · chat.openai.com
    Counsel pending
  • Gemini Web only
    gemini.google.com
    Counsel pending
  • Microsoft Copilot Web only
    copilot.microsoft.com
    Counsel pending

DOM reading of the user’s own data is the Grammarly/Money-adjacent pattern. Counsel has not reviewed each provider’s ToS position yet — do not treat live capture as cleared for production launch.

Known coverage gaps

  • Mobile apps (iOS / Android) — invisible to the extension
  • Desktop apps (Claude Desktop, ChatGPT macOS, Copilot Windows) — invisible to the extension
  • Enterprise-managed browsers that block extensions
  • Any host outside the Manifest V3 host_permissions list

Enterprise / no-extension fallbacks

  • Proof Scrape

    This is scrape: the custom remote MCP connector. Add Proof in Claude, then say “Send this work to Proof.”

  • Shared chat link

    Backup — not Proof Scrape. Drop a Claude or ChatGPT share link. If Claude blocks our servers, open the chat with Live Capture on.

  • Official history export

    If you cannot connect, request the official ZIP and select chats locally before anything uploads. It is the History import channel on the assistant's card.

  • Outcome OAuth first

    GitHub and HubSpot OAuth still work when LLM capture is unavailable.

DOM redesign repair loop

  1. 01
    Versioned selector packs

    Each provider adapter ships with an explicit selectorVersion and DOM probes.

  2. 02
    Health probe

    Content script probes required nodes on an interval. Failure stops capture for that host.

  3. 03
    Report + pause

    Broken adapters POST /api/ingest/health and show an on-page “adapter broken” badge.

  4. 04
    Remote repair

    Server may return a selector override JSON; the runner hot-applies it without a full store review.

  5. 05
    Ship a patch

    If no override exists, we bump the pack in the next extension release and re-submit to CWS if needed.

Chrome Web Store notes

  • Single purpose: capture the user’s own web chats into Proof when they opt in.
  • Host permissions only for listed LLM web apps + the Proof ingest origin.
  • No broad <all_urls>; storage + alarms only.
  • Clear privacy disclosure: off by default, pause stops read/send, raw chats stay private until the user shares a card.
  • Privacy policy URL required before Chrome Web Store listing.

Proof Scrape is the custom connector

Scrape means adding Proof in Claude (Customize → Connectors → Add custom connector) and saying “Send this work to Proof.” A share link or copied transcript on Welcome is the backup when you cannot connect. For bulk history, use the official export on the assistant's card above.

Open Proof Scrape