¬ just serendipity 🍀
¬ just serendipity 🍀
Thiago Perrotta
Welcome to my digital garden – a space dedicated to exploring technology and sharing what I’ve been learning. This site reflects my passion for continuous learning and open-source software, wherein I document my journey, offer insights, and dive into miscellaneous topics that reflect my interest. My goal is to maintain a corner of the Web for self-expression focused on valuable, distraction-free content. I believe in the power of the Open Web as a platform for sharing knowledge.
Latest Posts
An addition to the “No Hello” series: No (AI) Slop Grenade: Stop throwing AI-generated walls of text into conversations. Don’t do this: You: Should we use Redis or Memcached? Them: Great question! The choice between Redis and Memcached...
fast-resume (fr), via Stanislas: I use many coding agents these days: Claude Code, Codex, OpenCode, Copilot, and more. Sometimes I remember that I, or the agent, mentioned something specific in a previous session, and I want to go back...
Matt Pocock (via Sebastian de Deyne): This is an intro to the /grill-me skill, separate from my video on my top 5 skills. It’s the most flexible skill I’ve ever created, and one I use outside of coding too. Here is the skill in all its...
Worktrunk: Git worktree management for parallel AI agent workflows I stumbled upon worktrunk (wt) due to a fortunate coincidence, serendipity at its best. I was pitching my own pancake wt to someone, and this person asked if I hadn’t...
I’ve noticed that travel has become, of late, an act of collecting places. I’ve literally heard people referring to visiting a place as doing that place, as in “Have you done Japan?”, assuming that one can do an entire country, and once...
Problem statement: given two distinct devices with Brave, access tabs from one device in the other device. In this example: access mobile tabs from a desktop device. This assumes both devices are already enrolled in Sync. Clicking...
Previously. Problem statement: An ArgoCD application shows a persistent diff on a PodDisruptionBudget — spec.selector.matchExpressions is in the rendered manifest but missing from the live object. Sync doesn’t clear it. Hard refresh...
Problem statement: Claude Code likes to declare “done” without running tests. Said no overconfident LLM ever. prove_it by Justin Searls is a config-driven hook framework that intercepts Claude’s lifecycle events (SessionStart,...
Previously. Problem statement: my wt tool’s cd subcommand does not survive a terminal split — the new pane opens at the original directory, not the worktree. worktrunk’s wt does(!) A subprocess cannot change its parent’s working...
Simon Willison’s llm CLI ships with OpenAI models out of the box. Anthropic Claude support lives in a separate plugin, llm-anthropic. % llm plugins [] Install it: % llm install llm-anthropic ... Successfully installed anthropic-0.103.1...
I wanted to try out worktrunk: thiago.perrotta ~ % brew install worktrunk ==> Auto-updating Homebrew... ==> Fetching downloads for: worktrunk ==> Pouring worktrunk--0.52.0.arm64_tahoe.bottle.tar.gz Error: The `brew link` step did not...
I asked Claude Opus 4.7 to generate a global CLAUDE.md for my tone & style based on historical usage for 12+ months. The result1 was added to my thiagowfx/.dotfiles repo, cross-posted here for ease of reference and future preservation. I...
I’ve been greatly enjoying the Active only conversation filter on Slack: Choose how you’d like to filter your conversations. By default, you’ll see Active only, which will hide conversations with no new activity in the past 30 days....
“Do one thing and do it well”, they said. → What Color Is This (iOS only). Via Kottke. — § —Reply via email#dev #serenity
Previously. I’ve been self-hosting atuin for quite a while now. As such, I no longer need an account in the official server (created a long time ago). Problem statement: delete that account. Note that I am currently logged into my...