The website was step one. The agents run the business.

JustCopy.ai builds a small business its website from a plain-language description. The next thing the owner does is launch agents to run that business: one that answers customers now, one that works in the background every day. JustCopy uses oncell as the runtime for both, one agent per business, metered per business, and getting better from its own conversations.

30k
JustCopy users
100k
projects built
1s
to a working instant app
$0.0006
per customer conversation on oncell

The customer

JustCopy sells to people who do not write code and do not want to: restaurant owners, salons, clinics, tradespeople, coaches, small online stores. They type what they want, watch a page appear, and publish it on their own domain. Three engines sit behind that: instant prebuilt apps chosen by a classifier, an archetype engine that fills designed templates in seconds, and a general coding agent for everything else. Plans run from $9.99 to $49.99 a month, priced by how many things a customer can ask for per day.

Two facts about this customer shape everything below. They will never see infrastructure, so the runtime has to disappear completely. And every one of them is a separate tenant with a separate budget, so cost has to be known per business, not per platform.

From “build my website” to “run my business”

Every JustCopy website already ends in a form: a table reservation, an appointment request, a free-trial booking. That form is a front desk rendered as HTML. The owner’s next request is the same description with a verb: “answer my customers and book them,” “follow up with everyone who asked for a quote.” JustCopy turns the description into an agent the way it turns one into a page. oncell is what makes that agent run, remember, wake up on a schedule, and stay accountable.

Two kinds of agents, one agent runtime

answers customers
Sync. Lives on the website and in the inbox. A customer asks, the agent replies in about a second, and the reply is a run with a cost and a log. Port Orchard Bakery's front desk below is one of these.
works in the background
Async. Wakes on a schedule the owner never has to keep alive: every morning, review yesterday's inquiries, draft the follow-ups, flag what needs the owner. On oncell a schedule is a durable intent the runtime owns; the agent parks at no cost between wakes and resumes on whatever host is alive.
JustCopy owns
The website, the customer, and the description. Sign-up, billing, the studio that built the site, and the template that turns "answer my customers and take cake orders" into an agent's instructions.
oncell owns
Everything after Launch. Isolated compute per business, memory, the model gateway, schedules, the run log, cost metering, evals, versions. JustCopy calls one API to deploy, one to chat, one to run.
the business sees
Agents that run the business. One answers on the site and in the inbox; one wakes up every morning and does the follow-ups. Never a console, never a key.

The flow, end to end

Sequence matters here: everything after step four happens on oncell, and JustCopy never provisions a thing.

  1. The website exists. JustCopy built it from a description. Its booking form is the only front desk the business has.
  2. Launch. On the project card the owner presses Launch an agent, picks "answers customers now" or "works in the background," and types one sentence about the job.
  3. Build. JustCopy writes a brief from the website's own facts with one model call, then generates a one-file oncell agent: instructions, model, a chat handler, and for background agents a run task plus a daily schedule.
  4. Deploy. One call to the deploy endpoint under a name that carries the customer id, with a $1 per day budget. oncell stores version one and assigns the cell. Nothing else is provisioned.
  5. Run, sync. A customer's question goes to the chat task. The cell wakes, the model call goes through oncell's gateway where it is metered and logged, and the reply comes back in about a second with its cost and run id.
  6. Run, async. The daily schedule is a durable wake owned by the runtime. The agent parks at no cost between wakes. Run now invokes the same task by hand.
  7. Watch. JustCopy reads run history per agent and shows the owner recent conversations and runs. Every run is a full trace on oncell, so a disputed reply is a run id away.
  8. Evaluate. A bad run, like the plumber's invented price below, is promoted into that agent's evals. A template change ships only after the eval set passes.
  9. Version and roll back. Every template improvement redeploys the customer's agent as a new version. If the evals regress, rollback is one call, and JustCopy never touches the customer's cell.
  10. Improve. The same evals on two models decide the cheapest one that still passes. The run log is the trajectory set for a small model of JustCopy's own later.

Every oncell feature, and what JustCopy does with it

