Personal AI Agent
Live
Automated Treasury Dashboard Watcher
A scheduled agent that watches a financial workbook for changes and auto-generates a polished PDF dashboard whenever the numbers update — no manual trigger needed.
Problem. An HOA treasury workbook was updated on an irregular cadence, and someone had to remember to rebuild the board's financial dashboard by hand each time.
How it works. Every Friday the agent compares the workbook's modification time against a stored baseline. If the file changed, it regenerates a locked-design PDF dashboard (expenses and deposits 'since last report out' across multiple accounts) from a reusable template, saves it alongside prior versions without overwriting, and reports the headline numbers. If nothing changed, it exits silently.
Scheduled AgentFile-Change DetectionExcelPDF GenerationIdempotent
Personal AI Agent
Live
Equipment Deal Watchlist Agent
A weekly market-scanning agent that hunts a used-equipment marketplace for machines matching a precise spec, dedupes against past finds, and pings me only when something new and genuinely matching shows up.
Problem. Manually checking equipment listings across ten states every week for a narrow set of criteria is tedious and easy to let slip.
How it works. The agent scrapes listings across multiple state pages, then filters on brand, model year, engine type, hour count, a specific attachment, and region. It reads a running log to skip anything already seen, and only when a brand-new match survives every filter does it post a formatted entry to a tracking page and send a notification. Zero matches means zero noise.
Scheduled AgentWeb ScrapingDeduplicationNotionSlack Alerts
Personal AI Agent
Live
Calendar → Notion To-Do Sync
A daily, idempotent sync that mirrors my Google Calendar into a Notion weekly to-do list across a rolling three-week window — and never destroys a thing.
Problem. Keeping a Notion planner in step with a calendar by hand means constant re-typing, and naive automation risks creating duplicates or wiping hand-written notes.
How it works. Runs every day and reconciles each week's events against the existing Notion page: adds new items, overwrites only today-or-future entries while preserving checkbox state, and leaves past days as historical record. Crucially, it never deletes — when a calendar event disappears, it flags the orphaned to-do in a Slack alert for human confirmation instead of guessing.
Scheduled AgentGoogle CalendarNotionIdempotent ReconciliationSafe-by-Default
Client Work (anonymized)
Delivered
Bid Estimating Web App
A React web app that lets a construction-services firm build project bids interactively, with live pricing and markup logic — delivered through UAT.
Problem. Estimators were building bids in ad-hoc spreadsheets, with no consistent structure or repeatable pricing logic.
How it works. A single-page React app captures line items and applies configurable company and markup settings to produce a structured bid, packaged as a self-contained build the team could launch locally. (Client-specific pricing constants and branding are omitted from this public write-up.)
ReactViteWeb AppEstimatingUAT-Delivered
Personal AI Agent
Live
Human-in-the-Loop Deletion Processor
The safety valve behind the calendar sync: it reads my Slack replies and applies only the deletions I explicitly approve.
Problem. Automated deletion is dangerous. I wanted the convenience of cleanup without ever letting a bot remove something I didn't confirm.
How it works. Every couple of hours during the day it reads the most recent 'possible deletions' alert and any replies after it, interprets natural instructions like 'delete 1 3' or 'keep the rest', and removes only the exact, week-scoped items I confirmed. It's fully idempotent — re-runs find nothing to do and stay quiet — and it confirms with a checkmark reaction only when it actually changed something.
Scheduled AgentApproval WorkflowSlackNotionIdempotent
Personal AI Agent
Live
Gmail Idea Auto-Labeler
A weekly pass that files the links and ideas I email myself into the right topic buckets — auto-labeling the confident ones and flagging the judgment calls for me.
Problem. I bookmark ideas by emailing them to myself, and the inbox turns into an undifferentiated pile within days.
How it works. Each week it finds recent self-sent emails that aren't yet categorized, determines each one's topic (opening linked social posts through a browser agent to read the actual content when the subject line isn't enough), and maps it to an existing sub-label like AI Tools, AI Agents, News, Investing, or Personal. It auto-applies only high-confidence labels and hands me a short 'flagged for review' list for the borderline ones.
Scheduled AgentGmailBrowser AutomationContent Classification
Personal AI Agent
Paused
AI Session Knowledge Indexer
An indexer that turns my raw AI chat sessions into a searchable knowledge base — titled, categorized, tagged, and deduped.
Problem. Valuable decisions and learnings get buried in chat history and are impossible to find later.
How it works. Reviews recent sessions, skips the trivial ones, and for each meaningful conversation extracts a title, a tool source, a category, 2–4 sentences of key takeaways, tags, and whether there are follow-ups. It checks the knowledge base for the session ID before writing so it never duplicates, then logs a clean entry to a Notion database.
Scheduled AgentSummarizationNotion DatabaseDeduplication
Client Work (anonymized)
Delivered
Weighted Bid-Probability Model
A spreadsheet model that scores a sales pipeline by win-probability and produces a weighted forecast, with a user guide for the team.
Problem. The pipeline was a flat list of opportunities with no way to weight it by likelihood, so forecasts were guesses.
How it works. The model applies qualification frameworks (BANT / MEDDIC-style scoring) through spreadsheet logic to assign each opportunity a probability, then rolls those up into a weighted 'expected value' view. Shipped with a written user guide so the team could maintain it themselves.
ExcelSales ForecastingProbability ModelingDocumentation
Client Work (anonymized)
Delivered
Daily Learning Micro-Course Agent
A scheduled agent that posts a ~10-minute daily learning snippet from a business book to a team knowledge space, with a Friday quiz and a live desktop widget.
Problem. Good books get bought and never read. The goal was to make consistent, bite-sized learning automatic.
How it works. On weekday mornings the agent publishes a short, structured lesson to a shared Notion space and caps the week with a Friday quiz, backed by a live artifact that surfaces the latest snippet on the desktop. An early example of the scheduled-agent pattern I now use across my personal projects.
Scheduled AgentNotionLive ArtifactMicro-Learning