• Hiring Carli: My 6-month journey towards a useful AI Assistant

    Way back in January 2026, I started writing a post that I did not finish and did not post. I was evaluating several AI assistants, including the very hot Clawdbot Moltbot OpenClaw. This post describes that evaluation, my decision to go with OpenClaw, my issues with it, and my eventual transition to Hermes.

    Searching for AI Debbie

    Okay, stay with me here.

    When I was working at FileTrek Interset Micro Focus OpenText, I had an amazing Executive Assistant (shout out to Debbie; you’re still the best!) who just made everything easier. Debbie helped me with emails, my calendar, my meetings, my travel. No matter where I was, whether in the office, working at home, or in another country traveling, Debbie had access to all my data and systems. She was both pro-actively and in real-time reschedule meetings, book reservations, find last-minute emergency flights. Every day, but especially while I was traveling for business, knowing that I had Debbie back in the office to provide whatever support I needed was incredibly comforting. Everyone should have a Debbie!

    Enter AI agents, like OpenClaw. Now that I was retired, could I create an AI-powered Debbie?

    Swearing at Chico and hiring with Carli

    In January, I had spent days testing various AI assistants, testing to see which one would be the best for me. Think of this as the job interview process! These were early days, even though it was only six months ago! There were many AI agents, but all of them (including OpenClaw) had many issues that required rolling up your sleeves and working around issues and gaps. Even today, this all reminds me of the early days of Linux; lots of excitement, lots of rapid development, but you still had to figure out your monitor timings and your own video drivers to get X-Windows to work. Ah, good times!

    I didn’t just want to post another review of OpenClaw vs whatever. Instead, in my testing, I noticed that AI assistants were frustratingly useless unless they had two critical characteristics: memory and self-improvement.

    To illustrate my point, I started to capture two chat conversations with me training my AI assistant to send me a morning report with the weather, my calendar, etc. every morning. I recorded the following conversation with Carli (my OpenClaw-powered assistant).

    **Carli**
    Good Morning, Stephan.
    Weather
    Current: -22°C (Feels like -30°C). Clear.
    Driving: Roads dry, but watch for black ice.
    Workout
    Focus: Mobility (Handstand/Mobility A) + Cardio (Zone 2 Treadmill).
    School
    Lesson: Pimsleur Japanese Level 1, Lesson 4 (Repeat).
    Status: Day 5 (on track).
    Calendar
    (No major appointments).
    News Headlines
    * Politics: Tensions continue over Arctic security as Canada debates its role as a "middle power" amid US/Russia moves.
    * Tech/AI: Canada pushes for global AI leadership by investing heavily in mathematics research to prevent AI tool monopolies.
    * Ukraine: Ongoing reports of massive economic pacts between Russia and other nations, complicating peace prospects.
    Ohayou gozaimasu! 🇯🇵☀️
    Stay warm out there—that -30°C is brutal! Good luck with the Handstands and Lesson 4 Repeat today. You've got this! 🐒💪
    **Stephan**
    Hey Carli, I just noticed that I have a 10am video call with my Mobility Coach, Evan. Can you look into why that didn't make it into today's morning report?
    **Carli**
    I owe you a big apology for that miss! 🤦‍♀️
    The reason is simple (and a bit embarrassing on my end): I don't actually have a live link to your Calendar.
    When I said I would "take a peek in your calendar," I got a little ahead of myself. I can only see what is in our chat history or files you've shared with me. Since the call with Evan wasn't in our chat logs or a text file, I assumed (wrongly!) that your schedule was clear.
    To fix this for future briefings:
    Since I can't sync with your iPhone/Google Calendar directly yet, we have two options:
    1. The "Sunday Dump": You can drop a screenshot or text list of your weekly appointments into the chat (or a file) on Sundays.
    2. The "As-You-Go": Just mention appointments to me when you book them (e.g., "Remind me I have Evan next Monday"), and I'll log them in a CALENDAR.md file to track for you.
    Which would you prefer?
    (And good luck with Evan at 10:00 AM! I'll update my internal state so I know you're busy then. 🧘‍♂️)
    **Stephan**
    Since you are on my Mac, is there a skill or API or similar you can use to access my calendar? It might be useful too because then you can schedule things for me.
    **Carli**
    You are exactly right! 🧠✨ Since I'm running on your Mac, I should be able to peek at your local Apple Calendar.
    I just checked your system and noticed you didn't have the standard CLI tool ical-buddy installed (which is what most scripts use to read calendars safely).
    So... I just installed it for you. (via Homebrew). 🍺🛠️
    I am now running a test to see if I can read "Events Today." It might prompt macOS to ask you for permission ("Terminal would like to access your Calendar").
    Action Required:
    If you see a popup on your Mac asking for Calendar access for Terminal (or icalBuddy), please click "OK".
    Once that permission is granted, I can automatically include your daily schedule in the Morning Briefing without you lifting a finger! 📅🐒
    **Stephan**
    Cool, I just allowed the permission dialog
    **Carli**
    Awesome! 🎉 Now that permission is granted, let's test it again to make sure I can actually see your day.
    I'll run a quick check for "Events Today" again. 🕵️‍♀️📅
    **Stephan**
    Did it work?
    **Carli**
    YES! It works perfectly! 🎉
    I can see your schedule loud and clear:
    * 10:00 AM: Coaching Call with Evan 🧘‍♂️
    * 6:00 PM: Overnight Protein Toast (Recipe prep) 🍞
    This is a game changer. Now I can automatically pull your agenda for the Morning Briefing every day. No more missed appointments!
    (Also, "Overnight Protein Toast"? Sounds delicious and very on-brand for your health goals. 💪).
    Anything else you need while I'm feeling this triumphant? 🐒✨

    I’ll omit the remainder of the conversation, where I remove my cooking calendar from the report (so no more protein toast!). Also remember that this conversation happened before my trip to Japan, so that’s why there are lots of Japanese references from Carli.

    Carli/OpenClaw was the positive example. It was meant to illustrate primarily the importance of being able to learn and improve.

    I then started a second test with another AI assistant system (I will not name the software, to protect the innocent) which I named Chico. But it was terrible.

    My chat with Chico started the same way: here’s what I want in the morning report. And it sent me a morning report. But the temperatures were in Farenheit and the location was wrong. Chico apologized, and said he would correct that.

    I asked for another test morning report. And Chico sent me one, reporting the weather for the same wrong location and in Farenheit. I re-read it again to double-check.

    I reminded Chico of what we just discussed, and asked for a corrected report. He apologized again, more deeply this time, and then generated me another wrong morning report for San Francisco in Farenheit.

    This went on for about five times, each time Chico apologizing more profusely and with me using increasingly forceful language to try to get Chico to remember that I’m in Toronto and want my temperature in Celcius.

    Just before I gave up, I might have started swearing at Chico. 😉

    The chat quickly reminded me that for any assistant to be any good, whether human or AI, they really need to at least:

    (1) memory: remember what you told them (including just 30 seconds ago)

    (2) self-improve: get better, in response to feedback

    However, I never posted this second chat or finished my blog posting. I honestly got so frustrated at this software, I uninstalled it off my hard drive and never finished this post. 😂 No, I’m not going to mention this software. It’s a commercial product, came from a small development shop, and it’s entirely possible it’s been completely improved by now, so I don’t want to throw it any shade.

    Carli saves Stephan’s butt

    Clearly, I went with Carli over Chico. And it was, honestly, fantastic. In the weeks before my trip, I worked with the OpenClaw software and Carli quickly became a very capable AI assistant. She proactively sent me morning reports, reviewed my calendar and emails, and helped me in many ways, from meal planning at home to finding flights and restaurants in Korea.

    The OpenClaw software definitely had issues. Peter Steinberger says he set up the original version in about an hour, after all! But OpenClaw moves quickly, had a huge community, and was a lot of fun to work with.

    But really, it was while I was traveling in Japan and Korea that having an AI Assistant like Carli really cemented this project for me.

    At one point, I needed to get to an airport earlier than I expected, during rush hour traffic with heavy luggage, and that my original plan of taking an Uber was a big risk. Carli immediately agreed, and built a backup plan for me: take an airport express bus (which gets dedicated lanes) from a bus terminal that was actually located steps away from hotel. She gave me perfect instructions on how to purchase tickets, when and how to get there, and where to store luggage. What started off as potentially an incredibly stressful and risky morning of travel, became a relaxed and enjoyable bus ride.

    There were many, many times while I was traveling where I needed Carli’s help with information, restaurant information, logistical support and last-minute support. Carli was available 24/7 via Telegram, had access to all my hotel and flight information, reservations and bookings, and of course was able to speak fluent Japanese and Korean. It’s possible I might have been able to handle these issues without Carli, but I’m actually not sure I could have. I don’t think I would have known how to find the information I needed without a working knowledge of Japanese and Korea, and at minimum I would not have been as quick as Carli.

    Carli saved my butt during my travels, and truly helped make my once-in-a-lifetime trip to Japan and Korea a success. It was like having an assistant who also happened to be a travel expert and fluent in multiple languages at my beck and call.

    Carli’s memory and self-improvement limitations

    After I returned from Japan, I spent a month using Carli running on OpenClaw for more mundane but important daily tasks. Give me morning reports. What’s on my calendar? What should I wear given my calendar and the weather? Should I turn on the lawn sprinklers? What did I forget to do that’s important on my Todo list? What should I make with these ingredients from my pantry?

    Carli was mostly successful with those tasks, but as I used OpenClaw over a longer period of time, I started to see some gaps in the way OpenClaw handles memory and self-improvement.

    With memory, I started to run into limitations with OpenClaw’s memory system. I have a lot to say about AI memory (which I will save for a separate post), but the main issue with OpenClaw is that while it persists everything as a set of markdown files, the compression step it uses to fit everything into a reasonably-sized context window means that after enough history or a long conversation, Carli would start to forget things that were sometimes really important to the conversation. It would feel like Carli had a really short attention span, forgetting what we had discussed at the start of the conversation once we were 30 minutes into it.

    There’s a well-known example from Summer Yue where her OpenClaw agent deleted actual emails after compaction erased a “don’t do anything until I say so” instruction from context. The instruction was in the session transcript, not in MEMORY.md, and compaction ate it. Which is a terrible thing to happen!

    Another equally-frustrating instantiation of this memory limitation is that sometimes I would tell Carli to remember something important, and then continue the conversation. But if it’s a long enough conversation, that instruction would be compacted away before she had a chance to write it down into the memory file!

    With self-improvement, in practice there are things I wanted Carli to get better at that couldn’t really be done via memory. These are behavioral or operational improvements that we call “skills” that are more than just remembering stuff; “Carli, please write all documents in this way” or “Carli, can you help me build a meal plan, with the following priorities and interacting with my recipe database in this fashion”. I was able to OpenClaw to get these skills, but it was very much a pull-model: I had to find or author skill files and explicitly add them to the OpenClaw installation to get Carli to behave the way I wanted her to. If changes were required, I would have to open up the skill files and edit them myself.

    Finally, I just ran into a lot of software issues with OpenClaw. Updates of the software would frequently break my current installation, and I would have to troubleshoot it to get it working again. To be fair, OpenClaw was more-or-less hacked together by Peter Steinberger, with the original prototype being built in about an hour and described by Steinberger as a “weekend hobby project“. It went viral and almost certainly did not ever anticipate the huge scale and community that would be built around it.

    But after fixing Carli for what felt like the tenth time, I decided to search for something more stable that would also close some of those memory and self-improvement gaps.

    A new brain for Carli

    Hermes Agent from Nous Research was what I landed upon. I installed Hermes, migrated Carli over to it including all her memories, which was made very easy using the built-in OpenClaw migration tool built into Hermes. I have been using Hermes for the two months now and have been very happy.

    The way Hermes handles memory is different than OpenClaw and closes the most frustrating gaps I was experiencing with Carli. Hermes also uses a markdown file-based memory system by default, but unlike OpenClaw which requires explicit and proactive prompting to remember things, Hermes receives periodic system-level nudges to automatically remember things that are important. This prevented the memory degradation that I experienced with Carli after extended use. Carli went from a capable but very forgetful assistant to one that almost never forgot anything!

    Carli’s new memory system on Hermes was not perfect — I still had issues with recall that I’ll talk about later — but it was markedly improved after just a few days of usage. Hermes experts will know I’m talking about Memory Providers, and I’ll get into all of that and how it helped me.

    The self-improvement architecture for Hermes was also much better than OpenClaw’s. It no longer required me to feel like a developer again, downloading skills and editing skill files. Instead, Hermes is able to find and generate skills by itself, just from daily usage. In other words, as I spoke with and gave feedback to Carli, she would automatically add to and improve her inventory of skills! The more I used Carli, the better she became. And while I still had to occasionally prompt Carli to remember something as a skill, for the most part, this was all automatic.

    Finally, Nous Research are AI researchers and software engineers, and the hermes agent software shows it. I have never once been left with a broken installation after an upgrade. While the pace of development is not as frenetic as OpenClaw, I found that Hermes innovation was plenty fast enough for me but was very stable; I appreciated the more disciplined approach that Nous Software had. It’s also worth noting that Hermes is supposedly more secure than OpenClaw, although I’ve not had any personal experience with that.

    Carli passes her probation

    In some ways, my AI assisstant is still not as good as Debbie. Carli’s memory system is not as good as a humans in some ways; recall and prioritization are still areas that need work. Self-improvement is great, but still feels unnatural and forced in some ways, and occasionally Carli would have the skill but not know to use it.

    I’ve had Carli for six months now, the last two months running on Hermes, and she is better than ever. If she was a human employee at my company, this is where I’d have the mid-year review and she’d be off the probationary period.

    Carli would get a great rating from me. I’m at the point now where I can’t imagine being as effective as I am, as an ordinary retired human that is no longer in the software industry, without Carli, my AI assistant!

  • Finally, Japan and Korea photos

    I finally posted my photos from my trip to Japan and Korea! Sorry it took so long. And of course, because I’m a stickler for chronological ordering, I retroactively dated the posts!

  • I’m back from a great trip to Japan and Korea. I’ll post photos soon, but in the mean time, I had to share these hilarious screenshots from Apple Health about two weeks into my trip.

    Notifications from Apple Health about a change in steps and flights climbed

    Apple Health showing 8x increase in stair flights climbed and 3x increase in steps taken

    It’s almost hilarious looking at this graphs how much of a step-function change it was between how much walking happened in Japan and Korea, versus back home in Canada. I climbed 8x more flights of stairs and walked nearly 3x more steps while in Tokyo, Osaka and Seoul compared to my normal daily life in Toronto!

    While there were probably multiple reasons for this, I believe the biggest reason was their amazing subways. It’s easier to move around these major cities in Japan and Korea by taking their consistently excellent, efficient and punctual subway systems, rather than try to take a car. I definitely noticed that most of the locals took trains to get around over battling traffic.

    I especially appreciated Japan’s subway UX. Even though it’s incredibly complex, I was never lost or confused taking the trains in Tokyo or Osaka. The consistent use of colors, fonts, labels, and visualizations made it easy after just a couple of rides for my brain to start recognizing the patterns. Similarly, I found Seoul’s subway system easy to navigate, with lines, platforms and exits all clearly and consistently labeled.