Stop Describing Your Agent. Start Declaring It.

Agentforce · AI Architecture · Migration

Stop Describing Your Agent. Start Declaring It.

Salesforce removed the New Agent button from the legacy builder and moved every new agent into Agentforce Studio. Underneath sits Agent Script, which replaces paragraphs of instruction with logic you declare once and the engine follows every time. Here is what changed, what it breaks, and how to plan the move.

Reading time: ~15 minutes | Published: August 2026 | Published By: Sandip Patel, Salesforce Architect
DEADLINE PASSED Jul 13 Legacy agent creation closed
ACT SOON Aug 27 Sandbox refresh cutoff for preview
REPORTED 82% Datasite deflection after rebuild
WINTER 27 Oct 9 Production upgrade weekend
TL;DR

Since the week of July 13, 2026, new Agentforce agents can only be created in the new Agentforce Builder inside Agentforce Studio. Existing legacy agents keep running and stay editable, but no new features are planned for the legacy builder. The real change is Agent Script, a compiled language that lets you fix an execution path instead of hoping the model picks the right one, and the Winter 27 sandbox preview opening August 28 gives you an unusually good window to test the move.

1
The button that quietly disappeared
What actually changed the week of July 13

You open Setup, type Agentforce Agents into Quick Find, and reach for the New Agent button you have clicked a dozen times this year. It is not there. It did not move to a submenu or hide behind a permission. Salesforce removed it on purpose.

Agent creation now happens in one place: the new Agentforce Builder, which lives inside a standalone app called Agentforce Studio. You reach it from the App Launcher, not from Setup. If your muscle memory has been routing through Setup all year, that alone is a small adjustment for every builder on your team.

One part deserves saying clearly, because the panic in my inbox has been out of proportion to the facts. Nothing was switched off. Agents you built in what is now called the legacy builder keep running, and you can still edit, version, activate, and deactivate them. What you cannot do is create anything new there. New voice agent creation stopped the same week. And Salesforce has said plainly that no further features are planned for the legacy builder.

The distinction that matters

This is not a deprecation with a shutoff date. It is a freeze. Your existing agents are safe and stale at the same time, which is a more awkward position than being told to move by Friday.

How we got here

1
October 2025
Agent Script announced

Salesforce introduces a declarative language for authoring agents, alongside a configurable version of the Atlas Reasoning Engine. It enters pilot.

2
November 2025
Public beta

Agent Script opens to all customers, including Developer Edition orgs, so anyone can try it without a paid deployment.

3
April 2026
Topics become subagents

A terminology change with no functional impact. You will still see both words scattered across docs and older blog posts, including some published this year.

4
Week of July 13, 2026
Legacy creation closes

The New Agent button is removed from the legacy builder. Every new agent, and every new voice agent, starts in Agentforce Studio.

2
Why a language instead of more screens
Hybrid reasoning, and the problem it was built to solve

The legacy builder asked you to write instructions in English and trust the model to work out the rest. Which subagent handles this question. Which action runs first. Whether the refund check happens before or after the eligibility lookup. Atlas read your intent and picked a path.

That works right up until it doesn’t. And when it fails, you are debugging a probability, not a program. Ask the same question twice and you can get two different sequences, which is tolerable for a knowledge lookup and unacceptable for a loan application or a returns workflow with a compliance step in the middle.

“The agent understood the request perfectly and then did the steps in the wrong order” is the single most common Agentforce failure I hear described.

Agent Script attacks this from a different angle. It is a compiled language: you write script, it produces a structured specification called the Agent Graph, and Atlas executes that. So the sequence is no longer something the model decides fresh on every turn. It is something you declared, and the engine follows.

Salesforce calls the result hybrid reasoning, and the name is more literal than most product names. You mark the places where the model should reason freely, and you mark the places where execution must be exact. The model keeps the conversation. The script keeps the workflow.

What teams are reporting after the rebuild

DATASITE
82%
Case deflection after rebuilding its service agent, up from the low sixties
WORKDAY
21%
Case deflection by end of Q1 against a 10% target for the full year
XERO
60%
Of queries resolved instantly across service, lead nurture, and Slack support
Read those numbers carefully

These are outcomes from teams that rebuilt and then refined. None of them came from clicking an upgrade button and walking away. The gain is in the redesign, not the conversion.

There is a second benefit that gets less airtime and matters more in production: latency. An agent following structured logic does not re-evaluate every subagent and every action on every single turn. It already knows where it is.

3
Reading Agent Script without the marketing
The syntax is smaller than you think

Here is a complete, if trivial, agent. Six blocks, and you can guess what most of them do.

AGENT SCRIPTsystem:
    instructions: "You are a friendly and empathetic agent that helps customers with their questions."
    messages:
        error: "Sorry, something went wrong."
        welcome: "Hello! How are you feeling today?"

config:
    agent_name: "HelloWorldBot"

variables:
    isPremiumUser: mutable boolean = False
        description: "Indicates whether the user is a premium user."

start_agent hello_world:
    description: "Respond to the user."
    reasoning:
        instructions: ->
            if @variables.isPremiumUser:
                | ask the user if they want to redeem their Premium points
            else:
                | ask the user if they want to upgrade to Premium service

