TIA Framework Deep Dive — Topics Instructions Actions | Agentforce 2026

📅  Agentforce
Agentforce Course — Module 5: TIA Framework Deep Dive | sfinterviewpro.com
🤖 Free Agentforce Course 2026 — sfinterviewpro.com
🎯 Module 5 of 15

The TIA Framework
Deep Dive

Master the three pillars of Agentforce agent design: Topics (now Subagents), Instructions, and Actions. Learn when to use multiple Subagents, write production-quality Instructions, and understand all 4 Action types with real code examples.

3
Pillars (T-I-A)
4
Action Types
100%
Interview Ready
50+
Code Examples
📍 Course Progress — Module 5 of 15
Intro
Trust
DevOrg
Builder
M5TIA
M6Prompt
M7Std Act
M8Flow
M9Apex
M10API
M11Data
M12Deploy
M13Scale
M14Test
M15Done
🎯 What You’ll Master in This Module
You will understand the complete TIA Framework — T (Subagents: when to use multiples, routing strategy), I (Instructions: behavioral rules, production guidelines, guardrails), A (Actions: Standard, Flow, Apex, API with real examples). By end, you can architect a multi-Subagent production agent with rock-solid Instructions and understand every Action type.
T️

Part 1: Subagents (T) — Design Patterns

When to use 1, 2, or many Subagents. Routing strategy. Classification Descriptions.

A Subagent (renamed from Topic in April 2026) is a behavior category. The agent sees a user message and asks: “Which Subagent should handle this?” It reads Classification Descriptions, picks the best match. Good Subagent design = correct routing = happy users.
1
Single Subagent Pattern — When to Use
One Subagent handles everything
✅ Use Single Subagent When:
— Agent has ONE clear job (e.g., “Only handles sales inquiries”)
— No need to distinguish between user request types
— Simple use case: data lookup, email drafting, status checks
— Learning phase (Module 4 XYZ Sales Assistant starts here)
📋 Example: Service Ticket Agent
Agent Name: Case Assistant
Single Subagent: Support Handler
Classification: “Handles all customer support inquiries: case creation, status lookup, escalation requests”
Why Single? Every message is a support request. No need to distinguish categories.
2
Multi-Subagent Pattern — 2-3 Subagents
Agent handles 2-3 different job types
✅ Use Multi-Subagent (2-3) When:
— Agent handles 2+ distinct user request types
— Different routing logic per type
— Different guardrails per type
— Example: Sales + Support in one agent (different instructions)
📋 Example: XYZ Company Multi-Subagent (Production)
Agent Name: XYZ Sales & Support Assistant

Subagent 1: Sales Handler
Classification: “Handles: opportunity lookup, account details, sales pipeline status, competitive intel, follow-up email drafts”
Instructions: “Always show amounts in INR. Escalate pricing decisions. Respect customer privacy.”

Subagent 2: Support Handler
Classification: “Handles: customer complaint lookup, case creation, SLA status, escalation to account manager”
Instructions: “Always prioritize customer satisfaction. Empathetic tone. Escalate angry customers immediately.”

Why 2 Subagents? Sales & Support have different instructions, different escalation rules, different guardrails. One agent, two specialized behaviors.
SubagentRequest TypesInstructions FocusEscalation Path
Sales HandlerOpportunity status, Account info, Competitive, Email draftsProfessional, Revenue-focused, SecureSales Manager
Support HandlerCase lookup, Complaints, SLA check, Account helpEmpathetic, Fast resolution, OwnershipSupport Lead
3
Complex Multi-Subagent (4+ Subagents) — Enterprise Pattern
Specialized Subagent per business domain
⚠️ Use 4+ Subagents Only When:
— Agent handles 4+ DISTINCT request categories
— Each category needs separate Instructions & escalation
— Risk: Too many Subagents = confused routing (AI can’t decide which to use)
— Expert tip: Keep Classification Descriptions VERY specific if using 4+
📋 Example: Enterprise Financial Services Agent (4 Subagents)
Subagent 1: Loan Officer — Loan applications, approval status, document requests
Subagent 2: Risk Analyst — Fraud checks, compliance questions, regulatory inquiries
Subagent 3: Customer Service — Account status, transaction history, billing disputes
Subagent 4: Collections — Payment reminders, delinquency status, repayment plans

