Personal Board of Advisors
Claude Code · context engineering · custom skill · MCP (Calendar) · PowerShell watchdog
View the open-source template on GitHub
The problem
Generic AI advice is worthless — "it depends on your situation" — because the model doesn't know your situation. I wanted advice from the specific experts I'd choose for my specific life: a business-scaling coach, a boring-business investor, and a Filipino money coach. I can't call Alex Hormozi, Codie Sanchez, or Chinkee Tan. But I can engineer their thinking into context Claude can use — grounded in a brutally honest profile of me.
I was my own first client. This isn't a demo with fake data; I use it daily, and it has already made real decisions (including vetoing one of my own purchases).
Architecture
Context engineering, not prompting
The interesting work is in the pipeline, not a single prompt. Raw content notes stay separated from synthesized wikis, so personas stay grounded in what an advisor actually says — their frameworks, vocabulary, and recurring stories — instead of the model's vague impression of them. Each wiki ends with a "how this maps to me" section connecting the advisor's ideas to my real constraints, which is what keeps the output from collapsing into generic guru advice. Disagreement is a feature: the skill explicitly surfaces where advisors clash and why (different risk profiles), then forces a decisive synthesis instead of a hedge.
The skill in action (sanitized excerpt)
/ask-the-board spend this month's budget on design tools, or the shop's opening promo? ✅ Where they agree: don't buy the tools — free tiers cover both needs. ⚔️ Where they clash: two advisors say deploy the full budget into the opening; the money coach says spend the minimum and start saving. 🎯 Synthesis: hold the tools. ~2/3 to opening-day visibility (quotes first), ~1/3 starts the savings habit. Three dated actions → pushed to Google Calendar via MCP, reasoning embedded in each event.
The drift watchdog
In the interview I named my own early-warning sign: going quiet for 2+ days. So the system watches for it. A scheduled PowerShell task checks the file-modified times of my local Claude Code session transcripts — no API, no polling, zero cost. Past 48 hours of silence, it emails me a get-back-on-track letter written in the advisors' voices via Gmail SMTP (DPAPI-encrypted app password, 48-hour cooldown so a long drift doesn't spam). Reminders handle my tasks; this handles my disappearing — and it only speaks when I've actually gone dark.
Privacy by design
The system only works if the inputs are brutally honest — which is exactly why the real data can never ship. The public repo is a template: the interview protocol, profile and wiki schemas, the generalized skill, the watchdog, and fictional example data. My actual profile, knowledge base, and letter are gitignored by default, so anyone who clones it can't accidentally commit their own life either.
Honest about what's verified
The watchdog's detection logic was tested against real session files before shipping, and
the full email path was test-fired end-to-end (-Force flag) before trusting
the schedule. What's not automated is honest too: the Gmail connector for Claude
is draft-only, so conditional email needed its own SMTP rail — the case study writes that
limitation down instead of pretending the connector sends. And the advisor personas are
synthesized from public content for personal use; the raw notes stay private.