Chris Schubert, smiling, in a black t-shirt
Sydney

I'm Chris. I build AI systems that do the work, then keep the judgement human.

I lead product at Acorn in Sydney, where I've been building an AI-native way of working for the product team. I build the same kinds of things at home, and those are the ones I can show you.

If you're working out how you can get AI doing real work for you, or you've got a business idea and want to explore where AI fits, I'd love to help. It doesn't need to be fully formed. Half-formed ideas usually make the better conversation, and they're the ones I get the most out of, because I learn as much as I help.

Ivy's Cat Routine

Every school night
Drag through her evening. Tap the screen to enlarge it.
6:22pm
Read the story of Ivy's evening
  1. Built with Ivy, for Ivy

    Ivy and I built something to say “right, next one”, so I don't have to

    For a long time I was the thing that moved her from one job to the next, calling “right, next one” from wherever I was, usually while I was getting her little brother Zack fed and settled. So we built a routine that does the calling instead. It runs on an old tablet, and a cat called Tilly lives in the rooms.

    Keep scrolling and the evening goes with you.

  2. The app at 6:22pm: a pink lounge, an empty shelf, Tilly the white cat with a pink bow, and the eight jobs along the ledge. 6:22pm

    Ivy is six, and a school night has eight jobs in it: dinner, her book, uniform out, pyjamas out, shower, pyjamas on, washing and teeth. This is the lounge before any of them, with the jobs on the ledge and nothing on the shelf yet.

  3. Dinner in progress, with Tilly eating from her own bowl beside Ivy's spaghetti. Dinner

    Dinner is one of the long jobs, so nothing asks her for anything while she eats. Tilly just has her own dinner alongside.

  4. A purple box has just been earned: You got a box! Where do you want to put it? Dinner, done

    Every finished job earns a small thing, a box or a fish or a crown, and she decides where it goes on the shelf. Nothing is announced ahead of time and there's no grey outline of what she hasn't got yet; it just turns up.

  5. The bedroom at 7:21pm, the wardrobe half closed: Ivy, Zack's off to bed soon. Get your uniform and pyjamas out now. 7:21pm

    The one real deadline. Zack goes to sleep in the bedroom at 7:30, so her uniform and pyjamas have to be out before then. The wardrobe starts closing at 7:15, and at 7:20 it tells her straight, with her name and the reason. It's the one place the app is blunt, because that's the job she forgets.

  6. Three jobs ticked, a box and a fish on the shelf: Pick the next thing. Three down

    If she stalls, it tries a different nudge rather than a louder one, and after a few minutes it stops and asks her to go and find a grown-up. Something that nags forever gets tuned out faster than I do.

  7. Tilly close-up with five hearts, two filled: Give Tilly a pat, or a treat. Tilly

    In the close-up she can give Tilly a pat or a treat, and the five hearts only ever fill. It's a prompting machine with a game attached, not a game with chores in it, and that line settled most of the design.

  8. The bathroom, dimmer, with the shower running and Tilly in a gold crown. Shower

    Tilly wears what Ivy earns, which is why she's in the bathroom with a crown on. The rooms dim in seven steps from six o'clock, so the screen winds down with the evening and is nearly dark by bedtime.

  9. The lounge at 8:15pm with the lamp on and seven of eight jobs ticked. 8:15pm

    The lamp comes on at eight. Seven of the eight done.

  10. Bedtime, nearly dark, Tilly asleep in her bed and the shelf full. Bedtime

    Tilly's asleep, and the bedroom shelf is full. The point of all of it is that I stop saying “right, next one”.

  11. She picked the colours

    A page titled Which one, Ivy? showing the same room in three palettes, each at dinner time and at bedtime. Strawberry Milk is first.

    I put three palettes on one page, each shown at dinner time and at bedtime, and asked her which one. She chose Strawberry Milk over Violet Hour and Peony Yard.

    She's been using it on real school nights since the middle of August, and the first one turned up eight things to fix.

    or keep scrolling for the rest of the mat

Say hello

Happy to show you how any of it works, or to sit down and build something with you.

hello@chrisschubert.me

Sydney, so AEST. If you're in Europe or the US, the reply will land overnight.

Cake Orders

In daily use at Cake.Biz

Paper stays in charge at my in-laws' cake shop

My in-laws run a cake shop called Cake.Biz. Orders came in on paper and lived in a folder, which was fine right up until somebody needed to know what was due on Saturday.

I was careful not to change how they work. The same form still gets filled in by hand at the counter, a model does the typing, and on the morning of the pickup the order comes back out as paper on the bench.