Why 4? Each has different guardrails (Risk uses legal language, Loan uses financial terms, Collections has empathy rules). One agent would be too generic.
❌ Too Many Subagents — Anti-Pattern
Don’t create a Subagent for every variation. 6+ Subagents typically means your Classification Descriptions are too broad. Instead: refactor into 2-3 core Subagents + handle variations in Instructions & Actions.
4
Classification Description Best Practices
The skill that makes or breaks Subagent routing
✅ Good Classification
Specific, actionable, lists concrete request types
“Handles ONLY sales inquiries: opportunity status, account details, competitive intelligence, and follow-up email drafting for XYZ pharma customers.”
❌ Bad Classification
Vague, too broad, doesn’t tell AI when to use it
“Helps with sales stuff”
✅ Classification Description Template
“Handles [specific request types]: [example 1], [example 2], [example 3]. Scope: [what data], for [which users]. Does NOT handle: [out of scope].”
📋 Real Example with Template
“Handles ONLY sales inquiries: opportunity status checks, account background info, competitor intel, and sales email drafting. Scope: XYZ Company Salesforce Accounts, Contacts, Opportunities for sales reps. Does NOT handle: pricing negotiation (escalate to manager), customer support complaints (route to Support Subagent), product technical questions.”
📋

Part 2: Instructions (I) — Behavioral Rules

Writing production-quality Instructions. Do’s, don’ts, guardrails, tone.

