
Bring Your Own Model — Then Put It to Work Immediately
Eigent is model-agnostic. You can run it on the default cloud model, or you can connect any OpenAI-compatible API — including Google's Gemini — and use that instead. This walkthrough covers both sides: how to configure Gemini 3 Pro Preview in Eigent's settings, and what a real Salesforce automation task looks like when you run it through that model right away.
Configure Gemini as a Custom Model
Open Settings → Models in Eigent and navigate to Custom Models. Select Gemini, then fill in:
- API Key: Your Google Gemini API key
- API Host:
https://generativelanguage.googleapis.com/v1beta/openai/ - Model Type:
gemini-3-pro-preview
Click Save. Eigent validates the model immediately and checks for function-calling support — a requirement for multi-step agent tasks. If validation succeeds, you'll see: "Validate success — The model has been verified to support function calling."
Set Gemini as your Default model, and every new task will run through it from this point on.
The Task: Read Contact Data, Then Update a Deal
With Gemini configured, this prompt puts it to work immediately:
I need to update the salesforce.com - 200 Widgets deal. Give me the contact name and phone number. Back to the Opportunities page, edit the Next Step as 'book a meeting with + the contact name and phone number.'
This is a two-part task that requires reading from one section of a Salesforce record (Contact Roles) and writing to another (Next Step). Eigent handles both in sequence.
The Full Task Plan
Eigent generates a structured execution plan before touching Salesforce:
- Locate the "salesforce.com - 200 Widgets" opportunity and move its stage from Needs Analysis to Proposal, then mark as current stage
- Navigate to the Contact Roles section and retrieve the contact's name and phone number
- Return to the main Opportunities view and edit the Next Step field with:
book a meeting with [contact name] [phone number] - Save all changes
This plan is visible in the Eigent UI before any browser action is taken.
Execution: Cross-Record Data Reading and Writing
The Search Agent opens Salesforce in the already-authenticated browser session. It navigates to the Opportunities tab, finds the "salesforce.com - 200 Widgets" record, and promotes the deal stage to Proposal.
The agent then moves into the Contact Roles subsection — a separate part of the same opportunity record — and extracts the contact name and phone number. With that data in hand, it returns to the top-level opportunity view and dynamically populates the Next Step field:
book a meeting with [contact name] [phone number]
The record is saved. The entire workflow — stage update, data extraction, dynamic field population — runs without a single manual interaction.
Why This Pattern Is Powerful
This workflow demonstrates a capability that most CRM automation tools struggle with: using live data from one part of a record to populate another. The contact's phone number isn't known at prompt time — Eigent retrieves it mid-task and uses it dynamically. That's a fundamentally different model from static field-mapping automation.
Combined with a custom model like Gemini, this workflow is also cost-efficient: you control the model, the API costs, and the rate limits, without being locked into a single provider.
What to Try Next
For every deal in the Proposal stage, read the contact role and populate the Next Step with a follow-up instruction.
After updating the deal, log a Salesforce activity: "Scheduled meeting with [contact name]" and set a reminder for tomorrow.
Switch the model to GPT-4o and run the same Salesforce task — compare speed and token usage.
Configure a second custom model (Anthropic Claude) and set Gemini as the fallback if it's unavailable.
Tips for Better Results
-
Validate before you run. The model validation step in Eigent's Settings catches incompatible APIs before you hit them mid-task. Always validate a new model configuration before using it in production workflows.
-
Use precise record names. Including the exact deal name ("salesforce.com - 200 Widgets") eliminates ambiguity and prevents the agent from selecting the wrong opportunity in a large pipeline.
-
Extend the pattern. Once you see how Eigent reads Contact Roles and writes to Next Step, the same approach applies to any cross-section data dependency in Salesforce: reading from a related list to populate a custom field, extracting product data to write a proposal summary, and more.


