Skip to content
ndm.devnandomoreira.devAvailablePT

~/blog

My open notebook

I have been writing here since 2015. These days it is mostly about AI agents, Linux and the tools I build myself, what worked and what broke along the way. At heart I write about my own studies and experiments for myself; if you are reading, that is a bonus :)

23 articles
RSS FEED
  • 11 min read424 specs across 26 repositories, one harness

    My AI harness with RPI: from Superpowers and TLC to Forja 2.0

    Harness is everything that runs around the model. Mine came out of almost a year of projects, tests, and study on top of Superpowers and tlc-spec-driven, and now it is becoming Forja 2.0.

    • #harness
    • #rpi
    • #agents
  • 5 min read571 test cases across 42 BATS files

    Treating dotfiles as software

    A dotfiles script runs from a shortcut, a timer and a hook, where nobody sees the error. How I test mine with shellcheck and BATS, swap dependencies for stubs and let AI write almost everything without losing trust.

    • #dotfiles
    • #shell
    • #quality
  • 10 min readFrom a full day to a few hours per reinstall

    Does your system have memory? A dotfiles from the first symlink to a reinstall

    Formatting cost me a full day and a week remembering what I had missed. How to build a dotfiles that keeps the configs and the why of each one, and how it reinstalls the whole system on a blank machine, with what broke anyway.

    • #dotfiles
    • #linux
    • #shell
  • 8 min readPalette at about 3 KB gzip, downloaded on the first Ctrl+K

    Ctrl+K on my site: a command palette that only downloads when someone hits the key

    Site-wide search, G + letter shortcuts and single-key actions, in plain TypeScript with no library. Anyone who never opens the palette downloads nothing of it, and what cost the most bytes was the loader, not the palette.

    • #front-end
    • #javascript
    • #accessibility
  • 9 min read15 colors fixed to pass WCAG AA

    Terminal Noir: the theme of my site became the theme of my whole system

    The colors of my site became the theme of my whole desktop: twelve apps, an open source repository, its own site and a beta release, in a single night.

    • #linux
    • #niri
    • #terminal
  • 6 min readMonths to quit Alt+Tab

    Dynamic tiling or stacked windows: what I learned quitting Alt+Tab

    Niri, Hyprland and Pop!_OS's new COSMIC arrange the windows for you, and all three let you float a window when you need to. After months to quit Alt+Tab, I am not going back, but that does not make tiling the right way for everyone.

    • #linux
    • #niri
    • #wayland
  • 6 min read6 reviewers, 2 models, 1 aggregator

    Cross-model review: why a second agent finds what the first one misses

    Different models fail in different places. How I put a second model to review the code the first one wrote, how I merge both sets of findings, what Codex caught on this site and why today the reviewer is agy.

    • #code review
    • #agents
    • #quality

Drafts in progress

  • AEO vs SEO: is SEO dead?
  • The AI designer put the business rule in the copy: my prompt told it to
  • Blog comments without page weight: Giscus only loads when you reach the end
  • From Noctalia v4 to v5: I ported the plugins with both shells running
  • Screen recording to GIF with a shortcut, with a counter on the bar

Updates in the terminal

Subscribe to the technical article feed

Zero marketing. Just new articles when they go live.

By subscribing, you agree to the privacy policy.

Ready to share.