AI · The architecture I build

A company gets AI when someone turns what it knows into context agents can run on

Buying seats is the easy half. The hard half is context: what each person knows, how each workflow actually runs, and where the handoffs sit. Someone has to move all of that into a form a model can reuse. That is the job I do.

3 layerscontext, workflow, collaboration
9 systemsbuilt solo, every one on a live URL
10 sourcescompile my week, none written by hand
The gap

AI stalls at the layer nobody owns

Every team I have worked in hit the same wall. Good people, good tools, and knowledge that never left anyone’s head. A model works with what it is handed. Hand it a blank prompt box and it hands back generic work.

The wall is an ownership problem. Buying licences is procurement. Turning know-how into reusable context, and turning processes into workflows a model can run twice the same way, is a build job. Someone has to hold it, inside the stack, with the authority to change how the team works.

I hold that job. Ten years of running marketing programs taught me where the work actually breaks. Writing the code myself is what lets me fix it at the layer where it breaks.

The model

Four layers decide whether AI lands

The layers stack, and each one needs the one below it. The knowledge base feeds the agent teams, governance is what makes their output safe to ship, and only then is it sane to let agents deal with each other across seats.

Layer 01 · Knowledge base

The knowledge, written where an agent can reach it

Without this layer a company runs on tribal memory. The person who knows why a claim is risky sits three desks away, and the model never meets them. Every answer arrives plausible and shallow.

With it, the knowledge becomes an input. Brand voice, product capability, the regulator’s rulebook and last week’s decisions all live as files an agent loads before it writes a word. Quality stops depending on who is at the keyboard.

I build context from primary sources rather than summaries. My weekly compile reads nine channels plus that week’s agent-chat history, because a large share of my real progress exists only inside those sessions. It writes two records: one a person scans, and one an agent queries. The second accumulates into a knowledge base, and both layers above depend on it existing.

9 channels + agent-chat history → 2 records, one of them built for machines
Context, as artifacts
Personas and skills as markdown8 files
Module catalog with constraints30+
Policy as records compliance ownsFinGuard
This site, exposed to agentsMCP
Layer 02 · Agent teams

Every seat becomes an agent with its own context and queue

Without this layer, AI output is a lucky draft. It reads well, it cites nothing, and nobody can tell you which step produced the error. Teams that touch money or brand cannot ship on that basis, so they quietly stop using the tool.

With it, a run has stages, budgets and hard stops. Revision loops get a fixed budget so nothing churns forever. A claim without a source is a must-fix. Outputs are schema-validated, runs are archived, and publishing always waits for a person.

The guardrails matter more than the models. In one archived round, ten proposed system changes came back nine adopted, one revised, none rejected, and every proposal had to cite a documented failure rather than sound plausible. The one sent back wanted a late rewrite pass that would have run after the fact-check gate.

Bounded loops · frozen judges · a human on anything irreversible
What holds the line
The score is a diagnosticnever a target
Judges frozen, only stricterby rule
Every change cites a real failurerequired
A human holds publishalways
Layer 03 · Governance

The layer that decides whether any of this ships

This is the layer people skip, and it is the one that kills the programme. A team that touches money or brand cannot put unreviewed model output in front of a customer. Without somewhere to point when legal asks how a claim got approved, the honest answer is that nobody knows, and the tool quietly stops being used.

So behaviour lives in one place rather than inside prompt strings scattered through code. Every system prompt sits in a console, bound to a named model, declaring which tools it may call and which servers it may reach. Changing what an agent does becomes a configuration change with an audit trail.

The gates matter as much as the console. Review personas are frozen and may only get stricter, so an improvement has to come from the generating side. Scores read as diagnostics and are never the target, because a system optimised against its own judge converges on flattering the judge. Every proposed change must cite a documented failure. Anything irreversible waits for a person.

35 system prompts in one console · declared tool and server access · audit trail on every change
What the control plane holds
System prompts, one console35
Model bound per promptdeclared
Tools and MCP servers reachabledeclared
Judges frozen, only stricterby rule
Publish, and adopting a changehuman
Layer 04 · Collaboration

