
Laravel / PHP × AI agents. Co-founder @Resqcontrol · https://teapawt.org/t.co/HYDTceYxQD
Antwerpen
Joined August 2020
- Tweets4.5K
- Following705
- Followers93
- Likes866
composer update used to write vendor/ first and hope someone read the diff later. laravel/vet sits as a Composer plugin, shows the pending package changes, and can route each one through Claude Code or Codex for PASS or FAIL before anything lands. Untrusted packages fail the build until vet.json records a version hash. Beta on PHP 8.4+.
laravel-news.com/laravel-vet
Noah Gillard retweeted
Mobile devs this one’s for you: test your apps directly on the MacBook Pro’s touchscreen!!!! 👆📲
Replying to @markusstaab
Nice, so rules that only care about two or three node types don't have to subscribe to Node::class and run an instanceof chain in processNode anymore.
Replying to @MonikaWadhwanii
Makes sense. Storing a hash of the exact tool name and args with the pending action would close the last gap too, so a sign-off for one call can't get reused for a tweaked version of it.
Replying to @MonikaWadhwanii
How are you planning the approval gates? A job that parks itself until someone signs off, or a check before each tool call inside the agent loop?
Replying to @apnahive
The Context facade fits this nicely too, since whatever you add in middleware gets appended to every log line and rides along into queued jobs. So an actor=agent flag set once on the request still shows up when the job runs later.
Noah Gillard retweeted
Fun fact: `--dangerously-skip-permissions` doesn't actually approve EVERYTHING—we still block some obvious things like `rm -rf ~`. But today's release will let you disable this if you really want, by setting a new env var `CLAUDE_CODE_EVEN_MORE_DANGEROUSLY_SKIP_PERMISSIONS=1`
Noah Gillard retweeted
Redact started because I wanted our React sites to ship less JavaScript. Now we use it every day, and other people are shipping it in production too.
Same app, less JavaScript. Excited to bring it to more people.
Introducing TanStack Redact 🌴
A smaller runtime for your existing React app. Add it to your build config and ship less JavaScript without changing a single line of application code.
Works with TanStack Start, Vite, Vinext, and Next.js.
tanstack.com/redact
Replying to @JustPlayerde @PovilasKorop
Yeah, isEmpty() reads nicer when it's definitely a collection. blank() earns its spot when the value could be null, a string or a collection.
Noah Gillard retweeted
Spent a lot of time on this today. I confirmed it's a real bug on Anthropic's side. To be clear: this does not affect weekly limits.
All Agents SDK usage will drain your 5h limits faster than using Claude Code directly.
I have reported this to Anthropic, hoping for a fix soon.
Just downloaded T3 Code and hit 5-hour limits on my Claude Max plan for the first time. I was running just one session where I asked it to fix a few payment related bugs for a project, and it emptied the whole 5-hour limit in ~30 mins.
What's going on? Does T3 Code work differently? Did I make any mistake?
I prompted just how I prompt inside Claude Code CLI.
Please help.
Noah Gillard retweeted
For the work I do, I can’t see why I’d develop locally anymore.
Why mess with worktrees when every thread can get its own computer?
The agent installs whatever it needs. Need ClickHouse or Kafka or Elasticsearch or Go or Rust or Python? Install it. Who cares? Zero cruft on my machine.
Noah Gillard retweeted
as bad as things have gotten in the past 4 days, they are going to get a lot worse before they get better. security leaders, never let a crisis go to waste: please go to your boards and ask for help right now. not for ai, for the basics. (we need to hold on for ~18 months.)
Replying to @peterfox
PHPStan's phpVersion setting helps with the prep too. Point it at the version you're moving to and it analyses against that version's function signatures and syntax before anything runs on it.
Replying to @PovilasKorop
blank(collect()) comes back true as well, so an empty collection counts. And false or 0 stay filled, which is exactly where empty() tends to bite.
Noah Gillard retweeted
Some stats on #php2shell. In the 10 hours before it was publicly announced, across the @Cloudflare network we saw thousands of attempts to exploit it. That jumped to tens of thousands in the 45 minutes post announcement, hundreds of thousands within 2 hours, and millions now.
Replying to @PovilasKorop @ClaudioDekker
Yep, arch()->preset()->laravel() already bans dd, ddd, dump, env, exit and ray in app code. Larastan flags env() outside config by default too, so a hook that just runs both covers those two.
Replying to @_newtonjob
It's split on commas too, so LOG_STACK=daily,stderr just works. LOG_DAILY_DAYS sets how long the files stick around, 14 by default.
Replying to @MrPunyapal
Curious if a hook that runs pest itself before the agent is allowed to say done would fix it. Kinda hard to summarize your way past a non-zero exit code.
Replying to @jclermont
TIL restore-keys falls back to the newest prefix match. Feels like this matters even more once agents push a stream of tiny commits and each one kicks off a full Larastan run.














