Axel Runs the Back Office.
The Owner Runs the Machines.
Axel is the operations software a general contractor in Edmonton and Calgary runs its back office on. AltaPro AI built it to take real work off the owner's plate — under a safety model where the owner stays firmly in control. Not a chatbot that drafts. A teammate that helps run the business, safely.
The Office Work Was Competing With the Field Work.
The client is a general contractor working across Edmonton and Calgary. Like most owner-operated construction businesses, the same person who runs the machines is also the one who has to win the work, close it, and keep the money moving.
That's the tension we set out to solve: the office work that wins and closes jobs shouldn't have to compete with the field work that delivers them.
So we built Axel— an AI operations agent that takes real work off the owner's plate and keeps the business moving in the background, with a human always in control of anything that matters.
At a glance
- Client
- A general contractor
- Industry
- General Contracting
- Location
- Edmonton & Calgary, Alberta
- Build
- Embedded AI operations agent
- Approach
- Autonomy that's earned, not assumed
- Status
- Live in production
A Teammate Across the Whole Operation.
Most "AI for X" tools cover one narrow task. Axel helps across the business — here's the shape of it, at a high level.
It wins and closes the work
The office work that turns a lead into a booked, paid job gets handled — so the owner isn't stuck at a desk to keep revenue moving.
It runs the day
The moving parts of a live operation stay organized and up to date, without the back-office admin quietly eating the week.
It never lets a lead go cold
Inbound gets answered and followed up across the channels the business actually uses — nothing slips through the cracks.
It works when nobody's watching
Axel doesn't wait to be asked. It keeps things tidy in the background and surfaces only what genuinely needs the owner.
Autonomy You Can Turn Up Like a Dial.
Graduated autonomy is AltaPro AI's answer to the number-one worry about business AI: "I can't just let it loose on my clients." You don't. Every capability starts under human control and only earns more independence once it's proven itself — and the owner can always dial it back.
Draft
Axel prepares the work; a person always sends it.
Ask first
Axel acts only after a clear go-ahead. This is the default.
Auto
Axel acts on its own — only for what the owner has promoted.
Anything touching money or a client starts on the tightest setting — and nothing is ever on autopilot without the owner deciding it should be.
Not a Demo. A Working Teammate.
Axel runs on a real operation — real jobs, a real crew, and live client conversations. It's the strongest proof point there is: deployed software doing real work for a real Alberta business, every day.
The takeaway for any owner: this is a full-time operations hand that never sleeps — for a fraction of what a back-office hire would cost.

Architecture & The Hard Parts.
The honest engineering behind the agent — what Axel is built on, and the non-obvious problems we had to solve to let it act on a real business without ever going off the rails.
An Agent That Does the Work, Not Just Chat
Axel is Anthropic's Claude running in a tool-use loop over the live CRM — roughly thirty typed tools let it search and move jobs through the pipeline, draft quotes, contracts and invoices, log expenses, read the shared inbox and reply, book calendar events, pull job-site weather, and text or call the owner for a decision. It's built on Next.js and React with Prisma and Postgres underneath, so the agent acts on the same real data the office sees.
Autonomy as a Code-Enforced Dial
Every outbound, money- or client-touching capability carries a level — draft-only, ask-first, or auto — checked server-side before anything leaves the building. Sending quotes, contracts and invoices, and replying to clients, all start on the tightest setting; a background job can only send once a capability has been explicitly promoted to auto. The hard part was a permission model that's safe by default yet can be turned up one notch at a time as trust is earned.
Wired to the Channels the Business Actually Uses
Outreach runs on real infrastructure, not a sandbox — Twilio for SMS and voice, in-app calling with a SignalWire-first, Twilio-fallback path behind a single UI, email over standard IMAP and SMTP, and Facebook Messenger. Inbound messages are read and threaded; outbound always passes back through the autonomy gate.
It Works When Nobody's Watching
Scheduled jobs — a morning briefing, invoice-reminder sweeps, message follow-ups — let Axel keep the operation tidy in the background and escalate to the owner by a single SMS only when a human decision is genuinely needed. A hard backstop blocks it from ever quoting a price, rate, or commitment on its own.
One rule sits above all of it: Axel never reports an action as done unless the tool actually ran and returned success — no narrating work it didn't do.
Out of respect for our client
We'll talk architecture, but the specifics stay private: how Axel is tuned to this business, its prompts and guardrails, and the day-to-day details of the operation are our client's — and we keep them that way. When we build for you, your systems and your numbers get the same discretion.
Your operation is next
What Should Your AI Teammate Run?
30 minutes. We map your operation, find the office work eating your week, and show you exactly what an agent like Axel could take off your plate — at no cost.
Edmonton, Alberta · No commitment · 587-937-6948