My agent answers your agent before either of us gets pinged

Without this layer, every person has a private copilot and the org chart still runs on interruptions. A manager asks, someone context-switches, digs, replies, then gets the follow-up. One real question costs two rounds and a day.

With it, the handoff moves down a level. When my agent finishes something another project depends on, it pushes that to the dependent party’s agent as a notification. When someone needs detail about my work, their agent queries mine, and mine finds the answer in the sources it already reads. Only the genuinely hard problems reach the two humans.

I designed this from both seats. I built the compile layer, and my manager built the consolidation layer above it, pointed straight at the two records mine produces. Each person publishes wherever they already work, so nobody migrates tools to join the model. I am piloting the direct agent-to-agent path now as the Answer Desk.

Push a finished dependency · pull an answer · escalate only the hard problems
Four moves between agents
Push · dependency doneno message written
Pull · their agent asks mineone hop
Escalate · humans meethard problems only
Package · skills per seatmanager and IC
How I start

I build from the foundation up, and the foundation is my own seat

The first version has to be one I pay for when it breaks. That keeps it honest, and it gives the next person a working example instead of a proposal.

01

Wrap my own process first

I take the work I already do, put it behind an agent, wire in my own channels and archive every run. The first version has to be one I pay for when it breaks, which is what keeps it honest.

Reach
One seat

my own week

02

Turn my skills into a knowledge base

A workflow only travels when the knowledge behind it is written down. Personas, brand rules, module constraints and last week’s decisions become files, and the drill-down record accumulates into something another agent can query.

Reach
One seat, portable

skills as files

03

Attach a number before writing code

Every system started as a pain I had already paid for: ad copy dying in policy review, leads going cold over a twelve-hour handoff, a monthly close eating an afternoon. No number on the pain, no build.

Reach
One function

a number attached

04

Wire it into the tools people already open

A tool outside the stack is a demo. The ones that earned their place went into 200+ workflows across an eight-tool stack, and lead handoff fell from about twelve hours to one or two minutes.

Reach
The stack

wired in, not bolted on

05

Spread it by influence, one seat at a time

I hand the next person a working example and the skills that run it. Their job becomes their own workflow, with their own agent holding their context, and the team’s work turns into improving how those agents cooperate.

Reach
The team

seat by seat

AI Lab

The layers, shipped as working systems

Each one started as a job I was doing badly by hand. Same three layers at product scale: a rulebook or a catalog as context, a bounded pipeline as the workflow, and a person holding the gate. Every one is live on a public URL.

Ad copy that clears policy before you export it

ReactTypeScriptViteTailwindGemini 2.5 FlashDeepSeekVercel

Learns your brand voice from your own site, writes channel-native copy for Google, Meta, LinkedIn and Bing, and audits every line against platform policy and your own rules as it writes.

days → minutes · draft to policy-checked copy
CreativeOS screen
Ad variant · LinkedInpolicy-firstv3
Google Ads policy: clear
Meta standards: clear
LinkedIn policy: clear
Brand & legal: clear

Catch the non-compliant phrase before legal does

ReactTypeScriptViteTailwindGemini FlashVercel

Paste a fintech marketing draft, pick the jurisdiction, and get a severity-ranked audit: every risky phrase quoted and matched to the FINRA 2210 clause it trips.

9 jurisdictions · one paste, full audit
FinGuard screen
Draft audit · USFINRA 2210 rulebook3 hits
Risky phrases quoted: 3
Matched to FINRA 2210
Severity ranked
Rewrite suggested

Find the policy violation before the platform does

ReactTypeScriptViteTailwindVercel Functions

Headline, body, URL and the creative itself, audited against ~84 embedded platform policy clauses plus your saved company rules. You get a safety score with every risk explained, before upload.

~84 policy clauses · checked before any model call
AdGuard screen
Creative auditMeta + Google rulebooks92
Destination policy: clear
Prohibited claims: none
Trademark: clear
Image safety: clear

