Nine AI subagents handle the day-to-day of a pet brand's Amazon business.
A Sydney pet brand was running its Amazon business on data spread across Seller Central, the ads console, Xero and Notion, and the owner did all the analysis by hand. We built an orchestrator agent with nine specialist subagents that watch sales, stock, ads and margins and answer questions in Slack. They handle the routine work inside limits the owner set, and anything outside those limits waits for approval. A briefing is waiting in Slack every morning at 9am.
The problem
Running an Amazon business well means pulling ad performance, inventory, settlements and reviews out of different places and then working out what they mean. Is this campaign making money or slowly losing it? Will that product run out before the next shipment arrives?
None of these questions is hard on its own, but answering each one from scratch every week added up to about 15 hours of the owner's time. The expensive problems rarely announce themselves either. A product could sell out on one sales channel while another still had stock, and with no time to watch every channel, the team often found out too late to reorder. Customers kept ordering items that weren't there, so orders had to be cancelled and refunded.
What we built
The system is one orchestrator agent, called the CEO in the diagram, with nine specialist subagents. The CEO routes each request and merges the answers, while the subagents cover ads and bids, stock and reorder timing, margins and the books, and competitor pricing and reviews. Four of the subagents run as separate processes with their own context. The other five run inline, which means the CEO loads that role's instructions and does the job itself before going back to routing. The big calls go to a decision council, where AI reviewers argue the case for and against before the owner decides. Two small pieces of plain code sit alongside them: a Slack listener that's always on and a tool that sends review-request emails. Under the hood it's deliberately unexciting, because Claude does the reading and reasoning and n8n runs the schedule, with connectors into Amazon, Xero, Notion and Slack.
Secrets are injected fresh on every run; scheduling runs on n8n.
Bull, Bear, Balanced, then a chair.
Every agent checks memory before any API call. About 78% fewer external calls.
Four subagents run separately and in parallel: Scout, Meta, PPC and Marketing. The other five cover finance, inventory, market intelligence, reviews and the books, and they run inline inside the CEO.
Each request goes to one subagent. The 9am briefing sends one request to each relevant subagent and merges the answers into a single report.
It runs on a schedule and on demand. The 9am briefing and an hourly health scan run on their own, and the owner can ask a question in Slack at any time.
A shared memory layer tracks how old each piece of data is, so subagents reuse fresh data instead of fetching it again. That cut calls to outside services by about 78 percent.
It connects to Amazon's seller and ads APIs, Xero, Notion and Slack, and its keys are injected fresh on every run.
Decisions run in tiers. Small actions, such as a bid change under a cap or a bookkeeping entry under a set amount, run on their own and get logged so they can be reversed. Medium ones go to Slack for approval, and the big calls go to the decision council, which weighs the case for and against and sends the owner a recommendation to decide on.
How we rolled it out
Built over about 14 weeks and live since April 2026.
- I
Mapped the week
We listed every check the owner ran in a normal week with the time each one took. That came to about 15 hours, and the list became the brief for the subagents.
- II
Piloted one at a time
Each subagent ran on its own first, in a silo next to the owner's usual routine, so we could check its results against the owner's before trusting it. We added the next one only once the last one held up.
- III
Tried to break it
We reviewed every prompt and ran adversarial tests that fed the system misleading and hostile inputs, then fixed whatever got through.
- IV
Connected and set the limits
Only then did we connect the subagents through the CEO and agree with the owner which actions the system may take on its own and how big they can be.
- V
Kept it running
The owner owns the accounts and the code. We step in when a monitoring alarm fires or the results start to drift, and otherwise we do a full check every two months. When a newer Claude model comes out, we re-test it on the owner's real work before switching.
Safeguards and costs
What needs a person
Anything over the owner's limits waits for approval in Slack, including bookkeeping entries over a set amount. Once a month a subagent checks that everything is filed correctly, and the owner takes a quick look.
If something breaks
A dashboard shows every run, and a failure sends an alert by email and to Slack. If a data source goes down, the system falls back to its last good data. The owner can pause it with one switch, and it stops itself if errors or spend cross a set limit.
What it can reach
The four separate subagents reach only the tools and data their jobs need, and the CEO holds the access for the five inline roles. The API keys are kept apart from the prompts and code.
What it costs
Most of the bill is AI usage, and the memory layer and the five inline roles keep it down. We set a monthly budget with the owner during the build: an alert goes out at 80% of it, and a hard cap at 150% stops a spike from running up the bill. Our monitoring and support sit in a separate monthly retainer.
What we had to figure out
Not every specialist needs its own agent
A separate subagent starts from scratch and pays for its own tokens.
Anthropic's engineering team measured multi-agent setups at about 15 times the tokens of a normal chat.
So only the heavy, independent jobs get their own subagent: Scout, Meta, PPC and Marketing.
Finance, inventory, market, reviews and bookkeeping share the same numbers, so they run inside the CEO as plain instruction files. Changing a role means editing a file.
Amazon data lives in many places and refreshes on its own schedule
Ad data, inventory, settlements and reviews all update at their own pace, so the subagents had to know when their data was fresh enough to act on. We built a memory layer that tracks the age of each source and decides whether to reuse it or fetch it again, which cut outside calls right down and made answers quicker.
The first briefings read like a raw dashboard dump
Early versions listed the numbers accurately and stopped there, so the owner still had to work out whether each one mattered. Now each subagent explains what its numbers mean and recommends an action.
Running it unsupervised took most of the work
Building each subagent was quick. Most of the effort went into making the whole system dependable enough to run every day with nobody watching. That meant error handling, freshness checks, Slack alerts when something fails and a backup copy of memory on disk if the database is down.
The result
The system took over about 15 hours a week of routine work. The owner spends about 2 of those reading briefings and approving decisions.
Stock is checked on every channel each hour, so fewer orders get cancelled for missing stock. The monthly filing check means fewer bookkeeping corrections.
Sales, stock, ad spend and margins in one Slack message, with a recommended action where one is needed.
Most questions about the business get an answer within a few minutes, from the latest data.
The full cost of every tool, at launch prices.
Live since April 2026. The drop in outside calls comes from the live system. The running cost is our estimate at April 2026 prices, and time saved is our estimate from the tasks the system took over, checked with the owner.
Most days I read one Slack summary in the morning and approve two or three things. If I have questions, I get an answer within a few minutes.
Talk through a problem like this one.
A free intro call. We'll show you where your hours are and what they're worth.