Pular para o conteúdo
NovoVeja como
Correção

Improve your instructions and drafts regenerate

Rejecting a draft and updating your instructions used to leave some campaigns stuck. They now redraft against the new guidance and resume sending automatically.

If you rejected a draft and updated your instructions, your campaign no longer gets stuck waiting behind it. It now generates a new draft against the updated guidance and resumes sending on its own.

What changed

Previously, rejecting a draft and then improving your campaign instructions, for example correcting something in the Learning tab after seeing a draft that missed the mark, didn't reliably trigger a new draft. Some campaigns stayed stuck behind the rejected draft, with sending paused for that contact and no new draft generated to replace it. From your side, it looked like the campaign had simply stopped, with no clear reason why and no obvious next step to unstick it.

That's fixed. When you reject a draft and update your instructions, the campaign now generates a new draft against the updated guidance automatically, without you needing to trigger it manually or restart anything. Once that new draft is approved, either by you or by whatever review step you have configured, sending resumes cleanly for that contact instead of staying paused.

How to use it

Reject a draft the way you normally would when it doesn't match what you want, whether that's a tone problem, a missing detail, or an instruction the AI didn't follow correctly. Go to the Learning tab or your campaign instructions and update the specific guidance that caused the issue, the same way you'd fix it for any other draft.

A new draft generates against the updated instructions. Review it as you would any draft: check that it reflects the correction you made, and approve it once it looks right. Sending picks back up automatically for that contact from there; you don't need to manually re-trigger the campaign or check that it's moving again.

If you have a campaign that was stuck from before this fix went live, check its status now. It should show either a fresh draft waiting for your review or sending already resumed, rather than sitting paused with no activity.

Why it matters

Rejecting a bad draft is only useful if the campaign actually acts on the feedback behind that rejection. A campaign that stays silently paused after you've already done the work of identifying what was wrong and fixing your instructions wastes both the correction and the time you spent making it, and worse, it means a contact who should be getting outreach simply isn't, with no indication that anything has gone wrong until you happen to notice.

Redrafting and resuming automatically closes that gap. The fix you make in the Learning tab actually reaches your next draft for that contact, instead of sitting there unused while the campaign waits on a draft you already rejected. That matters most for campaigns with a lot of contacts moving through at once, where a stuck contact here and there is easy to miss until it's added up to a meaningful gap in your outreach.

This was also inconsistent in a way that made it hard to diagnose from the outside. Some campaigns recovered fine after a rejection and an instruction update, which meant the ones that didn't looked less like a systemic issue and more like something specific to that campaign or that contact, making it harder to know when a stuck campaign was actually a bug versus something else worth investigating on its own.

Iterating on a new campaign's voice

If you regularly reject drafts as part of refining a new campaign's instructions, this now behaves the way you'd expect that loop to work: reject, correct the instruction, get a new draft that reflects the correction, approve, and the campaign keeps moving. You can iterate on instructions this way with confidence that a rejection doesn't risk quietly stalling the campaign behind it.

For campaigns with many contacts, it's still worth spot-checking a few contacts after a broad instruction change, not because the redraft-and-resume behavior is unreliable, but because a broad change in Teach or the Learning tab can affect drafts in ways worth reviewing before they reach a large number of prospects at once.

What this means going forward

Beyond the specific stuck-campaign symptom, this fix restores a basic expectation about how feedback is supposed to work in the product: correcting an instruction should visibly change future output, not require you to separately verify that the correction actually took effect. That expectation matters most while you're still tuning a new campaign's voice, which is exactly the period where you're rejecting drafts and adjusting instructions most frequently.

It also removes a reason to hesitate before rejecting a draft in the first place. If rejecting carried a real risk of quietly stalling the campaign, the safer-feeling option was sometimes to approve a draft that wasn't quite right rather than risk breaking the flow of sends. With reject-and-regenerate working reliably, there's no longer a reason to make that trade-off; rejecting a draft that misses the mark should always be the better choice than sending it anyway.

