Agent Tasks
What Agent Tasks Does
Agent Tasks lets you hand recurring jobs to AI agents instead of doing them yourself. You brief an agent the way you would brief a person — "every Monday morning, total last week's orders and email me the digest" — pick the tools it may use, and say when it should run. The agent plans its own steps at run time, works inside the limits you set, and stops for your approval before anything goes out to a customer.
Three words come up everywhere in this guide:
- An agent is one job you have set up: its instruction, its tools, and its trigger.
- A run is one execution of that agent. Every run leaves a step-by-step record in the Run log.
- A connector is a service an agent may use — your store, a chat channel, a spreadsheet, a marketplace, a payment provider. One connection is shared by every agent on the bot.
Agent Tasks is an add-on. After purchase the bot's card in My Products gains an Agent Tasks button, and an Agent Tasks tab appears in Configure. Without the add-on the page only shows a short description and nothing else.
Where Things Live
Open Dashboard → My Products → Agent Tasks on the bot's card. The console has five tabs:
- Overview — what needs you right now, and a table of your active agents.
- Agents — every agent, with pause, run, edit and delete.
- Library — ready-made agents you can add with one click, plus the blank builder.
- Connectors — what is built in, what is connected, and what you can connect.
- Run log — every run, its steps, its cost, and any approval it is waiting on.
The builder opens from the Agents and Library tabs and sits under Agents while you are in it.
Overview — What Needs You
The NEEDS YOU card is the one place to check. Its header counts what is waiting and how many tasks were handled this week. Three kinds of row appear:
- A held run — an agent wants to send something and is waiting for you. Review opens the run with the exact messages it proposes.
- A broken connection — a connector's access has expired and agents that use it will fail until you reconnect. Reconnect takes you to the Connectors tab.
- A draft agent — built but never deployed. Open draft takes you back to the builder.
When nothing is waiting the card says so, and you can leave the console alone: agents run on their own and only show up here when one needs a decision.
Below it, ACTIVE AGENTS lists each running agent with its schedule, the next run time, the connectors it uses, and the result of its last run.
Add an Agent from the Library
The fastest start is a ready-made agent. Open Library, filter by Customer, Support, Operation or Reporting, and press Add agent on a card. Adding from the library is free, and the agent is active immediately on the schedule shown on its card.
Some templates need a connection first. A card that reads a spreadsheet asks you to pick the file when you add it, and if no spreadsheet is connected yet it sends you to the Connectors tab. Cards that need a specific service (Shopify, Calendly, AfterShip, Stripe, HubSpot, Slack, Mailchimp, a voice number) only work once that connector is set up.
The library currently includes:
- Reporting — Weekly Sales Digest (Monday mornings), Sales Log to Sheet (every morning), Call Log Export (every evening).
- Operation — Knowledge Base Refresh (weekly), Campaign Sender (weekly), Call Round (hourly), Low Stock Alert (every morning), Marketplace Stock Audit (every morning).
- Support — Order Status Watcher (daily), Overdue Ticket Escalation (when a ticket passes its SLA), Handover Concierge (when a customer asks for a person).
- Customer — Book an Appointment, Warranty Status, Find a Store, Delivery Status, Refund Status, Back-in-Stock Waitlist. These are called by your customers from the chat; see *Let Customers Call an Agent from Chat* below.
An agent added from the library is yours to edit. Open it with Edit on the Agents tab: you can change its name, instruction, model and schedule, and add or remove tools. Removing a tool only ever narrows what the agent may do — it never widens it.
Build Your Own Agent
Press + Create agent on the Agents tab, or + Build from scratch in the Library. The builder is one page with four cards.
What it does
- Name — how it appears in lists and in approval emails.
- Instruction — the brief, up to 4,000 characters. Write it the way you would write to a member of staff: what to look at, what to do, what never to do. The agent plans its own steps from this and stops at your guardrails.
- Model — Fast for short lookups and routine replies, Balanced for multi-step work with tool calls (the default), Deep for long reasoning where mistakes are expensive. Deeper models cost more per run.
Tools it may use
Tools are grouped into what the agent may do, what it may read, and what it may write to. Press + Add in each group. Anything that needs a connection you have not made yet is marked CONNECT FIRST; anything not available on the platform yet is marked COMING SOON.
Actions it may take:
- Message — send into conversations on your connected chat channels. Every message is held for your approval. With more than one channel connected, pick the channel on the card or leave it as *Any channel*.
- Email — send from your connected mailbox to any address. Every email is held for your approval. Reports to your own inbox need no setup at all.
- Phone — place outbound calls from your voice number. Every call is held for your approval and capped at 15 minutes. Needs the Voice channel and a number.
- A connector's API — one entry per connected service. The agent composes the calls; the credentials stay on the server and are never visible to it.
- Crawler — fetch and read public web pages named in the brief.
- Web search — search the web for fresh information.
- Call an API — call an API on hosts you list on the card, with an optional key. The key is stored with the agent and injected by the platform; the agent never reads it.
- MCP tools — use the tools of an MCP server whose address you enter on the card.
Data sources it may read: your store (Shopify, WordPress or Wix orders and store facts, read only), conversation transcripts, the chatbot's knowledge base, knowledge upkeep (refresh the knowledge base from your site and read its health), the helpdesk agent's internal knowledge, a spreadsheet you pick on the card, and the agent's own memory from earlier runs.
Data stores it may write to: a spreadsheet you pick on the card, and agent memory — the agent's own notes between runs, such as who has already been contacted.
Each spreadsheet card pins its own file. Google Sheets opens the Google file picker; Microsoft Excel opens a list of the workbooks in your connected OneDrive. The agent reads and writes only the file you pick.
When it runs
- On a schedule — every hour, every day, weekdays, weekends, weekly or monthly, at the hour and timezone you pick. A green line under the picker shows the result in plain words.
- On an event — chat events (handover requested, abuse detected, no answer found), helpdesk events (new ticket, needs approval, needs attention, reopened, past SLA), store events (new order, order refunded, order cancelled, and on Wix also cart abandoned and low stock), or On webhook. Choosing the webhook gives the agent its own URL, shown on its card, that any system can POST to.
- When a customer asks in chat — the customer starts the agent from a conversation. See the next section.
- Manually only — no schedule and no events. You press Run now on the Agents tab.
Guardrails
Two guardrails are always on: customer messages are held for your approval, and a run stops if its spend passes the per-run cap (currently $2.00). They are shown on the card so you know they are there.
Test run and deploy
For an agent built from a brief, Test run executes the plan without sending anything and shows you what it would have done, labelled *Test preview — nothing was sent*. Test runs are charged like real runs. When you are happy, Deploy agent makes it active; an active agent that you re-compile gets Deploy update. Compiling from a brief costs only what the model costs to compile it; there is no fee for building an agent.
After a compile, a green banner reads *Compiled. Here is what this agent will do* followed by the plan in plain language. Read it before deploying.
Let Customers Call an Agent from Chat
Set When it runs to When a customer asks in chat and the builder shows a small contract:
- Tool name — what the chat AI calls internally. Customers never see it.
- When to use it — one sentence telling the chat AI when this task applies. Write it like an instruction to staff.
- Inputs the customer may provide — up to five, each with a name, a type (text, number, yes/no), a description and whether it is required.
- Runs per customer — how many times one customer may start this task in 24 hours, from 1 to 10. The default is 3.
- Data scope — an instruction added to every step of a customer-called run about what the agent may and may not repeat.
The agent needs the Message action, or it has no way to answer.
Two things to understand before publishing. First, anything a task can read, it can repeat to the customer who called it. The data scope is an instruction to the AI, not a security boundary — do not grant a customer-facing task data it should never show. What stands behind it: every answer a customer-called task produces is checked by a leak screen against the customer's request and your data scope before the chat delivers it. An answer that gives the customer their own booking time goes out; one that lists your calendar, quotes your notes, or names another customer stops as a held run — the customer is told the store team is reviewing it, and your approve or reject in Run history decides whether it is delivered or closed. Customer-called tasks also cannot use the Crawler or Web search, keep their memory separate per customer, and can only email the customer who asked or you. Second, each run spends your credits, bounded by the per-customer limit. A customer who has used up their allowance is told the task is not available right now; they are never told anything about your balance.
Who counts as a customer: on messaging channels (WhatsApp, Telegram, LINE, Messenger, Instagram, Discord) the customer's own account is their identity and no sign-in is needed. On your website the visitor must be signed in; anonymous visitors are asked to log in first. WordPress and the Shopify app handle this automatically. Any other site needs the Identity signing secret shown on the Agent Tasks tab in Configure, which is a one-off job for whoever built the site.
Deploying the agent is what publishes it. Pausing it on the Agents tab unpublishes it. The Configure tab lists your chat-callable agents but is not a second switch.
Connectors
Open Connectors. The top row, BUILT IN, is what every agent already has with no setup: your store platform (Shopify, WordPress or Wix, detected automatically), the Chatbot (reply on any channel), Bot Knowledge, Email you (reports to your inbox only), Agent memory, and Conversations.
Below it, the CONNECTOR LIBRARY lists every service you can add, filtered by Channels, Social, Marketplaces, Helpdesks, Payments, CRM, Marketing and Productivity. Each card connects in one of four ways:
- Connect — a sign-in with the provider. Approve the request and you are back in the console; nothing to copy. Used by Google Sheets, Microsoft Excel, Slack, Notion, the calendars, Calendly, Stripe, Square, Squarespace, Mailchimp, Klaviyo, Attentive, HubSpot, Zoho, Salesforce, Judge.me, the Google family, the Meta family, X, TikTok, YouTube and the marketplaces. Two of these ask for one thing first: Judge.me wants your shop domain, and WooCommerce wants your store URL, because the approval screen lives on your own store.
- Connect with a key — you paste credentials from the provider's own dashboard. The form opens with a Get your key link to the right page and a one-line path to follow once you are signed in there. Used by PayPal, AfterShip, ShipStation, Shippo, Rakuten, Resend, Mailtrap, Twilio, Vonage, Telnyx, Loox and Microsoft Clarity. Apple Calendar is the same form with a different label, Connect with account, because it takes your Apple ID and an app-specific password rather than a key. Keys are sealed at rest like every other credential.
- Connected via your bot — chat channels (Telegram, WhatsApp, Discord, Voice, LINE, Messenger, Instagram) and helpdesks (Zendesk, Gorgias, Freshdesk, Help Scout) come from the bot's own setup. If one is not set up yet, Connect opens the same setup form the Channels tab uses.
- Coming soon — the connector exists but is not switched on for the platform yet. See *Why a Card Says "Coming soon"* below.
One connection serves every agent on the bot. Disconnect removes our stored access and, where the provider supports it, revokes it on their side as well.
When a provider's access expires, the card changes to Reconnect — connection expired, the Overview flags it, and agents that depend on it are paused automatically with the reason shown on their row. Reconnecting resumes them.
A few connectors have their own quirks, and the form's hint spells them out: Rakuten's license key renews roughly every 90 days; PayPal's Transaction Search can take up to nine hours to become active after you enable it; Mailtrap pins one stream per connection; Twilio accepts either an API key or the account's auth token; Loox needs a paid Loox plan; Resend can only send from a domain verified in your own Resend account; a Squarespace connection that no agent has used for a week has to be reconnected.
Approvals and Held Runs
Whenever an agent wants to send a message, an email or a call to a customer, the run stops before sending and is marked HELD. You get an email with the subject *Agent "…" is waiting for your approval*, and the run appears in NEEDS YOU.
Open it in the Run log. The step timeline ends in an amber block for each proposed write: who it goes to, the subject where there is one, and the first part of the body. Approve & send sends everything in the run; Reject discards it. Approval is all or nothing — there is no picking individual messages.
A held run waits seven days. If you have not decided by then it expires, and the agent does not start new scheduled runs while a decision is pending. Two destinations never hold: a report to your own inbox, and a spreadsheet you picked yourself. Those are trusted, so reporting agents run unattended from day one.
The Run Log
Every run lands in Run log, newest first, filterable by All, Failed and Held. Each row shows the agent, when it ran and what triggered it (schedule, event, manual, test, a customer's chat request, or an approval), how long it took, and the result. Export CSV downloads the list.
Select a run to see its steps on the right: each step in plain words, the tool it used, how long it took, and any error. Held runs show the proposed writes with the approve and reject buttons. Phone runs list each call with a link to its transcript. Test runs show the preview panel.
Result badges: DONE finished; FAILED stopped on an error, shown on the row; HELD waiting for you; KILLED stopped by you or by the system, with the reason; RUNNING, QUEUED and APPLYING are in progress.
Managing Agents
On the Agents tab each row has a toggle to pause or resume, Run now, Edit, and a ⋯ menu with Duplicate and Delete.
- Pause stops the schedule and, for a chat-callable agent, unpublishes it. Turning it back on resumes the schedule.
- Run now starts a run immediately. Only one run per agent is in flight at a time; if one is still open, Run now waits.
- Edit opens the builder. Changes take effect from the next run. Changing an agent's connectors rewrites its brief for the new service, and that rewrite is charged like any model call.
- Duplicate makes a copy, free.
- Delete asks twice. It erases the agent, its versions, its run history and its memory. Conversations and your billing history stay. An agent with a run in flight cannot be deleted until it finishes.
An agent that was paused automatically because a connector expired tells you so on its row. Reconnect to resume it, or press the toggle to resume anyway.
What It Costs
Everything is drawn from the same credit balance as the rest of the platform, and the numbers below are current at the time of writing.
- Adding from the library, duplicating, editing, and changing a schedule — free.
- Compiling from a brief — the model's cost to compile it, nothing on top.
- A run — the model calls it makes, plus a small compute charge that is a fraction of a cent even for a heavy run. Test runs and approval runs are charged the same way. A run stops if it passes the per-run cap, currently $2.00.
- Web search — currently 0.01 credits per query.
- X (Twitter) — X charges per API call, and that is passed through at twice their rate: currently 0.01 credits per read and 0.03 per write.
- Every other connector call — no per-call fee.
Each agent's month-to-date spend is on its row in the Agents tab, and each run's cost is in the Run log. If the balance is empty, compiles are refused and runs fail with *no_credits*; a customer who tries a chat task is simply told it is not available. Runs that fail because of a platform fault are credited back automatically.
Limits Worth Knowing
- 30 agents per bot. Archive or delete one to make room.
- One run in flight per agent at a time.
- A run stops itself when it is going nowhere: the same call with the same arguments three times, or four actions in a row that are refused or fail. It closes as failed and the Run log says which call it was stuck on.
- Chat-callable tasks: 1 to 10 runs per customer per 24 hours, set per agent.
- Webhook-triggered agents: ten open runs queued at most; further posts are refused until one finishes. Request bodies are cut off after 4 KB — anything past that is not passed to the agent.
- Phone calls: 15 minutes each.
- A run is stopped after about 15 minutes.
- A knowledge base refresh: once per agent per 24 hours.
If one of these gets in the way of real work, write to [email protected] and tell us which limit you are hitting and what you are trying to do. They are shapes of the system rather than a ration, and we would rather hear the case than have you work around it.
Privacy and Retention
Agents never hold your credentials — connector calls go through the platform, which adds the credentials on the way out. The step record you see is written after personal data has been masked, and raw pages or API responses an agent fetched are not kept. The detailed audit of connector calls is purged after 90 days. The proposed messages in a held run are deleted the moment you approve or reject it, or when it expires; test-run previews are kept for 24 hours so you can look at them.
For customer-called tasks, remember that the agent will repeat what it can read. Scope those agents narrowly.
Why a Card Says "Coming soon"
A Coming soon button on a connector means the code is ready but the provider has not yet approved our app, or the connection has not been switched on for the platform. Some providers review every app that asks for access; Google, for example, reviews apps that read calendars, analytics or YouTube comments, and Meta reviews apps that manage ads or pages. Until a review passes you may see a warning screen from the provider during connect, or the card stays on Coming soon. Nothing on your side unblocks this; the card changes to Connect the moment it is live, with no update needed.
Quick Fixes
- The card still says "Connect" but I am sure it is connected — for chat channels, the connection comes from the bot's own setup; check Configure → Channels. If the channel is live there, refresh the console.
- Connect sends me to the provider and back with an error — the most common cause is a provider-side setting that has not caught up yet. Try once more after a minute; if it persists, contact support with the provider name.
- My agent is paused and I did not pause it — a connector it uses expired. The row says which one. Reconnect on the Connectors tab.
- The agent ran but nothing was sent — look in the Run log. It is most likely HELD and waiting for your approval, or the run hit the "ask me before sending to more than N people" guardrail and the rest are waiting there.
- A customer says the chat task "isn't available" — they have used their allowance for the day, the agent is paused, or the balance is empty.
- I want to see the code — there is none to see. The plan shown after a compile and the step record after a run are the whole story.