StartConceptsPlaybooksFeature docsAPI & MCPChangelog
← All feature docs
Feature docs · /salescron/console

Persona Console

Your persona's control plane in the browser: turn the hosted runtime on or off, see every run and what it cost, review drafts, tune the schedule, and bring your own LLM key. It runs on our servers, so there is nothing to install.

Overview

Every persona product (gtmcron, salescron, leadercron, secronjob, partnercron, bdrcron, crocronjob, cscron, supportcron) has a console at /<persona>/console. It is the same control-plane shell, branded to each persona. The console never runs agents itself. It drives the hosted runtime that runs headless on our servers on a schedule, so nothing depends on you keeping an app open. The cross-product landing is /home.

Scoped to you. Your key, budget, schedule, and drafts are private to your account. The work runs on our servers, so we process the data you connect: it is encrypted, never sold, never used to train a model, and you can revoke access anytime.

How it runs

The hosted runtime runs on our servers on a schedule. There is nothing to install and no app to keep open. Deterministic detections are free and always available; AI drafting runs under a budget cap on our key (or yours with BYOK). Where a deployment requires your own key, the AI tier turns on once you add a key in Settings; without one you still get the full deterministic tier at no cost.

When the included budget runs out. AI runs pause until the reset at the start of next month, and every deterministic check carries on unchanged, so the ranking and the findings keep arriving. The Settings tab says so where the meter is and offers the one thing that changes it: add your own provider key and runs go on your key, metered to you and not capped by us. The header pill reads "AI paused" so a quiet month is never a mystery. It used to say only a zone name, and the blocked-run message pointed at raising a cap, which is an operator setting no control on that page can move.

Draft-first. A run only ever creates a draft you approve. Nothing is sent without your yes, and you choose where each draft lands in Settings: an in-app Draft queue, your Google Drive, or your own mailbox as a draft. Managed mailbox delivery lands each message in your mailbox as a Gmail draft (via the draft API), never auto-sent; a message leaves only when you choose to send it.

Before anything has run, the Drafts and Runs tabs do not just say "nothing here": they point you at the next step, turn the runtime on from the Schedule tab, run a skill now, run the free checks, or load sample data in Settings to try the review flow before you connect live data.

The tabs

Six tabs are always there: Schedule, Draft queue, Library, Runs, Build, and Settings. Which of the rest you get follows your seat. A leadership seat (gtmcron, leadercron, partnercron, crocronjob) adds Team, for seven. A front-line seat (salescron, secronjob, bdrcron, cscron, supportcron) adds Coaching and Live coach, for eight.

What the tabs are fed by

Bring your own key (BYOK)

By default the runtime uses our key with a monthly budget cap priced into your subscription, so it works with no LLM key of your own. In Settings you can instead supply your own Anthropic or OpenRouter key; runs then meter to you and don't draw our budget. Keys are write-only: once saved, the console only ever shows whether a key is set, never the key itself. Your key powers everything the console runs for you: scheduled hosted runs and the Live coach tools (roleplay, meeting prep, inbound reply) alike. Bedrock support is built but not accepting keys yet; the option unlocks once the transport is validated, and until then the Settings card shows it as coming soon.

Because a saved key is encrypted at rest, it is possible for a stored key to stop being readable, for example after a server-side key rotation. The console checks this rather than assuming a saved key still works: when a key is stored but can no longer be read, the provider shows as key set, unreadable, the LLM pill reads key unreadable, and the Settings card tells you to paste the key again. Scheduled runs keep going on the included tier in the meantime, and each such run records the reason on its own row in the Runs tab, so a run billed to the included tier instead of your key is never silent. Where a deployment requires your own key, that run stops instead and the Runs tab shows the failure with the same reason.

Your knowledge library (grounding)

Every AI draft grounds on your proof points, not general knowledge. The console keeps a per-tenant library of cited notes: case studies, win stories, product facts, each traced to a named source. Before a run drafts, its library is pulled in as a cited-context block and the model is told to cite the source in brackets after each claim and to use only those facts. If the library has nothing on what a draft needs, the run says so plainly rather than inventing a stat, and any number in the draft that lacks a citation is flagged for review.

Your library has two layers. On your first scheduled run the console seeds the seat's built-in craft library (your persona's playbook: value framing, discovery, qualification, and so on), so grounding is never empty on day one. On top of that you add your own proof points in the console's Library tab: title a win, list the facts, and it is cited from then on. The Library tab shows both layers separately, so you can review exactly what grounds your drafts, add or remove your own proof points, and remove any built-in craft you do not want. Personal, medical, and signed-legal sources are refused at ingest. Your library is private to your org and never visible to another tenant.

