3 comments

[ 0.24 ms ] story [ 11.5 ms ] thread
Hi HN, I'm Kenneth!

I've been a software engineer/architect since 2000. I built Lucidos, a self-hosted personal agent platform. It has a workspace of files, an event-sourced memory, cron and event triggers, and it builds apps for you on demand and keeps them running. Here's a demo video it made of itself, role-playing a user: https://youtu.be/hNN5bL1nq7k

Build from source (where you can also edit the platform itself): https://github.com/lucidos-dev/lucidos or install the DMG from https://lucidos.dev

Backstory: Around a year ago I wanted to have my son create a game directly through a chat, and have it running as we iterated on it. The models were capable enough to do that, so why didn't anyone ship a harness to do it? Generally it bothered me how little AI agents could actually do for me. I started discussing with ChatGPT how to architect an agent that could do useful things with less friction. Then I had my third child and didn't think too much about it before February this year when I started using Claude Code a lot for work.

Claude Code was useful, but still just a coding agent, not creating the stuff I needed directly. But it was enough to start coding something more useful: Not long after Lucidos was born, and the first app it ran was a snake game that me and my son iterated on. We added Mario sound when eating the "apples", a high score list of "legends", replays and some funny music snippets (those needed a lot of iteration, but all AI prompted, from way back then with Opus 4.5). As a more mature platform Lucidos now has plugins and the snake game is available as a curiosity here: https://github.com/lucidos-dev/plugins/tree/main/ouroboros (can be installed from Plugins in the platform)

Then I got Lucidos to run Claude Code in its own threads, in worktrees automatically (manually handling that is too much for me, I messed it up a lot). Development sped up, and got even better when I made it work as a mobile PWA as well. Then I could continue iterating on it in between life as a busy family man. Some (my wife) would (does) say I use my phone too much though.

The platform is event sourced, so everything you chat about is stored as events, from which it extracts memories. It has its own workspace of files for apps and artifacts. You can set up automations with cron triggers, or event triggers on any system or custom events. You can set up push notifications for them as well.

The platform sets you up for hyper specialized, personally customized apps, that compound as you give it more data sources. I find myself spinning up apps for everything these days, because it's so low cost. Some examples:

- Sauna app: Click a start button and it starts logging a sauna session, playing music on my Sonos speaker there for a configurable duration like 20 minutes. Why do I need this? The sessions get logged into my health data (oura, fitbit weight, blood samples etc) which is used by the Holistic doctor app.

- App handling finances/social services for my mom, as dad had to move to a retirement home. Tracking progress, finding phone numbers, drafting complaints, researching laws (there's a lot to do!). Continuously doing research using chat, and updating a structured app to track status, is a general pattern I've learned to appreciate. With Lucidos you can update your data in chat or custom interfaces. Always having both options is great - e.g. Shopping List app best when in the store, chat to research recipes and add to it.

- Sonos + Spotify app. Airplay through the phone is quite unreliable in my home (most homes?) so I run my...