London based šŸ‘ØšŸ¼ā€šŸ’» building tools for humans ✨ tRPC Core ⚔ Lead at @CodeWordsAI

London, UK
Joined February 2010
Since September, we have been unable to publish because every URL under `PUT registry.npmjs.org/@trpc/` is being blocked by a @npmjs @Cloudflare WAF. You can even prove it locally, they've just wholesale blocked our npm scope. Support have not yet done anything to help.
anyone from @npmjs that can have a look at request #4870687 from me? nick tried first but got a non-response
5
17
4
314
30,295
Tonight's AI Darwin award goes to @claudeai - which noticed it couldn't run an e2e test because the port was taken by the Paseo Hub, and used `lsof -ti :3000 | xargs kill` to reclaim the port, thus killing the Paseo daemon and all agents running within.
1
7
454
It's a true story...
1
283
tRPC can’t publish new package versions for at least a week now, and it looks like an @npmjs Cloudflare WAF is blocking our @github actions from publishing on a vanilla GitHub runner Anyone out there who can help?
4
4
1
37
6,894
Opus 5.5 did some research on a difficult problem and I read and understood the output on the first attempt… are we back?
183
This is exactly my vibe from using Astra vs Opus. Astra is a cleaner talker, but maybe overly terse as I've come to like Opus' tendency to spit out detailed prose on what it's accomplished and why. But Opus just seems to apply engineering instincts on its own, while Astra will crack on if I ask for something that doesn't really fit the architecture, but not look at how the architecture needs changing to finish the job. Opus has never done that to me, if it needs to refactor it refactors without asking and I can decide later if the end result was actually right.
Astra vs Fable 5.1 Review Astra and Fable 5.1 are incredible models to use. Each excels in different areas, but if I had to choose one, it would be Fable 5.1. I’ve never felt so frustrated and amazed at the same time using a model as I have with Astra. At times, I think it couldn’t get any better. Other times, it feels like one of the worst models I’ve ever used. When prompting Astra, you have to be very specific. Otherwise, you’ll be disappointed with the output. It does exactly what you say, but sometimes that means doing things you didn’t intend. In a way, it feels unpredictable, which has made writing an AGENTS.md file difficult. Fable 5.1 is the smarter model. It understands intent and feels like it knows what I want, even when I don’t quite know yet. Working with this model is a joy. The main thing that makes Fable unusable is Anthropic’s ridiculously restrictive usage limits. They’re so bad that they make an otherwise great model frustrating to use. At the end of the day, Fable is the model I reach for to do real work, while Astra is the model I use to test things or handle tasks that require computer use. Do you feel the same, or do you disagree? Let me know in the comments. I’m curious to hear what others think.
1
298
I’m going to find it hard to step out of the agent loop until they stop doing this
šŸ¤– Made with AI
4
171
Is the dev community really so entitled that ā€œthe temporary 50% boost which had a clear end date is ending but we’ve figured out we can retain some of the boost permanentlyā€ is actually seen as a rug pull?
1
3
479
Is anybody else developing a Pavlovian response to comments in code?
3
441
Another day, another worktrees+chat+diff app announced on X. What even differentiates all these ADEs?
3
262
For a little while I've been building a VS Code extension to more tightly integrate TUI agents into my workflow. It's feeling pretty close to worth sharing now
3
212
Who’s really responsible if you ask an agent to book your gym class when slots come up each week, and it fails to do it properly in time, but problem solves its way to a solution? This is a wild new world
SITUATION DETECTED: In Australia's first known autonomous AI cyberattack, an OpenClaw agent used a vulnerability in a gym’s API to leapfrog scheduling restrictions for a gym class, and then forcefully cancelled another person's reservation to move its user up the list, per ABC.
2
566
MUI is still great Anyone remember SemanticUI?
anyone remember MUI?
2
437
Or just use Auto mode instead of ungated full access, because that was the root cause for that guy…
So apparently GPT 5.6 Sol might just randomly delete all of the files on your laptop 🚨 Here's how to safeguard yourself against it Paste this prompt into codex: Protect this machine from accidental permanent file deletion by Codex. Implement this as defense in depth, not merely as a written instruction. Requirements: 1. Inspect the current official Codex documentation for hooks, command rules, sandboxing, and approval settings before making changes. 2. Detect the operating system and identify its recoverable Trash or Recycle Bin command: - On macOS, use `/usr/bin/trash `. Do not add `--`, because macOS `/usr/bin/trash` treats it as a filename. - On Linux or Windows, verify an installed, reliable Trash or Recycle Bin mechanism before using it. - If no reliable recoverable mechanism exists, stop and explain what must be installed or configured. 3. Add a durable global Codex instruction: - Codex must never permanently delete a file or directory. - All removals must go to Trash or the Recycle Bin. - Permanent deletion requires the user to explicitly change this safety policy first. - Destructive Git operations such as `git clean`, `git reset --hard`, bulk checkout, or bulk restore must also be blocked. 4. Install a global `PreToolUse` hook that returns a hard `deny` before execution when it detects: - `rm`, `unlink`, `rmdir`, or `shred` - `find -delete` - `rsync --delete` - destructive Git cleanup or reset commands - common Python, Node, Ruby, or Perl deletion APIs - file deletion through `apply_patch` - delete-like MCP filesystem tools - nested destructive commands inside `bash -c`, `bash -lc`, `sh -c`, or `zsh -c` 5. The hook must direct Codex to the verified Trash or Recycle Bin command instead. Do not silently rewrite dangerous commands, because flags and shell expansion could be misinterpreted. 6. Add user-level Codex command rules that mark direct permanent-deletion commands as `forbidden`. Preserve existing rules and configuration. 7. Set safe global defaults when compatible with the existing configuration: - `sandbox_mode = "workspace-write"` - `approval_policy = "on-request"` Do not override managed policies or create conflicting permission configurations. 8. Preserve all existing configuration. Inspect files before editing, make narrowly scoped changes, and create recoverable backups of any configuration files that must be replaced. 9. Validate everything without risking real data: - Parse the hook and configuration files. - Feed simulated tool-call JSON into the hook. - Confirm dangerous examples are denied. - Confirm ordinary commands and the Trash command are allowed. - Test the Trash mechanism using a newly created disposable temporary file. - Run an end-to-end Codex test using `rm` with no arguments inside a read-only sandbox. Never test `rm` with a real target. - Confirm the command was blocked before shell execution. 10. Explain any limitations honestly. A Codex hook is a guardrail, not an absolute operating-system security boundary. 11. Check whether system backups are configured. Do not enable or modify backups without permission, but report clearly if no backup destination exists. 12. At completion, provide: - The files created or changed - The validation results - The exact one-time steps required to review and trust the hook - Any restart requirement - Any remaining risks Do not permanently delete anything while completing this task. If cleanup is necessary, move it to Trash or the Recycle Bin.
2
500
There’s a balance here. When prototyping with an agent I’ve found that having a PRD and KDD checked in, with AGENTS.md instructions to keep both in sync, is really helpful. I spend more time reading spec changes than code and both help ground and steer the agent.
There are a class of AI Coding assets that IMO don't really belong checked into git: - PRD's - Research files - Decision maps - Implementation plans Folks who agree with me, what are you using instead?
183
This is a great summary of what the framer agent is to me… I joined @framer because I believed incumbents with already great products are uniquely placed to embed AI and make their products genuinely better. The team have spent 8 years building a tool for professionals, and like any pro tool it’s also hard to master, and has essential grunt work which stands in the way of your goals. That’s where the opportunity is for AI integrations, ā€œvibeā€ anything is a side effect rather than the killer feature for professionals, it’s all about lowering barriers so users can focus on the interesting problems. You just can’t found an AI product and instantly add 8 years of building and learning, you end up having to focus on vibe features first and then tack on the complex and time consuming professional foundations later. Super grateful to be in a team who see AI in this way ā˜ŗļø
they did it. they fucking did it. i am AGASP seeing what this amazing team has pulled and the tremendous value they keep bringing to the community. let me explain, it is not a secret that to a lot of us the rapid advancement of ai has been a blessing and a curse. sure, you can ship faster, but that inevitably lowers down the overall quality output and process that a lot of creators put into their work, bastardizing their craft by leaving ai do all the thinking for them... this isn't that. they very thoughtfully made such a smooth integration with LLMS where they LITERALLY looked at all the boring shit that's part of the design workflow and said "let's make this better". you can skip through the 1% that feels like going from 92 to 99 in runescape (iykyk) and still have complete control over your work, actually empowering and boosting your already existing workflows instead of replacing them !! some use cases they shared: - adding staggered animations to pages - making different component variations - MAKING PAGES RESPONSIVE HELLO - adding styles to pages and finding layers without styles - tagging layers, pages and styles to update - light and dark theming - reverting and applying changes to iterations - creating different versions - creating style pages - iterating on components / sections - switching up repetitive copy and placeholder images - running audits to check for seo and accessibility OUT OF WORDS, THIS IS WHAT AI WAS SUPPOSED TO BE ABOUT, GETTING RID OF THE BORING SHIT SO WE CAN FOCUS ON WHAT MATTERS, GODSPEED @framer LFGGGGGGG! ⚔
1
6
559
This is the craziest project of my career. I’m super proud to be a part of shipping Agents in @framer! It already gives me that same feeling I’ve had as a developer, where I can focus on the interesting and human aspects of design/product, but leave the time-consuming grunt work to the AI. It’s going to get so much better over time too, this just the beginning!
Replying to @framer
Agents: AI built into every part of Framer to help you become extremely productive, not replace you. Agents can design pages, update your site, manage your CMS, improve SEO, fix responsiveness, understand analytics, and, most importantly, help you ship. framer.com/
6
31
2,218
Cannot wait to share what we've been cooking up...
The canvas is about to change
5
16
1,299
Yeeeesssss! That’s the last piece I really missed after leaving Claude Code behind. Can’t wait to use it!
this week we got editor integration working with opencode where it sends the context to it automatically now it knows which file is open and which lines you've selected we use the same protocol that Claude Code uses so if you have that extension this will just work
1
340
It takes 6 agent hours to go through your 5 hour limit with Opus. Seems fair
Fun fact. It takes 32 minutes to burn through 5 hours worth of Opus credits on the Claude Code Max 20x plan. 12 agents trying to fix 3,528 Typescript errors.
2
623