Not every skill is grounded, and the ones that are not say why rather than staying quiet. A skill that narrates a score the deterministic tier already computed takes no craft input, because no playbook text can change a number that is already decided. Since 2026-08-22 the founder-marketing skills on gtmcron (launch playbooks, the content calendar, messaging experiments, build-in-public, community replies) read a content craft library of their own rather than the deal-running playbooks: writing for an audience who has not raised a hand is a different discipline from running a deal, and grounding a launch plan in objection handling would have produced a citation that pointed somewhere misleading. Two gtmcron skills stay deliberately ungrounded for reasons that are not about a missing library: the investor update reports to a board, and the decision log records a decision already made.

The two layers play different roles. The built-in craft grounds how to frame a draft (the method), but a run's proof points, the stats, logos, and quotes it can cite as results, come only from what you uploaded. So a draft never presents a generic playbook line as if it were your customer's outcome; if you have not added a proof point yet, the run says so rather than borrowing one. Extend or replace the seeded craft with your own notes anytime.

A third layer arrives once your organisation has more than one seat: what colleagues have already established. Every run can read the findings other roles' runs recorded about an account, so a customer success run that spotted a renewal risk is something the account executive's run reads rather than works out again. The run sees whether a finding is its own or a colleague's, and it is told to check before deriving an account fact itself. You only ever see what you are entitled to see: a finding stays private to the seat that made it unless the type is one your organisation has already declared shareable, and that decision is made once, in one reviewable place, rather than per run.

Since 2026-08-29 a run also carries your own memory: the open gaps, pending next actions and recent insights the weekly reflection found in your activity, appended after the playbook context. Until then that block reached the in-app assistant and nothing else, so a scheduled run was coached from the playbooks alone. It is about two hundred tokens when a reflection exists and nothing at all when one does not; a rep who has not been reflected yet is drafted for exactly as before.

Connect your CRM (managed)

In Settings you can turn on managed connectors. Link Salesforce, HubSpot, Gmail, or Google Calendar right in the browser; we custody your OAuth token encrypted, poll it on a schedule, and fill your accounts, opps, and contacts server-side. There is nothing to install. The panel shows each provider's connection state and last sync, and a Sync now button pulls your book immediately.

Opt-in and reversible. Token custody is a choice: a security-strict team can leave it off and run its own self-hosted delivery instead (see below). Same as the Settings → Connect page, which carries the same panel.

Connected activity tools feed the free deal-risk checks as account signals: Outreach replies, Salesloft activity, Planhat health changes, Consensus demo engagement, Intercom conversations (including Fin resolutions), and Crossbeam partner overlaps each attach to the matching account so the next scheduled pass can flag it. A signal that cannot be matched to one of your accounts is skipped, never guessed.

Deliver reports to your Google Drive

In Settings, the Deliver reports to Google Drive toggle sends each hosted run's report into your Google Drive "Accounts" folder as a native Google Doc plus a raw .md copy, so you read the report where you already work. A run about a specific account lands in a per-account subfolder (Accounts/<account>); a general run lands in the Accounts root. The same deliveries show on your rollup under "Delivered to your Drive".

Off by default. The toggle needs managed connectors on and Google connected (Settings), because delivery uses your Google Drive access. Writing a file into your own Drive folder is delivery, not an outbound send.

Advanced: self-hosted delivery (optional)

Most teams use the managed path above. If your security posture requires every credential to stay on your own infrastructure, you can run a small n8n on a machine you control that holds your own OAuth and LLM credentials. Those runs place real Gmail or Outlook drafts and write CRM records on your infrastructure, never ours. Templates live in n8n-templates/ and setup lives in your product docs. Nothing is ever auto-sent.

Keyboard: the Cmd-K palette

From the console (or any signed-in page), press Cmd+K / Ctrl+K or click Search in the top bar to jump to a page, a pending draft by title, or a quick action without touching the mouse. See Home (Today) for the full palette guide.

When a coaching section cannot load

The Coaching tab is assembled from several reads: your goals and pace, the cohort comparison, and your quarter recap. A section whose read fails now says so. It used to disappear, which looks exactly like having no goals set, or no cohort yet.

What runs it

The hosted runtime is server-side cron plus a bounded agent loop. It runs on our servers on a schedule, with nothing to install and no app to keep open. Scheduled work runs on a metered LLM key (ours by default, yours with BYOK).