Self-hosted AI workspace with agents, skills, and tools (Gmail, Calendar) that runs entirely on your own provider API keys (BYOK). Bring your own keys — Groq, OpenRouter, NVIDIA, Hugging Face, Google AI. - theguysudo/ENZO
what is enzo so enzo is an opensource platform where i clubbed all the free available api for anyone use under one hood with more than 2000 models available to use for chatting coding researching and much more now answering the most common question of why you should put your time looking the project so it has few distinct feature meaning
it has a dedicated agents tab where you can describe your need and create a special agent just for one specific task with master ability in that domain
second it has the ability to connect your gmail drive and calendar and then you can ask it to perform some specific tasks like reading you the most important mail of the day or finding recruiter mails and creating personalized reply based on your data which it stores locally on your device
third the coding mode offers a dedicated preview window where you can see your code running and have a look of it feels and edit it in realtime as well as all the modes are packed with dedicated skills which delivers promising results
fourth the ui features some additional things such as music tab where you can listen to any music want and it has a custom personalized feature which runs in background and an llm understands your taste and recommends similar kind of music you like
fifth the most important why your trust it with your api key then to explain i would say enzo a dedicated vault which manages all your api and to secure it the vault as aes 256 bit encryption which prevents any person or any middle man to look at your api key and since the whole program runs locally on your device you have complete freedom to oversee all the backend work happening and it also features password lock which if you enable saves a backup key and then locks your whole platform work behind a pass screen though it is not foolproof as any third party or malware containing extension can still fetch login tokens from your browser so its security also depends upon how you access it concluding all of it.
now if your interested in knowing my journey of how i build enzo here it is
the whole program exists because i encountred generation limit while i was working on one of my college work and since shifting from one platform to another caused me alot of my time apparently a whole night's sleep and a ton of confusion in content that i had to anyway drop the submission of the project and ask for extension so from that point i thought to build a platform which solves this problem and is free to use and it was not easy the early build use to be so wasted that i even thought to drop it and move on but somehow i always got that urge to keep working keep improving it took me quite months to build this from zero but i learned alot during the journey
the whole thing is vibe coded, i designed and directed every feature and ai coding agents wrote most of the code while i reviewed and tested each part before it shipped vibecode does not mean it just ai brain apparently i spent more hour fixing thing myself rather than ai coding
the tools i used, react vite and typescript for the frontend, node for the backend, sqlite for storage, docker for the deployment, and for the building itself ai coding agents were my main pair programmer
my process and workflow, i describe the feature i want in plain english, the agent drafts it, then i read every line it wrote and edit whatever feels wrong, then i test it live and only after it survives my tests i push it, the repo also runs a ci pipeline with 7 stages including a black box security pentest with 44 assertions and around 298 unit tests so nothing merges broken
few build insights, the hardest part was the key vault because making the server store zero keys meant doing all the encryption inside the browser with the web crypto api (aes 256 gcm) and non extractable keys so even my own backend code physically cannot read them, second hardest was free api rate limits since free tiers die constantly so the agent runner races the same request across many free models at once and resumes from the exact word where a rate limit cut the answer, that one trick is why it feels stable on free keys
i urge to anyone who reads this to have a look at the platform even if you hate it just curse it in the comment its fine or if you would like to drop any feedback i would highly encourage that and since its my first work open source platform i know it has a lot of errors and bugs so i apologize upfront for it and if you consider my work worthy please drop a star on the repo that'll make my day