Instructions are natural language behavioral rules the Subagent follows. They define HOW the agent behaves: tone, what data to show, what to escalate, privacy rules, format preferences. Good Instructions = predictable, reliable, user-friendly agent.
1
Core Instruction Categories — Production Framework
Every Subagent needs these
CategoryPurposeExample Instruction
1. Tone & PersonalityHow agent sounds“Be professional but approachable. Use customer names when available. Show genuine interest in their success.”
2. Data Format & PresentationHow to show information“Always show Opportunity amounts in Indian Rupees (“₹1,500,000”). Show dates in DD-MMM-YYYY format. Break into bullets for readability.”
3. Scope & BoundariesWhat agent handles, what to escalate“Handle data lookup & email drafts. DO NOT make pricing decisions. Escalate any negotiation to Sales Manager. DO NOT give legal advice.”
4. Privacy & ComplianceData protection rules“Never share one customer’s info with another. Mask PII in team emails. Never retain customer data after conversation ends.”
5. Context & Company InfoAgent knowledge base“XYZ Company: pharma-grade silicone manufacturer. Founded 1998. Top 3 customers: ABC Pharma, MedTech, BioLife. Key products: tubing, O-rings, gaskets.”
6. Error HandlingWhen agent doesn’t know“If information not found, say so clearly. Never guess or make up data. Offer to connect with manager for research.”
7. Follow-UpKeep conversation going“Always end with a helpful follow-up question. Example: “Would you like me to draft an email to this account?”
2
Real Production Instructions — XYZ Sales Assistant
Copy this template for your Subagent
SYSTEM ROLE & TONE You are XYZ Sales Assistant — a professional, knowledgeable AI sales support for XYZ Company. Tone: Professional but warm. Show genuine interest in customer success. Always use customer names when available. Be concise but thorough. DATA PRESENTATION All monetary amounts: Show in Indian Rupees with symbol “₹” format (₹1,500,000 not 1.5 cr) Dates: Use DD-MMM-YYYY format (15-Jul-2026 not 7/15/2026) Opportunity amounts: Always include pipeline stage & probability Account info: Lead with industry & location, then contact person Format long responses as bullet lists for readability SCOPE & ESCALATION RULES HANDLE: Account lookups, Contact details, Opportunity status, Email drafting, Competitive intel ESCALATE to Sales Manager: Pricing discussions, discount requests, contract terms, “what if” scenarios ESCALATE to Support: Customer complaints, SLA violations, angry customers DO NOT: Make pricing decisions, promise discounts, override approval workflows COMPANY KNOWLEDGE XYZ Company: Pharma-grade silicone manufacturer. HQ: Vadodara, India. Core products: Medical tubing, O-rings, gaskets for pharma & medical devices. Top accounts: ABC Pharma (₹5Cr+ annual), MedTech Solutions (₹3Cr), BioLife Research (prospect) Key competitors: Dow Inc (silicone leader, premium pricing), Shin-Etsu (Asian player) PRIVACY & COMPLIANCE NEVER share one customer’s pipeline with another customer NEVER expose contract terms or pricing to unauthorized users Mask PII in any emails sent to team (use “[CUSTOMER_NAME]” format) Assume all data is confidential unless explicitly marked public Never store customer data after conversation — Trust Layer handles this ERROR HANDLING If account/contact not found: “I don’t see that customer in our records. Can you provide more details (alternate name, location, contact name)?” If data unclear: “I found multiple records. Can you clarify which one you meant?” If unsure: “I’m not confident in that answer. Let me connect you with [manager name] who knows the details.” Never guess, never make up data. FOLLOW-UP BEST PRACTICE Always end your response with 1 helpful follow-up question. Example: “Would you like me to draft an email to Rajesh at ABC Pharma with this update?” This keeps the conversation productive & focused on next steps
✅ Copy This Template!
Use the structure above (Role, Tone — Data Presentation — Scope & Escalation — Company Knowledge — Privacy — Error Handling — Follow-Up) for every production Subagent. It covers all the bases!
3
Common Instruction Mistakes — Avoid These
Anti-patterns that break production agents
❌ Too Vague
Agent will be unpredictable
“Be helpful” (what does helpful mean?)
“Answer questions” (which questions?)
✅ Specific
Agent behavior is predictable
“Answer sales pipeline questions. Show amounts in ₹. Escalate pricing to manager.”
❌ Contradictory
Agent confused about rules
“Always share all customer data” + “Respect privacy” (conflicting!)
✅ Clear Hierarchy
Agent knows which rule wins
“Share public data. Never share private/financial data. Privacy always wins.”
❌ Too Long
Agent gets lost in detail
Novel-length instructions (500+ words)
✅ Concise
Agent focuses on essentials
Instructions = 200-400 words. Specific. Actionable.

Part 3: Actions (A) — All 4 Types

Standard Actions, Flows, Apex, and REST APIs. When to use each. Real code examples.

