These are systems I have built and run, described as patterns rather than client stories. No client names, and no numbers I did not measure. The security design line is the part I would want you to read if you read nothing else.

Compliance document generator

Built and running
Problem
Writing a complete security plan from a template set by hand is slow, and copied plans drift: sections get skipped, and nobody can say who changed what or when.
What I built
A guided intake that walks through each required section and produces a complete, structured security plan from a fixed template set, with section-level validation and an audit trail of edits.
Security design
Section-level validation stops an incomplete plan from being generated. Every edit is recorded with who made it and when, so the finished document carries its own audit trail.
Stack
Web app, templated document generation.

Bid and estimate automation

Piloted with a real contractor
Problem
A specialty contractor was turning project requests into priced bids by hand: reading the request, pulling rates, formatting a document, and emailing it. Slow, inconsistent, and easy to get wrong under time pressure.
What I built
An n8n pipeline that takes a project request, applies the contractor's rate logic, and produces a priced, formatted bid package. A person reviews and approves before anything is sent.
Security design
Human approval gate before any outbound email. Rate tables and templates stay in the contractor's own storage. The workflow holds only the credentials it needs to read requests and write drafts.
Stack
n8n, document templates, email.

Receipt to accounting pipeline

Built and running
Problem
Receipts arrive by email and from web apps in every format. Filing them, logging them, and entering them into accounting software is tedious, so it gets skipped and reconciled in a rush later.
What I built
Receipts arriving by email or webhook are extracted by an LLM, filed to cloud storage, logged to a spreadsheet, and posted to accounting software.
Security design
The extraction step sees only the receipt, never the ledger. Write access to the accounting system is scoped to creating expense entries, and every posted entry links back to the filed source document for audit.
Stack
n8n, Claude, Google Drive and Sheets, QuickBooks.

Content pipeline with human approval

Built and running
Problem
Publishing consistently takes research, drafting, and images. Unattended publishing is how mistakes end up in public.
What I built
Research, drafting, and image generation feed a staging sheet. Nothing publishes until a person marks the row ready.
Security design
The publishing step cannot run without an approved row. The credential for the destination platform is held only by the publisher step, not by the research or drafting steps.
Stack
n8n, Perplexity, Claude, LinkedIn API.

Local GPU transcription service

Built and running
Problem
Meeting and call recordings contain client information. Cloud transcription means sending that audio to a third party.
What I built
A self-hosted speech-to-text service running on a local GPU, so recordings never leave the network.
Security design
Data stays on premises. No external API calls for the audio, and access is limited to the internal network.
Stack
Self-hosted speech-to-text on local GPU hardware.

Human-approved agent framework

In development
Problem
AI agents are useful for triage and drafting, but giving them write access to business systems is how automation causes incidents.
What I built
Agents hold read-only credentials and emit structured proposals to a queue. A separate executor with write credentials acts only on rows a person has approved.
Security design
Credential separation between the agents that propose and the executor that acts. Every action traces back to an approved proposal and the person who approved it.
Stack
TypeScript, Slack Bolt, Claude Agent SDK, Postgres.

Have a process like one of these?

Start with the Security Audit and Automation Plan, or book a call and describe the process. I will tell you whether it is worth automating.