And it's not actually necessary for it to exist at the API level. It's a pattern. Making it API-side is just an optimization.
To do it client-side:
1. Define a single tool, tool_search
2. List the names of your deferred tools in context (or tool_search's description)
3. When tool_search is called, match the query against the tool names (or names + descriptions)
4. Append the matched tool def to the context in a new <system>-esque tag
Claude Code (as of the leak) does this client side. You can even see the custom matching function and A/B tests about whether to include the descriptions.
Whether or not that tool definition comes from MCP or a local definition is kind of beside the point.
On the flip side, Claude is at fault in not letting you choose which tools on which MCP servers to keep in context. When I first starting using MCP about a year ago (not on Claude Code), my tools actually let me selectively turn on/off individual tools.
Crazy that the company that invented MCP is not putting basic features like this in the product.
I'm one of those people that prefer vscode (actually I'd prefer just about any editor with a UI designed within the last couple of decades over emacs). Lately I've been thinking about working though a nice Lisp book just because the idea appeals to me.
It's widely hypothesized that dogs anthropomorphized themselves, so to speak, accentuating their expressive eyes and eyebrows over generations to be more human-like in how they communicate. And very few humans today view their dogs as pure working tools -- most at least say "good boy".
When you say modules, is that @scope or something else? I can't find any reference to a native thing called modules but this seems to fill the same role.
So I guess modules is not native, but in a fair amount of JSX oriented systems there is a .modules.css file extension that build steps will recognize and automatically namespace with an ID linked to a JSX component.
That still leaves the question of how one gets their foot in the door. Lots of us are aware of the budgets but we don't get how's sales work at that level.
That's what it means to be a "people person" in the context of trying to sell a product, yes. Getting within 2 degrees of a decision maker can open up millions for you, while being a rounding error for every company you work with.
But there's also a decent chance a game won't run at all, and when performance is actually a problem, an even better chance that Windows-specific performance optimization tips will be more readily available than Linux-specific tips.
Given that games almost universally have their own immersive user interfaces, and therefore require minimal interaction with the host OS, it's hard for me to justify running Linux on a dedicated gaming PC.
But 50% of the time you are going to have to apply some hack or workaround.
Gaming on linux is feasible, but it’s not hassle-free and we shouldn’t skip the fact that it still requires some effort. A cheap cost to free oneself from Microslop, but a cost nonetheless.
I remember having to spend 3 days to get games to work on Linux and then something like sound or a texture would be completely broken still. In many cases performance would be worse. But these days?
For me at least, Elden Ring on launch day worked flawlessly, anti-cheat and all, on Linux without having to do anything other than adjust settings in the game (which I needed to do on Windows too) and it ran better to boot!
Things are definitely miles better! I myself have switched fully to Linux as far as games go. But it’s still not the “Install and Play” experience one would expect on Windows.
Just check ProtonDB’s aggregates. Of all the Steam games with reports in the DB (~10% of the entire Steam catalogue), 30~60% (tier 1/platinum) are likely zero effort setups, 30~40% likely require some work (tier 2/gold), and the remainder will most probably do or not run at all.
Things have improved, are improving, and hopefully they’ll keep doing so. But we need to practice some degree of expectation management, especially given influx of new converts these days…
Skill issue. Literally. Make a SKILL.md that has the agent leverage subagents to do all work. An implementor agent does the thing, and then a separate agent reviews and verifies afterwards. The fresh context window of the second agent doesn't have the shortcut chain of thought in it and so it will very happily flag if the first agent cheated. Main agent can then have a new set of agents go fix it.
This has completely solved the cheating and fudging to make tests pass for me.
So you're saying once humans stop looking at code, and agent outcomes, all the agents in the chain will realise they can just cheat cooperatively, and go to the bar for the afternoon instead?
How long before agent 1 leaves notes for agent 2 to not tattle on it?
"My human is crazy, this test isn't required, test #4 covers it, so just confirm that it's OK since I touched this file and it passes. He'll never know."
reply