Code

Software I've written

the less embarrassing bits

  1. emcp

    Essential tooling for AI agents wrapped in an MCP server. Fantastic for empowering local models that are markedly worse than Claude.

    Privacy matters, though maybe not this much.

  2. relo

    A handy little tool to rerun commands or reload programs when files change. Even after all these years, I like it better than many --watch flags.

    I’m fond of this one.

  3. sel

    A comfortable replacement for cut in simple (which is most) scenarios. It can extract and rearrange delimited fields from each line using slice notation.

    Up to 100% less frustrating than awk.

  4. ai

    Command-line AI agent, backed by LMStudio and sandboxed for safety. Dumber but faster. A single-file experiment on how compact an agent can be.

    Became obsolete about a week after I wrote it.

  5. blip.nvim

    My very own nvim jumping plugin. I tried all the better known ones, but I just can't help typing more letters than I should and missing the mark.

    Another product of my eternal need to customize.

  6. pixelog

    My palette-stealing tool. Lists colors from images in several formats, sorted by frequency, easy to copy and paste.

    It also... no, that's it actually.

  7. comfyui-personal

    Personal collection of ComfyUI nodes and helpers, by me, for me. Enormous bang-for-buck if you enjoy building ad-hoc workflows for specific tasks while making AI-assisted art. The definition of niche.

    Oh the fights I had with torch. Lost every one, but learned quite a bit.

  8. fling

    Solves the maddening problem of securely sending a file to a coworker who is sitting right beside you. Pick a password, scream it in their face (not required), and you can both run a single command.

    I wrote this one in the days of working every day in an actual office, where we frequently needed to share secrets we didn’t want to paste in Slack.

  9. instant-save-png

    My first and probably last photoshop plugin, made to immediately export PNGs to a known workspace at the press of a key. Indispensable for working efficiently when making AI-assisted art.

    It's actually available on Adobe's plugin marketplace.

  10. py

    A quick and easy way to integrate Python expressions into command-line pipelines. Whenever the top answer in StackOverflow calls for awk or sed (and thus probably a frustrating struggle), py comes to the rescue.

    Your pesky string manipulation problem won't even see you coming.

  11. renc

    Can't remember how to use xxd to decode hex strings? Neither can I. This tool converts a few common formats without any flags that immediately disappear from memory.

    Supports binary, hex, base64 and base32, which I literally never used.

  12. sigkey

    Handy tool to toggle background processes with a global hotkey by sending the SIGSTOP and SIGCONT signals. Made to pause stable diffusion when online matches start.

    Tried a hundred things until I could finally tell right-shift from left-shift.

  13. proxy-promise

    A promise you can manually settle from anywhere. I wanted this a thousand times before I actually wrote it, and have been living a better life ever since.

    Well, no, not really. But I still like it better than the newer Promise.withResolvers.

  14. serb

    A zero-configuration, reasonably performant command-line file server, with a few optional flags I needed at some point in my life. I believe I was fed up with Python’s SimpleHTTPServer at the time and needed more.

    Can you believe it’s written in CoffeeScript? Remember CoffeeScript?

  15. qr

    Render QR codes in the console! No more web-based tools hosted by some random dude! Shines when reading the clipboard from a pipe, however you paste in your shell.

    I learned the sixel protocol along the way. Huge win.

  16. bubbles

    A completely useless afternoon project – but so nice to look at! It’s where my artistic minimalism meets my passion for bubbles.

    Heh. I have no such thing, but I still think it’s pretty.

  17. shplot

    A completely unnecessary tool to render histograms in the command-line. I believe I found it useful exactly zero times. Honestly, it’s possible I ran with this idea because I found the name amusing.

    Fortunately, the time wasted was minimal.