Build Journal
API Enhancements and ElevenLabs Fixes for CADE — April 21, 2026
I tackled API enhancements and ElevenLabs fixes for CADE, addressing critical bugs and improving features for the agentic web. Here's what I learned.
What shipped
- API Documentation Added — Comprehensive API docs and health probe for better oversight.
- Privy Authentication Enhanced — Integrated inline sign-in with admin-managed secrets.
- ElevenLabs Playback Fixed — Resolved audio playback issues with PCM resampler initialization.
- CADE Session Improvements — Streamlined grounding and connection process for better performance.
- Admin UI Updates — Simplified dashboard and reinstated 'Try CADE' button.
I worked on critical updates to the hashtag.space API and the CADE voice assistant using ElevenLabs. I shipped 18 commits, 16 being features and improvements, other 2 were bug fixes. The goal was focused on improving the experience of users while keeping the system stable and functional.
I started fixing one bug that caused site wide 500 errors. The bug was due to Next.js not allowing dynamic segment names, [id] and [userId], to be mixed under one route. Reconfiguring the segments on the hashtag-space route made the site stabilize after I was done with it. The simplicity of the fix highlighted the importance of the framework’s constraints when it comes to dynamic routing so it was worth the long time spent.
This time, I focused on the admin panel where I added more API documentation and a health probe feature to help with service maintenance. I added a new live health check endpoint and documentation for the health probes so that admins can see how services are doing. To finish, I added wallet hints and modal resolutions to the new users table so that users can have a better experience. Overall, it was great to improve usability and help onboard new members to the team.
Most of my day was spent improving authentication with Privy. I set up inline sign-in with admin-managed secrets which required a migration of where we store Privy app credentials. This was a bit more challenging because I had to manage a number of environment variables as well as implement a robust way to manage the secrets without a redeploy. The improved admin secret management will hopefully make the admins’ jobs easier.
The other area I focused on today was the integration of ElevenLabs. I ran into a pretty annoying bug where the PCM resampler had not been initialized prior to agent playback and resulted in distorted playback audio. This was a bit tricky to debug, and I was ultimately able to identify it in the ElevenLabs client. Once I made the audio processing pipeline wait until after the resampler was initialized, the playback rate returned to normal. This was necessary in order to ensure the voice interactions CADE will provide are of the quality we expect.
While continuing my work on CADE, I was able to add some additional functionality to further improve session grounding, so that replies would prefer hashtag.org over legacy webstack references. I also simplified the process of collapsing the connection to prefer a one-shot transport flip for user sessions, which should minimize latency and optimize user experience. While these tweaks might seem trivial, they work towards the broader ideal of providing a frictionless experience working with our AI.
This time, I modified the administrator UI by removing the 'Refresh dashboard' call to action to provide a better design. It was visual noise because the dashboard reloads on its own when opened. I also re-added the 'Try CADE' button to provide better access to the voice assistant. These changes continue to show my dedication toward improving the overall experience for users and keeping the design simple and easy to use.
Building this all out as a solo developer with AI as my team definitely has its challenges, but there is a lot of flexibility as well. I was able to use Claude Code in VS Code to be able to iterate a lot faster without the management of multiple team members or tools. The focus is still on my vision of a one-man-show company that gets a billion-dollar valuation. It is a long journey with a lot of late nights, but every commit gets me closer to that goal.
Most importantly, today was proof of the power of persistence and the value of doing both feature implementation and bug fixing at the same time. Each commit is not only a technical improvement, but also an improvement toward a robust and user-friendly product. I believe that these changes will have a great impact on the users and help me pursue my goals for hashtag.org.