The single best way to stop being intimidated by Agentforce is to give an agent one real thing it can do — and watch it do it. The wonderful part is you don’t need Apex for this. With Flow, Salesforce’s no-code automation tool, a beginner can build a genuinely useful agent action this afternoon. This post is the gentle, concrete walkthrough.
If the words agent, action, and planner are new, read What Is Agentforce? first — it’s the five-minute foundation this post builds on.
What an “action” really is
Remember the four pieces of an agent: the agent itself, its actions, the planner, and grounding. An action is one concrete capability — a single tool you hand the agent. “Look up an order.” “Find the nearest store.” “Create a support case.”
Here’s the key beginner insight: an action is mostly just a Flow with a clear description. You build the Flow that does the work, you describe it in plain language, and the agent’s planner reads that description to decide when to use it. The AI doesn’t need to understand your Flow’s internals — it just needs to know what the action does and what information it needs.
A first action you can actually build
Let’s give an agent the ability to look up how many open cases a customer has — a small, safe, genuinely useful capability.
Step 1 — Build the Flow
Create an autolaunched Flow (the kind that runs without a screen). Give it:
- An input variable —
customerId(text). This is the information the action needs from the conversation. - A Get Records element that counts Cases where the Contact matches
customerIdand Status is Open. - An output variable —
openCaseCount(number). This is what the action hands back to the agent.
That’s the entire “doing” part. Notice there’s no AI in the Flow at all — the Flow is dumb and reliable on purpose. The intelligence lives in the planner; the action just executes.
Step 2 — Describe it in human language
This is the step beginners rush, and it’s the most important one. When you expose the Flow as an agent action, you write descriptions the AI will read:
- Action description: “Returns the number of open support cases for a given customer.”
- Input description (
customerId): “The unique ID of the customer to check.” - Output description (
openCaseCount): “How many open cases the customer currently has.”
The agent chooses actions based on these descriptions, not on what the Flow does internally. Vague descriptions are the number-one reason a perfectly good action never gets used. Write them like you’re explaining the tool to a new colleague.
Step 3 — Add it to the agent and test
In Agent Builder, attach the action to your agent, then open the testing panel and type something a real user would say: “How many open cases does Acme Corp have?” Watch the planner pick your action, pass in the customer, and report the count. The first time you see it work, Agentforce stops being abstract.
The beginner traps (I hit all of these)
- Description too vague. “Gets case data” tells the planner nothing. Be specific about what it returns and when to use it.
- Forgetting the input the action needs. If your action needs a customer ID but nothing in the conversation provides one, the agent can’t call it. Make sure the information is reachable.
- Trying to do too much in one action. One action = one clear job. “Look up cases” and “create a case” should be two actions, not one clever mega-action. Small, sharp actions are easier for the planner to use correctly.
- Skipping the test panel. Build → test → adjust the description → test again. This loop is the whole craft.
Why no-code is the right starting point
Some people feel that building with Flow instead of Apex is “not real” development. I disagree completely. The hard part of Agentforce isn’t the code — it’s designing clear, safe, well-described capabilities and trustworthy data. Flow lets you practice exactly that skill without the distraction of syntax. Master it here, and when you do eventually need Apex for a more complex action, you’ll bring the right instincts with you.
Your next step
Build the open-cases action above, then challenge yourself to add a second one and watch the planner choose between them — that’s when the “agent” idea really lands. When you’re ready for the messier reality of custom Apex actions, my build log on fixing the “Actions: 0” problem shows what debugging at the next level looks like. Keep going through the Agentforce category.