ServicesAgents

Agents that do the work

Software that works through a task step by step, calls your tools, and hands the case to a person when it should.

Good forTasks people repeat many times a day across several systems.

Often paired withSearch over your documents, and evals and monitoring.

Start a project

What it is

An agent is a language model with a job, a set of tools and a set of rules.

It reads a request, decides which tool to call, looks at the result and decides the next step, until the task is done. A tool can be anything with an API: your order system, your CRM, a calendar, a search index, a payment provider.

Getting an agent to act is easy. Getting it to act only when it should, to stop when it is stuck, and to leave a record a person can follow is the real work, and it is where we spend most of our time.

Typical uses

Tasks people repeat many times a day, across several systems.

  • Triage of incoming tickets or emails: read, classify, look up the customer, then route or answer
  • Order and account questions that need a lookup in two or three systems
  • Preparing a case for a person: collecting documents, filling in a form, writing a summary
  • Back-office checks, such as matching an invoice against its order and flagging differences
  • Internal assistants that can search, file and update, not only answer
  • Scheduled jobs that read new data each morning and report what changed

We usually start with a narrow agent that does one task from start to end. Then we widen what it may do, as the tests and the logs earn your trust.

What you get

An agent you can read, audit and switch off.

The agent

Its code, its tool definitions and its rules, kept as files in your repository and reviewed like any other code.

The guard rails

Permissions per tool, limits on how many steps and how much money, and approval steps for anything risky.

The record

An audit trail of every step: the input, each tool call, each result and each decision, with the reason given.

The tests

Scenarios for the happy path and the bad ones: tool errors, missing data, unclear requests and attempts to misuse it.

Only the lines on the board

An operator could connect any call, but only to the lines on the board.

An agent works the same way. It reaches only the tools we give it, with the permissions we set, and every connection it makes is written down.

Every step on the record

This is the kind of log our agents keep for each task. Your team can read it from top to bottom: what came in, what the agent did, and where it stopped to ask a person.

Next to it is the list of tools the agent may use, and which of them need a person’s approval.

Task 4812Refund request

Task 4812: refund request

  1. 09:14:02Read the email. A customer reports a damaged item.
  2. 09:14:03orders.lookup for order 10577. Found, delivered three days ago.
  3. 09:14:05policy.search for “damaged on arrival”. Refund allowed within 14 days.
  4. 09:14:06Drafted a refund of €42.90 and a reply to the customer.
  5. 09:14:06Handed to a person. Refunds over €25 need approval. Sent to the support queue with the draft.
Tools4 tools

Tools this agent may use

ToolAccessNeeds approval
orders.lookupReadNo
policy.searchReadNo
refunds.createWriteAbove €25
email.sendWriteAlways, for now

An example. The task, the tools and the amounts are made up for this page.

What can go wrong

An agent that acts can also act wrongly. These are the failures we design against before it touches anything real.

How we test

The wrong action

The agent misreads a request and acts on it. We split reading from writing, put approvals on risky actions, and run new agents in a mode where they only propose.

  • Read and write split
  • Approval steps
  • Dry runs

Endless loops

The agent keeps trying the same thing. We cap the number of steps, the time and the spend per task, and give it a clear way to give up.

  • Step limits
  • Timeouts
  • A clear failed state

Broken tools

An API fails or returns something odd. We check every tool result before the agent uses it, retry with care, and stop safely when the data looks wrong.

  • Result checks
  • Retries with backoff
  • Safe stop

Too much power

The agent holds keys that can do more than its job needs. We give each tool its own narrow credentials and test in a separate environment.

  • Least privilege
  • Scoped keys
  • Test environment

Nobody notices

The agent fails quietly for days. We alert on failure rates, send a daily summary, and have a person review a sample of finished tasks.

  • Failure alerts
  • Daily summary
  • Sampled review

Trust, step by step

We widen what an agent may do in stages. Each stage ends with numbers you can check before the next one starts.

At every stage there is one switch that turns the agent off, and your team keeps working as before.

Shadow mode

The agent runs beside your teamno actions

Its proposals compared with what people diddaily

Assisted

The agent drafts, a person approvesevery action

Approvals and corrections trackedweekly

Trusted for some cases

Low-risk actions run on their ownby rule

Everything else goes to a personwith context

An agent you can audit, widen and switch offstage by stage

Questions

All questions

Will the agent replace our team? No. It takes over the repetitive steps: the lookups, the copying between systems, the first draft. People keep the decisions and the cases that need judgement, and they get them with the facts already collected.

Which agent framework do you use? Often none. Many agents are clearest as plain code around a model’s tool calling. When a framework earns its place, for example for long tasks that must survive a restart, we use one and explain why.

Our systems have no API. Can an agent still use them? Sometimes. It can read a database, work with exported files, or call a small API we build in front of the old system. We avoid agents that click through screens, because they break when the screen changes.

How do we stop it? With one switch for the whole agent and one per tool. Turning it off sends new work back to your team, and nothing in progress is left half done.

What does each task cost? We estimate it before we build, from the steps a typical task takes. After launch, the cost of every task is in its log, and limits stop any task that runs over.

Is it safe to give it write access? Only after it has earned it. An agent starts in shadow mode, moves to drafts that a person approves, and acts alone only on the low-risk cases you choose.

Have a task in mind?

Describe a task your team repeats every day. We will tell you whether an agent can take it on, and how we would start.

A few lines are enough. We reply within one working day.

Start a project