Developers / Events

Developer Features and Announcements from Dreamforce ’25

By Peter Chittum

This is the worst AI is ever going to be. This was the focus I brought to my Dreamforce experience. And I don’t mean it pessimistically, I’m not talking about how bad AI is today. When you hear how AI companions have either learned or been trained to be emotionally manipulative to their users to prevent conversations from ending, sometimes it is really bad. 

This statement is more a belief in the promise of what will come. Innovation continues to push at a breakneck pace, and in True-to-the-Core Salesforce laid out the stakes: Salesforce must continue to invest in AI or risk irrelevance. But we are at such an early stage, we still don’t know what “good” even looks like. We have not experienced the “iPhone moment” of this technology revolution, and despite putting on a brave face, 5,000 paid customers does not strike a person as the cash cow that will launch and fund Salesforce’s next 25 years. At least not yet. So, of course, this Dreamforce was a lot about AI. But there was plenty more, too. Let’s dive in. 

Developer Keynote

The keynote focused on three big themes: agentic development, predictable agents, and conversational UX.

Agentic Development with Agentforce Vibes 

A few months ago, Salesforce announced a partnership with Cline, an AI coding assistant provider. Salesforce has used this to reinvent its Agentforce for Developers (A4D) and rebrand it as Agentforce Vibes. Let’s just call it “Vibes”. This is a powerful upgrade to A4D. Instead of the previous one-shot prompts, Vibes demonstrates true agentic multistep reasoning at the hands of developers and other would-be coders. Apart from the keynote, I spent the bulk of my time in sessions and getting my hands on Vibes to really get a feel for it. I was impressed with its ability to turn fairly simple instructions into real working code. It was even pretty good at discovering its own errors and bugs, once prompted. 

Vibes comes with 50 calls to their best-in-class model per day per org. This can go quickly as the agent frequently performs inference and checks back when performing complex tasks. So performing a simple SOQL query consumed four calls to the model. Once you consume your 50 premium model limit, it falls back to a Salesforce-hosted open model. As of today, the premium model is GPT-5, and the fallback model is the respectable open weight Qwen3 model. 

You can install Agentforce Vibes today in VS Code as an extension. Code Builder (which is now apparently also named Agentforce Vibes) comes with the plugin installed automatically. And there is also an Agentforce Vibes CLI

Predictable Agents

If you’ve not learned about Model Context Protocol (MCP), it is a standard for agents to discover the tools they need to perform work. To get it to work, you need to have some kind of action that can be taken and then surface that through an MCP server. Salesforce has been building MCP server functionality that can run locally, but in the keynote, they announced a pilot planned for Spring ’26 to have MCP servers hosted on Salesforce providing contextual data to your agents. The vision is for a feature currently called the universal catalog that appears to surface all the configurations and metadata as functionality that an MCP server could surface.

Source: Salesforce

To top off the agentic trip, it’s worth mentioning Agent Script. Agent Script allows you to create rules, which can then be used to provide guardrails for agents during inference. This means you can sleep better at night knowing that an agent can be forced to follow sensitive or business-critical logic, while still leaving it to be creative when it suits you. Agent Script is in pilot and will be available in both Agentforce and Prompt Builders. 

Conversational UX

The third theme of the keynote was “conversational UX”. This was a throughline throughout the demos, with prompts and agents being the dominant way they were shown. I find this to be the most intriguing unsolved problem of the generative AI boom – what will user experience be in 3-5 years? 

Let’s explore an analogy. A long time ago, entertainment was on a stage, through a proscenium. When moving pictures were invented, because of what they already knew and understood about entertainment. So people took cameras into theaters, recorded the plays, and the people hated them – they were black and white, two-dimensional, and there was no sound. People had to learn how to take moving pictures – cinematography. 

The keynote painted a picture of the use of chat-based UI. This was demonstrated both in the use of developer tools as well as integration with Slack as a primary way that some users do their work. This included an interesting Salesforce on Salesforce story about a paid media campaign solution. I look forward to further explorations in this vein from Salesforce’s customers. 

Tests Become More Granular in Apex

One of the quieter, non-Agentforcey features that will present an outsized impact for developers on their productivity and quality of life is the new runRelevantTests test level, which is slated to come in Spring ‘26. So what makes a test relevant? 

Salesforce has a pretty good understanding of dependencies between Apex artifacts when being deployed. However, the relationship between a test class and the real Apex code it exercises is not straightforward. Still, there is a good deal that the platform can do to infer the relationship between a class or trigger that’s being deployed and some test classes. Let’s call these “inferred” relationships. 