Two characters carry most of the meaning. The arrow opens a block of deterministic logic that the engine evaluates before anything reaches the model. The pipe marks a line of natural language that gets sent to the model as a prompt. Everything else is scaffolding around that one distinction.

Look at what the conditional is doing. The choice between two prompts is not a judgement call anymore. It is an if statement reading a variable, resolved before the model sees a single token. The model still writes the sentence, and it writes it well. It just no longer decides which sentence it is writing.

Action chaining, which is where the real work happens

Most production agents fail on sequence, not on wording. This pattern is the fix.

AGENT SCRIPTreasoning:
  instructions: ->
    run @actions.check_eligibility
      with user_id=@variables.user_id
      set @variables.is_eligible=@outputs.eligible

    if @variables.is_eligible == True:
      run @actions.fetch_offer_details
        with user_id=@variables.user_id
        set @variables.offer=@outputs.offer

      | Present the offer: {!@variables.offer}
    else:
      | Explain that the user is not eligible for this offer.

The eligibility check runs first. Always. Not usually, not when the model remembers, not when the instruction was phrased well enough that day. The offer lookup only happens on a true result, and the model is handed a variable it cannot invent. If you have ever watched an agent cheerfully offer a discount to someone who did not qualify, this is the shape of the fix.

V
Variables

Real state that persists across subagents, instead of hoping the model still remembers what the customer said eight turns ago.

T
Transitions

Move between subagents with a rule, or expose the move to the model as a tool and let it choose. You decide which, per transition.

M
Model per subagent

Pick the LLM at the subagent level, so a summarisation step and a routing step do not have to share one compromise.

A
Availability filters

Control when a subagent or action is even visible to the reasoning engine. The cheapest guardrail is the one the model never sees.

O
Session traces

Searchable spans, variable changes, and timestamps per message. You can finally answer why it did that with evidence.

S
Superagent routing

One front door coordinating expert subagents behind it, with shared context. Only available in the new builder.

For the developers

You are not stuck in a browser. Agentforce DX pulls the script into a local Salesforce DX project, the VS Code extension understands the language, and you can author with Agentforce Vibes, Claude Code, or Cursor. Which means an agent is now a text file that fits in a pull request, and that is the sentence I would put in front of your release manager.

4
Two paths across, and how to pick
Convert in Studio, or rebuild from the ground up

Salesforce gives you two routes. They are not competing options so much as two speeds, and the good news is you can use both on the same agent.

A
Convert in Studio
The upgrade flow
Hours
  • Pick the agent and version, choose Upgrade
  • Subagents, actions, system messages, settings, data, and connections convert to Agent Script
  • Creates a draft version; the original keeps running untouched
  • Best for: getting a baseline you can diff against the original
B
Rebuild with dev tooling
CLI and AI coding tools
Weeks
  • Author from scratch using current Agent Script patterns
  • Redesign the flow rather than replicate what you had
  • Lands in version control from the first commit
  • Best for: agents whose logic you already wanted to rethink

My recommendation, and Salesforce says something similar in its own migration guidance: convert first even if you plan to rebuild. The conversion gives you a working reference implementation of your own agent in the new language, which is a far better teaching document than any tutorial. Then refine it before you go live.

Where you are today changes the answer

Nothing built yet
Start new

There is no decision to make. Open Agentforce Studio. If you want to try the language without touching an org at all, Agentforce Labs runs in a sandbox environment with no Salesforce org required.

Built, not yet in production
Move now

This is the cheapest window you will ever get. No regression suite, no user expectations, no change board. Every week you wait adds dependencies to unpick later.

Live in production
Stage it

One agent, a measured baseline, and batched changes with a test pass after each batch. Treat it as an enhancement project with a business case, not a maintenance chore squeezed into a sprint.

Barely used or abandoned
Let it go

Do not migrate an agent nobody wanted. If the use case still has value, start fresh. Migration budget spent on a dead agent is the most expensive kind of tidy.

5
A playbook, and a calendar you should care about
The next six weeks are unusually well suited to this work

Timing is doing you a favour this cycle. The Winter ’27 sandbox preview window opens at the end of August, which hands you a full copy of your own org running the next platform version while production carries on undisturbed.

Aug 27
Refresh cutoff
Sandbox must be on a preview instance
Aug 28-29
Preview upgrade
Preview sandboxes move to Winter ’27
Aug 30
Testing opens
Roughly five weeks of runway
Oct 9-10
Production
Main upgrade weekends

Check Salesforce Trust for your specific instance rather than trusting the general weekend list, because instances move between releases and the generic date is not always yours.

