freelance: ai agents & web systems

Lee Cruz const work = buildAgents().thatRunThemselves();

I design and ship autonomous AI agent systems and vibe-coded web products, from Slack-native bots handling real workflows to interactive sites built for launch day, not just demo day.

lee@cruz: status
$systemctl status agents
● router.service active (routing)
● support-bot.service active (online)
● core-platform.service active (stable)
$

Two disciplines,
one build process.

This practice started out of necessity. Working as an Executive Assistant, I kept automating pieces of my own role (inbox triage, scheduling, follow-ups) until building the systems became the more interesting job.

Today I run a small practice building self-hosted AI agent infrastructure: named agents that live in Slack and client portals, handle routing, moderation, and reporting, and stay online with real uptime discipline, not just prototype polish.

Alongside that, I build interactive, visually-driven web products: animated globes, live simulators, and launch sites, designed prompt by prompt with a focus on getting the details exactly right rather than shipping the first pass.

Clients get both sides: the invisible system that runs reliably, and the visible product people actually enjoy using.

By the numbers
Web products4 live
Automations7 running
AI agents6 shipped
Uptimestable

Shipped products,
live in the wild.

Preview of the Iceland Eclipse Flight site Visit eclipseflight.com/iceland →
Interactive 3D

Iceland Eclipse Flight

A browser flight simulator over real Icelandic terrain, timed to a real total solar eclipse: true elevation data, a full day-to-totality light cycle, and a land-on-the-mark win moment.

Three.js Real terrain data Custom domain
Preview of the Egypt Eclipse Flight site Visit eclipseflight.com/egypt →
Interactive 3D

Egypt Eclipse Flight

A companion build: a hot-air balloon ride over Luxor's real skyline, thousands of real building footprints, and an eclipse placed to the minute using cross-checked astronomical data.

Three.js Real geography Verified accuracy
Preview of the Eclipse Descent site Visit eclipseflight.com/skieclipse →
Browser Game

Eclipse Descent

A playable ski game on the same real-time eclipse engine as the flight sims, with a relaxed free-ride mode, a three-tier challenge mode, and a fully custom sound design.

Three.js Game design WebAudio
Preview of the Australasia Eclipse 2028 site Visit australasiaeclipse.com →
Interactive Map

Australasia Eclipse 2028

Rebuilt an early prototype into a full interactive site: a live map and a spinning 3D globe for picking a viewing spot, backed by computed eclipse timing instead of guesswork.

3D globe Astronomical modeling Static site

Automations and agents,
handling the repetitive parts.

Running quietly in the background
Social content schedulingKept a content calendar consistently filled without daily manual posting.
Engagement prioritizationFocused daily engagement time on the people most likely to actually respond.
Inbox triage & alertsStopped important messages from getting buried in day-to-day email volume.
Priority email routingSeparated what needed a same-day response from what could wait.
Performance reportingReplaced guesswork with a regular, plain read on what was actually working.
System health monitoringCaught stalled or failing jobs early, before they turned into bigger problems.
Session memory & continuityStopped long-running conversations from losing context or resetting mid-task.
The platform underneath it all

Every agent below runs on a self-hosted multi-agent platform handling scheduling, memory, and routing, so each specialized agent can focus on one job instead of rebuilding the plumbing every time.

Specialized agents built on top

Six purpose-built agents run on that platform for a single long-term client, each handling one slice of the day-to-day workload. Specifics belong to the client, but the coverage looks like:

Lead generationManual prospecting was slow; automated sourcing kept a pipeline consistently full.
Content & voiceVoiceover and transcription no longer bottlenecked on one person's time.
Inbox monitoringTime-sensitive messages got seen and handled quickly, not hours later.
Social engagementKept up consistent day-to-day engagement without someone doing it by hand.
AnalyticsDecisions were based on a regular read of real data instead of guesswork.
Event logisticsRoutine coordination for a live event didn't fall on one person to track.

What I build with.

AI Agent Design Claude / Anthropic API Slack Platform Node.js JSON Prompt Engineering Lovable / Vibe Coding React VPS / PM2 Ops Security Hardening SEO & Content Pipelines