
1. Verify the knowledge the agent actually uses
Start with the questions your team receives, then check whether the relevant answers are present, current and accessible. Uploading more documents is not automatically better: duplicated or conflicting policies make a correct answer harder to identify.
In a March 2026 eesel sales conversation, a multilingual semiconductor-hardware support team handling roughly 250 monthly tickets on Zendesk asked for a copilot grounded in past tickets and its knowledge base, with citations essential to the evaluation. That was a buyer requirement, not a Freshdesk benchmark. It captures a useful test: can a reviewer trace the answer to the policy that applies?
I would check:
- Coverage: Does the source answer the question, including exceptions?
- Freshness: Is the version still approved?
- Scope: Is it for this product, region and customer?
- Readiness: Was its content successfully ingested?
- Evidence: Can the reviewer inspect what supports the response?
The Freshworks knowledge guide describes URLs, files, solution articles and custom Q&As for its listed Omni/Freshchat setup. Public URL learning reads static text; uploaded text documents must meet format and size requirements. Published public solution articles differ from private content.

Do not assume a source limit is universal across email, chat and older accounts. Current Freshworks pages contain differing file and URL totals. Confirm the limit in your actual account before organizing a large migration around one number.
For multiple brands, check retrieval scope rather than automatically creating one agent per brand. The knowledge guide documents property-based filtering; sources without a rule are included by default. Test missing or incorrect customer properties as well as the expected ones.
2. Separate knowledge, instructions and actions
These solve different problems:
| Layer | Question it answers | Example |
|---|---|---|
| Knowledge | What is the approved policy? | Which products qualify for a replacement |
| Instructions | How should the agent respond? | Ask for the product model if it is missing |
| Actions and workflows | What may it actually change? | Create a replacement request after authorization |
A policy document cannot grant permission to perform a transaction. Conversely, disabling a transaction does not stop an agent from writing a misleading promise. You need to test both the words and the action.
Freshworks’ AI Agent setup separates knowledge, instructions, workflows and configuration. Use those controls deliberately. For example, explain when the agent should ask for missing information and when a specialist must take over.
I would avoid instructions such as “always be confident” or “resolve every ticket.” Write the intended behavior instead: acknowledge missing evidence, do not invent an eligibility decision and explain the next step without claiming a task is complete.
Precise wording is useful, but it is not a guarantee. Review the result and configure the actual permissions or workflow controls available in the product. For eesel’s Freshdesk integration, actions can be off, require approval or run automatically; instructions do not replace those settings.
3. Test the handover, not just the message
A response that says “I’m transferring you” is only text until the correct human queue receives the conversation.
Before launch, choose a case that requires a human and verify:
- The ticket reaches the intended person or group.
- The human receives the issue and what has already been tried.
- The customer gets an accurate expectation about the next response.
- The behavior still works outside business hours.
- A request for a person is not answered with another unhelpful loop.
The Freshworks setup guide explicitly says preview does not perform agent transfers for unanswered queries or human-support requests. Use preview for response review, then test delivery through an approved real-channel pilot.
For email, the current Email AI Agent guide describes reading the thread and replying to follow-up messages, subject to handover settings. Do not design your rollout around the old claim that it only answers the first email.
Test a follow-up that changes the situation: “I tried that already,” “that is a different product,” or “please let me speak to someone.” The next response reveals more than another easy first-contact question.
4. Expand only after the chosen workflow passes
Starting with Freddy Copilot can give humans a chance to review suggestions, but it is not a prerequisite for every AI Agent deployment. The native Email AI Agent also documents internal-team and custom-rule deployment options.
Choose the smallest scope that still exercises the real work. A single well-documented issue type is often more informative than launching everywhere with a lower volume cap.
| Stage | What to verify | Evidence before expanding |
|---|---|---|
| Offline examples | Answers and missing-information behavior | Reviewed outputs against approved sources |
| Approved channel pilot | Trigger, reply destination and handover | Actual tickets showing expected behavior |
| One live issue type | Quality under real variation | Corrections, customer feedback and reopens |
| Wider scope | New language, product or channel behavior | Separate tests for the added scope |
These are suggested review stages, not vendor-mandated thresholds. Set your own acceptance criteria before seeing the results. A four-week pilot that still misstates the policy is not ready merely because four weeks passed.
If two AI products run on the same helpdesk, make sure they do not both reply to the same tickets. Keep ownership clear while comparing alternatives.
5. Measure customer outcomes and review effort
A customer not reaching a human can mean the issue was solved, but it can also mean they gave up. Pair your automation metric with evidence from the conversation.
| Measure | What to inspect |
|---|---|
| Answer accuracy | Does the response match the applicable source? |
| Confirmed outcome | Was the issue resolved or merely marked resolved? |
| Customer feedback | Are negative ratings concentrated in one topic? |
| Reopens or repeat contact | Does the customer return with the same issue? |
| Handover quality | Can the human continue without asking for the whole story again? |
| Human review time | Do drafts save work after corrections are counted? |
Use the same definitions and comparable ticket types before and after launch. Do not copy an “industry median” into your target without understanding its population and measurement method.
Freshworks’ agent overview surfaces conversation and feedback information for investigation. Treat a dashboard trend as a reason to open the underlying examples, not as a substitute for doing so.
When a failure repeats, identify its cause before changing a prompt. An outdated source, a missing customer field, an action failure and poor instruction-following need different fixes. Retest the original failure and a few nearby cases so that one repair does not break an answer that previously worked.
6. Budget for the correct unit of work
Native Freddy AI sessions, Copilot seats and eesel tasks are different units.
On the current Freshdesk pricing page, Growth, Pro and Enterprise include an initial 500 AI sessions once per account; additional sessions are $49 per 100. Copilot is a separate $29-per-agent monthly add-on, billed annually, for Pro and Enterprise. Confirm your contract and product before using those numbers.
Email and chat metering also differ: the current email documentation describes a 72-hour email session and a 24-hour chat session. Neither should be treated as a per-message price.
For production, decide who monitors remaining capacity, what happens when it runs out and who can authorize further spend. Do not turn on automatic purchasing just because a best-practices article says everyone should. Choose an allowance and fallback that fit your budget and coverage needs.
For eesel, current pay-as-you-go pricing is $0.40 per regular support task, regardless of outcome. It is not “per resolved ticket.” The dashboard’s spend cap pauses new work at the limit while work already underway finishes. Review task usage and human effort together when comparing cost.
7. Review a Freshdesk rollout through eesel CLI
If you choose eesel for Freshdesk, the CLI gives your technical colleague another way to work with the support teammate. A person can run commands, scripts can collect results, and Claude Code, Cursor or Codex can drive the workflow.
The CLI operates the same agent and workspace as the dashboard. It can inspect knowledge and configuration, chat with the teammate and show its activity. It does not import Freddy’s settings or operate Freshworks’ native AI Agent.
Establish what is already configured
Use an existing eesel workspace and a designated test agent. With Node.js 18.17 or newer, replace TEST_AGENT_ID below with its ID:
npx @eesel/cli login
npx @eesel/cli whoami
npx @eesel/cli agents
npx @eesel/cli --agent TEST_AGENT_ID status
npx @eesel/cli --agent TEST_AGENT_ID integrations
npx @eesel/cli --agent TEST_AGENT_ID instructions
npx @eesel/cli --agent TEST_AGENT_ID automations
These are documented in the CLI reference. Inspect the actual output: the right workspace, the intended sources, completed downloads and any automations that are already enabled.
Freshdesk’s full connection requires a subdomain and API key entered through eesel’s secure form. Never paste the key into a command or coding-agent prompt. The integration documentation distinguishes public-help-center access from the full connection, which can also use canned responses and resolved or closed tickets. Check source toggles and optional PII redaction.
Before running chats, turn off unwanted write actions or require approval. A test agent connected to a live helpdesk is not automatically isolated.
Turn one failure into a repeatable check
Suppose a draft applied the wrong product’s warranty. Create a local text file named replacement-test-policy.txt containing this fictional test policy:
Model A has a 12-month replacement window. Model B has a 24-month replacement window. Ask which model the customer owns before stating eligibility. Proof of purchase must be reviewed by a human; do not promise an approved replacement.
Upload it only to the designated test agent:
npx @eesel/cli --agent TEST_AGENT_ID files upload ./replacement-test-policy.txt
npx @eesel/cli --agent TEST_AGENT_ID new --name "replacement-scope-check"
npx @eesel/cli --agent TEST_AGENT_ID chat "Fictional test: My device broke after 18 months. Can I get a replacement? Use replacement-test-policy.txt, identify the supporting source, and draft the next reply here. Do not create a request or send a message."
Check that the upload succeeded before judging the reply. The expected behavior is to ask for the model, not choose a window arbitrarily. Then provide Model A and Model B in separate fresh test conversations and verify the different policy windows without a promise of approval.
This is an illustrative evaluation, not a test performed for this article. new creates a conversation, not another agent. The prompt’s “do not send” wording is not the safety boundary: the previously configured action permissions are. Chat can invoke tools and run billable work.
Have a coding agent compare the outputs
Ask your coding agent to run only the approved cases for the specified eesel agent, record the source used and flag differences from the expected behavior. Require review before it edits instructions, changes knowledge or enables automation.
CLI results are structured JSON; lists return one object per line. That helps the coding agent inspect outputs without guessing from screenshots. You can also inspect the run yourself:
npx @eesel/cli --agent TEST_AGENT_ID activity
npx @eesel/cli --agent TEST_AGENT_ID approvals
npx @eesel/cli billing
A held approval is not a completed action, and billing shows current usage rather than forecasting a rollout. The CLI’s --dry-run previews a supported write call; it does not simulate answer quality.
Remove the fictional policy from the test agent after the evaluation, and never connect it to production knowledge. If a real policy needs repair, update the approved source separately and rerun the relevant cases.
Verify the Freshdesk side before expanding
For an initial eesel pilot, configure a narrowly filtered ticket automation to leave an internal note for human review. Keep customer replies off and inspect existing automations for overlap. Note creation can also require approval.
Check that your Freshdesk plan supports the webhooks eesel needs; its documentation specifically warns that Sprout/free does not support ticket triggers. Verify the note on an approved test ticket, including the trigger, destination and handover. Terminal success alone does not prove any of those.
Keep irreversible ticket merging off unless you deliberately need it. The point of a first pilot is to learn whether the teammate gives useful, correctly grounded help, not to enable every action at once.