BASELINE CONVERT HARDEN
1
Measure before you touch anything
Deflection rate, escalation rate, average actions per conversation, and response latency. Capture them from the legacy agent while it is still the only thing running.
Skip this and you cannot prove the migration worked
2
Inventory what the agent actually touches
Actions, Flows, Apex, prompt templates, connections, and the permission sets behind them. Conversion carries configuration across; it does not audit your dependencies.
3
Run the upgrade and read the output
The draft version is the first honest description of your agent you have ever had in one place. Read the whole file. You will find logic you forgot you configured.
4
Test both versions side by side
Same prompts, same data, compare traces. The original stays active until you activate the new one, so there is no reason to test in sequence.
5
Add determinism where the money is
Do not convert every instruction into logic. Find the two or three sequences with a compliance step, a financial consequence, or a hand-off, and pin those down first.
This is where the reported gains come from
6
Put the script under version control
Pull it into your DX project and treat agent changes like code changes: branch, review, deploy. This is the durable win, and it outlasts whatever the builder UI looks like next year.
6
What the upgrade button will not do for you
The part the launch material skips

I like this change. I want to be clear about that before I start listing the things that will bite you, because the criticisms below are not arguments against migrating.

Conversion gives you parity, not improvement

The upgrade flow translates your configuration faithfully. That is the point of it. But faithful translation of vague instructions produces vague script, and none of the case studies got their numbers from the conversion step. They got them from the redesign afterwards. If you convert and activate on the same afternoon, you have changed your tooling and nothing else.

Rollback is a manual act

Activating the rebuilt agent automatically deactivates the legacy original. It is not deleted, and you can reactivate it, but that is a decision someone has to make under pressure at the worst possible moment. Do not archive or delete the legacy version in week one. Leave it sitting there being useless until you are genuinely confident.

The permission model shifted underneath you

Building in Studio no longer requires admin level permissions, which is a real usability improvement and a governance question nobody put on the roadmap. Setup access used to be your access control by accident. Decide deliberately who can author and activate a production agent, and write it down, before somebody discovers the gap for you.

Preview sandbox metadata does not deploy backwards

Anything you create or edit using Winter ’27 features or the new API version in a preview sandbox cannot be deployed to production until production itself upgrades in October. Plan the sequence accordingly, or you will build something excellent in September that has to sit on a shelf.

Testing consumes the same wallet production does

Running realistic test volumes through an agent draws on your credit consumption. Track sandbox usage separately so a thorough regression pass does not quietly eat capacity you budgeted for customers.

The one that catches teams

Your agent instructions were probably never reviewed by anyone but the person who wrote them. Converting to script makes them visible to your whole team for the first time. That is a feature, and it is also a slightly uncomfortable afternoon.

7
The thing worth taking away
Why this change outlives the builder that shipped it

Strip away the release notes and one property remains. Your agent used to live across a dozen screens and one person’s memory of why they configured it that way. It now lives in a file you can read top to bottom, review in a pull request, diff against last month, and hand to somebody new without a meeting.

Salesforce spent a decade teaching this community that clicks beat code. Then it looked at AI agents, the least predictable thing it has ever shipped, and reached straight for a language. Read that as an admission rather than a contradiction: some problems only behave once somebody writes them down.

So the question I would put to your team is not whether to migrate. It is simpler and slightly more uncomfortable. Can anyone in the room describe exactly what your production agent does, step by step, without opening Setup? If the answer is no, the file is not overhead. The file is the whole point.

Start with the migration guide

Salesforce documents the planning steps, prerequisites, and readiness checks before you touch either path.

Read the guide →
8
Frequently asked questions
The things people ask me in the second meeting
Do I actually have to migrate, or can I ignore this?
You can ignore it for now. Legacy agents keep running and remain editable, and there is no announced shutoff. But no new features are planned for the legacy builder, so every capability shipped from here onward, including voice enhancements, per-subagent model selection, and multi-agent orchestration, arrives somewhere you are not. Ignoring it is a decision with a slowly rising cost.
Will converting break my live agent?
No. The upgrade creates a new draft version in the new builder while the original keeps serving traffic. You compare, test, and validate before activating anything. The only moment of change is when you activate the new version, which deactivates the legacy one.
How is Agent Script different from just writing better instructions?
Better instructions still leave the execution path to the model, so behaviour can vary between identical requests. Agent Script compiles to a graph the reasoning engine follows, so the sequence is fixed where you fix it. You are choosing where the model gets discretion rather than hoping it uses discretion well.
Do I need developers, or can an admin do this?
An admin can do a great deal of it. Canvas view summarises the script into editable blocks, and you can describe what you want in plain language and have Agentforce generate the script. Developers get more: local authoring through Agentforce DX, VS Code support, and the CLI. Most teams end up with an admin in Canvas and a developer in Script view on the same agent.
How long does migrating one production agent take?
The conversion itself takes minutes. Getting to a version you would put in front of customers takes weeks, and most of that is testing and refinement rather than authoring. Budget by agent complexity, not agent count: one agent with eleven subagents and a payment step is harder than four FAQ bots.
Why do the docs keep saying topics when the UI says subagents?
Topics were renamed to subagents in April 2026 with no change in functionality. Both terms are still circulating in documentation, blog posts, and community answers written before the change. When you see topic in an older Agent Script example, read subagent.
Is there a way to learn this without risking an org?
Yes. Agentforce Labs lets you build with Agent Script without a Salesforce org, and there is a Trailhead learning path for the new builder. A Developer Edition org also works if you want something closer to a real environment.

Leave a reply

Your email address will not be published. Required fields are marked *