FeatureHow JustCopy uses itStatus
deployOne file per business, deployed under a name that carries the customer id. The tenant boundary is the name.live
cellsOne isolated cell per business. A bakery's memory and files are unreadable to a dental practice's agent.live
chatThe sync kind: the front desk that answers on the website and in the inbox.live
tasksThe async kind: a run task the owner can trigger with Run now.live
scheduleA daily wake the runtime owns. The agent costs nothing between wakes.live
model gatewayEvery model call is metered at the boundary and priced per business, on claude-haiku by default.live
budgets$1 per day per business, enforced below the model, set at deploy time from the customer's plan.live
run logRecent conversations and runs on the JustCopy agent page, with cost and latency under each reply.live
traceThe full record of a run, used when a customer disputes what the agent said.live
evalsPromoted production runs plus a starter set per template: hours, prices, tone, cost.next
versions and rollbackEach template improvement is a new version of every affected agent; regressions roll back in one call.next
memoryThe front desk remembers Rosa's order tomorrow.next
forkStage a template change on a copy of one customer's agent before it reaches the rest.next
approvalsThe background agent asks the owner before sending a follow-up that quotes a price.next

Live means exercised against api.oncell.ai from JustCopy’s code on September 4, 2026. Next means the oncell primitive exists and the JustCopy side is on the list below.

Three businesses, live on oncell today

These are real agents deployed under JustCopy’s oncell account during this study, one per business, each from a description a JustCopy customer would actually type. The replies below are verbatim, with what each one cost.

Port Orchard Bakery · front desk

customer

I need a birthday cake for Saturday for 12 people, chocolate, says Happy Birthday Mia. I'm Rosa, 360-555-0199

agent

Perfect! Let me confirm your order: Rosa, phone 360-555-0199, chocolate cake for 12 people with "Happy Birthday Mia" on it, picking up Saturday. Custom cakes need 48 hours notice, so we're all set. Is there anything else you'd like on it?

$0.00065 · claude-haiku · 1.1 s
customer

are you open monday morning?

agent

We're closed Sundays and Mondays, but we'd love to see you Tuesday through Saturday from 7am to 3pm!

$0.00041

Cascade Dental · scheduling

customer

my crown fell off last night, can someone see me today?

agent

I'm sorry to hear your crown fell off. Yes, we can help you today. Since you're calling about an emergency, if you call (425) 555-0177 by 9am we can see you before noon. Can I get your name and phone number, and are you an existing patient?

$0.00098

Summit Plumbing · follow-up

customer

water is pouring out from under my kitchen sink what do I do

agent

Okay, let's get this handled right away. First thing: shut off the water at your main valve. It's usually near the street or in your basement. Then give me your address and I'll get a truck dispatched.

$0.00056

The moment the runtime earned its keep

Mike asked Summit Plumbing’s agent how much a 40-gallon water heater costs. The agent answered “$1,200 to $1,800.” That number is not in the business’s instructions; the model made it up. On a plumber’s website that is a real liability.

On oncell the conversation was already a run in the log. It was promoted into the agent’s evals as a case with one rule: never invent a price, offer the free estimate. The agent now has seven evals, two of them from its own production conversations, and every future change to Summit Plumbing’s agent is scored against them before it ships.

Summit Plumbing’s evals

CaseSourceChecksLatest
leak-says-shut-off-valveagentreply mentions the main valvepass
no-invented-pricesagentjudge: no dollar figure for the replacement; offers the estimatepass
after-hours-rate-mentionedagent11pm request mentions the after-hours ratepass
plain-dispatcher-toneagentjudge: short, plain, asks for booking detailsfail
cost-ceilingagentreply costs under $0.002pass
prod-water-heater-quotepromotedjudge: no invented pricepass
prod-kitchen-leakpromotedmain valve + cost under $0.002pass

6 of 7 passing on claude-haiku, average $0.0007 per reply, 1.8 s. The one failing case is a tone rubric judged by a model; it is the kind of regression a business owner never sees but a platform should. How promotion works is in the docs under Promoting a production run.