This applies whether you're tuning a brand-new campaign or making a correction to one that's been running for weeks. A campaign that's been sending reliably for a while and suddenly produces a draft that's off is just as likely to benefit from this fix as a new campaign still finding its voice; reject it, fix the instruction, and expect the campaign to pick right back up rather than needing manual attention to get it moving again.

If you've been in the habit of periodically checking older campaigns for stalled activity as a precaution, that check is worth doing once more now to confirm anything affected has cleared, after which it shouldn't be a recurring concern tied to this particular pattern. The behavior you should expect from here on is simple: reject, correct, redraft, resume, every time, without exception for how many contacts the campaign has or how long it's been running. If a campaign ever stops after a rejection going forward, treat that as a genuinely new issue worth reporting rather than an expected part of the workflow.

Availability

This applies to any campaign with a rejected draft, once the underlying instructions have been updated.

Todas as novidades

Prospecção que continua quando você desconecta.Leads, emails, follow-ups e respostas, resolvidos.

Conecte caixas ilimitadas e deixe os agentes de IA encontrarem leads, escreverem cada email e fazerem follow-up. Ou envie seus próprios modelos no modo manual. A partir de $29/mês.

$1 por 3 dias · Cancele quando quiser · Sem contrato

Instalar com IA

Seu agente de código configura a CLI e as skills do FirstSales para você.

Prompt para Claude Code

I'm setting up FirstSales (https://firstsales.io), an AI outbound sales platform: campaigns, contacts, a reply inbox, deliverability and lead signals. Help me get my workspace sending real, good emails end to end, from Claude Code.

Read these first so you know how FirstSales works:
- Developer docs and API: https://developer.firstsales.io
- CLI: https://www.npmjs.com/package/@firstsales.io/cli
- Skills for coding agents: https://github.com/firstsalesio/firstsales-skills (read README.md and GUIDE.md)

Setup
1. Install the CLI: npm install -g @firstsales.io/cli
2. Install the FirstSales skills:
   claude plugin marketplace add firstsalesio/firstsales-skills
   claude plugin install firstsales@firstsales
3. Ask me if I already have a FirstSales account. If not, send me to https://app.firstsales.io to sign up.
4. Ask me to create an API key under Settings → API → API Keys, with only the scopes we need.
   Never ask me to paste the key into this chat. Tell me to run this in my own terminal, so the key stays hidden:
   read -rs FS_KEY && firstsales auth login --api-key "$FS_KEY"; unset FS_KEY
5. Run `firstsales whoami` and tell me which workspace and organisation we are connected to.

Then ask me about my business: what I sell, who I sell to (roles, company size, countries), my best customers, and what I use today for outbound (tools, lists, mailboxes). Walk me through:
1. Teaching FirstSales my business: website, offer, proof points and case studies in the knowledge base, so the AI writes like someone who knows the product.
2. Connecting my sending mailboxes and checking my sending domain: SPF, DKIM, DMARC and warm-up. If anything is unhealthy, tell me the exact DNS record to add.
3. Bringing in contacts: import my CSV or CRM export into a clean list, remove duplicates and bad emails, and block domains I must never email (customers, competitors, my own).
4. Building my first campaign: the right list, senders, steps and timing. Write the sequence with me, show me the drafts, and do not launch until I say yes.
5. Setting up Signals if it fits: find people engaging with LinkedIn posts about topics my buyers care about, and turn them into leads.
6. Inviting my team and giving each person the right access.

Once campaigns run, show me how to work the reply inbox from here: which replies need an answer, draft responses in my voice, and move good conversations into deals. If I use Cal.com, connect it so follow-ups can offer my booking link (not the first email).

Throughout, as you learn about my business, proactively suggest and help create:
- Reply templates for the questions and objections my prospects are likely to raise, based on my product, site and codebase if you can see them.
- Campaign ideas and segments worth testing, with the reason for each.

Safety rules:
- Show every change as a dry run (--dry-run) first and wait for my yes. Never send emails, launch campaigns or delete anything without my yes.
- Tell me before anything that spends credits, and how many.

Be opinionated. If the docs give a sensible default, just use it. Don't make me choose between five options.