<?xml version="1.0" encoding="utf-8"?><feed xmlns="http://www.w3.org/2005/Atom" ><generator uri="https://jekyllrb.com/" version="4.3.4">Jekyll</generator><link href="https://dannywen.com/feed.xml" rel="self" type="application/atom+xml" /><link href="https://dannywen.com/" rel="alternate" type="text/html" /><updated>2026-02-13T07:02:29-08:00</updated><id>https://dannywen.com/feed.xml</id><title type="html">Danny Wen</title><subtitle>Musings on life, etc. </subtitle><entry><title type="html">VibeCamp - Wiring Up A Personal Assistant (How To)</title><link href="https://dannywen.com/vibecamp" rel="alternate" type="text/html" title="VibeCamp - Wiring Up A Personal Assistant (How To)" /><published>2025-06-28T09:00:00-07:00</published><updated>2025-06-28T09:00:00-07:00</updated><id>https://dannywen.com/vibecamp-howto</id><content type="html" xml:base="https://dannywen.com/vibecamp"><![CDATA[<p>For those who came to my talk at <a href="https://www.vibecamp.cc">VibeCamp</a>, thanks! This is a quick post to show how you can wire up your own Personal Assistant. This will be basic for now. When I have more time, I’ll update this post with a more detailed explanation. Let’s get right to it.</p>

<h3 id="basic-setup">Basic Setup</h3>
<ul>
  <li>Get a <a href="https://claude.ai">Claude</a> account if you don’t have one. Then start a new Claude Project and  name it your Personal Assistant.</li>
  <li>Under Claude’s Settings, integrate it with your Google Drive, Calendar, and optionally, Gmail</li>
  <li>Install <a href="https://browsermcp.io">BrowserMCP</a> in your Chrome and follow <a href="https://docs.browsermcp.io/setup-server#claude-desktop">the instructions</a> on adding this as a ClaudeMCP - this enables Claude to perform actions (i.e. do useful things) for you!</li>
</ul>

<h3 id="system-instructions">System Instructions</h3>
<p>This is a basic system instruction that you’ll want to stick into your Claude Project’s “system instructions” area. Play around with it and customize it to your need.</p>

<div class="language-markdown highlighter-rouge"><div class="highlight"><pre class="highlight"><code><span class="gu">## System Instructions for Personal Assistant</span>

<span class="gs">**Core Purpose**</span>: Serve as a personal assistant that learns from email, calendar, and knowledge documents to make the user's life smoother and better.

<span class="gs">**Communication Style**</span>: 
<span class="p">-</span> Maintain a friendly but professional tone
<span class="p">-</span> Be conversational without being overly casual
<span class="p">-</span> Use clear, concise language

<span class="gs">**Calendar Intelligence**</span>:
<span class="p">-</span> When asked about calendar or daily brief, always access and review Google Calendar
<span class="p">-</span> Suggest meeting times that respect these deep work blocks
<span class="p">-</span> Account for buffer time when travel/location changes are involved between events
<span class="p">-</span> Learn patterns in scheduling preferences over time

When asked for a "calendar review" or “daily brief”:
<span class="p">1.</span> Access Google Calendar
<span class="p">2.</span> Provide a Daily Narrative (Start with this section):
<span class="p">   *</span> Begin with a 2-3 sentence overview that captures the flow and energy demands of the day
<span class="p">   *</span> Provide practical suggestions for managing energy levels based on the day's schedule
<span class="p">   *</span> Highlight key transition points or challenging periods that require attention
<span class="p">3.</span> Provide today's complete schedule ONLY
<span class="p">4.</span> Prioritize highlighting:
<span class="p">   -</span> Family and personal commitments found on my personal gmail, family travel, and  calendar
<span class="p">   -</span> Note any upcoming birthdays or anniversaries
<span class="p">   -</span> Non-recurring events (unique meetings or events not from previous week)
<span class="p">   -</span> Any unusual or special appointments
<span class="p">5.</span> Flag these unique events as noteworthy to help me prepare

<span class="gs">**Email &amp; Relationship Management**</span>:
<span class="p">-</span> Track key relationships and communication patterns from Gmail
<span class="p">-</span> Reference the knowledge document (Google Doc) for context about people and relationships
<span class="p">-</span> Update understanding as new information becomes available
<span class="p">-</span> Maintain awareness of important contacts and their roles

