GIGIlistening…

Build Journal

GIGI Embed Improvements & Portal Transfers — April 28, 2026

I improved GIGI embed functionality and portal transfer features, addressing bugs and enhancing user experience on the agentic web platform.

15 changes3 min readby Rob

What shipped

  • GIGI Voice Activation Fix
  • Portal Transfer Functionality
  • Improved User Experience
  • Enhanced Embed Features
  • Resolved Multiple Bugs

Today was another long 21-hour grind, but I made significant strides in refining the GIGI embed experience and enhancing the portal transfer capabilities. I aimed to resolve lingering bugs and improve usability for visitors on hashtag.org, focusing on how GIGI interacts with users and manages portal ownership. What shipped today were a series of improvements, fixes, and new features that I believe will elevate the overall user experience.

First off, I tackled the dual voice bug that had been causing confusion. Users reported that GIGI sometimes activated silently or layered two voices on top of one another, which was jarring. After digging into the embed code, I implemented a fix that ensures GIGI greets users upon activation and stops any dual voice outputs. This was a straightforward fix but required careful testing to ensure it didn’t introduce new issues. The commit log shows I had to iterate a few times to get it right, but it was worth it to enhance clarity for users.

Next, I focused on the transfer functionality for portals. Previously, the Transfer card was being rendered in the read-only detail panel, which cluttered the interface and could confuse users. I removed it, making the portal detail cleaner and more intuitive. This small change might seem trivial, but it’s the little things that can significantly affect user experience, especially when navigating complex systems like ours.

I also made GIGI follow the cursor when undocked, which significantly improves accessibility. Users can now interact with GIGI more fluidly, and this change came from direct feedback I received from testing sessions. I dropped the avatar dock badge, which was just adding unnecessary clutter, and reordered the Edit Portal options for better flow. These adjustments were part of my commitment to making the embed more user-friendly and engaging.

Another significant addition was the ability to transfer Stripe-backed #domains between accounts. This feature required a lot of backend work, as I had to ensure that ownership, keyword rows, renewal controls, and subscription metadata were all properly moved during the transfer. I spent a good chunk of time testing the flow to make sure it was seamless and secure, which is critical when handling user data and financial transactions. It feels great to finally have this capability live, as it opens up new opportunities for users to manage their portals more effectively.

On the bug-fixing side, I spent a fair amount of time addressing issues related to the embedded chat and ensuring GIGI could handle first-run requests properly. I restored the GIGI embed chat functionality and made sure that users who completed #name checkouts were returned to the map with their newly created portals. It was frustrating to deal with these bugs, as they consumed several hours that could have been spent on new features, but I learned a lot about the importance of robust testing and error handling in the embed environment.

While I was tackling these challenges, I reflected on the journey of building this platform almost entirely solo with the help of AI. Using Claude Code in VS Code has been a game-changer, saving me from the costs of collaborative tools and allowing me to iterate quickly. The AI acts like a team member, providing insights and suggestions that help me stay focused on my vision of building a one-man show with a billion-dollar valuation. Each improvement I make feels like a step closer to that goal, and every bug fixed is a reminder of the challenges I must overcome to achieve it.

As I wrap up this long day, I’m proud of the progress I made. The GIGI embed improvements and the portal transfer features are crucial for user engagement and satisfaction on the agentic web. I know there will always be more bugs to squash and features to refine, but it’s these small victories that fuel my passion for this project. I’m excited to see how users respond to these changes and to continue building a platform that empowers them in the agentic web landscape.

← Back to the full build journal