William Duyck retweeted
One command to prevent this using my skill set:
echo "Tautological tests considered harmful." >> CODING_STANDARDS.md
From then on, /code-review will pick this up
William Duyck retweeted
New in Claude Code: your sessions can now message each other.
Instead of having to re-explain yourself in another session, you can now tell Claude to do it. It sends a summary (not your history or files), and the other session picks it up mid-task.
I'm experimenting with a new skill today, that gives Claude a self-awareness of my session limits, so that it doesn't run head-first into them when working on large chunks of work.
If it pans out well, I'll then start looking at giving it some pointers on self-context managing using some of @mattpocockuk's teachings. (Smart-Zone → Dumb-Zone for example)
William Duyck retweeted
For folks following my personal wiki journey, it's going extremely well.
Every weekday I have a 15-minute podcast on the new stuff coming into the wiki (from X, Discord, Slack, Gmail, GitHub issues etc). This acts both as a "cool, new stuff" listen but also a vibe check on how well the stuff in the wiki reflects reality.
I'm now building on-demand podcasts, so I can get a wiki deep-dive on a topic before I make a video on it.
I have a custom CLI that agents can call from the wiki to investigate my course material/AI Hero posts. This is invaluable in them helping me flesh out my new course before filming.
Overall, I had no idea how powerful owning your data could be. It's changing the way I think about my business going forward and opening up all sorts of loop possibilities.
William Duyck retweeted
Four of AI's most confusing terms explained:
An agent is just a model, harnessed, in an environment.
William Duyck retweeted
I hate the phrase "code is cheap" so much
✅ Communicates that code has become cheaper to produce
❌ Implies that code is disposable, low worth, not worth caring about
Code is the environment the agent operates in. Better code = better output
William Duyck retweeted
Been coding with AI a lot this week and it's wild how much of an edge real architecture knowledge still is.
Seeing frontier models constantly reach for the wrong abstractions. Easy to course-correct, but only if you already know what good looks like.
William Duyck retweeted
Take a look at your favourite skill.
Go on, take a look.
Check for lines like:
- "Make the commit message very detailed"
- "Be thorough"
- "Make the implementation easy to read"
What do these lines have in common?
They're no-ops. They do nothing to change the agent's behavior.
Agents always write good commit messages. They always try to be thorough. They always try to create easy-to-read implementations.
Try removing them. Does the output change? No? Then the line was a no-op.
Agent-authored skills are LITTERED with no-ops. Entire paragraphs and sections of text that does nothing to change the agents' behavior.
No-ops make skills harder to evaluate, harder to maintain, and burn tokens uselessly.
Learn to spot them, test them, and remove them. Your skills will thank you.
William Duyck retweeted
The PHP Foundation just announced a new Ecosystem Security Team, funded by a grant from Alpha-Omega, to improve security across PHP open source. Volker Dusch will lead the effort as the Ecosystem AI Security Engineer in Residence at the PHP Foundation, a six-month full-time role, with additional grant funding supporting the team’s broader goals.
William Duyck retweeted
People are reading this like it's praise
It's not - if your model only gives you 3 turns in the smart zone it's a very, very bad model
And btw that third turn ended up at 560K tokens, fuck me
"Just one more IF statement and we're free!!!" - @aarondfrancis on AI if you ask it how we're doing. #LaravelLive #OutOfContext
William Duyck retweeted
Replying to @mmmattaus
IMO what you need is for the harness to be able to see this:
Invoke /skill-name
And before it's sent to the model, replace it with:
Invoke [/skill-name](../path-to-skill/SKILL.md)
William Duyck retweeted
Let me put this more simply:
Skills need to be able to import other skills without imposing a token cost
A frustrating gap I'm hitting in the skills spec.
TL;DR: I want three tiers of 'invocable'. User-invocable, skill-invocable, and model-invocable. Skill-invocable skills are only invocable by the user, or by skills.
Skills can be marked as model-invocable or user-invocable. Model-invocable skills put their description into context. User-invocable skills are hidden from the model, so no tokens are burned on the description.
But what about skills that you want to BOTH invoke on their own (user-invocable only), but also use as parts of other skills?
An example would be a /review skill, which:
1. Runs some automated checks on the repo
2. Checks the code against the original spec
3. Checks it against some coding standards
What if you want to pull out step 1 into its own skill? /run-automated-checks
You'd create that skill, then reference it in the /review skill: "1. /run-automated-checks"
In order to move that into its own skill, you MUST make it model-invocable - meaning its description goes into context.
This is pointless token waste. You can't omit the description - that goes against spec. But you'd just write a description saying "never invoke this except in other skills".
Anyone working on the skills spec? Has this been considered?
"Every test[case] is a review comment you never need to write again." - @ryangjchandler #LaravelLive
A new mantra for me to share with my team. 😁👍
Starting the day off well. Might be a little Laravel vibes from me today.
laravellive.uk/ – at City of London, London
William Duyck retweeted
/teach now creates reusable components which get improved/developed as you learn more
More token-efficient, and builds momentum
Look at these sweet cubes:
William Duyck retweeted
Announcing mattpocock/skills v1
- Achieved a 63% reduction in token cost for skill descriptions
- Split skills into model-invocable and user-invocable skills, adding /codebase-design, /domain-modeling, and /grilling
- (UPDATED) /writing-great-skills - rewritten from the ground up, encoding my skill-writing best practices
- (UPDATED) /diagnose -> /diagnosing-bugs - now model-invocable, awesome for fixing hard bugs
- (NEW) /ask-matt: a router skill that teaches you how all the engineering skills work together
William Duyck retweeted
🆕 Introducing the MDN MCP server!
Bring MDN's docs and browser compat data straight into your AI agent or IDE for accurate, up-to-date answers about the web platform.
No more outdated guesses from training data.
Learn more 👇
developer.mozilla.org/en-US/…

ALT A headline Introducing MDN MCP server above a terminal window titled Light-dark CSS function for images, showing a prompt asking how to use the light-dark() CSS function for images and which browsers support it, with a note that the mdn tool was called 4 times, followed by an answer explaining that light-dark() takes two image values and works anywhere an image is accepted. The MDN logo appears on the right.