Actions are tasks the agent can perform: look up data, create records, send emails, call external APIs. Four types exist, each with trade-offs: Standard (pre-built), Flows (visual), Apex (custom code), REST APIs (external systems). Choosing the right Action type = reliable agent.
1
Action Type 1: Standard Actions — Pre-Built Tasks
No coding needed. Salesforce provides these out-of-box.
Standard Actions are Salesforce-provided, no-code tasks. Examples: “Get Record”, “Create Record”, “Update Record”, “Send Email”. Fast, reliable, perfect for common use cases.
Standard ActionWhat It DoesInputsOutputsUse Case
Get RecordFetch a single record by ID or fieldObject name, Record ID or field valueAll record fieldsAccount lookup, Opportunity details
Query RecordsSOQL query to fetch multiple recordsSOQL query stringList of recordsOpen opportunities, Recent cases
Create RecordCreate new recordObject name + required fieldsNew record IDCase creation, Lead generation
Update RecordModify existing recordRecord ID + fields to updateSuccess/failureStage change, close opportunity
Send EmailSend email to user(s)To, Subject, BodyEmail tracking IDFollow-up emails, notifications
Create TaskAssign task to userSubject, Due Date, Assigned ToTask IDReminders, follow-ups
📋 Standard Action Example: Get Record (Account Lookup)
Action Name: GetAccountDetails
Type: Get Record (Standard)
Input: Account Name = “ABC Pharma”
Output: Account ID, Industry (Healthcare), Location (Mumbai), Phone, Contact Person, Annual Revenue
Used By: “Tell me about ABC Pharma” user request
✅ When to Use Standard Actions
Simple CRUD operations (Create, Read, Update, Delete). Record lookups. Email sending. No custom business logic needed. If Salesforce provides a Standard Action for it — use it! Simplicity = reliability.
2
Action Type 2: Flows — Visual Process Automation
No code, but more power than Standard Actions. Build visual workflows.
Flow Actions invoke Salesforce Flows (visual workflows). Complex business logic: loops, conditionals, API calls, multiple records. You build the Flow visually in Flow Builder, agent calls it via Action.
📋 Flow Action Example: Multi-Step Opportunity Search
Flow Name: FindOpenOpportunitiesByAccount

Flow Logic (Visual):
1. Input: Account Name
2. Query Accounts: GET Account WHERE Name = input
3. Query Opportunities: GET Opps WHERE AccountId = result & StageName NOT IN (Closed Won, Closed Lost)
4. Loop through each Opp: Calculate days open, check SLA status
5. Sort by probability (high to low)
6. Output: List of open Opps with status, days open, SLA

Why Flow? Needs looping & conditional logic. Standard “Get Record” can’t do this. Query Action is simpler, but if we need post-processing (calculate days, check SLA) — Flow is better.
✅ When to Use Flows
Complex business logic: loops, conditionals, sub-flows. Multi-step processes. Data transformation. Calling multiple records. If it can’t be done with 1 Standard Action — build a Flow!
3
Action Type 3: Apex — Custom Code Power
Maximum control. Use when Flows aren’t enough.
Apex Actions are methods in Apex classes invoked by agent. Custom code logic: complex calculations, integrations, business rules that Flows can’t handle. Most powerful, requires coding.
📋 Apex Action Example: Calculate Opportunity Win Probability
Apex Class: OpportunityAnalyzer
Method: calculateWinProbability(opportunityId)

Logic:
— Fetch Opportunity & Account
— Check: Days in current stage, Days since last activity, Customer history (repeat buyer?)
— AI Model: Use historical data to predict win probability
— Output: Calculated probability (0-100%), Risk factors, Recommended actions