The per-customer cost of AI agents: what JustCopy gets per business

cost per business
Every model call is metered at the runtime boundary and attributed to the agent, so JustCopy knows what each customer's agent cost this month. At $0.0006 per conversation, a $9.99 plan covers about 16,000 conversations before the model bill matters.
isolation
One agent per business in its own cell. A bakery's memory and files cannot be read by a dental practice's agent.
audit trail
The run log records the prompt in, each model call, and the reply, per business. When a customer disputes what the agent said, JustCopy can show the exact run.
change control
Template changes are scored first. When JustCopy improves its bakery template, the change is scored against every bakery's evals before it rolls out. Versions are kept; rollback is one call.
improvement
Every conversation is a trajectory and every eval is a reward. The same agent on two models, same pass rate, three times the cost, is a decision JustCopy makes on evidence. Post-training a small model on JustCopy's own conversations is the next step, and it needs nothing JustCopy does not already have on oncell.

How it plugs in

JustCopy already has most of this. Its restaurant, clinic, and studio templates all end in a booking form, which is a front desk rendered as static HTML. It already has a per-user agents table and a working agent chat page. What was missing was a runtime. The integration is one backend route file, a Launch an agent button on every website project, and one agent page: a chat thread for agents that answer customers, a Run now button and run history for agents that work in the background. No new infrastructure, no per-customer keys: JustCopy’s one oncell key deploys every agent under a name that carries the customer id, so the tenant boundary is the name.

The owner says what the agent should handle; JustCopy fills in the business from the website it already built and turns that into the agent’s instructions, exactly the way its archetype engine turns a description into a page today. A background agent gets one extra line in its source, a daily schedule that oncell owns. Then the calls:

POST https://api.oncell.ai/api/v1/deploy
Authorization: Bearer $ONCELL_API_KEY
{ "agentName": "jc-<customer>-front-desk",
  "source": "<generated agent file>",
  "manifest": { "identity": { "instructions": "...", "model": "claude-haiku",
                              "budgets": { "perDayCents": 100 } } } }

POST https://api.oncell.ai/api/v1/agents/jc-<customer>-front-desk/chat
{ "message": "are you open monday morning?" }
→ { "text": "We're closed Sundays and Mondays...", "cost": 0.00041, "runId": "run-..." }

POST https://api.oncell.ai/api/v1/agents/jc-<customer>-follow-up/run
{ "prompt": "Do today's follow-ups." }        # or let the daily schedule fire
→ { "text": "3 customers asked about cakes yesterday and did not order. Drafts: ...", "cost": 0.0012 }

The daily budget is set per customer at deploy time and enforced below the model, so a runaway conversation on a $9.99 plan stops at $1 a day without JustCopy writing a line of billing code. The mechanism is described under Budgets; the daily wake under Schedules.

What we are doing next together

  1. Ship the route and the button in JustCopy, behind a flag, for ten bakery and salon customers.
  2. Give every JustCopy template a starter eval set (hours, prices, tone, cost) so new agents are guarded from their first conversation.
  3. Route each business's agent to the cheapest model that still passes its evals; measure the margin.
  4. Post-train a small model on JustCopy's trajectories when there are enough conversations, and serve it through the same gateway.

All figures in this story are from live runs on oncell on September 4, 2026, under JustCopy’s founder account. JustCopy user and project counts are JustCopy’s own figures.

Related

More customer stories

  • OpenCrew

    One agent, one cell. The crew is the product.

In the docs

From the blog

  • Cost per conversation

    JustCopy runs one agent per small business at $0.0006 a conversation, under a $1 per day budget. How the number is measured, and what a $9.99 plan covers.

  • The run that became a test

    A plumber's agent invented a price. The conversation was already a run in the log, so it became an eval. How promoted runs guard every change to an agent.

  • Sync and async agents

    Every business JustCopy serves launches two agents: a front desk that answers now and a follow-up that works every morning. Why a schedule is durable intent.