Handwriting in, paper out

  1. A handwritten Cake.Biz order form for Theo Brandt-Vasquez: an 8 inch chocolate mud cake with salted caramel drip and honeycomb shards, pickup Saturday 1 August at 10:30am
    Paper · at the counterThe form, filled in by hand

    It's the same form as always, in whatever handwriting turns up that day, and once it's filled in it gets photographed.

  2. The confirm screen with the same order read into fields: name, phone, pickup date and time, order details reading 8 chocolate mud, and the writing on the cake
    Screen · straight afterA model reads it into fields

    It picks out the name, phone, pickup and the cake itself, and staff check each field against the photo before they save, with the photo kept alongside the order. On this one the model read 8″ as a plain 8, which is the kind of slip the check is there to catch.

  3. The planner: Coming up, with Sync Shopify and Print buttons, a filter by cake or name, three orders due today and two tomorrow, the first of them marked Online
    Screen · all weekEverything due, grouped by day

    Orders from their Shopify store land in the same lists, marked Online, so the counter and the website end up as one list of cakes to make.

  4. Paper · the morning ofOne run sheet for the day

    A to Z by first name, a box to tick with a pen as each cake goes out, any money still owing in red, and a stamp saying when the data was pulled.

    The printed run sheet: Marguerite Okonkwo, Perpetua Lindqvist and Theo Brandt-Vasquez in first-name order, each with an empty tick box, and DUE $145.00 in red on Perpetua's order

An invented order on real screens. The handwritten 8″ and the 8 read back from it are the same order.

Details that matter at a counter

The shop runs hundreds of orders a month through it.

Competitive research

Ask me for it

Competitive research where every line says whether it was seen or guessed

The reading is the part I could never keep up with, so the tool does it. Every line it writes is labelled Observed, with the page it came from, or Inferred, so a confident guess can't pass as fact.

The first screen of the ProcurePro analysis: Every competitor claims a data moat; only ProcurePro's sits inside the award decision. A trust meter reads 59% observed, 41% inferred, 82 claims, above a strip of six company homepages.
A run on ProcurePro, dated 8 August 2026. The meter at top right says how far to trust the rest of the page. Open the whole page

One working session, start to finish

  1. You

    Give it the company, a lens to read the market through, and who to watch. For ProcurePro the lens was AI data moats and automated workflows.

  2. /setup

    Drafts the company's positioning from public sources and proposes the competitors worth watching.

  3. /competitive-update --all

    Works through the competitors in batches and writes a profile for each, ten sections long, with every claim labelled.

    Two claims about Felix as the profile writes them, one Observed with its URL and one Inferred, beside how the page draws each: a solid bar for observed, a hatched bar and a dotted underline for inferred
    Two claims as the profile writes them, and how the page draws each one.
  4. Citation checkAdded since this run

    Re-fetches every URL a claim cites. A claim only passes if that page holds a verbatim quote for it, and one that fails is downgraded to Inferred where you can see it.

  5. /generate-analysis

    Writes one analysis across all of them, read through the lens.

    The comparison matrix: ProcurePro against Autodesk, Procore, Felix, Causeway and Kojo on corpus type, scale, whether the data compounds with use, proximity to margin, automation depth, flagship AI, agentic framing, strength in ANZ, the UK and North America, and published pricing
    Part of the output: six companies side by side on the same rows.
  6. /build-dashboard

    Renders the page at the top of this sheet, with a chart behind each finding.

    Exhibit 1 from the dashboard: a bar chart placing each company from low to in the room by how close its data sits to the moment a head contractor commits project value, with ProcurePro furthest along and every bar hatched because each position is inferred
    Exhibit 1. Every bar is hatched, because each position is a judgement the profiles mark as inferred.
The ProcurePro page's own account of its process: four steps, /setup, /competitive-update --all, /generate-analysis and /build-dashboard
The page tells the story of its own run, too.

What the ProcurePro run came back with

Competitors, all profiled in full
5
Sections per profile
10
Labelled claims
82
Observed
59%
Markets read
ANZ, UK, North America
Time for a full profile
A few hours
The evidence section: 59% observed across 48 claims and 41% inferred across 34, broken down per competitor, with a note that this run came before the citation check and its claims have not been re-fetched since 8 August 2026
The evidence section says plainly that this run came before the citation check.

The guesses are where I spend my time. Happy to hand it over, too: email me your GitHub username and I'll share the repo with you.

See the ProcurePro example

Survivor TD