Why Apex? AI-powered prediction logic. Can’t do in Flow. Apex can call ML models, integrate with external services, perform complex calculations.
public class OpportunityAnalyzer { @AuraEnabled public static ProbabilityResult calculateWinProbability(String opportunityId) { Opportunity opp = [SELECT Id, StageName, Amount, CreatedDate, LastActivityDate, Account.Industry FROM Opportunity WHERE Id = :opportunityId]; Account acc = opp.Account; // Calculate days in current stage Integer daysInStage = (Integer)((System.now() - opp.CreatedDate).getTime() / (1000*60*60*24)); // Calculate days since last activity Integer daysSinceActivity = daysSinceActivity(opp.LastActivityDate); // Is repeat customer? Boolean isRepeatBuyer = checkRepeatBuyer(acc.Id); // Calculate win probability (simplified model) Integer baseProbability = getStageBaseProbability(opp.StageName); Integer adjustedProbability = baseProbability; if (daysInStage < 7) adjustedProbability += 10; // Fresh = good if (daysSinceActivity < 3) adjustedProbability += 15; // Active = good if (isRepeatBuyer) adjustedProbability += 20; // Repeat = good return new ProbabilityResult(adjustedProbability, opp.Amount); } public static Integer getStageBaseProbability(String stageName) { Map<String, Integer> stageProb = new Map<String, Integer> { 'Prospecting' => 10, 'Qualification' => 25, 'Proposal/Price Quote' => 50, 'Negotiation/Review' => 75, 'Closed Won' => 100 }; return stageProb.get(stageName); } public class ProbabilityResult { public Integer probability; public Decimal amount; public ProbabilityResult(Integer prob, Decimal amt) { this.probability = prob; this.amount = amt; } } }
⚠️ When to Use Apex
Complex business logic that Flows can’t handle. External API integrations. ML model predictions. Performance-critical operations. Use only when Flows are insufficient!
4
Action Type 4: REST APIs — External Integrations
Call external systems: ServiceNow, Jira, Slack, custom APIs.
REST API Actions call external HTTP endpoints. Query third-party systems, trigger workflows in other tools, fetch real-time data from non-Salesforce sources. Integrate your agent with the entire tech stack.
📋 REST API Action Example: Check ServiceNow Incident Status
Action Name: GetServiceNowIncident
Type: REST API Call
Endpoint: POST https://xyzcompany.service-now.com/api/now/table/incident
Headers: Authorization: Bearer [ServiceNow API Token]
Input: Customer Email
Query: Find incidents for this email
Output: Incident ID, Status, Priority, Assigned To, Last Update

Use Case: “I have an incident open with you guys. What’s the status?” — Agent calls ServiceNow API, gets real-time ticket info, responds to customer.
// Example REST API call configuration (Salesforce Named Credential + HTTP) // This is how Agentforce would call the ServiceNow API HttpRequest req = new HttpRequest(); req.setEndpoint('callout:ServiceNow_NamedCredential/api/now/table/incident?sysparm_query=caller_email=' + customerEmail); req.setMethod('GET'); req.setHeader('Content-Type', 'application/json'); Http http = new Http(); HttpResponse res = http.send(req); if (res.getStatusCode() == 200) { // Parse response Map<String, Object> responseBody = (Map<String, Object>) JSON.deserializeUntyped(res.getBody()); List<Object> incidents = (List<Object>) responseBody.get('result'); // Extract incident details for (Object incident : incidents) { Map<String, Object> inc = (Map<String, Object>) incident; String incidentId = (String) inc.get('number'); String status = (String) inc.get('state'); String priority = (String) inc.get('priority'); // Agent uses this data to respond to customer } }
✅ When to Use REST APIs
External system integration. Real-time data from third-party sources. Triggering workflows outside Salesforce. If data/logic lives outside Salesforce — use REST API Action!
5
Action Types Comparison — Choose Wisely
Decision matrix for picking the right Action
Action TypeComplexitySpeedBest ForAvoid If
StandardLowFastSimple CRUD, email, basic queriesComplex logic, multi-step processes
FlowMediumMediumVisual workflows, loops, conditionalsHigh-performance tasks, real-time demands
ApexHighFastComplex logic, AI predictions, performance-criticalSimple operations (overkill), no error handling needed
REST APIMedium-HighVariableThird-party integrations, external dataSimple Salesforce operations (use Standard instead)
🎯 Action Selection Rule
Try in order:
1. Standard Action? Use it (simplest, fastest)
2. Flow needed? Build Flow (visual, maintainable)
3. Apex only if Flow not enough (powerful but requires coding)
4. REST API only if data outside Salesforce (external integration)
🎤

TIA Framework — Interview Questions & Answers

Real questions from Agentforce developer & architect interviews

Interview QuestionBest Answer
Explain the TIA FrameworkT = Subagents (routing by classification), I = Instructions (behavioral rules), A = Actions (tasks agent performs). Agents route user messages to correct Subagent — Subagent reads Instructions — calls appropriate Actions to accomplish the task.
When would you use multiple Subagents vs. single Subagent?Single: One clear job (e.g., data lookup only). Multiple (2-3): Distinct request types needing different Instructions & escalation (e.g., Sales & Support). 4+: Enterprise, each domain is its own specialty. Risk: Too many Subagents confuse routing.
What makes a good Classification Description?Specific, actionable, lists concrete request types. Example: "Handles opportunity status, account details, competitive intel, email drafting. Does NOT handle: pricing negotiation (escalate to manager), support complaints (route to Support Subagent)." Vague descriptions lead to poor routing.
What should production Instructions include?1. Tone & personality 2. Data format & presentation 3. Scope & escalation 4. Privacy & compliance 5. Company knowledge 6. Error handling 7. Follow-up. Keep concise (200-400 words). Specific, not vague.
When do you use Standard Actions vs. Flows vs. Apex?Standard Actions: Simple CRUD & queries (fastest). Flows: Complex logic with loops & conditionals (maintainable). Apex: Performance-critical, AI predictions, or when Flow not enough (powerful but requires coding). REST APIs: External system integration (data outside Salesforce).

Module 5 Summary — TIA Framework Mastered

What you know now