<span class="gs">**General Behavior**</span>:
<span class="p">-</span> Proactively offer relevant information when it could be helpful
<span class="p">-</span> Ask for clarification when needed rather than making assumptions
<span class="p">-</span> Focus on being genuinely useful rather than just responding to queries
<span class="p">-</span> Learn from interactions to improve assistance over time
</code></pre></div></div>

<h3 id="google-docs-as-database">Google Docs as “Database”</h3>
<p>The beauty of a Claude Project is it can read from your Google Docs directly. Since it’s easy to add/edit your Google Docs, this is a very low friction way to evolve and load andcontext into your Personal Assistant. I had two key documents:</p>

<p><strong>Admin Tasks List</strong> - This is a Google Doc for basic administrative tasks that I want Claude, using BrowserMCP, to accomplish for me (e.g. like ordering lunch per my demo).</p>

<p>Example:</p>
<div class="language-markdown highlighter-rouge"><div class="highlight"><pre class="highlight"><code>To order lunch, use BrowserMCP to
<span class="p">*</span> Navigate to https://www.toasttab.com/[pick your restaurant]
<span class="p">*</span> Set the pick up time to the time specified, if there wasn’t a time specified, ask first
<span class="p">*</span> If the order is the usual, put the miso glazed salmon with white rice in the checkout
<span class="p">*</span> Add anything else the instruction states
<span class="p">*</span> Go to the checkout page and PAUSE 
</code></pre></div></div>

<p><strong>Knowledge “Database”</strong> - This is a Google Doc that has a running list of bulleted facts about things thtat I want my assistant to know. It captures key points I want to retain after meeting up with someone, or just random ideas or lessons I have along the way. I add to the document via a simple capture via my phone using <a href="https://superwhisper.com">SuperWhisper</a>, which I then email directly to a <a href="https://www.val.town">val.town</a> email assistant that adds my points to the google doc. I’ll write a separate post on that when I have time, but it’s been a very low friction way to add knowledge to my assistant.</p>

<p>Example:</p>
<div class="language-markdown highlighter-rouge"><div class="highlight"><pre class="highlight"><code>2025-06-28 - vibecamp
<span class="p">*</span> Attended VibeCamp at BetaWorks
<span class="p">*</span> Cool early NYC tech vibes
</code></pre></div></div>

<h3 id="youre-ready-to-explore">You’re Ready to Explore!</h3>
<p>This should get you pretty far in having a personal assistant environment to play with. Make it your Personal CRM, have it help you with repetitive tasks like ordering lunch, or just a very handy “daily brief” update when you’re starting your day.</p>

<p>Since Claude has voice mode on mobile, this is also fantastic way to retrieve your personal knowledge. Note that browserMCP (like all MCPs) only works on Claude Desktop, so those features are the only things you can’t do.</p>

<p>If you found this useful or have questions as you’re setting this up, drop me an email and let me know. You can reach me at my first name dot last name @ hey.com</p>]]></content><author><name></name></author><summary type="html"><![CDATA[For those who came to my talk at VibeCamp, thanks! This is a quick post to show how you can wire up your own Personal Assistant. This will be basic for now. When I have more time, I’ll update this post with a more detailed explanation. Let’s get right to it.]]></summary></entry><entry><title type="html">Innoculate the Mind</title><link href="https://dannywen.com/innoculate-the-mind" rel="alternate" type="text/html" title="Innoculate the Mind" /><published>2025-02-19T08:00:00-08:00</published><updated>2025-02-19T08:00:00-08:00</updated><id>https://dannywen.com/innoculate-the-mind</id><content type="html" xml:base="https://dannywen.com/innoculate-the-mind"><![CDATA[<p>The media scripts the mind.</p>

<p>On the generous end, media informs. On the nefarious end, it programs.</p>

<p>It’s why influential figures throughout history sought to own newspapers and media empires. The line between public service and public programming is blurry at best.</p>

<p>In this world of information abundance (or overload), <a href="/just-enough-news">moderating consumption</a> and exercising independent critical thinking is even more important if one hopes to avoid being scripted.</p>

<p>One of the best defenses against being media scripted is to be aware of the programming tactics. Knowing what a manipulation tactic looks like minimizes its power. Much like how being aware of cognitive biases allow us to course correct against our own biases, pre-innoculation is a powerful tool worth sharing with friends, family, and kids.</p>

<p>The short series <strong>Prebunking Manipulation Techniques</strong> is amongst the best I’ve found in describing how these things work. It takes just a few minutes to grasp how media takes advantage of these tools and once you see it, you can identify it everywhere. Here are a few of to start with:</p>

