K/ home
Back to portfolio

// Behind the portfolio

The AI platform I built to run on autopilot

This site is the front door. Behind the login is a personal AI operations platform I designed, built, and deploy myself — autonomous agents that scout the web and my inbox, a CRM that reads email to classify people, a social studio, and a résumé engine. This is the AI engineering I want to do full-time.

6autonomous agents
3cron systems
1builder — end to end
Cron / eventAgent · LLM + webShared stateYou reviewAction

The systems6 built & live

01

Autonomous agent crew

Six specialised agents that scan, score, and surface — on a schedule.

  • News, Jobs, Email, Investing (Atlas), Stock-screening and a Social observer, each with its own persona and job.
  • Every scout does a real web search first, then is strictly limited to the URLs it found — no hallucinated links.
  • You can open a chat with any one of them, or all at once in a chief-of-staff mode grounded in their latest reports.
Groq LLMsTavily / BraveRSSVercel Cron
02

Agents that talk to each other

A shared blackboard lets them collaborate without being wired together.

  • A Social Observer learns my content voice and writes it to a shared profile the other agents read.
  • The News scout judges each story against that profile and auto-saves the ones that fit as post ideas.
  • One writes, any surface reads — adding a new agent to the loop is a single function call, not a rewrite.
SupabaseBlackboard patternLLM scoring
03

Inbox-driven CRM

Turns a mailbox into a classified, enrichable contact database.

  • Harvests every contact from job/recruiter email automatically — replied or not.
  • Classifies each relationship (recruiter, hiring manager, vendor, visa, …) by reading their actual email history, not their domain.
  • Enriches phone / LinkedIn / title from signatures behind human approval, and runs guard-railed, role-targeted bulk outreach.
Gmail APIGroqPostgresExclusion guards
04

Social studio

Draft, illustrate, schedule, and measure — per platform.

  • Generates genuinely different posts per network — LinkedIn hook + CTA, X hot-take, Instagram story.
  • Makes the image too (text-to-image) or writes posts FROM an uploaded image with a vision model.
  • A daily auto-drip posts one image a day at a time I set, then an analytics tab reads what actually reached people.
Groq visionfal.aiBufferCron scheduling
05

Résumé engine

Paste a job description, get an ATS-tuned résumé — as a real file.

  • Tailors the résumé to the role, scores ATS + keyword fit, and flags matched vs missing keywords.
  • Reads an uploaded PDF/DOCX as the base (extracts the text server-side) or uses my master résumé.
  • Exports a real, selectable PDF and a Word document — no print-dialog hack.
GroqjsPDFmammoth / unpdf
06

Model Context Protocol

The agents pull live data through the same protocol Claude uses for tools.

  • A token-gated, read-only MCP server exposes my portfolio, net worth, dividends and budget over JSON-RPC.
  • The briefing and investing agents call those tools directly — richer than a flat REST snapshot.
  • Tolerant handshake: an optional initialize can hiccup without breaking the data pull.
MCP / JSON-RPCBearer authSHA-256 tokens

How it's engineeredthe parts that matter

Human-in-the-loop by default

Agents surface and draft; a human commits. Anything that acts outward is opt-in — the auto-reply sender ships OFF, behind an explicit toggle.

Idempotent triggers

A 15-minute cron drives the daily posts, gated by a timezone clock, a once-a-day flag and an atomic row claim — so it can never double-send.

Loose coupling

Agents coordinate through shared state (a profile row, an ideas queue), never point-to-point — so the system grows without rewiring.

Fail safe, not open

Every guard defaults to deny: a missing flag reads as off, a failed save leaves it off, tolerant JSON parsing recovers instead of crashing a flow.

The stack

Next.js 16TypeScriptSupabasePostgres + pgvectorVercel CronEdge middlewareGroq · Llama + visionModel Context ProtocolGmail OAuthBufferTailwind
Let's build

This is the kind of AI engineering I want to do full-time.

Seven years bridging enterprise SAP and now AI systems — shipped solo, end to end. If your team is building with agents, LLMs, or automation, I'd love to talk.