Agentic AI
Control Expedify with natural language using our AI-powered assistant. Let AI agents autonomously execute multi-step tasks.
What is Agentic AI?
Agentic AI is an intelligent assistant that understands natural language and executes actions across Expedify. Instead of clicking through menus, simply tell it what you want:
"Find all contacts from Acme Corp who haven't been contacted in 30 days
and create follow-up tasks for each"
Agentic mode allows an AI to:
- Understand complex requests
- Break down into steps
- Execute tools/skills
- Adapt based on results
- Complete the task
Instead of fixed workflows, the AI decides what to do.
How It Works
┌─────────────────────────────────────────────────────────────┐
│ AGENTIC AI │
├─────────────────────────────────────────────────────────────┤
│ │
│ User: "Create a summary for John Smith" │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ ORCHESTRATOR AGENT │ │
│ │ │ │
│ │ 1. Parse intent → CRM query + AI generation │ │
│ │ 2. Plan steps → Search contact, Generate summary │ │
│ │ 3. Select skills → crm_search, llm_generate │ │
│ └─────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ SKILL EXECUTION │ │
│ │ │ │
│ │ [crm_search] → Found: John Smith, Acme Corp │ │
│ │ [llm_generate] → Generated summary: ... │ │
│ │ [crm_update] → Saved summary to contact │ │
│ └─────────────────────────────────────────────────────┘ │
│ │ │
│ ▼ │
│ Response: "I've generated and saved a summary for │
│ John Smith. Here's what I created: ..." │
│ │
└─────────────────────────────────────────────────────────────┘
A simplified view of the orchestration loop:
User Request
↓
AI Agent (Orchestrator)
↓
Thinks → Plans → Executes
↓ ↓
[Skill 1] [Skill 2] [Skill 3]
↓ ↓ ↓
Results combined
↓
Final Response
Core Components
Orchestrator Agent
The brain that:
- Understands your intent
- Breaks down complex requests
- Selects appropriate skills
- Coordinates execution
- Synthesizes responses
Skills
Pre-built capabilities (actions) the agent can use:
| Category | Skills | Description |
|---|---|---|
| CRM | search, create, update, delete | Manage CRM records |
| Workflows | execute, status, list | Run and monitor workflows |
| Knowledge Base | search, add | Query and update KB |
| Analytics | query, report | Generate insights |
| Channel | email, sms | Send messages |
| Data | transform, aggregate | Process data |
Memory
Context the agent maintains:
- Conversation history
- User preferences
- Recent actions
- Entity context
Enabling Agentic Mode
In Chat
Access via the Agentix chat panel:
- Open Expedify chat (click the chat icon in the navigation)
- Toggle Agentic Mode on
- Type your request naturally and ask complex questions
- Watch as the agent thinks and acts, executing skills automatically
- Review results and continue the conversation
In Workflows
Use the Agentic Node:
- Add Agentic node
- Configure available skills
- Set the task prompt
- Agent orchestrates execution
Using Agentic AI
Natural Language Examples
CRM Operations:
"Find all deals worth more than $50,000"
"Create a contact for Jane Doe at jane@example.com"
"Update the status of deal #123 to 'Negotiation'"
"Show me tasks due this week"
Workflow Operations:
"Run the lead scoring workflow for contact ABC"
"What's the status of the onboarding workflow?"
"List all active workflows"
Knowledge Base:
"Search our knowledge base for refund policy"
"What does our documentation say about API limits?"
Analytics:
"How many deals did we close last month?"
"What's our current pipeline value?"
"Show me contacts by lead source"
Multi-Step Operations:
"Find all contacts who opened our last email but didn't click,
then create a follow-up task for each assigned to me"
"Generate a weekly report of new contacts,
summarize the trends, and email it to the sales team"
Agent Behavior
Thinking Process / Thought Bubbles
The agent shows its reasoning in real-time:
- Understanding the request
- Planning approach
- Executing steps
- Evaluating results
┌─────────────────────────────────────────────────────────────┐
│ 💭 Thinking... │
│ │
│ • Understanding request: Find inactive contacts │
│ • Planning: Need to query contacts, filter by last_activity │
│ • Executing: crm_search skill │
│ • Found 23 contacts matching criteria │
│ • Generating response │
└─────────────────────────────────────────────────────────────┘
Tool Calling
When the agent needs data or actions:
Agent: I need to find deals closing this month.
Let me search the CRM...
[Executes: crm_search(entity="deals", filter="close_date:this_month")]
Agent: Found 5 deals. Let me analyze them...
Skill Cards
See skill execution details:
┌─────────────────────────────────────────────────────────────┐
│ 🔧 crm_search ✓ Success │
├─────────────────────────────────────────────────────────────┤
│ Input: │
│ entity: contacts │
│ filters: │
│ - field: last_activity │
│ operator: older_than │
│ value: 30 days │
│ │
│ Output: │
│ count: 23 │
│ results: [Contact 1, Contact 2, ...] │
│ │
│ Duration: 245ms │
└─────────────────────────────────────────────────────────────┘
Error Handling
If a skill fails:
- Agent acknowledges error
- Tries alternative approach
- Reports if blocked
Use Cases
Research Assistant
"Find all contacts at enterprise companies who visited our pricing page last month"
Agent:
- Searches visitors by page
- Filters by company size
- Matches to contacts
- Returns list
Data Analysis
"What's our best-performing campaign this quarter?"
Agent:
- Queries campaign data
- Calculates metrics
- Compares performance
- Provides analysis
Task Automation
"Create a follow-up task for every deal that hasn't been updated in 30 days"
Agent:
- Finds stale deals
- Creates tasks for each
- Reports completion
Best Practices
Be Specific
# Good - Clear and specific
"Find contacts from Acme Corp created in the last 7 days"
# Vague - Requires clarification
"Find some contacts"
Provide Context
# Good - Includes context
"For the deal we discussed earlier, update the stage to 'Proposal Sent'"
# Missing context - Which deal?
"Update the deal stage"
Use Confirmations
For important actions, the agent will ask for confirmation:
Agent: "I found 150 contacts matching your criteria.
Creating tasks for all of them will generate 150 tasks.
Should I proceed?"
User: "Yes, go ahead"
Summary
- Clear requests - Specific instructions
- Start small - Simple tasks first
- Review executions - Check agent behavior
- Set guardrails - Prevent unintended actions
- Provide context - Help agent understand
Configuration
Enable/Disable Skills
Control which skills the agent can use:
- Navigate to Settings → Agentic AI
- Toggle skills on/off
- Set skill-specific permissions
You can also manage skills from Automation > Agent Skills:
- Go to Automation > Agent Skills
- Enable/disable skills
- Configure permissions
- Set rate limits
Customize Behavior
Adjust agent behavior:
| Setting | Description | Default |
|---|---|---|
| Confirmation Required | Require confirmation for destructive actions | Yes |
| Max Results | Limit results returned | 100 |
| Verbose Mode | Show/hide detailed thinking | Off |
| Auto Execute | Execute immediately vs. show plan first | Off |
System Prompt
Define agent behavior:
You are a helpful CRM assistant for Expedify.
You can search and update CRM records, analyze data,
and help users accomplish their tasks efficiently.
When searching, always confirm the scope before executing.
When creating records, summarize what you'll create first.
Guardrails
Set limitations:
- Maximum steps per request
- Confirmation for destructive actions
- Scope restrictions
Monitoring
Execution Logs
View agent activity:
- Steps taken
- Skills executed
- Time per step
- Results
Analytics
Track agent performance:
- Success rate
- Average steps
- Common requests
- Failure reasons
API Access
Use agentic AI programmatically:
POST /api/agentic/chat
Content-Type: application/json
{
"message": "Find all deals closing this month",
"context": {
"conversation_id": "conv_123"
}
}
Response (SSE Stream):
event: thinking
data: {"thought": "Parsing request..."}
event: skill_start
data: {"skill": "crm_search", "input": {...}}
event: skill_end
data: {"skill": "crm_search", "output": {...}}
event: response
data: {"message": "I found 12 deals closing this month..."}
Troubleshooting
| Issue | Solution |
|---|---|
| Agent stuck | Check skill availability |
| Wrong results | Improve request clarity |
| Too many steps | Simplify the task |
| Permission denied | Check skill permissions |
Related & Next Steps
- Knowledge Base - AI-searchable documents
- Agent Skills
- Chat Widget - Embed AI chat in your app
- Workflows - Automate with visual workflows