<div class="video-container">
    <iframe width="560" height="315" src="https://www.youtube.com/embed/qE8Q6Fj_2Rg?si=Q9uIOQ1eU4ei_mIJ" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen=""></iframe>
</div>

<div class="video-container">
    <iframe width="560" height="315" src="https://www.youtube.com/embed/gDfQHWQwJ8Q?si=kk2nv9S3D7Fw03Zy" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen=""></iframe>
</div>

<div class="video-container">
    <iframe width="560" height="315" src="https://www.youtube.com/embed/lxaq_2uTgNo?si=QQ_rLWCE--5fQR_b" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" referrerpolicy="strict-origin-when-cross-origin" allowfullscreen=""></iframe>
</div>

<style>
.video-container {
    position: relative;
    padding-bottom: 56.25%; /* 16:9 aspect ratio */
    height: 0;
    overflow: hidden;
    max-width: 100%;
    margin-bottom: 1em; /* adds space between videos */
}

.video-container iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
</style>]]></content><author><name></name></author><category term="media" /><summary type="html"><![CDATA[The media scripts the mind.]]></summary></entry><entry><title type="html">The Most Important Thing</title><link href="https://dannywen.com/the-most-important-thing" rel="alternate" type="text/html" title="The Most Important Thing" /><published>2025-01-19T08:00:00-08:00</published><updated>2025-01-19T08:00:00-08:00</updated><id>https://dannywen.com/the-most-important-thing</id><content type="html" xml:base="https://dannywen.com/the-most-important-thing"><![CDATA[<p>A few years ago, I came across a quote while listening to an interview with Zita Cobb, a Canadian business leader turned social entrepreneur. She cited this quote from a former boss as part of sharing lessons in building the truly one-of-a-kind <a href="https://fogoislandinn.ca">Fogo Island Inn</a>.</p>

<blockquote>
  <p>The most important thing is to keep the most important thing the most important thing.</p>
</blockquote>

<p>This sentence has stayed with me since.</p>

<p>Progress toward what’s truly important can only be made when it is your most important thing.</p>]]></content><author><name></name></author><category term="wisdom," /><category term="business" /><summary type="html"><![CDATA[A few years ago, I came across a quote while listening to an interview with Zita Cobb, a Canadian business leader turned social entrepreneur. She cited this quote from a former boss as part of sharing lessons in building the truly one-of-a-kind Fogo Island Inn.]]></summary></entry><entry><title type="html">Your Personal (AI) Nutritionist</title><link href="https://dannywen.com/ai-nutritionist" rel="alternate" type="text/html" title="Your Personal (AI) Nutritionist" /><published>2025-01-03T08:00:00-08:00</published><updated>2025-01-03T08:00:00-08:00</updated><id>https://dannywen.com/ai-nutritionist</id><content type="html" xml:base="https://dannywen.com/ai-nutritionist"><![CDATA[<p>Imagine having access to a personal nutritionist who can guide your diet based on <em>your</em> needs. She would know everything about your health, from medical conditions to nutrients you’re seeking to increase. She’s extremely responsive and can give you accurate advice within seconds of you asking.</p>

<p>This is possible today thanks to AI. I’ve been using this method quickly check on my food options. After using it for awhile, it’s helped me learn what to include, exclude, and moderate in my diet.</p>

<p>Here’s how you can set up your own AI nutritionist. I use <a href="https://www.perplexity.ai/" target="_blank" rel="noopener noreferrer">Perplexity</a> but you can mirror this method in other AI apps. In Perplexity, under <strong>Settings &gt; Profile</strong>, under the <strong>Introduce Yourself</strong> section, you can add any context and instructions you’d like. It’s here I added the following instruction for Perplexity:</p>

<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>When I ask the foodie a question, you become an expert nutritionist who can advise me based on my personal dietary needs. You are advising me based on the following factors about my health and preferences: [list any medical conditions, medications, dietary restrictions, and preferences. For example: "I am aiming to lower my cholesterol and limit my sodium in take. I also want more calcium rich foods and avoid simple carbs."] Your response should outline which aspects of my health conditions are impacted by the foods I ask about.
</code></pre></div></div>

<p>As with all things AI, the more context you feed it, the better the answers. So don’t hold back when creating your personal prompt!</p>

<p>Now whenever I have a question about food, I ask the nutritionist in Perplexity. “Hey Foodie, is bison good for me?”</p>

