A support agent that asks before it acts
customer-ops-agent: answers from a knowledge base and takes four real actions (ticket, CRM update, email, booking), every mutating one gated behind human approval.
From agents that ask before they act to a satellite-alert investigator. The full write-ups include the part that matters: the constraints, the decisions, and what failed first. Numbers are only quoted where they were actually measured.
customer-ops-agent: answers from a knowledge base and takes four real actions (ticket, CRM update, email, booking), every mutating one gated behind human approval.
ConverseIQ: a multi-channel agent for a booking-heavy business that answers from the business's own records, books appointments, captures leads, and routes phone calls into the same brain.
DocLens: a full-stack RAG chatbot over uploaded PDFs with hybrid retrieval, reranking, a grounding check that refuses to guess, a side-by-side viewer that highlights the cited page, and reference-free answer evaluation.
FinTex: four agents over Qdrant documents, Supabase time-series and PSX prices, fused into cited answers with a confidence score. A three-person final year project.
AutoPricer: a production-style ML service for used-car resale prices. SHAP attributions that provably sum to the prediction, JWT and API-key auth, a fail-open Redis cache, async batch scoring, drift monitoring, and a retraining gate that refuses ties.
Beachhead: a multi-agent early-warning system that fuses citizen-science sightings, climate suitability, documented introduction pathways and propagule pressure into triaged field-survey recommendations, evaluated retrospectively on real GBIF data.
OpsRelay: calls, forwarded emails and typed notes go in; deduplicated, confidence-tagged tasks come out, behind a Slack approval gate a human has to pass before anything is sent or marked confirmed. Built for real-estate offices, agencies and dispatch desks.
VerifyBridge: a conversational layer for subscription businesses that answers from internal docs, performs account actions only after identity verification enforced in the backend, and hands over to a human with the full conversation intact.
rageval: point it at any retrieval or agent system through a thin adapter and get retrieval recall, faithfulness and hallucination rate as a report, plus a regression harness with a CI gate so it never silently degrades again.
llm-gateway: an OpenAI-compatible proxy with a two-tier cache, complexity-based model routing, prompt-injection screening, PII redaction, output validation and provider failover. The only change in your code is the base URL.
NexusGraph-RAG: converts documents into a Neo4j property graph while keeping Qdrant vector embeddings, then fuses k-hop graph traversal with semantic search through reciprocal rank fusion for questions dense retrieval can't answer.
AegisRedTeam: fires a corpus of adversarial payloads at an LLM endpoint or RAG pipeline, classifies each response with a two-stage evaluator, grades per OWASP LLM Top 10 category, and emits an executive PDF alongside JSON, HTML and Markdown.
Sentinel Dossier: a five-agent pipeline that fuses near-real-time satellite change detection with legal land-use boundaries and multilingual news, reasons about whether a change is legally suspicious, and writes cited, human-reviewable dossiers for the cases that matter most.
TaskPilot: four LangGraph agents read across Gmail, Slack and Google Calendar, extract genuine action items, merge cross-channel duplicates, score priority and effort, and block-schedule a realistic day around existing meetings.
agent-saga-engine: a transactional runtime that executes agent tool calls as a Saga, each forward step paired with a compensating inverse, so a failure at step 3 automatically undoes steps 2 and 1 instead of leaving them permanently committed.
Chorus Ledger: tracks a site's acoustic indices and species detections over time, separates real change from seasonality, detects change points, retrieves candidate explanations from the field log and literature, and writes a confidence-scored ledger entry that says what it couldn't determine.
Rootstock: a farmer describes what they see; the agent structures it, pulls their soil profile and recent weather, retrieves vetted guidance filtered to their situation, writes an answer where every sentence cites a numbered claim, and then decides whether it should be answering at all.
VisionBot-RPA: an autonomous web agent that combines a vision LLM with accessibility-tree parsing to run multi-step workflows on sites without public APIs: form filling, data extraction, dynamic application interaction, from a natural-language goal.
Bright Return: cross-references synthetic-aperture-radar vessel detections against marine protected area boundaries and vessel-risk data to produce prioritized, cited briefs for human review. The analyst layer on top of a mature detection problem.
ForgeTune: fine-tunes a small open model to turn unstructured PSX company announcements into schema-valid JSON, on a hand-corrected dataset, evaluated against a prompted baseline instead of a straw man.
RingRelay: a compliance-first AI receptionist for spas, salons, clinics and studios. It rings the staff first, picks up only the calls, texts and emails nobody answered, handles routine questions from a grounded knowledge base, and escalates the moment anything is sensitive.
LedgerSentry: ingests a whole ledger from CSV or XLSX, checks every transaction against configurable rules and per-cohort statistical detection, and hands the reviewer a short, explained, severity-ranked queue instead of a spreadsheet.
SetterFlow: qualifies inbound Instagram leads through ordinary conversation, filters out the ones who aren't a fit, and books the rest onto the calendar without ever leaving the thread. No booking link, no channel switch. Built for coaches, consultants and agencies selling high-ticket offers.
CommissionSync: ingests insurance carrier commission statements in whatever form they arrive (PDF, CSV, Excel, scanned fax), normalizes them into one schema, checks every payment against the agency's own commission schedules, and surfaces only the rows a human needs to look at.
PerimeterRAG: a retrieval-augmented Q&A backend for multi-tenant SaaS. Fast, source-cited answers over each customer's documents, with access scoping enforced in the database rather than hoped for in application code, and an explicit 'not in your documents' instead of a confident guess.
DocuQuery: an n8n-orchestrated RAG pipeline that watches a Google Drive folder, keeps a Pinecone index of its PDFs current, and answers plain-language questions in Slack with citations back to the source document and page. 71 nodes across three workflows, 131 tests.
LaneMatch: watches multiple freight load boards, normalizes listings into one schema, and surfaces only the loads that fit a carrier's trucks, lanes and rate targets, with an explanation for every ranking, pushed to Slack.
AcquisitionIQ: scheduled connectors pull county distressed-property filings, a config-driven engine decides which fit the buy box, only qualifying records get skip-traced, and contact-ready seller leads land in Airtable. Second market, zero code changes.
Orbit: a multi-tenant platform where specialised agents analyse each client's own account data, produce evidence-backed findings, and route every proposed change through a human approval gate before anything executes. Not a content generator.
RecruitFlow AI: a conversational screening agent grounded in a RAG knowledge base, automated nurture for candidates who go quiet, and a recruiter-facing pipeline and insights layer. Built for staffing teams that need to scale outreach without adding headcount.
VoxAgent: wake word, offline speech recognition, a LangGraph tool-calling agent (weather, search, semantic notes, reminders) and spoken replies; the same core drives the mic loop, a text REPL and a live reasoning dashboard.
EdgeSLM-Engine: compiles Qwen2.5-0.5B and SmolLM2 to ONNX with KV-cache support, quantizes to INT8/FP16, and runs a hand-rolled generation loop on CPU, DirectML, CUDA, or in the browser via WebGPU. No cloud, no per-token cost.
SynthData-Forge: chunks unlabelled text, generates grounded seed instructions, hardens them with Evol-Instruct mutations, produces gold responses with Claude, filters by reward-model score, dedupes with MinHash LSH, and exports JSONL/Parquet/HF with full lineage per sample.
ReelFusion: fuses transformer content similarity, matrix factorization, deep collaborative filtering and gradient boosting into a weighted ranking with per-signal score breakdowns, plus SVD fold-in personalization without retraining.
ClinicalParse: an extraction pipeline that turns unstructured clinical notes into schema-enforced diagnoses, medications and dosages, with a self-correcting retry loop on validation failure, drug-interaction flagging, confidence annotations and FHIR-lite output.
Ghost Trap: fine-tunes a diffusion model on a handful of rare-species camera-trap images, composites generated examples onto real backgrounds, and measures on a sealed real-only test set against a pre-registered decision rule whether recall actually improved.
Reef Grain: a conditional diffusion model generating ensembles of reef-scale thermal fields from 5 km satellite SST, built to be validated against held-out in-situ loggers. Work in progress: the Phase 0 finding is that the satellite product is roughly 70× too smooth to contain reef-scale variability, which reframed the design; the generative model's own verdict is not yet established.
OrderBlock: a webhook-driven execution engine that validates signed TradingView alerts against Smart Money Concepts rules, filters them through an ML signal-quality scorer, applies position sizing and daily limits, and places orders through an Alpaca paper-trading adapter.
OrderPilot: a Django/Celery execution engine that validates risk, sizes a trade per account, dispatches it idempotently across multiple brokerage accounts, and exposes real-time alerts and a remote kill-switch through a Telegram bot and web cockpit.
PointFusion: fuses 200 Hz IMU data with 30 Hz depth and RGB streams to produce motion-compensated, spatially registered point clouds, exportable as PLY/PCD, served through a FastAPI job API.
ResumeAlign: a calibrated 0-100 fit score built from a four-layer skill-matching cascade (exact, synonym, fuzzy, embedding) over Gemini-extracted structures, showing which requirement matched via which layer against what evidence, and which are genuinely missing.
CareerPilot AI: transparent job-match scoring, resume tailoring with an honesty guard, job aggregation from official ATS APIs, and an application tracker whose outcomes train a personal match model. Next.js, Postgres, credits and billing.
GimbalForge: a desktop control panel for a pan/tilt camera rig that pushes sweep speed, smoothing, patrol radius and deadzone to ESP32/Arduino firmware over serial as you drag, with live telemetry, named presets, and a built-in simulator so the whole app demos with no hardware attached.
RenderShift AI: turns basic 3D renders into photorealistic visuals conditioned on locked canny and depth control maps per camera angle, and applies revision comments as masked, targeted edits rather than full regenerations. Runs the full cycle with no GPU.
ProbeSet AI: ingests video, extracts transcript and keyframes, drafts evidence-grounded adversarial Q&A pairs with a multimodal model, dedupes with pgvector, and routes every item through named human review before export as a tagged eval dataset. Demo pass over real videos not yet run.
Nothing matches that combination. Try widening the filters.
A 20-minute architecture call. No pitch, no slide deck. If I'm not the right person for it, I'll say so and point you somewhere better.