Playable

A Warcraft III map from 2005, rebuilt in the browser out of its own file

Pure hobby, this one. I spent most of my teens playing custom Warcraft III maps, there's one I wanted to play again, and getting a game going is basically impossible now. So I've been rebuilding it in the browser.

The data turned out to be the hard part. Every wiki about this map disagrees with every other wiki, and the ones that agree are copying each other. The original map file has the real numbers sitting inside it, so the game gets built from the file itself.

Map file in, game out

1 · The map

The original 2005 map's terrain as pixel art: a symmetrical maze of paths and building pads, with a large Z in the top right corner

The 2005 map's terrain, drawn straight out of the archive.

2 · The data

  1. The .w3x map is an MPQ archive
  2. Python tools open it and parse the binary unit tables
  3. They write it all out as JSON
  4. gen_content.py builds content.json
  5. The game runs on content.json

Nothing is hand-copied.

3 · The game

Survivor TD in 2D at wave 17 of 40: a maze of towers, the damage dealt this wave, the Armored Golem's armour multipliers, and the tower shop down the right
2D
The same board in 3D, with the towers standing on the maze and the same panels down the right
3D

The same board in 2D and 3D, with this wave's damage, the creep's armour multipliers and the tower shop down the side.

What came out of the file

Each wave is a normal creep and a boss.

Every tower in the game standing on a 3D turntable, each on a hexagonal base coloured by its class
Every tower on the turntable, rendered from the same data the game uses.

Two things the file taught me

A decrypt library was silently dropping the trailing bytes off what it read.

Asking the archive for war3mapMisc.txt by name turned up 647 bytes of damage-table overrides that I'd assumed were stock.

Play it at ztd.chrisschubert.me

The Guild

Invite only

The people I want to still be talking to in twenty years

A close group of people I respect, from a wide range of disciplines, who I want alongside me for the rest of my career. We talk about what we're each working on, help out when somebody's stuck, and share what we're learning and seeing, so all of us get ahead sooner.

It started with eight to ten people and it's picking up as it goes. Every invite is a vouch.

A fortnight in the Guild

The Tavern is the one ritual, every second Tuesday from 9 to 10pm Sydney time, with no agenda. Between Tavern nights there's a light prompt asking what everyone's stuck on.

Mostly I build in the open there, posting what I tried and what broke, which turns out to help more than advice does.

The Guild wordmark in two lockups, horizontal and stacked, with the tagline Connect · Build · Grow in amber on near-black
Connect · Build · Grow
Way of working

Side by side

I set this up sitting next to people, and it ends up shaped like them

The way I help people with this is to sit down with them, build their version together, and stay close while they get comfortable with it. We're scaling it across the product team at work, with AI as the leverage, and outside work I've set it up with close contacts, one at a time.

Everybody's version ends up different because it's encoding how that person already works. So we start with what they do now, in the order they do it, and write that down before any of it goes near an agent.

How I go about it

My penTheir pen

  1. Sit down

    We start with the work in front of them this week.

  2. Map how they work

    What they already do and the order they do it in, including the steps that only live in their head.

  3. Write the steps down

    The only thing that transfers is writing the steps down, so they get written in their words.

  4. Run it together

    Then comes watching the first few runs closely. I sit alongside for those, and we fix what breaks as it breaks.

  5. They take the wheel

    They run it and change it, and it starts to look like theirs.

  6. It scales out

    The next person starts from their own work, and it grows one person at a time.

How I approach it, drawn as a sketch. The bar under each step shows roughly who's doing the writing at that point.

What mine looks like

Mine is nine specialist agents, each with its own role and its own private memory, working from a shared context file and six streams files that feed a dashboard. Coding plans get reviewed by the engineer agent before anything is built, and anything written for other people goes through a writing-voice checker.

Nine specialist agents arranged in a ring, each with a yellow memory tab: lead PM, technical co-founder, engineer, product design lead, idea validator, career coach, growth and bootstrapper, financial advisor and children's game designer. Lines run from every one of them to the middle, where a shared context file sits above six stacked streams files, which feed a dashboard. Lead PM Technicalco-founder Engineerreviews plans Product designlead Idea validator Career coach Growth /bootstrapper Financialadvisor Children'sgame designer Shared context Streamssix files,one perworkstream Dashboard
Yours would come out looking different, which is the point.

Your turn

If you're working out how to get AI doing real work for you, I'd like to sit down and set yours up together. Tell me a bit about how you work now and we'll start from there.

Email hello@chrisschubert.me