Connect to Cowork
The work happens in Claude Cowork. salesascode.com is the control plane. This page shows what you are licensed for, the details Cowork needs to connect, whether it is authenticating, and the steps to get running.
Overview
Sales as Code is two planes. You do the work in Claude Cowork, where the plugins, skills, and scheduled tasks run. salesascode.com is the control plane: it owns your account, your license, the API key the plugins authenticate with, and the rollup of everything they produced. Connect to Cowork is your home base for the salesascode side.
Different from API Keys — that page issues and revokes the keys. This page tells you what to do with one.
What it shows
- Your plan. All-Access, a la carte, or nothing yet, plus the exact plugins you are licensed for and their license details (source and expiry).
- Get connected (live). A four-step checklist — licensed → API key → Cowork authenticating → first run — that verifies itself in real time. The page watches your account and checks each step off the moment it happens, including the first time a plugin actually runs in Cowork. No refresh needed; when the loop closes you get a green confirmation.
- Plugin health. Every plugin you own and whether it is actually working: "Healthy", "Not started yet" (bought but never run — the thing to act on), or "Last run failed".
- Connection details. The marketplace URL to add in Cowork and the MCP endpoint to point it at. Click to copy.
- Get running. The ordered steps from buying to your first synced run.
Guided setup — /onboarding
Prefer to be walked through it? Get started is the guided version of this page: the same four checks (Licensed → Keyed → Connected → First run), one step at a time, verified live against your account. It can issue your API key inline (shown once — copy it), gives you each owned product's marketplace URL, the MCP endpoint, and the SALES_AS_CODE_API_KEY env var to set in Cowork, and hands you your product's setup phrase to type (run salescron setup, set up my Company OS for gtmcron, and so on — each product's setup skill feeds everything else it does). The moment your first run's telemetry lands, the wizard closes the loop and points you at your rollup. Both surfaces read the same activation state, so a step checked off here is checked off there.
How to use it
- Pick your role's product on the pricing page. Buying gtmcron plugins a la carte adds Company OS Core automatically.
- Issue an API key and copy it — it is shown once.
- In Cowork, add your product's marketplace using the URL on the connect page (one URL per owned product), then install what you bought.
- Connect the Sales as Code MCP in Cowork by setting
SALES_AS_CODE_API_KEYto your key. - Run each plugin's setup skill. Every plugin's page lists the exact first-run prompt to type in Cowork (for example,
set up my GTM engine) under "Get started in 3 steps", with the result you should expect. The skill verifies your license, interviews you, scaffolds your files, and proposes scheduled tasks. - As plugins run, run telemetry and brain state sync back here. Watch the rollup on your dashboard.
Troubleshooting — the Diagnose panel
Both the wizard and Connect include a Diagnose panel that checks the common failure modes live against your account and tells you the exact fix:
- No API key issued — Cowork has nothing to authenticate with. Issue one (shown once) and set
SALES_AS_CODE_API_KEY. - Every key revoked — Cowork's calls fail with 401 invalid key. Issue a fresh key and update Cowork's MCP config.
- No
verify_sessionever seen — your key exists but no call has landed: the MCP endpoint or marketplace URL in Cowork is wrong (or the key was pasted with a typo). The panel shows the exact endpoint to use. - Connection gone stale — Cowork authenticated before but not in 7 days; the key was probably rotated or the MCP removed.
- Entitlement mismatch —
verify_sessionsucceeds but no plugin is licensed on this account (bought under a different email, or refunded). Skills stop atcheck_entitlement. - Connected but never run — authenticated for 24+ hours with zero runs: run your product's setup skill (e.g. "run salescron setup", or "set up my Company OS" for gtmcron).
- Denied / errored calls — scope-denied or failing tool calls from the last 7 days, with the most recent error message.
The panel footer shows your last MCP call from the audit log — tool, status, and how long ago — so you can tell "never connected" from "was working until Tuesday".
Manage your plan and billing
Settings → Account has a "Your products" panel (the "on cron" products you own, linking to My products) and a "gtmcron plugins & plan" panel: the gtmcron plugins you own with their source and expiry, an upgrade to All-Access, and a "Billing & invoices" button that opens the Stripe portal to view invoices, change payment, or cancel. All-Access unlocks every gtmcron plugin, including ones shipped later.
Team & seats
On a team plan, Team → Members lets the owner invite teammates up to the seat count. Each pending invite can be re-sent or shared as a direct copy-link if the email is missed — no need to contact support. Teammates accept with one click and their seat is covered by the team subscription.
How the license gate works
Every skill calls verify_session and check_entitlement against the control-plane MCP before it does anything. If your account is not authenticated or not licensed for that plugin, the skill stops and asks you to connect. Once licensed, it runs draft-only and reports emit_telemetry and sync_brain when it finishes. Telemetry and brain sync are metadata-first: no raw third-party contact data leaves Cowork unless you explicitly opt in.
Related
- API Keys & MCP — issue the key this page tells you to connect.
- Dashboard — the rollup of what your plugins did in Cowork.
- Pricing — the plugins, bundles, and All-Access membership.