Apply the checks before expanding automation
A good Freshdesk rollout has evidence behind its scope: the agent reads the right policy, asks when information is missing, reaches a human when needed and stays within the intended budget.
If you are comparing eesel with native Freddy, use the same cases and review criteria while checking each product’s actual configuration. Try eesel, inspect it through eesel CLI and move from reviewed examples to a narrow private-note pilot before considering automatic customer replies.
Frequently Asked Questions
What are the most important Freshdesk AI agent best practices?
Verify source coverage, write explicit operating rules, test human handover, start with a narrow scope, review answer quality and monitor usage. Do not judge success from deflection alone. The Freshdesk AI agent guide explains the product setup.
Should I deploy Freddy Copilot before an AI Agent?
It can help agents review suggestions before broader automation, but it is not a required sequence. Copilot and the customer-facing AI Agent have different behavior and licensing. Test the actual product and channel you plan to deploy. See Freshdesk agent assist.
Why is my Freshdesk AI agent giving wrong answers?
Inspect the failed conversation, source content, retrieval scope, instructions and any workflow result. Missing knowledge is one possible cause, not the only one. Check the applicable product’s knowledge-source requirements before changing settings.
Can the Freshdesk Email AI Agent answer follow-up emails?
Yes. The current Email AI Agent documentation describes context-aware follow-up replies within the same thread. Check the configured handover and turn limits rather than relying on legacy first-reply-only descriptions. See Email AI Agent setup.
How can eesel CLI help with a Freshdesk rollout?
It lets a person, script or coding agent inspect and operate the eesel teammate connected to Freshdesk. You can check sources and instructions, run bounded test conversations and review activity. It uses the same workspace as the dashboard and does not configure Freddy. See the eesel CLI reference.
Does eesel CLI dry-run test answer quality?
No. The dry-run flag previews a supported write command’s server call without sending it. Test answer quality with reviewed examples and enforce action permissions before running chats. For a human-reviewed Freshdesk pilot, use the internal-note workflow.
How should I budget for Freshdesk AI and eesel?
Separate Freshdesk licenses, Copilot seats and native AI sessions from eesel task usage. eesel’s pay-as-you-go regular support tasks cost $0.40 each and are billed regardless of outcome. Inspect actual usage and the relevant cap or session allowance. See eesel pricing.

Article by
Alicia Kirana Utomo
Kira is a writer at eesel AI with a Computer Science background and over a year of hands-on experience evaluating AI-powered customer service tools. She focuses on breaking down how helpdesk platforms and AI agents actually work so that support teams can make better buying decisions.






