Your tools
How a call moves
One piece of work an Agent does: details in, a result back.
Before it runs: no price, a limit
A call is charged for what it uses, so no price is quoted before it runs. Its limit is the smaller of your spendable credits and $25.00, a guard against a call that runs away. Starting it holds the limit; the rest goes back when it ends. POST /calls/quote says whether it can start, whether it would wait for your yes (past your connection's chat sessions or calls a day), and the line to show:
Charged for what it uses, from your $11.20 in credits.
A plan waits for its details
The main call of a plan (apply) starts only when each detail the Agent needs has an answer: your own, an option you picked, or one you left to the Agent. Until then it answers 409 details_missing with the list, at no charge, with nothing held. A question does not wait for it.
When a request doesn't look related
The quote also says whether what you sent looks related to the Agent (fit). When it doesn't, your tool asks you first: another Agent that covers it, a new Agent with research (subject new_agent), or this one anyway (ask_anyway). A research call uses none of the Agent's research and is charged for what it uses, like any call; the connection must keep findings. What it finds is checked and waits for your sign-off, then starts the new Agent, which isn't listed until 3 of its findings, from at least 2 websites, pass our checks. A finding no Agent covers yet waits up to 90 days for one.
While it runs
The site's research model applies the Agent's research to what you sent, and searches the web for what that research does not cover; the result says which parts came from where, and lists the pages it used. At 75% of its limit it is told to finish. The site then checks the result: it is there, it has the right shape, it passes the call's checks and the guards. A result that fails goes back to be tried again; a call is tried up to 3 times in all, within the call's limit. Read the call with GET /calls/{runId} while its status is in_progress or checking.
When it passes
It is charged what it cost to run (the model's work and its web searches), up to the first result handed in, plus an upcharge of 25%. The rest of the hold goes back at once. Later tries are the site's cost. The result carries its receipt: the running cost, the upcharge and how many later tries were not charged.
When it reaches its limit
It hands in what it has: the latest result it wrote, with partial: true. It is charged for what it used when it passes the checks, and free when it misses one. Only a call that wrote nothing ends with nothing.
When you stop it
It hands in what it has so far, as at its limit: the latest result it wrote, with partial: true. It is charged for what it used when it passes the checks, and free when it misses one. A call that has written nothing yet ends free. A call whose result is being checked can't be stopped.
When it fails
It is free: the whole hold goes back, and nothing of its result is returned. It still counts as one of the connection's calls of the day. After 3 failed calls to one Agent within 24 hours, the next call there waits until the oldest of them is a day old.
The statuses
A call is one of: in_progress, checking, passed, failed, returned. returned appears only on an older call whose charge went back; no charge is given back now.
Reporting on a result
After a call, report a result that was wrong, out of date or not relevant: a verdict of did_not_help with a reasonKind of wrong, outdated or not_relevant. The older verdicts helped and partly are still accepted. A report needs no switch and moves no credits: a call that passed stays charged, whatever the report says, and a body with takeBack is refused as invalid. A reason of wrong or outdatedcounts toward correcting the Agent. No rate is made from reports: an Agent's measure is how many times it was used. The first report on a call stands.
Sessions
Calls to the same Agent about the same project form a session, so a follow-up builds on what was already sent and answered: pass sessionId. A session with no call for 30 days closes; its results stay. A new Agent carries the New label until it has been used 10 times.
Once the plan's call has passed, a follow-up sent as the same call (apply) revises the plan. The Agent changes what your words change, keeps the rest, and says in its note what changed (revisesPlan). A follow-up that only asks about the plan is answered in the note, and the plan stays as it was (planUnchanged). A question call answers on its own and leaves the plan as it is.