Pull a creator's whole catalog, get the transcripts out

ReactTypeScriptViteExpressNeon PostgresGemini 2.5 FlashFFmpegPlaywrightResendStripeVercel

Paste a Douyin or TikTok profile and it collects the catalog, lifts the transcript from every video, translates and rewrites on your own prompt, then exports to Excel. Runs on the user's own session rather than a shared account pool, which is what keeps accounts safe.

profile → Excel · transcripts, translated
Hyper Creator screen
Collection runone profile, whole cataloglive
Profile pasted0:00
Catalog collected0:12
Transcribed + polished0:33
Exported to Excel0:38

Applications, resumes and interviews in one workspace

React 19TypeScriptViteExpress 5SupabasePrismaGemini 2.5DeepSeekGPT-4o · WhisperStripeVercel

One pasted job description becomes a tracked application, a resume run through a six-step tailoring engine with its ATS read-out, and interview prep built from the same context.

4-pass tailoring · with ATS read-out
Career Capybara screen
Application · one JDsix-step enginev4
JD parsed: role + keywords
Resume tailored: 6 steps
ATS read-out: pass
Interview prep: ready

Turn a creator's whole catalog into something you can ask questions of

React 19TypeScriptViteExpressNeon PostgresGemini 2.5 FlashFFmpegPlaywrightStripeVercel

An ETL pipeline scrapes the catalog, strips and transcribes the audio, and embeds everything into a vector store, a Digital Brain you query instead of three hours of scrolling.

catalog → brain · query it like a database
TikTok Miner screen
Catalog ingest142 videos → brainETL
URLs ingested0:00
Audio transcribed0:14
Indexed · searchable0:41
Ask it anything0:45

See the real tech stack behind any competitor's URL

Next.js 16React 19TypeScriptSupabaseDeepSeek v4PlaywrightBrowserlessStripeVercel

Fingerprints the HTML and JS bundles, reads DNS and email posture, maps subdomains, then renders the site in a real browser for a deep scan. Every finding is evidence-backed.

6 scan modes · static → deep → interact
TechSpy screen
Stack scansix passes, one reportdeep
HTML + JS fingerprinted
DNS + email posture
Subdomains mapped
Real-browser deep scan

Read the strategy your competitors put into market

PythonDeepSeek v4PlaywrightMeta Graph APIAds TransparencySQLiteSupabaseStripeVercel

Collects a rival's public ad library, enriches every creative and landing page, labels the set with AI behind a human review queue, and returns a campaign anatomy: market, message, spend posture.

214 creatives · decoded in one run
AdRadar screen
Campaign anatomypublic ad librarybeta
214 creatives collected
Landing pages enriched
Angles AI-labeled
Anatomy returned
Go deeper

The same three layers, written up in full

The case studies show the method running inside a company, with other people in the loop. The writing shows the reasoning before the result was known, which is the harder thing to fake.

Honest status

What is running, what is piloting, what I am not claiming

The machinery exists as archived runs and human-gated proposals in a real repository. The lift is internal so far, and I would rather leave a cell blank than invent a figure.

What is proven outside my own seat

The numbers with other people in the loop are the ones from programs I ran: a revenue line from $2M to $250M+, lead handoff from roughly twelve hours to one or two minutes, and a monthly close from one to two hours down to under five minutes.

What I am not claiming yet

There is no external before-and-after on the agent machinery. The share of my week it handles is my own estimate and is labelled as one wherever it appears. Layer 3 is a pilot, and it says so on every page that mentions it.

Layer by layer
Context · channels, records, catalogsoperational
Workflow · page factory, review loopoperational
Workflow · content teamproven internally
Collaboration · consolidationlive
Collaboration · Answer Deskpiloting
External track recordto be earned

Hand me one function and I will build all three layers under it

Personas are markdown and the rubric is one file, so the same machinery retunes to a new team by editing text rather than rebuilding.