A custom harness backed by dagger, gives diff, time travel, forking of both files and env. Building a harness is a good learning project. I'm now using other tools to see what they are like. (OpenCode is quite good out of the box)
Currently working on a markdown search and wiki backed by Typesense, also has good web search, fetch, crawl. This will power my personal knowledge base system as an important step towards more leverage and better outcomes.
I've vibe coded multiple helpful apps and websites for recording data. But longer term, I'm building with its help an internal research system to organize, search, compare, analyze, and esp reuse all the large amounts of data my firm produces, with the public materials without constantly starting over in separate ChatGPT or Claude conversations.
It's a user daemon that runs on my machine and exposes a unix socket, and then a bunch of hooks in claude, zsh, vim, etc, that report directory and commands I've run and all that, pipes it to claude Haiku for summary, and then stores context in sqlite. It also exposes that data as MCP so I can use claude to say "hey what was I doing yesterday," or any arbitrary time range.
I find that in the age of using AI agents, "Wtf was I working on yesterday" is an even harder thing to remember for me, so this helps me kind of track everything with a database that a) has AI summaries already and b) can be accessed by AI as well as a CLI.
The "expose it as MCP so AI can query it" pattern is one I keep seeing work really well in practice. We did something similar for business metrics in Databox - the interesting design question was whether to expose raw data or pre-aggregated metrics. We ended up with metrics (with dimension breakdowns) because agents hallucinate less when they don't have to decide how to aggregate themselves. Curious if you ran into anything similar with the sqlite summaries - do you find the AI-generated summaries more useful than raw command history?
This one converts a basic chunk of OpenStreetMap data to an SVG so I can mark it up (by hand) in Adobe Illustrator to make specifically-styled print/PDF maps, such as what get installed at trailheads: https://github.com/c0nsumer/osm_to_ai
And all of this has been put together to make the custom, local, specific-use-case maps that are at https://trailmaps.app (which, via local curation, are overall better mobile/online maps than many of the bigger auto-generated systems such as Trailforks, Gaia, RideWithGPS, etc, for visualizing local systems).
It's neat stuff where I understand all the inputs, outputs, and how most of it works, but AI tooling (Claude, mostly) has allowed me to bolt it together much faster than I would have writing it myself.
I was able to create a CLI (https://github.com/gitsense/gsc-cli) without knowing Go. Like 0% Go knowledge. It is currently over 300 files (266 Go files).
I built a half-baked CRM that has a lot of custom fields and visuals for statistics that are relevant to my potential customers. I'm selling primarily to registered data brokers, so being able to pull up their self-published compliance stats (gleaned from their own privacy pages or public filings) and contextualize them in terms of the rest of the industry ("your deletion request volume has been in the 95th percentile year over year") has been extremely helpful when starting conversations. I also gamified it a bit by giving myself targets for cold outreach and gathering hard numbers on my cadence for outbound calls and emails per lead.
I also built this site for educating potential customers and other privacy professionals about the increasing tempo of CCPA enforcement actions driving compliance: https://ccpa.world/enforcement
I could have probably coded this from scratch quicker considering that it took me two weeks to remove all of the hallucinated imaginary enforcement actions against real companies and also the citations to non-existent California law that the models kept injecting into my enforcement summaries.
I wish I had time, but I would definitely make some Android apps to sideload onto my phone. They would be very bespoke and probably only relevant to me, but they would be streamlined to my life.
Over the past few days I have been making a spell checking TUI app. I used AI (meaning: free Gemini web interface) to discuss various aspects about the apps and debug compiler errors ang suggest useful rust crates for various problems.
Just a more helpful discord chat generally. It also gaslights you too!
1. A dashboard that tracks my personal metrics (github, strava, todo completion, flossing)
2. A eink display for that dashboard
3. A realtime node graph that shows a codebase (and/or its diffs) in a way that I can visualize what functions call which, and under what conditions
4. A agent that automatically fills out government forms and creates invoices for my friends brewery based on the delivery notes in their google calendar.
That sounds useful. I went a smaller/specific route with OpenHop: not a full graph of everything, just agent-authored flow walkthroughs you can step through locally.
I made a tool that creates sandboxes (docker, podman, orbstack, seatbelt, tart, containerd, kata, firecracker) and then sets up an agent (claude, codex, gemini, aider, opencode) inside it with max permissiveness (no prompts to call sed, etc).
It creates its own copy of your workdir for the agent to play in, and then you pull changes out ala git diffs or commits.
It's a MASSIVE time saver, and I use it as my daily driver.
We used AI to build our AI platform and now we are using the AI platform to build the tools that we need for AI. :)
But no honestly, unfortunately most tools I did for myself are not for hobbies but something that I needed for work... like this one (https://github.com/crmkit/crmkit) most recently.
The tool I'm most proud of is "Hex Flex" (https://seidleroni.github.io/Hex-Flex-Web/). It is a tool to view and compare the contents of Intel Hex files. Should be useful to other people who work in the firmware field.
Not exactly a tool, but I also made pelohard.com which ranks the most recent Peloton classes by difficulty. Updated twice daily.
I like the capabilities of C++ and imgui but didn't want to deal with C++ anymore so I had AI do it.
imping - PingPlotter-like app. They didn't have a Linux version and I'm a paying customer, so I vibe coded this one:
https://github.com/zenakuten/ImPing
basically trying to see what a vertically integrated agent looks like, where the agent has deep access inside a framework and it operates from within a framework, so like, instead of reading files, opening processes etc - it gets a bunch of framework specific runtime tools(logs are the easiest example)
Most of it has been to maximize productivity with AI
1) Use chatgpt pro from codex cli, opencode, claude etc as you can't get it via API. This has been the biggest boost in productivity for me as I don't have to copy and paste.
I'm close to releasing a memory safe programming language, with a declarative concurrency model, that runs on a Go-like runtime.
It has "levels" of compilation, with EASY mode being about as easy as Ruby, and the compiler can present you with options to get that as strict & performant as Rust/Tokio.
I'm going to need at least a month to finish all the documentation, though.
654 comments
[ 1.7 ms ] story [ 224 ms ] threadCurrently working on a markdown search and wiki backed by Typesense, also has good web search, fetch, crawl. This will power my personal knowledge base system as an important step towards more leverage and better outcomes.
https://github.com/verdverm/gmd
But I dont use "AI" to make them
I use a code generator
I like to use the smallest possible "toolchain", using the least possible resources, to build software tools
Ideally I want the tools to compile quickly on underpowered hardware
It's a user daemon that runs on my machine and exposes a unix socket, and then a bunch of hooks in claude, zsh, vim, etc, that report directory and commands I've run and all that, pipes it to claude Haiku for summary, and then stores context in sqlite. It also exposes that data as MCP so I can use claude to say "hey what was I doing yesterday," or any arbitrary time range.
I find that in the age of using AI agents, "Wtf was I working on yesterday" is an even harder thing to remember for me, so this helps me kind of track everything with a database that a) has AI summaries already and b) can be accessed by AI as well as a CLI.
This one generates maps from OpenStreetMap data + some custom curated info in YAML: https://github.com/c0nsumer/trailmaps.app-map-generator
This one converts a basic chunk of OpenStreetMap data to an SVG so I can mark it up (by hand) in Adobe Illustrator to make specifically-styled print/PDF maps, such as what get installed at trailheads: https://github.com/c0nsumer/osm_to_ai
This one takes GPS recorded rides and builds custom/personal heatmaps serving up the map tiles so I can use them in map editing software: https://github.com/c0nsumer/local-heatmap-tile-server
And all of this has been put together to make the custom, local, specific-use-case maps that are at https://trailmaps.app (which, via local curation, are overall better mobile/online maps than many of the bigger auto-generated systems such as Trailforks, Gaia, RideWithGPS, etc, for visualizing local systems).
It's neat stuff where I understand all the inputs, outputs, and how most of it works, but AI tooling (Claude, mostly) has allowed me to bolt it together much faster than I would have writing it myself.
Static site generator for my blog, or at least bits of it.
I also built this site for educating potential customers and other privacy professionals about the increasing tempo of CCPA enforcement actions driving compliance: https://ccpa.world/enforcement
I could have probably coded this from scratch quicker considering that it took me two weeks to remove all of the hallucinated imaginary enforcement actions against real companies and also the citations to non-existent California law that the models kept injecting into my enforcement summaries.
Just a more helpful discord chat generally. It also gaslights you too!
Here is the tool: https://git.sr.ht/~asibahi/hoopoe
1. A dashboard that tracks my personal metrics (github, strava, todo completion, flossing)
2. A eink display for that dashboard
3. A realtime node graph that shows a codebase (and/or its diffs) in a way that I can visualize what functions call which, and under what conditions
4. A agent that automatically fills out government forms and creates invoices for my friends brewery based on the delivery notes in their google calendar.
It creates its own copy of your workdir for the agent to play in, and then you pull changes out ala git diffs or commits.
It's a MASSIVE time saver, and I use it as my daily driver.
https://github.com/kstenerud/yoloai
But no honestly, unfortunately most tools I did for myself are not for hobbies but something that I needed for work... like this one (https://github.com/crmkit/crmkit) most recently.
Not exactly a tool, but I also made pelohard.com which ranks the most recent Peloton classes by difficulty. Updated twice daily.
imping - PingPlotter-like app. They didn't have a Linux version and I'm a paying customer, so I vibe coded this one: https://github.com/zenakuten/ImPing
utcolor - text colorizer for Unreal Tournament 2004 https://github.com/zenakuten/utcolor
utquery - Unreal Tournament 2004 Game Browser tool https://github.com/zenakuten/utquery
utstatsdb - This is an old project that did not work anymore with modern php+mysql. I had claude fix it. https://github.com/zenakuten/utstatsdb
basically trying to see what a vertically integrated agent looks like, where the agent has deep access inside a framework and it operates from within a framework, so like, instead of reading files, opening processes etc - it gets a bunch of framework specific runtime tools(logs are the easiest example)
1) Use chatgpt pro from codex cli, opencode, claude etc as you can't get it via API. This has been the biggest boost in productivity for me as I don't have to copy and paste.
https://github.com/agentify-sh/desktop
2) A small gate to make sure any agent cannot run destructive rm -rf or git reset --hard commands, it has saved me many many times
https://github.com/agentify-sh/safeexec
3) For mac users, summarizes and speaks out loud after codex finishes a turn
https://github.com/agentify-sh/speak
It has "levels" of compilation, with EASY mode being about as easy as Ruby, and the compiler can present you with options to get that as strict & performant as Rust/Tokio.
I'm going to need at least a month to finish all the documentation, though.