Recently I came across the /handoff skill, which I've been using a lot. I find it much better than /compact.
Basically:
- /handoff file creates a short document with the important context from your current session and maybe next steps as checklist.
- You can then start a fresh session with /continue file
- You can also hand the work from Claude to ChatGPT, or the other way around. Very useful at time of session limits.
- Plus your handoff files becomes a useful piece of project memory that you can reference later.
I find this much more useful than /compact or /clear because the context is saved in something portable instead of being tied to one session and i've seen better results doing this every 20 messages or so than running long sessions.
I have been doing this a lot even without a skill, having Fable write a planning document, then spawning an Opus subagent with instructions to strictly follow the plan and report any deviance at the end. It also helps that then the plan is always saved in an md file so any future agent can look at it and see what happened.
> Opened issue for this and it was automatically closed: […]
Clarification: It wasn’t closed on submission though. It sat open ~17 days, a bot marked it stale, and it closed when nobody responded to the stale label.
The two-phase thing is the part I didn’t know until recently: the stale label is basically asking “is this still relevant?”, and answering it makes the bot back off next time around. nixpkgs does the same. Bumping feels wrong on most trackers, agreed, but at this issue volume I don’t know what else works.
Anyway a comment should reopen it. Your CLI vs desktop screenshots are a better repro than most things in that tracker.
In this case there is a two phase staleness check. The bot marks it as stale and it is correct to "bump" it if you think it is still important. The nixpkgs repo works the same way. I think it backs off from adding stale again as it gets bumped.
I'm not saying it's a perfect solution but for projects that deal with large amounts of issues it's workable.
Yes, now the poster of the issue just needs to (tell claude to) write a bot which posts a "bump" comment every 17 days, and the bots will cancel each other out.
Can anyone explain why the prefix cache is tied to effort?
I frequently run Fable at xhigh effort to run statistical modeling way above my undergraduate understanding. Claude Fable produces Masters-degree level output, and then I spend lots of round trips asking it to explain different parts to me.
The first part absolutely uses the extra effort, but the interrogation exercise is something a much simpler model, or the same model with much less effort, could answer.
One trick is to simply as for a fast answer when talking to a high effort model, when working interactively. Sounds stupid but I do this all the time and it works. Just tell it you are working interactively now and need ultrafast answers with no thinking.
I would be really curious to know as well, why effort is linked to cache as its quite inconveniant. Is it possible the token used to indicate effort is only passed once at the start, not per thinking trace, or quite simply that different efforts have different model weights?
I’m guessing that there’s a system prompt at the top telling the model about its reasoning budget. So when you switch reasoning effort it busts the cache.
> @-mention files instead of naming them. The file gets attached to your message directly, which saves a Read call, or a search if Claude has to go find it.
I've heard it argued that this is an antipattern. If the file is large, it will read the whole file. With Read or something similar, it can do a targeted search and read only the relevant portion.
Is this still not the case?
Also, since they mention /context: Can anyone explain why /context takes so long to run? It usually takes several seconds, and I've had cases of it taking over a minute.
And why don't they just show the basics in a status line somewhere? Just a plain: "120K/200K tokens" I hate having to type /context just to get this. And I shouldn't need to install an extension.
You can do tons more, really. There’s even a built-in /statusline command to modify it; mine shows both context window usage alongside session and weekly limit, all of them as progress bars. Just ask Claude to do it.
> I've heard it argued that this is an antipattern. If the file is large, it will read the whole file. With Read or something similar, it can do a targeted search and read only the relevant portion.
I suspect you're right and that's why they haven't fixed @-search in the desktop app.
I actually don't find myself using it anymore since moving to the desktop app. I went from using various AI extensions in the IDE to Claude Code desktop.
But if that's accurate, why mention it in this post? Maybe because that's the first thing developers will try when moving away from a code editor?
What I see is that I have to read a bunch of stuff and go through a bunch of hassle to save money when the root of it is that if I tell an AI to do work on a task while I'm busy with something else and come back later I've doubled my cost because the cache expires too quickly?
As a driver I want to spend the majority of the day optimizing my truck's gasoline usage so that I can focus on optimizing my productivity for an outcome I am too far disconnected from to care about anymore.
I'm finding that unexpected cache rewrites cost me huge.
I have 1h cache TTL set, and do nothing to cause rewrite (response in time, no model/effort/tool changes).
At 400K tokens in, I'll write a message, and /usage shows only a small increase in cache write. On the next message, cache writes shows 800K, and by the end, I often hit 2M cache writes with no explanation.
This seems to happen when: using /btw, asking it to review code, other random times. Anyone know what's going on?
To not answer your question, I have a claude stop hook that my status line uses to tell me how close my cache is to expiring https://pastebin.com/JLXUG16Q
Bro: superintelligent machine line go up AI AGI software solved automate everything
Also bro: Run /clearbetween tasks. This prevents prior irrelevant context from being sent back to the model, which can reduce token usage.
Set your model and effort level before you start. Changing either one mid-conversation can bust your prompt cache, which can increase token cost.
@-mention files instead of naming them. The file gets attached to your message directly, which saves a Read call, or a search if Claude has to go find it.
Add quiet flags to noisy commands, or run them in a subagent. Command output is added to the conversation just like a file, and stays there for the rest of the session.
Run /context once in a fresh session. It shows what's loaded (CLAUDE.md, MCP tool definitions), so you can cut out anything unnecessary.
/compact before you take a break from your keyboard. The prompt cache expires after an hour, and summarizing a conversation is much cheaper while it's still cached.
After having used Codex for a promotional month, and now using Claude, Claude is not as efficient with finding relevant information. I can give it the one file it should be using and then it goes off and greps parent directories for more context. It’s also incredibly slow at producing results because of this side work. In this article, it seems like they are catching up to what GitHub copilot users had already been doing since the cost restructuring in June.
I mean, it feels hard not to laugh at this type of blog post. My cynical interpretation is that this is a type of passing the buck to engineers in enterprise settings ("Stop spending tokens. Did you read the value maximization blog post? It is your fault.")
Oh yes, Claude will do all sorts of different things -- it depends on how you use it! You should totally learn all of these little finicky things ... because now completing your tasks cost money. It's not "free" anymore haha like when you used your old text editor, what are you a grandpa?
Oh, and those things will definitely change, as we (the priests of Claude) are vibe coding the system you use to do your little "tasks" ... right, you can't see how it works ... the code is not available. It's all good, just trust us -- we're totally looking out for you.
I mean it is utterly ridiculous to talk around this model of development. There are so many walls between you and doing the thing you want to do.
Agents are great, but the notion of "best tricks" for how to best use an opaque costful tool which will, by all odds, be completely different in a few months time is quite funny.
You know what won't change? A fucking text editor. Or your pi config, or a local model you run and trust.
Not sure how this level of cynicism is even remotely warranted. The post helps people who don't understand LLMs very well get the most out of Claude. Your incentives here are actually aligned with Anthropics since both of you want fewer tokens inputted and outputted per task completed.
Perhaps my enterprise cynicism is not warranted, but my other comments refer to accurate descriptions of reality: Anthropic wants to place their opaque system between you and any computational task that you wish to perform. Do you contest this or think it is not accurate?
Why do you think that Anthropic wants fewer tokens inputted and outputted?
Because they sell subscriptions and tokens cost them compute, and their margin lives in the difference between what your subscription pays in and what you cost them in compute.
They have also been supply constrained on compute and if users cost them less in compute they can more subscriptions and less customer frustration.
I agree they want you to have a subscription. That doesn't mean they aren't aligned with their subscribers.
Through my weekend experiments, I've found I can get way better outcomes, and an order of magnitude less cost with my slapped together sandboxed omp setup plus ZDR openrouter models (DeepSeek, Kimi, etc) than I've ever seen from Claude Code at work.
Everything is version pinned and a deliberate choice to change, and a git revert away from changing back.
TBF the models may change underneath me to some extent still, but the cost benefit of running them myself doesn't pan out yet (for agentic coding at least, don't have enough local vram to get a usable context window and generation speed, self hosting on runpod or similar isn't economically sensible for my current consumption though I have tinkered with it)
I'm trying to understand your point of view, but it kind of just sounds like you're against learning how to use tools efficiently?
I mean, agentic coding software is hardly the first tool to exist where learning some idiosyncrasies of how to use it well can result in more efficiency and cost savings.
I think I'm happy about the first two. The third I suppose I care less about, just because I've kind of become used to it from decades working on the internet where many businesses/tools/apps are more like services and less like physical tools that never change.
> The third I suppose I care less about, just because I've kind of become used to it
I've never become used to it. My impression is that the constant churn has accelerated. Plausible drivers are (1) normalize novelty as desirable (like fast fashion), (2) product developer/designer incentive structures that reward revolutionary change over progressive refinement. The global switch to subscription models and continuous deployment didn't help.
> more like services and less like physical tools that never change.
I'm not sure that constant change is a characteristic feature of services, especially not professional services.
It used to be that you bought a piece of software and used that version until you decided it was worth upgrading, like a particular physical tool. The software still evolved, just like the design of physical tools can, in principle, evolve.
All that said, agentic AI tooling is evolving so rapidly I'm not sure an expectation of stability is realistic.
> It used to be that you bought a piece of software and used that version until you decided it was worth upgrading, like a particular physical tool.
But Claude is running on someone else's computer, not yours, so it's not Photoshop so much as AWS. Or a rented server farm, if AWS is too new school for you. Of course there's an ongoing cost! And if you configure the server to use more electricity, you get billed more.
If you want to do agentic tooling locally, you can do that—the models aren't quite as good, but they're not bad either. But be warned, for the large models you're going to have to acquire some serious hardware, to the point where you may wish you'd chosen to just rent it instead!
I agree that the third seems to be implied by industry, but I'd argue that it's not clear that it is necessary -- and it is subtle whether or not it is beneficial?
My contention is that we should be building towards less churn, not more. I'm aware that some churn is the cost of engaging in any sort of enterprise, but I'm deeply suspicious of an AI company inserting themselves between me, and the tasks I wish to do with my device -- with a completely opaque system that I can't really "learn".
I'm curious if you also laugh at articles about how to reduce your AWS bill, or how to add indices to Postgres such that you can run it on cheaper hardware.
I think you're conflating two different things here. I am not aware of any DB optimization articles that say "trust me bro, throw your data, don't build indices, it'll Just Work™!"
dude, if you try to do harness development yourself you will realize that most things said in this blogpost is shared with any ${sufficiently_advanced_harness}. this is not really claude-specific, this is just how this class of tools, OSS or not, works
That's not my complaint. I know well the concerns of agent harnesses.
My complaint is that this is a low-dimensional projection of a system which I have no insight into, and therefore, I cannot evaluate the tips myself against their source.
Am I to believe the creators, knowing full well that the source will, as Boris Cherny put it in a recent interview, be deleted and rewritten from scratch at the release of the next big model?
Further: I'm responding to content in the blog post itself:
> Until pretty recently, the tools you wrote code with were a flat fee (or free). Your editor cost the same whether you fixed one test or fifty that afternoon, so an individual task didn't really have a price of its own.
I find this type of prose ridiculous. It conveys "this is the way things are now, get used to it".
i guess you do? claude code is the commercial closed sourced version provides by ant. reading a mini version of vllm or sglang and then read codex source code or grok build source code will teach you all things taught by this article, fully in the open
it is like saying that you have no insights into some $commercial_db_system which is kinda true but imagine if the article is to teach you indices, query normalization, etc..
> Set your model and effort level before you start. Changing either one mid-conversation can bust your prompt cache, which can increase token cost.
I know we supposed to do this but is there any particular reason why such things cannot be supported? I thought its running on same model just different settings like reasoning. This would be super useful.
What’s the point of running /clear vs starting a brand new session. At least with the latter I have session history, no? Pardon my ignorance since Claude isn’t my primary driver
Not 100% sure what clear does, but starting a new session invalidates the cache*, whereas I assume clear only removes part of the context, so it should be cheaper and faster.
* In theory the system prompt is always the same and should therefore be cached, but in practice there's some dynamic strings in there so it doesn't work that way. (Unless they changed this recently.)
Part of the cynic in me just wants to ask "why not make a better harness by default?" The other cynic in me knows I'm about to see a hundred post on 'HOW TO 10X CLAUDE" from the ai bros and I'm already tired.
I guess if I had to ask something (as someone who doesn't use CC as their daily driver), how much control do you have on subagents and roughly how do define or know when a session is getting too long? I know the answer is "when the model is getting worse" but worse is doing a lot of lifting in that sentence.
Yeah, I sort of feel like they could just do this in Claude Code for us in some way. I mean they already run some mini classifier on whether a given prompt is waiting on input, so they could do the same to detect some of these cases, and just handle it.
If you have to explain that someone is "holding it wrong"(1), that is product error, not a user error.
I do all that, but an 'AS-BUILT' full review of my project still eats 3x my 5 hour budget on max 100€. Meanwhile, my 20€ GPT never hit a limit. Different, but just saying.
I didn't read the whole thing, but I got my back up at the headline and my first reaction is now even the "AI" companies are telling you that "you're holding it wrong".
I mean, they told us "just talk naturally to the AI because it's so much smarter than all you meatbags" and now it's “for best results, please learn to manage context windows, prompt caching, cache invalidation, model switching, output verbosity and when to manually clear or compact your session.”
I get it, but it seems like the "PRODUCT" should be doing this shit. I.e., the PRODUCT is getting less efficient because I didn't manually manage its context correctly and now it's MY fault.
Edit: i.e., for e.g. Doh. Even the robots get that right. Sigh.
I'm doing my best to interpret your comment but if I parse it it seems like you think my complaint is "I shouldn't have to express myself clearly" when really its "Why am I being asked to understand and manually manage the implementation details of the product in order to keep it working efficiently?".
Unless I am fully not understanding your comment and you don't actually mean “humans require communication skills too” which in honesty feels orthogonal to my complaint.
> I mean, they told us "just talk naturally to the AI because it's so much smarter than all you meatbags" and now it's “for best results, please learn to manage context windows, prompt caching, cache invalidation, model switching, output verbosity and when to manually clear or compact your session.”
It's true both that it can be smarter than all us meat bags and that talking to it a certain way gets better results. On some of the things it's a limitation of the technology and on some of the others it's just how information and effort work in any context. I don't see it as orthogonal to your complaint, I see your complaint as misplaced frustration, like Anthropic invented GIGO and compute so they'd have an excuse to write a blog post.
Recently I came across the /handoff skill, which I've been using a lot. I find it much better than /compact.
Basically:
- /handoff file creates a short document with the important context from your current session and maybe next steps as checklist.
- You can then start a fresh session with /continue file
- You can also hand the work from Claude to ChatGPT, or the other way around. Very useful at time of session limits.
- Plus your handoff files becomes a useful piece of project memory that you can reference later.
I find this much more useful than /compact or /clear because the context is saved in something portable instead of being tied to one session and i've seen better results doing this every 20 messages or so than running long sessions.
I have been doing this a lot even without a skill, having Fable write a planning document, then spawning an Opus subagent with instructions to strictly follow the plan and report any deviance at the end. It also helps that then the plan is always saved in an md file so any future agent can look at it and see what happened.
> @-mention files instead of naming them
Love Claude, but the @ mention is broken in the desktop app. For the same project if I type the same query "@ephem" I get:
CLI: https://imgur.com/a/VZMUCOa (good, relevant results)
Desktop: https://imgur.com/a/QLSo4Ms (bad, irrelevant)
Opened issue for this and it was automatically closed:
https://github.com/anthropics/claude-code/issues/71421
I could have written the issue better (using CLI as comparison instead of VS Code). But, no doubt in my mind Claude could fix this itself in a minute.
> Opened issue for this and it was automatically closed: […]
Clarification: It wasn’t closed on submission though. It sat open ~17 days, a bot marked it stale, and it closed when nobody responded to the stale label.
The two-phase thing is the part I didn’t know until recently: the stale label is basically asking “is this still relevant?”, and answering it makes the bot back off next time around. nixpkgs does the same. Bumping feels wrong on most trackers, agreed, but at this issue volume I don’t know what else works.
Anyway a comment should reopen it. Your CLI vs desktop screenshots are a better repro than most things in that tracker.
By what definition of automatically does a bot closing an issue with low activity not count as "automatically closed"?
Just because a Github issue doesn't have activity doesn't mean it's not an issue anymore.
the norms of issue trackers are strongly opposed to “bump”. these autoclose bots may yet change that
In this case there is a two phase staleness check. The bot marks it as stale and it is correct to "bump" it if you think it is still important. The nixpkgs repo works the same way. I think it backs off from adding stale again as it gets bumped.
I'm not saying it's a perfect solution but for projects that deal with large amounts of issues it's workable.
Yes, now the poster of the issue just needs to (tell claude to) write a bot which posts a "bump" comment every 17 days, and the bots will cancel each other out.
Can anyone explain why the prefix cache is tied to effort?
I frequently run Fable at xhigh effort to run statistical modeling way above my undergraduate understanding. Claude Fable produces Masters-degree level output, and then I spend lots of round trips asking it to explain different parts to me.
The first part absolutely uses the extra effort, but the interrogation exercise is something a much simpler model, or the same model with much less effort, could answer.
One trick is to simply as for a fast answer when talking to a high effort model, when working interactively. Sounds stupid but I do this all the time and it works. Just tell it you are working interactively now and need ultrafast answers with no thinking.
I would be really curious to know as well, why effort is linked to cache as its quite inconveniant. Is it possible the token used to indicate effort is only passed once at the start, not per thinking trace, or quite simply that different efforts have different model weights?
I’m guessing that there’s a system prompt at the top telling the model about its reasoning budget. So when you switch reasoning effort it busts the cache.
> @-mention files instead of naming them. The file gets attached to your message directly, which saves a Read call, or a search if Claude has to go find it.
I've heard it argued that this is an antipattern. If the file is large, it will read the whole file. With Read or something similar, it can do a targeted search and read only the relevant portion.
Is this still not the case?
Also, since they mention /context: Can anyone explain why /context takes so long to run? It usually takes several seconds, and I've had cases of it taking over a minute.
And why don't they just show the basics in a status line somewhere? Just a plain: "120K/200K tokens" I hate having to type /context just to get this. And I shouldn't need to install an extension.
You can make your own status line with something like "120K/200K Fable 5", it's nice.
You can do tons more, really. There’s even a built-in /statusline command to modify it; mine shows both context window usage alongside session and weekly limit, all of them as progress bars. Just ask Claude to do it.
> I've heard it argued that this is an antipattern. If the file is large, it will read the whole file. With Read or something similar, it can do a targeted search and read only the relevant portion.
I suspect you're right and that's why they haven't fixed @-search in the desktop app.
I actually don't find myself using it anymore since moving to the desktop app. I went from using various AI extensions in the IDE to Claude Code desktop.
But if that's accurate, why mention it in this post? Maybe because that's the first thing developers will try when moving away from a code editor?
What I see is that I have to read a bunch of stuff and go through a bunch of hassle to save money when the root of it is that if I tell an AI to do work on a task while I'm busy with something else and come back later I've doubled my cost because the cache expires too quickly?
As a driver I want to spend the majority of the day optimizing my truck's gasoline usage so that I can focus on optimizing my productivity for an outcome I am too far disconnected from to care about anymore.
This feels like the Anthropic version of "You're holding it wrong" (1)
1) https://www.wired.com/2010/06/iphone-4-holding-it-wrong/
It feels worse. It's all noob level suggestions that any decent system would have optimized away already.
Step 1: use a different LLM that isn't 10x slower and 2-5x more expensive for the same level of quality.
I'm finding that unexpected cache rewrites cost me huge.
I have 1h cache TTL set, and do nothing to cause rewrite (response in time, no model/effort/tool changes).
At 400K tokens in, I'll write a message, and /usage shows only a small increase in cache write. On the next message, cache writes shows 800K, and by the end, I often hit 2M cache writes with no explanation.
This seems to happen when: using /btw, asking it to review code, other random times. Anyone know what's going on?
To not answer your question, I have a claude stop hook that my status line uses to tell me how close my cache is to expiring https://pastebin.com/JLXUG16Q
_entirely_ vibecoded don't @ me.
I have long suspected but not confirmed that /btw uses a lower tier model like Haiku.
Depending on how you're triggering reviews, you may be using a sub-agent?
I don't use sub-agents, only the normal linear message-response flow.
Bro: superintelligent machine line go up AI AGI software solved automate everything
Also bro: Run /clearbetween tasks. This prevents prior irrelevant context from being sent back to the model, which can reduce token usage. Set your model and effort level before you start. Changing either one mid-conversation can bust your prompt cache, which can increase token cost. @-mention files instead of naming them. The file gets attached to your message directly, which saves a Read call, or a search if Claude has to go find it. Add quiet flags to noisy commands, or run them in a subagent. Command output is added to the conversation just like a file, and stays there for the rest of the session. Run /context once in a fresh session. It shows what's loaded (CLAUDE.md, MCP tool definitions), so you can cut out anything unnecessary. /compact before you take a break from your keyboard. The prompt cache expires after an hour, and summarizing a conversation is much cheaper while it's still cached.
What do you want? Lacking omniscience, even the smartest superintelligence imaginable has to do more thinking to deal with worse inputs.
Author not bro, sorry misgender
I'd argue that women can be bros too, especially when using the word in this sense.
puts on my etiquette hat
don’t do that, it is weird, use “bruh” or “dude”
After having used Codex for a promotional month, and now using Claude, Claude is not as efficient with finding relevant information. I can give it the one file it should be using and then it goes off and greps parent directories for more context. It’s also incredibly slow at producing results because of this side work. In this article, it seems like they are catching up to what GitHub copilot users had already been doing since the cost restructuring in June.
I mean, it feels hard not to laugh at this type of blog post. My cynical interpretation is that this is a type of passing the buck to engineers in enterprise settings ("Stop spending tokens. Did you read the value maximization blog post? It is your fault.")
Oh yes, Claude will do all sorts of different things -- it depends on how you use it! You should totally learn all of these little finicky things ... because now completing your tasks cost money. It's not "free" anymore haha like when you used your old text editor, what are you a grandpa?
Oh, and those things will definitely change, as we (the priests of Claude) are vibe coding the system you use to do your little "tasks" ... right, you can't see how it works ... the code is not available. It's all good, just trust us -- we're totally looking out for you.
I mean it is utterly ridiculous to talk around this model of development. There are so many walls between you and doing the thing you want to do.
Agents are great, but the notion of "best tricks" for how to best use an opaque costful tool which will, by all odds, be completely different in a few months time is quite funny.
You know what won't change? A fucking text editor. Or your pi config, or a local model you run and trust.
Not sure how this level of cynicism is even remotely warranted. The post helps people who don't understand LLMs very well get the most out of Claude. Your incentives here are actually aligned with Anthropics since both of you want fewer tokens inputted and outputted per task completed.
Perhaps my enterprise cynicism is not warranted, but my other comments refer to accurate descriptions of reality: Anthropic wants to place their opaque system between you and any computational task that you wish to perform. Do you contest this or think it is not accurate?
Why do you think that Anthropic wants fewer tokens inputted and outputted?
Because they sell subscriptions and tokens cost them compute, and their margin lives in the difference between what your subscription pays in and what you cost them in compute.
They have also been supply constrained on compute and if users cost them less in compute they can more subscriptions and less customer frustration.
I agree they want you to have a subscription. That doesn't mean they aren't aligned with their subscribers.
Through my weekend experiments, I've found I can get way better outcomes, and an order of magnitude less cost with my slapped together sandboxed omp setup plus ZDR openrouter models (DeepSeek, Kimi, etc) than I've ever seen from Claude Code at work.
Everything is version pinned and a deliberate choice to change, and a git revert away from changing back.
TBF the models may change underneath me to some extent still, but the cost benefit of running them myself doesn't pan out yet (for agentic coding at least, don't have enough local vram to get a usable context window and generation speed, self hosting on runpod or similar isn't economically sensible for my current consumption though I have tinkered with it)
I'm trying to understand your point of view, but it kind of just sounds like you're against learning how to use tools efficiently?
I mean, agentic coding software is hardly the first tool to exist where learning some idiosyncrasies of how to use it well can result in more efficiency and cost savings.
It's very easy to understand:
- I'm happy to learn how to use tools efficiently
- I like to be able to inspect my tools
- I'm against tools changing underneath me
Are you against any of these points?
I think I'm happy about the first two. The third I suppose I care less about, just because I've kind of become used to it from decades working on the internet where many businesses/tools/apps are more like services and less like physical tools that never change.
> The third I suppose I care less about, just because I've kind of become used to it
I've never become used to it. My impression is that the constant churn has accelerated. Plausible drivers are (1) normalize novelty as desirable (like fast fashion), (2) product developer/designer incentive structures that reward revolutionary change over progressive refinement. The global switch to subscription models and continuous deployment didn't help.
> more like services and less like physical tools that never change.
I'm not sure that constant change is a characteristic feature of services, especially not professional services.
It used to be that you bought a piece of software and used that version until you decided it was worth upgrading, like a particular physical tool. The software still evolved, just like the design of physical tools can, in principle, evolve.
All that said, agentic AI tooling is evolving so rapidly I'm not sure an expectation of stability is realistic.
> It used to be that you bought a piece of software and used that version until you decided it was worth upgrading, like a particular physical tool.
But Claude is running on someone else's computer, not yours, so it's not Photoshop so much as AWS. Or a rented server farm, if AWS is too new school for you. Of course there's an ongoing cost! And if you configure the server to use more electricity, you get billed more.
If you want to do agentic tooling locally, you can do that—the models aren't quite as good, but they're not bad either. But be warned, for the large models you're going to have to acquire some serious hardware, to the point where you may wish you'd chosen to just rent it instead!
I agree that the third seems to be implied by industry, but I'd argue that it's not clear that it is necessary -- and it is subtle whether or not it is beneficial?
My contention is that we should be building towards less churn, not more. I'm aware that some churn is the cost of engaging in any sort of enterprise, but I'm deeply suspicious of an AI company inserting themselves between me, and the tasks I wish to do with my device -- with a completely opaque system that I can't really "learn".
I'm curious if you also laugh at articles about how to reduce your AWS bill, or how to add indices to Postgres such that you can run it on cheaper hardware.
I think you're conflating two different things here. I am not aware of any DB optimization articles that say "trust me bro, throw your data, don't build indices, it'll Just Work™!"
dude, if you try to do harness development yourself you will realize that most things said in this blogpost is shared with any ${sufficiently_advanced_harness}. this is not really claude-specific, this is just how this class of tools, OSS or not, works
That's not my complaint. I know well the concerns of agent harnesses. My complaint is that this is a low-dimensional projection of a system which I have no insight into, and therefore, I cannot evaluate the tips myself against their source.
Am I to believe the creators, knowing full well that the source will, as Boris Cherny put it in a recent interview, be deleted and rewritten from scratch at the release of the next big model?
Further: I'm responding to content in the blog post itself:
> Until pretty recently, the tools you wrote code with were a flat fee (or free). Your editor cost the same whether you fixed one test or fifty that afternoon, so an individual task didn't really have a price of its own.
I find this type of prose ridiculous. It conveys "this is the way things are now, get used to it".
Does that make sense?
> which I have no insight into
i guess you do? claude code is the commercial closed sourced version provides by ant. reading a mini version of vllm or sglang and then read codex source code or grok build source code will teach you all things taught by this article, fully in the open
it is like saying that you have no insights into some $commercial_db_system which is kinda true but imagine if the article is to teach you indices, query normalization, etc..
> I find this type of prose ridiculous. It conveys "this is the way things are now, get used to it".
This is absolutely what AI companies and AI lovers want you to believe
> Set your model and effort level before you start. Changing either one mid-conversation can bust your prompt cache, which can increase token cost.
I know we supposed to do this but is there any particular reason why such things cannot be supported? I thought its running on same model just different settings like reasoning. This would be super useful.
What’s the point of running /clear vs starting a brand new session. At least with the latter I have session history, no? Pardon my ignorance since Claude isn’t my primary driver
Its all lies anyhow:
- https://github.com/anthropics/claude-code/issues/47756 > [BUG] /clear bleeds into the next session (what also breaks cache)
- https://github.com/anthropics/claude-code/issues/47098 > [BUG] new sessions will *never* hit a (full)cache
Not 100% sure what clear does, but starting a new session invalidates the cache*, whereas I assume clear only removes part of the context, so it should be cheaper and faster.
* In theory the system prompt is always the same and should therefore be cached, but in practice there's some dynamic strings in there so it doesn't work that way. (Unless they changed this recently.)
As far as I've seen /clear is the same thing as starting a new session.
If you type /resume right after clear, the first thing in the list is the session you just cleared.
Is it possible to have some kind of script to keep your cache warm, or auto compact or something.
I sometimes just leave some goals or something running before I go to bed or out and I don’t want to pay the cache text when I come back.
If everyone does it they lose the memory savings they're getting by expiring the cache.
Part of the cynic in me just wants to ask "why not make a better harness by default?" The other cynic in me knows I'm about to see a hundred post on 'HOW TO 10X CLAUDE" from the ai bros and I'm already tired.
I guess if I had to ask something (as someone who doesn't use CC as their daily driver), how much control do you have on subagents and roughly how do define or know when a session is getting too long? I know the answer is "when the model is getting worse" but worse is doing a lot of lifting in that sentence.
Yeah, I sort of feel like they could just do this in Claude Code for us in some way. I mean they already run some mini classifier on whether a given prompt is waiting on input, so they could do the same to detect some of these cases, and just handle it.
If you have to explain that someone is "holding it wrong"(1), that is product error, not a user error.
(1) https://www.wired.com/2010/06/iphone-4-holding-it-wrong/
Austerity on tap!
do people use the Caveman, RTK plugins
No, because it is useless.
• https://news.ycombinator.com/item?id=49080605 (JetBrains, Does Speaking to Agents Like Cavemen Save 65% of Tokens? We Test)
• https://news.ycombinator.com/item?id=48588755 (The Token Compression Illusion: Why I'm Skeptical of RTK )
If it can save 10% of tokens, how is that useless?
My agent didn't like it. Indirection causing noise and failure outweighed the token savings.
https://regular-reviews.pages.dev/rtk
I do all that, but an 'AS-BUILT' full review of my project still eats 3x my 5 hour budget on max 100€. Meanwhile, my 20€ GPT never hit a limit. Different, but just saying.
I didn't read the whole thing, but I got my back up at the headline and my first reaction is now even the "AI" companies are telling you that "you're holding it wrong".
I mean, they told us "just talk naturally to the AI because it's so much smarter than all you meatbags" and now it's “for best results, please learn to manage context windows, prompt caching, cache invalidation, model switching, output verbosity and when to manually clear or compact your session.”
I get it, but it seems like the "PRODUCT" should be doing this shit. I.e., the PRODUCT is getting less efficient because I didn't manually manage its context correctly and now it's MY fault.
Edit: i.e., for e.g. Doh. Even the robots get that right. Sigh.
There is no shortage of literature on how to communicate effectively with real people.
I'm doing my best to interpret your comment but if I parse it it seems like you think my complaint is "I shouldn't have to express myself clearly" when really its "Why am I being asked to understand and manually manage the implementation details of the product in order to keep it working efficiently?".
Unless I am fully not understanding your comment and you don't actually mean “humans require communication skills too” which in honesty feels orthogonal to my complaint.
> I mean, they told us "just talk naturally to the AI because it's so much smarter than all you meatbags" and now it's “for best results, please learn to manage context windows, prompt caching, cache invalidation, model switching, output verbosity and when to manually clear or compact your session.”
It's true both that it can be smarter than all us meat bags and that talking to it a certain way gets better results. On some of the things it's a limitation of the technology and on some of the others it's just how information and effort work in any context. I don't see it as orthogonal to your complaint, I see your complaint as misplaced frustration, like Anthropic invented GIGO and compute so they'd have an excuse to write a blog post.
Huh. And to me it’s like “I can’t believe Anthropic has the audacity to post that and I can’t believe my peers defend it”
Oh well.
"It is difficult to get a man to understand something, when his salary depends on his not understanding it." -Upton Sinclair
Anthropic has no incentive to make their products more efficient as long as they're selling them by the token.
They are selling to many customers by subscription.