Open-Source Follow-Up Copilot

The follow-up writes itself. You still press send.

CallCraft is a production-minded Applied AI reference implementation that turns completed Gong-shaped calls into evidence-backed emails, brings every draft to Slack, and sends through Gmail only after the seller approves it.

  • Self-hostable
  • Transcript-grounded
  • Human-approved
Example of an evidence-backed CallCraft draft in Slack
Gong Slack Gmail
CallCraft APP Ready
CallCraftAPP

Follow-up: Northstar Product Evaluation

Gong Context

Northstar wants to replace manual follow-up before its Q4 rollout. Security review is the remaining blocker.

Pilot: 5 sellersNext step: security review
4 claims verified against transcript evidence

Built for sellers who already live in

G Gong Slack M Gmail OpenRouter
How It Works

From “call ended” to “follow-up sent” without the busywork.

CallCraft handles the mechanical parts while the seller keeps the final say.

  1. 01

    Call Ends in Gong

    CallCraft waits for the completed transcript, participant details, and Gong context.

  2. 02

    Evidence Becomes a Draft

    OpenRouter extracts cited claims; deterministic templates turn only those claims into copy.

  3. 03

    You Review & Send

    Edit, regenerate, inspect evidence, then confirm the exact Gmail message from Slack.

Why CallCraft

Fast follow-up without handing the keys to AI.

Most follow-up tools optimize for autonomy. CallCraft optimizes for accuracy, observability, and seller control.

Every Claim Has a Source

Material facts map back to timestamped transcript segments. Unsupported dates, prices, commitments, links, and recipients are rejected before a draft appears.

Lives Where Sellers Work

Private Slack drafts arrive automatically with Gong context and clear next actions.

Your Inbox Stays the Sender

Gmail submits the approved revision, so the message appears in Sent without copy and paste.

Open Source by Design

Audit the workflow, choose the OpenRouter model, control transcript retention, and deploy on your own infrastructure. Demo mode never contacts real providers.

Read the Architecture Decisions
Example CallCraft local setup commands
$ cp .env.example .env
$ npm install
$ npm run db:migrate
$ npm run worker -- --watch
 CallCraft is ready
The Principle

Automate preparation. Preserve judgment.

“A fast follow-up is useful. A fast, fabricated follow-up is worse than no follow-up at all.”
  • Email never sends automatically
  • Provider failures never fall back silently
  • Ambiguous sends never retry blindly
Common Questions

Built to be understood.

Does CallCraft send emails on its own?

No. Draft generation is automatic, but every email requires an explicit seller confirmation in Slack showing the exact sender, recipients, subject, and body.

Can I try it without Gong, Slack, or Gmail credentials?

Yes. Seeded demo mode runs the complete workflow with synthetic Gong-shaped data and local Slack and email previews. It cannot contact real providers.

Can I test real OpenRouter, Slack, and Gmail without Gong?

Yes. Evaluation mode uses seeded Gong-compatible transcripts with real downstream providers, then reports grounding, recipient accuracy, latency, tokens, and cost. The real Gong adapter is contract-tested but not represented as live-tenant verified.

Where does CallCraft store transcript data?

The default self-hosted deployment uses SQLite on your host. Retention is configurable, including deletion after Slack delivery. Multi-host deployments can replace the repository with PostgreSQL.

Why isn’t this a fully autonomous agent?

Follow-up contains customer commitments, dates, and next steps. CallCraft automates the repetitive work while preserving a clear evidence trail and human approval boundary.

Open Source on GitHub

Ship the follow-up before the context goes cold.

Run the seeded demo, compare OpenRouter models, or connect evaluator-owned providers.