Marc Carlucci 🙂

@oniryx.bsky.social

Living learning. Learning living.

Bear in mind when you ask an LLM to explain why it did what it did (or didn't), you're asking faces on toast to explain faces on toast. It's not explaining. It's plausibly completing. And you fell for it twice.

The odds are stacked against error-free long-horizon agentic coding. But even if we *could* create models reliable enough and quality gates fast enough and strong enough to achieve it, there's a strong argument for why we *shouldn't* - REALITY GATES Reality, annoyingly, runs at its own pace.

Bild

New in Geocodio: 𝗨𝗞 𝘀𝘂𝗽𝗽𝗼𝗿𝘁 𝗶𝘀 𝗹𝗶𝘃𝗲. 🇬🇧 UK forward and reverse geocoding, address standardization, and UK political district appends covering Westminster, the devolved parliaments, and local councils. One API key. US, Canada, Mexico, UK. www.geocod.io/updates/2026...

Bild

Pest browser tests are way more insane than I thought. Classic browser tests hit a real server. Instead, Pest starts an HTTP server on the fly (random port) in the _same_ process as the test, and points chrome headless to it - no server to start

One problem is that this is actually a hard thing to measure. Lines of code and pull requests are easy to measure, but "how much stuff did we ship that is actually working the way it was designed to" is tough to quantify. So teams are leaning on the easy metrics to measure AI's impact.

The way this industry is approaching AI feels so self-destructive. This technology could, if we let it, unlock so much potential. It could buy us the time to think. We could offload menial work to it and free ourselves for the really useful, impactful work that we're all capable of doing.

🌟 My Claude Code setup #workflow #tooling #ai #claude

My Claude Code setup

I've been using Claude Code as my daily driver for coding tasks. Over time, I've built up a pretty specific configuration that makes the whole experience better. I keep everything in my [dotfiles repo](https://github.com/freekmurze/dotfiles) under `config/claude/`, so it's easy to sync across machines. In this post I'll walk through my setup. ## Global instructions The first file worth mentioning is my `CLAUDE.md`. This contains global instructions that Claude Code reads at the start of every session, regardless of which project I'm working in. I've kept it fairly short. It tells Claude to be critical and not sycophantic, to follow our Spatie PHP guidelines, and to use `gh` for all GitHub operations. That last one is more useful than you might think. Instead of Claude trying to hit the GitHub API directly with curl, it just uses the GitHub CLI, which is already authenticated and handles all the edge cases. ## Settings and permissions My `settings.json` gives Claude Code broad permissions to run commands and edit files. I know some people prefer to keep things locked down, but I find the constant approval prompts break my flow. I also have thinking mode set to always on, which I've found leads to noticeably better results on complex tasks. ## The status line The most fun part of my setup is a custom status line. Claude Code lets you configure a shell script that renders at the bottom of the terminal. Mine shows two things: the name of the repo I'm working in, and the current context window usage as a percentage. The script reads JSON from stdin that contains workspace info and context window statistics. It extracts the repo basename and calculates how much of the context window has been consumed. Then it color-codes the percentage: green when it's below 40%, yellow between 40% and 59%, and red at 60% or above. This gives me a quick visual indicator of when I should consider starting a fresh conversation. The output looks something like `laravel-og-image | ctx: 27%`. Here's a screenshot of it in action while I was working on one of our packages: ![](https://freek.dev/admin-uploads/Y7o8RUA1fzW9bZsO06lFOSUkkwdXMAyCv6qDAD9y.jpg) You can find the full script as `statusline.sh` in the dotfiles repo. It's a straightforward bash script, nothing fancy, but it's one of those small touches that makes the daily experience noticeably better. ## Custom agents Claude Code supports custom agents, which are essentially pre-configured personas with specific models and instructions. I have four of them. The `laravel-simplifier` uses Opus and automatically refines code to be simpler and more readable. The `laravel-debugger` runs on Sonnet and is focused on tracking down bugs. The `laravel-feature-builder` uses Opus for building out new features. And the `task-planner` uses Opus to break down larger tasks into manageable steps. Having these as separate agents means I can quickly switch context without re-explaining what I want Claude to focus on. ## Skills and guidelines My config includes a `laravel-php-guidelines.md` file with our comprehensive Spatie coding standards. This ensures that any code Claude writes follows our conventions from the start. No more correcting formatting or naming conventions after the fact. Beyond that, I have over 40 skills configured, covering everything from PHP guidelines to marketing and SEO. Skills in Claude Code are reference documents that Claude can pull in when relevant. They keep the context window clean by only loading when needed. ## In closing If you're using Claude Code, I'd encourage you to invest some time in your configuration. The defaults are fine for getting started, but a tailored setup makes a real difference in daily use. My entire configuration is public in my [dotfiles repo](https://github.com/freekmurze/dotfiles) under `config/claude/`, so feel free to take a look and borrow whatever is useful to you.

freek.dev

So this is what I've been working on for the last couple months! First interview w/@aaronfrancis.com goes live next week. @adamwathan.com the week after, then Jeffrey Way! Y'all are going to love these chats. I'm absolutely confident of it. Subscribe to podcast or YouTube! pragmaticai.fm

Pragmatic AI with Matt Stauffer

Pragmatic AI is a podcast about practical AI for business leaders and developers—the stuff that actually works, not the hate or the hype. We cover using AI tools day-to-day and integrating AI into the...

pragmaticai.fm

Laravel London this week was such a blast. Laravel London wouldn't happen without the efforts of the dream team with Zuzana and Daniel! March's speakers are to be announced very soon, so hit subscribe on Luma to be first to nab a ticket.

BildBildBild

Agent OS v3 strips 70% of its codebase and somehow is even more useful now—especially for working in legacy codebases into 2026. Releasing this week.

✨ Big O ✨ Let me take you on a visual introduction to what big O notation is in my new blog post: samwho.dev/big-o. With big O notation you can better understand how algorithms will perform in practice, finding orders of magnitude improvements often with very simple changes to your code.

📣 After months of development, testing, and feedback from our amazing community, we’re thrilled to officially launch Filament v4 (stable) on Tuesday 12th August at 1pm UTC! This is a major milestone packed with powerful features and performance improvements. 💛

Neat little trick: run `composer dump-autoload --strict-psr` in CI to catch case-sensitivity issues in the file names of your PHP classes. Particularly useful when you work with case-insensitive local filesystems like macOS