But you might not want to rely on this potentially fallible inferred relationship. So the Apex team has also added a new parameter to the @isTest annotation. This is called testfor. This allows you to explicitly name one or more classes that a test is expected to exercise. If a class is deployed that is named in the testfor class list, then the test is run on that deploy.

@isTest(testfor=”ApexClass:AccountHandler,ApexTrigger:AccountTrigger”)
public with sharing Class MyTestClass {
	//…
}

Finally, you might want to have some tests that are run every time you deploy Apex. These tests can be marked with the critical flag in the @isTest annotation. 

All in, if using runRelevantTests, the tests that will be run will be: 

  • Tests in the deployment payload.
  • The inferred tests.
  • Tests for any classes that are in the payload, which are named in a testfor parameter.
  • Any tests marked as critical.
Source: Salesforce

In a large org with potentially thousands of Apex tests, the reduction in the amount of tests run could be orders of magnitude smaller than previous. And it also saves developers from some of the challenges that existed previously in the RunSpecifiedTests test level. 

Other Apex Goodies

  • Test discovery API is GA along with unified testing. And discovery will someday include Agentforce tests. 
  • The Cursor class in Apex is GA. And the new fetchPage feature makes it better for long-running pagination, which used to return inconsistent fetch sizes when records had been deleted.
  • AppExchange quality of life upgrades with namespace shadowing and the ability to now remove (under specific rules) global Apex members. A specific release was not named for these.

Scale Center Available to All Customers

Observability is the mark of maturity in an enterprise software package or platform. It’s inconceivable that anyone would launch software into production these days without it. Observability is what allows you to know early on when your software is failing, how it is failing, and hopefully give you cues to identify how to fix it. 

For some time now, Scale Center and Apex Guru have provided access to Salesforce’s own observability data – provided you had an Unlimited Edition license. As of today, Scale Center is now available to every customer org. 

Scale Center has broader org performance metrics, which can be found related to broader measures of database, Flow, and Apex performance. It can also report on governor limits. Apex Guru gives an analysis of specific Apex code antipatterns and performance hot spots, meaning aspects of custom code that are not performing well. 

There are still a few resource-intensive features that may require an additional license, such as Scale Test. But opening the broadest features to customers truly democratizes the possibility of application performance management for any org. 

One of my favorite standard agents provided by Salesforce is the Scale Center agent. If you’re not familiar or just want a hand getting to some of the more important insights in Scale Center, there is now an agent available to help you dig through the performance management results. Scale agent will also be surfaced into Slack via the Salesforce MCP server to alert team members on Slack. 

Here, I’d caution about becoming overly reliant on Scale Center. So far the best I’ve heard anyone say an agent performs is Marc Benioff about the help.salesforce.com agent operating at 93% accuracy. That means one out of every 11-12 invocations will be incorrect or wrong in some way. But as a guide to help understand performance metrics, this is a useful tool, which every project and application support team should consider adopting. 

I wonder if a year from now, we’ll begin to have a spate of performance management specialist agencies helping customers sort out their poor Apex or Flow performance. 

Integration

Apart from what we shared in the run-up to the Winter ‘26 release, there weren’t a load of earth-shattering announcements from the integration team. It seems like they are taking some real steps to shore up security.

The roadmap session laid out a set of features, like the new External Auth Identity Provider. This simplifies configuring identity for outbound calls to services. The best part of the integration roadmap is the contest and gamification they’ve been doing around this for several events now. So make sure you turn up there next time, and maybe you can win a boxing championship belt!

LWC

The big news for LWC was probably the expected arrival of a new live preview feature for building LWCs. This is different from local development in that you do not need to deploy your LWC code in order to test. Combined with Vibes, this makes a powerful combination. Apex classes, being server-side, of course, do need to be deployed before they can be used. 

We also got another peek at the future with things coming in future releases, like:

  • A new state manager to keep more complex state relationship graphs in sync.
  • GraphQL mutations are editable GraphQL syntax. 
  • The @optional decorator for fields returned from GraphQL queries.

Final Thoughts 

Another big event in the bag. Lots of big announcements. Many of the best bits are things we can only look forward to starting in the Spring. But if the developer-focused product and engineering teams can continue to iterate and innovate at the current pace, we have some good tools to look forward to. While Salesforce remains squarely invested in its AI roadmap, it is clear that there is plenty of movement, too broadly around developer experience.

The Author

Peter Chittum

Peter is Technical Content Director at Salesforce Ben.

Leave a Reply