Salesforce Principal Developer Advocate Mohith Shrivastava joins us on Code[ish] this week to share a few tips and tricks for using Agentforce! Speaking with Julián Duque, the pair cover a range of insightful dev topics including working with agents, vibe coding, programmatic deployment, and more.
Agentforce for Developers
- Tools and Tips
- September 10th, 2025
- 26:05
SHARE
Agentforce for Developers
Hosted by Julián Duque, Mohith Shrivastava
Show Notes
Narrator
Hello and welcome to Code[ish], an exploration of the lives of modern developers. Join us as we dive into topics like languages and frameworks, data and event-driven architectures, artificial intelligence and individual and team productivity, tailored to developers and engineering leaders. This episode is part of our Tools and Tips series.
Julián
Hello, my name is Julián Duque, principal developer advocate for Heroku. I’m your host today here at Code[ish], the Heroku Podcast. Today I have the honor to have with me my friend, colleague, Mohith Shrivastava, who is a principal developer advocate for Salesforce. Hello, Mo, how are you doing?
Mohith
Hey, Julián. Thanks for having me. I’m doing great.
Julián
Oh, awesome. Mo, it’s great to have you here. I know you are a very renowned person within the Salesforce community, but some of our Heroku audience might, don’t know about you. Could you talk a little bit more about yourself and what you do at Salesforce?
Mohith
Absolutely, absolutely. Hey everyone. My name is Mohith Shrivastava, I’m a principal developer advocate here at Salesforce. I work on enabling our developer community on everything Salesforce from apps to agents. These days I focus on Agentforce, which is our topic for this conversation.
Julián
Beautiful. Yes, we are going to first demystify Agentforce. What is Agentforce and how we as developers can benefit from these technologies? So Mo, let’s start by defining, “What is Agentforce?” I’ve seen that Agentforce became the main thing for Salesforce right now, but some people might don’t know what it is.
Mohith
Yeah. So Julián, first of all, let’s take a step back and talk about agents. What they are.
Julián
Beautiful.
Mohith
Yeah. So agents are powered by these large language models, and you know, large language models have been a hot topic in our technology industry. And here at Salesforce, we quickly kind of figured it out that just the large language models won’t be enough. I mean, they are part of the infrastructure. You can treat them like an infrastructure, but if you want to like, really have a system that can autonomously execute tasks, like you’d give it a goal, it can go and accomplish a task. Just having large language models are not going to be enough. There’s a whole layer of software that is required on top of these large language models. So agents basically use these large language models, but they just not respond. They can also take actions on your behalf or autonomously. So those are agents in a nutshell. So basically when I talk about agent side it’s connecting software to large language model to have a system that you can then give it a goal and the system plans and goes and does that task autonomously by just first planning and then executing those plans. And execution is nothing but invocation of software tools that we already have and are used to. It could be anything from APIs, you know, it could be a simple code or in Salesforce world it could be an Apex code flows. In your Heroku world, it could be a service that is stored on Heroku, right? So, these are all actions and Agentforce is our agentic layer of Salesforce platform. Now before I kind of go ahead right, building these kind of systems like agent which is large language model and then you add a software layer to improve its reasoning and then connecting to all these external world and services. This is a lot of work.
Julián
It is.
Mohith
Yeah it is and a lot of companies have done their own DIY stuff. But you know, with DIY, you know, it’s not scalable. Specifically, you know, if you are not in the software industry or if enterprise applications is not your game, right, it’s resource intensive. You have to manage a lot of resources here, including, you know, people. You need resources like GPU in this case. I mean, it depends on the stack here, like the stack that is required to put together, but you really end up doing a lot of work that is required and consuming a lot of time, right. But what you want as a business is an outcome, and that is where the agentic layer of our Salesforce platform shines, because what Agentforce allows you to do is it gives you that agentic layer so you can just with low code, define what you want your agent to do. And then the agent, can we just build with simple clicks, little bit of code, all you know without having to DIY. We manage all the resources and the infrastructure for you, and you are focusing only on one thing, which is getting the agent to do the business goal that you have for the agent.
Julián
That’s what it is fascinating what you mentioned. I build agents with these agentic frameworks that you can find as open source like LangChain, there are others like CrewAI, Agentica, there are like many, many frameworks and libraries that helps you get to that point. But, it’s very custom for a very specific custom use case. It doesn’t scale if you want to reuse it for different purposes.
Mohith
Yeah.
Julián
How does that experience looks like in Agentforce?
Mohith
Yeah, that’s a great point, right? And let’s talk about these frameworks. So the challenges with these frameworks is it’s all custom, so you will have to build it yourself with let’s say Python code or JavaScript like TypeScript. But then you have to also think about where do you host it? How do you orchestrate these large language model around this? So there’s a lot of software that you will need to write and maintain and secure also.
Julián
Yeah, if security is very important, all the trust layer, it’s very important.
Mohith
Yeah, and monitoring reliability, you know a lot of software work, right. On Salesforce platform we make it very low code. So all you are doing in Salesforce platform is really you’re focusing on three things, and everything is click and point. So you start with defining your agent like what do you want your agent to do. So you start with that. You give it a goal, right. And then to accomplish that goal, right, what are the jobs that you want your agents to do. And that that is what we call topics. Again, topics are nothing but jobs to be done by the agent, so you define these topics using natural language, no code. It’s intuitive user interface, so you define them. And then for every topic you assign actions. Actions can be built using Salesforce Flows, Apex in Salesforce, which is a Salesforce programing language that a lot of Salesforce developers know. Or it could be an API hosted on Heroku.
Julián
Yep. We pretty much have a Heroku uplink that allows us to import any API service deployed on Heroku into Salesforce through external services. We just click, a couple of command line executions, and it takes care of all of the security and that configuration between the two, the two systems.
Mohith
Yeah.
Julián
And I’ve built agents with Agentforce that way. And what I love is on on on Agent Builder, when you mention about the topic is that it’s even generated by an LLM, I just write the purpose of what I want to do in that topic and it suggests all of the instructions, it writes everything for me. It really simplifies the amount of work that I need to do initially.
Mohith
Yeah. Using AI to build AI, right.
Julián
Yeah, exactly. Using the AI to build to build AI.
Mohith
Yeah, so that’s topics and then we talked about actions. So we link actions to the topics. And then what we do there is we also provide instructions. So you know the LLM can plan and orchestrate these actions themselves based on the instructions that you give to these actions. But then let’s say you want to override that or you want to take control of some of these, or you want to give some more, you know, suggestions to LLM on how you want this actions to be orchestrated, right? So you write some instructions. Instructions are also helpful for the user interface actually, like how do you want the user interaction to be or the user flow to be when it when the user is interacting with this agent? All sorts of things are instructions. So you have three components I would say. And then we let you deploy to whatever channel you want, right, wherever you want. So, for example, you could deploy on a site built on Heroku. You can have an Agentforce there, APIs, these things are possible through APIs, so we have agent APIs. So you can use those APIs to almost call these Agentforce from any applications without like any specific UI constraints. So those type of things can be done using Agentforce. And all of this is done through, again, clicks in Agent Builder that you talked about. It’s an Agent Builder is the tool, you know to build these agents. It’s low code click-and-point tool and then guard railing them basically. So you know you could put more guardrails like we have fields like scope, etcetera, again, those are natural language fields. So we’re really where you can say, you know, this is the task I want you to perform. These are the things I don’t want you to perform. So you can provide all those things there and the agent is scoped. It’s operating with only the task in mind and only the things that you control. So yeah, you know, easily sort of governed, secured.
Julián
Nice. You mentioned this low code point-and-click approach, which a bunch of Salesforce admins and Salesforce developers are familiar with. But is there a way I can create, configure, and deploy these agents on Agentforce programmatically, like using an API or SDK?
Mohith
Yes, great question. So, at Salesforce, even though everything is low code, we provide the user interface. But at the same time everything is metadata too. That means all of these can be deployed to external apps, so we provide APIs. Also, we have SDK now, the Python SDK.
Julián
Python?
Mohith
Yes we have Agent SDK that’s only available in Python at this point. But it’s really nice programmatic way to create your agents, like you know you can import that SDK and then say, “Hey these are my topics. These are actions linked to this topic. These are instructions for these topics.” And yeah, with simple Python code, like 5-10 lines of code, we’ll have agent defined and create a tool, like we have a create command tool there where you can just say, “Agent tool create” and point it to environment file which has the Salesforce credentials. Of course, you know, there are other ways we support the connection, like through JWT Flow and other secure enterprise slots. But you can define all of them and then you have your agent. So you can programmatically just, you know, as a part of the SDK, you can keep writing all your instructions within code.
Julián
Very interesting. And what about Node.js or TypeScript SDK? Is that on the on the plan? Do you know?
Mohith
I am not sure if that is planned at this point, but the thing is, the Salesforce metadata API itself is there. So if anybody from the community wants to like, take a stab at it, if you have a strong feeling for a specific language, like, I know I would prefer a Node.js type of thing, you can definitely do that today. And Salesforce CLI, by the way, has a plugin too.
Julián
Oh, nice.
Mohith
Yeah, it has a plugin to Agentforce, so you can define your Agentforce spec in a YAML file and then it has a command to let you create actual agents within Salesforce using the command line.
Julián
Cool. That’s amazing. Speaking about languages you mentioned this SDK is in Python. I used to be maybe concerned before about the choosing of a programing language. If I don’t find what I want on the programing language of my choice, it was kind of like a difficulty before. But right now with all these AI code asdsistants, , that limitation became, became nothing. You can, like, repurpose an existing open-source project and migrate to a different language. Or why not write a full Python application without knowing too much Python and use what is currently available?
Mohith
Yeah, absolutely. And tools like Cursor are making it so much easier. It is a vibe code I guess we are talking about vibe code here.
Julián
Yes, definitely, that term has popped up a lot on my LinkedIn and social networks, and I’m pretty sure, have you said, multiple times? I think it’s very interesting, the whole concept of just build something by prompting, by using natural language. But right now, in the current state of AI, even though it’s super powerful, what you can do with these AI assistants, this code AI assistants.
Mohith
Yeah.
Julián
You still need to have the fundamentals to first understand what you are doing, how to prompt, how to ask for building a specific task, and to verify that what you ask is working and it is secure and it is performant.
Mohith
Yeah. Absolutely. Absolutely. Yes, and you know, the more I play with this thing, you know, I’m pretty sure there will be a lot of tutorials on how to, like, effective vibe code. But you’re right, like you still need the fundamentals of computer science if you have coded in one language, and if you are trying to code in another language, I think it’s ideal use of these AI tools for sure, because you already know what you are looking for, or because you have an understanding of what are the things that will go. It’s just the language syntax at that point, right? So, the nuances of the language syntax, right, doesn’t matter, I would say. But at the same time, I think, you know, you should also be, you know, cross-verifying as you said. I mean, your your role becomes more of a reviewer, a judge maker. So, you know, you won’t be just accepting the code that LLM is splitting, you know, very fast. You would probably stop a bit, look at that code, see if it kind of makes sense, because today one of the challenges with these LLMs is they can give you code, which I say sometimes even like they can give you code with bugs, like even junior developers don’t make that. I mean, they can astonish you with, you know, building a lot of stuff that you could have taken, you know, for a lot of hours, right? But they could also surprise you with how silly bugs they can introduce within the code.
Julián
It can be destructive. I have like a couple of sessions where I have something working and then for some reason on a new prompt, either starts deleting what it created and do something else different, and I’m like, “No, stop. This is not what I need right now!”
Mohith
Yeah, yeah, I think at this point, we all know that AI is definitely not there at that level, I would say. But I think the point here is it’s really awesome to augment with it, you know meaning if you exactly know, if you have a structure in your head like this is how my application should behave and this is how the code would look like, probably that might be very good, because then you can break that task into smaller tasks for AI and watch it do for you. Maybe it will not get there, you know, maybe it gets 90%, but that’s the point is like it still saved you ton of work.
Julián
A lot of time.
Mohith
A lot of time. Now, as you said, like, fundamentals becomes so important here, like, for example, you know, having version control in place, so that you can revert the code if AI does something weird, right, you can revert it.
Julián
A good specification, good architecture.
Mohith
Yes. The documentation becomes very critical because if you provide more context to the AI, like in formal documentation and checklist, the other thing that I have figured it out is the checklist. You know, and if you have a checklist in place and say, okay, you know, and implement this feature, and as soon as you implement this feature, you mark it in the checklist and that checklist becomes part of your prompt, what I’ve seen, it actually does a pretty good job then, you know, because it knows that, you know, the AI knows that it should not break the existing features. Because I think what is critical is it’s, I mean AI can write code, right? But it still doesn’t understand, like, all the features that are there in your application.
Julián
It is still very limited on the context window, the model you are using has access to.
Mohith
Yeah, so some models some big context window, but again that doesn’t mean that, you know having a even a big context window actually helps because we have seen this and this is very well known fact now that the moment you have more than 100,000 tokens, the understanding like the large language models understanding level decreases. So it might not even understand, it might not even understand from that point what’s going on. So that’s why I like these documentation checklist rules files. Like Cursor is one of the tools that allows having a rule file. So you could like say these are my rules. You know this is how you’re going to split out the code. It’s not, you know, blindly using its own reasoning to come up with the code, like you can put a structure on it saying, hey, follow this pattern. Or you know, when you are building these Agentforce actions for example, this is the template, please use this template, do not deviate from this. So the LLM starts, you know, giving you results which are more easy to review and also more accurate.
Julián
Building applications for for Salesforce, I mean, the Salesforce ecosystem involves very specific technologies like Apex, Lightning Web Components, all of all of these technologies that belongs to to Salesforce. In the current state of AI tooling, what’s the best approach if I want to start, like, building a Salesforce application to deploy to the Salesforce platform, what is the tool of choice?
Mohith
Yeah, absolutely. And honestly, I’m surprised that most of the LLMs out there, they are good when it comes to Salesforce. Like they have a good understanding of Salesforce application in general. Like you can ask them any questions and they’ll probably get things right, right? But our customers have customized their environments a lot. Like I would say, every customer have their own data model, they have their own architecture, they have their own integrations, etcetera.
Julián
And each org has its own context.
Mohith
Yes, exactly. So that information none of the LLMs will have and you shouldn’t give that information to the LLMs.
Julián
Oh no, no.
Mohith
Because that’s your IP, right? So, in that case, that is why we have Agentforce for developers, which is our agentic IDE. So if you are using, you know, other IDEs like Cursor and other things, we caution on security a lot on these using enterprise versions of them. But more importantly they are not geared towards Salesforce application. Agentforce for developers is something that we are evolving, and there’s a lot of features I can talk about that’s going to come, you know, it’s going to have MCP support.
Julián
Nice.
Mohith
Yeah, there will be MCP servers for lightning component development. We showed that through one of our videos on on our channel, Salesforce Developer Channel, so there will be an agent for, you know, building your lightning web components from, let’s say, a Figma file. There will be MCP servers, you know, to help you make your lightning component code more accessible and friendlier. Agent to write just as for your lightning web component, also we have our own. So Agentforce for developers also supports Apex writing and will grounded with already code that you have. So with all the security and stuff right. So nutshell right. Agentforce for developers is what you would be using. I would be honest to say that we are still not there at the Cursor level in terms of the feature set that is available for the user interface, but everything is coming and I’m hoping by Dreamforce time will have all the features to show, And it will integrate with, you know, our scalable testing tools. Apex Guru, which can give you like the best Apex code and things like that. So we’ll integrate with our platform and we will make sure that it does a RAG, retrieval augment generation, with grounded information from your org, so it’s not hallucinating or coming up with irrelevant code. So that way all this Apex code and LWC and all of these are very, very relevant based on the information that you have already created in your orgs.
Julián
And is this a standalone application or how do you use Agentforce for developers?
Mohith
That’s a great question. So Agentforce for developers is VS code plugin and you can put it in your VS code. Now if you’re using Cursor you can also put it in Cursor because again Cursor allows you to install extensions just like VS code, it’s the same extensions basically, the same for any other agentic IDE so you can just install them and use it. Also from our web IDE which is Code Builder. Code Builder is our web IDE where you don’t need a laptop or you don’t need a local device, so you can just open it from your Salesforce org and it will already have that installed there so the extension will be installed, so you could just start coding there.
Julián
Amazing. It’s just enabling, like, the tools that developers are used to right now, to do what they do, better. I love, I love all these new ecosystem of developer tooling, AI agents, it’s definitely for me changing the game, and closing and lowering that bridge entrance for other people to start like also building things. Because before it was these, these huge gap between a developer and a non-developer to build these type of solutions.
Mohith
Yeah.
Julián
Right now that gets closer and people with great ideas now can build something using these tools and get interested in learning the fundamentals, as we mentioned before.
Mohith
Yeah, absolutely, I think that is the point that I’m seeing here is it will probably enable a lot of people and get interested in like knowing the fundamentals of software engineering in general. So, I mean it’s going to be a journey, of course, as we know, but at least you are getting started in that journey just because of, you know, something like vibe code.
Julián
Yeah.
Mohith
Maybe you vibe coded something and you got surprised and now you really want to know.
Julián
That’s true. Mo, now to to close the episode on these fantastic topic we have been talking about. If I want to get into Salesforce development and Agentforce, what do I need to do? Where do I go to learn, or what are the resources that are available for me to learn all of these amazing stuff?
Mohith
Yeah, absolutely. This is a great question. So we recently provided Developer Edition orgs for free for all the developers. So if you go to Google and search for Developer Edition Salesforce, you will land on to a URL where you can get access to a free edition org, which has Agentforce now, so you can all like hands-on practice. On the content, I would say Trailhead. So Trailhead is the place where you can go and look for more content. If you want to learn more about Agentforce for developers, just look for Agentforce for developers, or let’s say if you want to learn about just a quick start on how to get started on Salesforce, you’ll find a lot of content like that. So yeah, Trailhead is the place to learn. And again, Trailhead also provides Trailhead playground orgs where you can go and experience, hands-on, all of these tools.
Julián
And I have to recommend these because I used to also create a bunch of content for this channel. You need to go to youtube.com/salesforcedevelopers, which is the official channel for Salesforce Developers. And there you are going to find amazing content created by the developer relations team at Salesforce, by Moorhead, by Phillipe, Alba, Charles, all that amazing folks that works in these great team.
Mohith
Awesome. Yeah.
Julián
Awesome Mo. Thank you so much for joining me and us here in Code[ish] and looking forward to have you on a future episode.
Mohith
Thank you so much, Julián, for having me.
Narrator
Thanks for joining us for this episode of the Code[ish] podcast. Code[ish] is produced by Heroku, the easiest way to deploy, manage, and scale your applications in the cloud. If you’d like to learn more about Code[ish] or any of Heroku’s podcasts, please visit Heroku.com/podcasts.
About Code[ish]
A podcast brought to you by the developer advocate team at Heroku, exploring code, technology, tools, tips, and the life of the developer.
Looking into the Future of Agentic AI with Kit Merker
Subscribe to Code[ish]
Hosted By:
Julián Duque
with Guest:
Mohith Shrivastava
Principal Developer Advocate, Salesforce
@msrivastav13
@msrivastav13