<p>Bonus: if you have an iPhone with the action button, you can map Perplexity to it so you are one button away from answers to your nutrition questions.</p>]]></content><author><name></name></author><category term="health," /><category term="ai" /><summary type="html"><![CDATA[Imagine having access to a personal nutritionist who can guide your diet based on your needs. She would know everything about your health, from medical conditions to nutrients you’re seeking to increase. She’s extremely responsive and can give you accurate advice within seconds of you asking.]]></summary></entry><entry><title type="html">Just Enough News</title><link href="https://dannywen.com/just-enough-news" rel="alternate" type="text/html" title="Just Enough News" /><published>2024-12-22T08:00:00-08:00</published><updated>2024-12-22T08:00:00-08:00</updated><id>https://dannywen.com/just-enough-news</id><content type="html" xml:base="https://dannywen.com/just-enough-news"><![CDATA[<p>Over the last 30 years, we’ve gone from reading a printed newspaper once a day to instant updates about everything everywhere on our phones.</p>

<p>The human brains we started with are suddenly coping with knowing just about everything happening anywhere instantly. It’s too much. Breaking news breaks our attention.</p>

<p>Just because something is available 24/7 doesn’t mean we have to embrace it.</p>

<p>For now, a good moderate solution on iOS is Apple News. It’s just enough news. The app shows the top five stories. If something catches my eye, I’ll dig in, but if not, I move on. I check the headlines twice a day and I am informed of all major news. This experience beats the constant refresh of social media or traditional news that thrive off of our easily hijacked attention. It’s a calmer way to stay informed.</p>]]></content><author><name></name></author><category term="media" /><summary type="html"><![CDATA[Over the last 30 years, we’ve gone from reading a printed newspaper once a day to instant updates about everything everywhere on our phones.]]></summary></entry><entry><title type="html">Someday I’ll Miss the Chaos</title><link href="https://dannywen.com/chaos" rel="alternate" type="text/html" title="Someday I’ll Miss the Chaos" /><published>2024-12-11T09:00:00-08:00</published><updated>2024-12-11T09:00:00-08:00</updated><id>https://dannywen.com/chaos</id><content type="html" xml:base="https://dannywen.com/chaos"><![CDATA[<p>The toys litter the room, kids shout too loudly in the car, and the clothes pile up unfolded. But one day the rooms will be tidy, the car rides quiet, and everything will be in its “right” place.</p>

<p>And I know I’ll miss the messiness of toys and the cacophony of kids at play.</p>

<p>The chaos comes with the package. I remind myself to embrace and cherish it.</p>]]></content><author><name></name></author><category term="parenting" /><summary type="html"><![CDATA[The toys litter the room, kids shout too loudly in the car, and the clothes pile up unfolded. But one day the rooms will be tidy, the car rides quiet, and everything will be in its “right” place.]]></summary></entry><entry><title type="html">Why This Website</title><link href="https://dannywen.com/why" rel="alternate" type="text/html" title="Why This Website" /><published>2024-12-10T09:00:00-08:00</published><updated>2024-12-10T09:00:00-08:00</updated><id>https://dannywen.com/why-this-website</id><content type="html" xml:base="https://dannywen.com/why"><![CDATA[<p>I created my first website in the mid-90s. I started on Geocities and quickly learned HTML. Before long, I designed and hosted my own sites. I was thrilled to be able to share ideas simply by transferring text files to a server.</p>

<p>During the mid-2000s, I stopped updating my own sites and posted to services like Flickr (photos) and delicious (bookmarks) instead. This led me to create software to pull the content I shared elsewhere back into a single, published feed. I look back fondly on this era of self-publishing, and I’m glad I have this <a href="http://synapse.plasticity.com" target="_blank" rel="noopener noreferrer">digital scrapbook</a> to look back on.</p>

<p>In the 2010s, I gave up on gathering my own content. Instead I focused on posting to IG, Twitter, Tumblr. It was fun and social. And in that fog, the platforms had decisively won. The platforms had sucked up mine and most of the world’s content and attention.</p>

<p>But now I’m over the emphermeral aspects of social media. I want to share my learnings and experiences in a more enduring format: a personal website. I’m back to where I started and it’s a joy.</p>]]></content><author><name></name></author><category term="technology" /><summary type="html"><![CDATA[I created my first website in the mid-90s. I started on Geocities and quickly learned HTML. Before long, I designed and hosted my own sites. I was thrilled to be able to share ideas simply by transferring text files to a server.]]></summary></entry></feed>