  • Subagent Design Patterns: Single, 2-3 multi, 4+ enterprise. Classification Descriptions (specific, actionable). Routing strategy.
  • Production Instructions: 7 categories (Tone, Data Format, Scope, Privacy, Knowledge, Error, Follow-up). Template provided. 200-400 words, specific not vague.
  • Action Type 1 (Standard): Get, Query, Create, Update, Send Email. No code. Fast. For simple CRUD.
  • Action Type 2 (Flow): Visual workflows. Loops, conditionals, multi-step. No code. Maintainable.
  • Action Type 3 (Apex): Custom code. Complex logic. AI predictions. Performance-critical. When Flow not enough.
  • Action Type 4 (REST API): External integrations. ServiceNow, Jira, custom APIs. Data outside Salesforce.
  • Action Selection Rule: Standard first — Flow second — Apex third — REST API for external systems.
🎉 You're Now a TIA Expert!
You understand how agents route (Subagents), behave (Instructions), and execute (Actions). You can design multi-Subagent production agents, write bulletproof Instructions, and choose the right Action type. This is what separates junior devs from architects.
🧠 Module 5 — Knowledge Check
Q1: When would you use multiple Subagents? — When the agent handles 2+ distinct request types needing different Instructions & escalation rules. Example: Sales & Support in one agent.
Q2: What does a Classification Description do? — Tells the AI WHEN to use a Subagent by describing what user messages it should handle. User message comes in — AI reads all Classification Descriptions — picks best match.
Q3: Name the 7 categories in production Instructions. — Tone & Personality, Data Format, Scope & Escalation, Privacy & Compliance, Company Knowledge, Error Handling, Follow-Up.
Q4: Flow or Apex for loops & conditionals? — Flow. Flows are better for visual workflows. Apex only if Flow can't do it.
Q5: ServiceNow ticket status check — which Action type? — REST API Action. External system, call ServiceNow API endpoint.

🚀 Ready for Module 6?

Next: Prompt Builder — Create Reusable Prompt Templates You'll learn how to build prompt templates in Prompt Builder, make them grounded in Salesforce data, and invoke them from Actions. This is where AI gets DATA-AWARE!

Module 6: Prompt Builder —
SF
By SF Interview Pro
Salesforce Interview Prep Team
Practical Q&A by working Salesforce professionals · LWC, Apex, Data Cloud & AI
About Us ↗
☕ Enjoyed this article?
SF Interview Pro is 100% free and maintained by a Salesforce professional. No ads, no paywalls, and no signup required. If this guide helped you prepare for an interview, earn a certification, or grow your Salesforce career, consider buying me a coffee! ☕💜
🇮🇳 UPI (India)
UPI QR Code to support sfinterviewpro
Pay by QR
GPay · PhonePe · Paytm · BHIM
🌎 International
PayPal QR Code to support sfinterviewpro Pay via PayPal ↗
Scan or tap to pay