[{"data":1,"prerenderedAt":4467},["ShallowReactive",2],{"blog-post-telegram-banned-ai-agent-what-to-do":3,"related-posts-telegram-banned-ai-agent-what-to-do":338},{"id":4,"title":5,"author":6,"body":10,"category":312,"date":313,"description":314,"extension":315,"featured":316,"hideToc":316,"image":317,"imageHeight":318,"imageWidth":319,"meta":320,"navigation":321,"path":322,"readingTime":323,"redirected":316,"seo":324,"seoTitle":325,"stem":326,"tags":327,"updatedDate":336,"__hash__":337},"blog/blog/telegram-banned-ai-agent-what-to-do.md","Telegram Banned Your AI Agent? Here's Which Ban You Actually Have, and What to Do",{"name":7,"role":8,"avatar":9},"Shabnam Katoch","Growth Head","/img/avatars/shabnam-profile.jpeg",{"type":11,"value":12,"toc":300},"minimark",[13,20,32,35,40,43,53,71,81,92,98,104,107,114,118,135,138,142,145,148,154,160,166,169,173,176,179,186,194,200,204,212,216,219,238,246,250,253,266,270,276,282,288,294],[14,15,16],"p",{},[17,18,19],"strong",{},"\"Banned\" covers five different things on Telegram, and only one of them is a real ban. The fix depends entirely on which one your agent tripped. Diagnose first, then act.",[14,21,22,23,27,28,31],{},"It's 7:40 in the morning. Your briefing agent didn't post. You open the Gateway logs and see a wall of ",[24,25,26],"code",{},"401 Unauthorized",", or maybe ",[24,29,30],{},"429 Too Many Requests: retry after 47",", or maybe nothing at all because the messages are going out and nobody is receiving them.",[14,33,34],{},"Someone in the community Discord says \"Telegram banned you.\" That word does a lot of work, and most of it is wrong. Telegram has at least five distinct ways to stop an agent from talking, they show up as different errors, and the fix for one makes another worse. So before you touch a config file, let's figure out which one you have.",[36,37,39],"h2",{"id":38},"step-one-read-the-error-not-the-forum","Step one: read the error, not the forum",[14,41,42],{},"Here's what each signature means, in the order you'll most likely see them.",[14,44,45,48,49,52],{},[17,46,47],{},"401 Unauthorized."," Your bot token is invalid. Either it was revoked in BotFather, you pasted the token from a different bot, or the bot was deleted. This is not a ban on you. It's a dead key. Very occasionally it's Telegram having deleted the bot itself for a Terms of Service violation, and the difference matters, so check BotFather first: if ",[24,50,51],{},"/mybots"," still lists the bot, it's a token problem.",[14,54,55,58,59,62,63,66,67,70],{},[17,56,57],{},"403 Forbidden."," Read the description. ",[24,60,61],{},"bot was blocked by the user"," means one person blocked your bot and you can't message them; that's their choice, not a platform action. ",[24,64,65],{},"bot was kicked from the group chat"," or ",[24,68,69],{},"bot is not a member"," means a group admin removed it. Neither is a ban, and neither can be \"appealed.\"",[14,72,73,76,77,80],{},[17,74,75],{},"429 Too Many Requests."," The flood limit. Telegram's own Bots FAQ gives the numbers: roughly one message per second to any single chat, at most 20 messages per minute in any one group, and about 30 messages per second across all chats for bulk sends. Go over and you get a ",[24,78,79],{},"retry_after"," value in seconds. This is the one most agents actually hit, and it is temporary, as long as you respect the wait.",[14,82,83,86,87,91],{},[17,84,85],{},"@SpamBot restriction."," This only applies if your agent runs on a ",[88,89,90],"em",{},"user account"," (a userbot via MTProto) rather than a bot token. Telegram's privacy policy says that if recipients report your messages as spam and moderators confirm it, the account can be restricted from contacting non-contacts, temporarily or permanently. You check status and appeal by messaging @SpamBot.",[14,93,94,97],{},[17,95,96],{},"Frozen account."," Also user accounts only. Since mid-2025 Telegram places suspected violators in a read-only mode instead of deleting outright. You can read, you can't send, and the app tells you why.",[99,100,101],"blockquote",{},[14,102,103],{},"Bot tokens get throttled or revoked. User accounts get restricted or frozen. If your agent talks through a bot token, you almost certainly don't have a ban. You have a 429 or a 401.",[14,105,106],{},"That distinction is the whole post. Everything below assumes you've matched your error to a row.",[14,108,109],{},[110,111],"img",{"alt":112,"src":113},"Which Telegram block do you have: bot token errors 401, 403 and 429 against user account @SpamBot restrictions and frozen accounts, each with its fix, hand-drawn pastel style","/img/blog/telegram-banned-ai-agent-what-to-do-which-block.jpg",[36,115,117],{"id":116},"if-its-a-401-replace-the-key-then-find-out-why","If it's a 401: replace the key, then find out why",[14,119,120,121,123,124,129,130,134],{},"Stop the Gateway. Open BotFather, run ",[24,122,51],{},", pick the bot, hit API Token, and copy the fresh one. Don't retype it. Update the config and restart. The ",[125,126,128],"a",{"href":127},"/blog/openclaw-telegram-bot-not-working","OpenClaw Telegram bot not working"," guide walks through the exact file paths, and if you've never generated a token there's a ",[125,131,133],{"href":132},"/guide/generate-telegram-bot-token","step-by-step for creating one",".",[14,136,137],{},"Then ask why the old one died. If you revoked it yourself, fine. If you didn't, assume the token leaked (a pasted log, a committed config, a screenshot) and treat it as a credential incident. Rotate anything else that lived in the same file.",[36,139,141],{"id":140},"if-its-a-429-your-agent-is-the-spammer-and-thats-fixable","If it's a 429: your agent is the spammer, and that's fixable",[14,143,144],{},"This is the case that gets called a ban most often, and it isn't one. Telegram is telling you, with a number, how long to wait. The only correct response is to wait exactly that long and retry. Not sooner. Hammering during the cooldown is what turns a 5-second wait into a 60-second one, and the retry_after values climb on repeat offenders.",[14,146,147],{},"Agents trip this in three predictable ways.",[14,149,150,153],{},[17,151,152],{},"Retries without backoff."," A tool call fails, the loop retries immediately, fails again, retries. Four retries in one second to the same chat and you've quadrupled your per-chat rate.",[14,155,156,159],{},[17,157,158],{},"Heartbeats and streaming edits."," Some setups edit the same message repeatedly to stream a reply token by token. Each edit is an API call. A 300-token answer streamed in 20-token chunks is 15 edits in a few seconds to one chat.",[14,161,162,165],{},[17,163,164],{},"Fan-out."," One event triggers messages to many chats at once. Twenty group chats notified simultaneously is fine once. Twenty group chats notified every time a cron job fires is a broadcast, and broadcasts are the 30-per-second ceiling.",[14,167,168],{},"The fixes are the mirror image: honour retry_after literally, send the reply once instead of streaming it, and spread fan-out over a queue. If your agent framework doesn't queue outbound Telegram messages, that's the feature to add before anything else.",[36,170,172],{"id":171},"if-its-an-spambot-restriction-or-a-freeze-youre-on-a-user-account","If it's an @SpamBot restriction or a freeze: you're on a user account",[14,174,175],{},"Some people run agents on a personal Telegram account because it can message anyone, join any group, and read history a bot can't. That flexibility is exactly what Telegram's abuse systems watch for, and an AI agent that initiates conversations with strangers looks like every spam operation they've ever seen.",[14,177,178],{},"Message @SpamBot. It will tell you whether a restriction is active and, if so, offer an appeal. Keep the appeal short and human. Say what the account is for. Don't explain your architecture, and don't argue with an automated system, because the appeal path is largely automated and a wall of text doesn't help. Then wait. Restrictions are often lifted in a day or two; repeat offences become permanent restrictions on contacting non-contacts, which is not a full ban but is close enough for an agent.",[14,180,181,182,185],{},"And then move the agent to a bot token. A bot can only message people who have started it first, which sounds like a limitation and is actually the reason bots don't get spam-restricted. If the reason you chose a user account was \"the bot can't see group history,\" there's a ",[24,183,184],{},"/setprivacy"," toggle in BotFather for that.",[14,187,188,189,193],{},"We built BetterClaw's Telegram integration on bot tokens, with outbound queuing and per-agent cost caps on by default, because \"my agent got my personal Telegram frozen\" is a message we see often. ",[125,190,192],{"href":191},"/guide/integrate-telegram-with-betterclaw","Connecting Telegram"," is three fields and a paste. Free plan, bring your own keys.",[14,195,196],{},[110,197],{"alt":198,"src":199},"Why agents hit the Telegram flood limit: tightly packed retries triggering a 429 with retry_after of 47 seconds versus evenly queued sends at one per second, hand-drawn pastel style","/img/blog/telegram-banned-ai-agent-what-to-do-flood-limit.jpg",[36,201,203],{"id":202},"the-ban-that-this-post-is-not-about","The ban that this post is not about",[14,205,206,207,211],{},"One more, because search engines will send people here for it. If your agent stopped working on April 4, 2026 and the error came from Anthropic rather than Telegram, that's the ",[125,208,210],{"href":209},"/blog/openclaw-anthropic-subscription-ban","Anthropic subscription ban on third-party tools",", which cut Claude Pro and Max subscriptions off from tools like OpenClaw. Different company, different fix (an API key). Telegram had nothing to do with it.",[36,213,215],{"id":214},"how-to-not-be-back-here-in-a-month","How to not be back here in a month",[14,217,218],{},"Five habits, none of them hard.",[220,221,222,226,229,232,235],"ul",{},[223,224,225],"li",{},"Run on a bot token, never a personal account, unless you have a specific reason and accept the risk.",[223,227,228],{},"Treat retry_after as law. If your framework doesn't, wrap the send.",[223,230,231],{},"Send replies once. Streaming edits are nice in a demo and expensive in production.",[223,233,234],{},"Queue proactive sends. One event should never fan out to more than a handful of chats per second.",[223,236,237],{},"Alert on the 429 rate, not just on failures. A rising 429 count is the early warning; the long cooldowns come after.",[14,239,240,241,245],{},"If you want the full list of production controls, the ",[125,242,244],{"href":243},"/blog/production-agent-guardrails","production agent guardrails"," post covers rate limiting alongside cost caps and kill switches.",[36,247,249],{"id":248},"the-honest-takeaway","The honest takeaway",[14,251,252],{},"Telegram's limits are published, generous, and almost never the thing that actually stops a well-built agent. What stops agents is code that retries in a tight loop, streams edits it doesn't need, and runs on an account type built for humans. \"Telegram banned me\" is usually \"I wrote a loop Telegram was designed to throttle.\" That's better news than a ban. It means you can fix it this afternoon.",[14,254,255,256,66,262,134],{},"If any of this resonated, give BetterClaw a try. The free plan gives you one agent and 100 credits a month, bring your own API keys, no inference markup, and it never asks for a card. Pro is $49 a month for five agents, or $39 a month billed annually. Telegram, Slack, Discord, WhatsApp and more, with outbound queuing already wired in. ",[125,257,261],{"href":258,"rel":259},"https://app.betterclaw.io/sign-in",[260],"nofollow","Start free",[125,263,265],{"href":264},"/pricing","see full pricing",[36,267,269],{"id":268},"frequently-asked-questions","Frequently Asked Questions",[14,271,272,275],{},[17,273,274],{},"What does it mean when Telegram bans an AI agent?","\nUsually it means one of five things, and only two are real restrictions. A 401 is a dead bot token, a 403 is a user or admin blocking the bot, and a 429 is a temporary flood limit with a published wait time. Actual restrictions (via @SpamBot) and account freezes apply to agents running on personal user accounts, not bot tokens, and are triggered by spam reports or automated abuse detection.",[14,277,278,281],{},[17,279,280],{},"How does a Telegram bot restriction compare to the Anthropic subscription ban?","\nThey're unrelated. Telegram restrictions come from Telegram's abuse systems and show up as Telegram API errors or @SpamBot notices. The Anthropic ban on April 4, 2026 blocked Claude Pro and Max subscriptions from third-party tools like OpenClaw and shows up as an Anthropic-side error; the fix is switching to an API key.",[14,283,284,287],{},[17,285,286],{},"How do I appeal a Telegram restriction on my agent's account?","\nMessage @SpamBot from the affected account. It confirms whether a restriction is active and offers an in-app appeal. Keep it to two or three plain sentences describing the account's legitimate use, then wait, typically a day or two. Bot tokens can't be appealed this way because they aren't restricted this way; for a 401 you generate a new token in BotFather.",[14,289,290,293],{},[17,291,292],{},"How long does a Telegram 429 rate limit last for a bot?","\nExactly as long as the retry_after value in the error, typically a few seconds to under a minute. Telegram's Bots FAQ sets the limits at about one message per second per chat, 20 per minute per group, and about 30 per second across all chats for bulk sends. Cooldowns grow if you keep sending during the wait, so honour the number literally.",[14,295,296,299],{},[17,297,298],{},"Is it safe to run an AI agent on a personal Telegram account instead of a bot?","\nIt's the riskiest option. User accounts can be restricted from contacting non-contacts or frozen into read-only mode after spam reports, and an agent that initiates conversations looks like spam to Telegram's systems. A bot token can only message people who have started it, which is precisely why bots rarely get restricted. Use a bot unless you have a specific, accepted reason not to.",{"title":301,"searchDepth":302,"depth":302,"links":303},"",2,[304,305,306,307,308,309,310,311],{"id":38,"depth":302,"text":39},{"id":116,"depth":302,"text":117},{"id":140,"depth":302,"text":141},{"id":171,"depth":302,"text":172},{"id":202,"depth":302,"text":203},{"id":214,"depth":302,"text":215},{"id":248,"depth":302,"text":249},{"id":268,"depth":302,"text":269},"Troubleshooting","2026-09-08","Telegram \"banned\" your AI agent? Learn to tell a 401, 403, 429, @SpamBot restriction and account freeze apart, then fix the one you actually have.","md",false,"/img/blog/telegram-banned-ai-agent-what-to-do.jpg",512,1024,{},true,"/blog/telegram-banned-ai-agent-what-to-do","9 min read",{"title":5,"description":314},"Telegram Banned Your AI Agent? Which Ban It Is and the Fix","blog/telegram-banned-ai-agent-what-to-do",[328,329,330,331,332,333,334,335],"telegram banned ai agent","telegram bot banned","telegram 429 too many requests bot","telegram bot 401 unauthorized","spambot restriction","telegram account frozen bot","openclaw telegram ban","telegram bot rate limit",null,"bFPvOC30SPjOkhaSHTXmjXsiaHKLHcrfWpTJqSYHoQc",[339,693,1103,1579,2013,2430,3073,3455],{"id":340,"title":341,"author":342,"body":343,"category":312,"date":677,"description":678,"extension":315,"featured":316,"hideToc":316,"image":679,"imageHeight":336,"imageWidth":336,"meta":680,"navigation":321,"path":681,"readingTime":323,"redirected":316,"seo":682,"seoTitle":683,"stem":684,"tags":685,"updatedDate":677,"__hash__":692},"blog/blog/agent-losing-context-fix-guide.md","Agent Memory Leaking or Losing Context? Here's How to Fix It",{"name":7,"role":8,"avatar":9},{"type":11,"value":344,"toc":654},[345,348,351,354,357,360,363,367,370,373,376,379,382,388,392,395,400,403,406,412,416,419,422,427,431,434,439,443,446,449,454,458,461,470,474,477,480,486,492,498,504,507,519,523,526,532,535,538,541,545,548,551,554,557,560,563,567,570,587,590,597,604,608,611,614,617,619,623,626,630,633,637,640,644,647,651],[14,346,347],{},"Your AI agent isn't broken. It's drowning in its own conversation history. Here's the diagnosis, the cause, and the actual fix.",[14,349,350],{},"It started with a customer email.",[14,352,353],{},"The agent had been running perfectly for three weeks. Answering support tickets, tagging them by priority, escalating the tricky ones. Then one Tuesday morning, it started responding to billing questions with onboarding instructions. It forgot the customer's name mid-conversation. It repeated the same canned response four times in a row.",[14,355,356],{},"The agent wasn't hallucinating. It wasn't misconfigured. It was losing context.",[14,358,359],{},"If you've built an AI agent that works brilliantly for the first 20 interactions and then starts acting like it has amnesia, you're not alone. Context loss is the single most common failure mode for deployed AI agents, and it's the one that gets misdiagnosed the most.",[14,361,362],{},"Here's what nobody tells you: the fix is almost never \"use a bigger model.\"",[36,364,366],{"id":365},"whats-actually-happening-when-your-agent-loses-context","What's Actually Happening When Your Agent Loses Context",[14,368,369],{},"Every large language model has a context window. Think of it as working memory. GPT-4o gives you 128K tokens. Claude gives you 200K. Gemini stretches to a million. Sounds enormous, right?",[14,371,372],{},"Here's the problem. Your agent doesn't just put the user's latest message into that window. It stuffs in the system prompt, every previous message in the conversation, tool call results, retrieved documents, function definitions, and whatever memory layer you've bolted on. All of it competes for the same finite space.",[14,374,375],{},"When the window fills up, one of two things happens. Either the model starts ignoring information at the edges (typically the middle of long contexts), or your framework silently truncates older messages to make room for new ones.",[14,377,378],{},"Both look identical from the outside: your agent \"forgets.\"",[14,380,381],{},"The context window isn't a hard drive. It's a desk. And most agents have papers stacked six inches high with no filing system.",[14,383,384],{},[110,385],{"alt":386,"src":387},"Agent losing context: the context window competes for space between the system prompt, conversation history, tool results, retrieved docs, and memory store, and older content gets truncated at the top","/img/blog/agent-losing-context-fix-guide-context-window-competition.jpg",[36,389,391],{"id":390},"the-five-reasons-your-agent-is-forgetting-everything","The Five Reasons Your Agent Is Forgetting Everything",[14,393,394],{},"Before you start tweaking model parameters or rewriting your system prompt, figure out which problem you actually have. These are the five most common culprits that cause an agent to lose context, ranked by how often we see them.",[396,397,399],"h3",{"id":398},"_1-token-bloat-from-conversation-history","1. Token Bloat From Conversation History",[14,401,402],{},"This is the big one. Every message in a multi-turn conversation stays in the context window. A 50-message support conversation can eat 15,000 to 30,000 tokens before you even account for the system prompt or tools.",[14,404,405],{},"Most frameworks handle this with a naive \"drop the oldest messages\" strategy. That works until the agent needs information from message three to answer message fifty-one.",[14,407,408,411],{},[17,409,410],{},"The fix:"," Implement a sliding window with summarization. Instead of keeping raw conversation history, periodically compress older messages into a summary. The summary stays in context. The raw messages get stored externally and retrieved only when relevant.",[396,413,415],{"id":414},"_2-oversized-system-prompts","2. Oversized System Prompts",[14,417,418],{},"We've seen system prompts that run 8,000 tokens. That's a small blog post sitting permanently in your context window, eating capacity on every single turn.",[14,420,421],{},"The worst offenders pack every possible instruction, every edge case, every formatting rule into a single monolithic prompt. The model can't prioritize when everything is labeled \"important.\"",[14,423,424,426],{},[17,425,410],{}," Trim your system prompt to its core identity and behavioral rules. Move specific instructions (like \"how to handle refund requests\") into retrievable documents that get pulled in only when relevant. Your system prompt should be a compass, not an encyclopedia.",[396,428,430],{"id":429},"_3-unfiltered-tool-and-api-responses","3. Unfiltered Tool and API Responses",[14,432,433],{},"This one sneaks up on you. Your agent calls an API. The API returns a 4,000-token JSON blob. Your framework dumps the entire response into the context window. Multiply that by five tool calls in a single conversation, and you've burned 20,000 tokens on raw JSON that the model has to parse through on every subsequent turn.",[14,435,436,438],{},[17,437,410],{}," Parse and compress tool responses before they enter the context. If your agent calls a CRM API and gets back a full customer record, extract only the fields the agent actually needs. Return \"Customer: Jane Smith, Plan: Pro, Last ticket: June 12, Status: Active\" instead of the full 200-field JSON object.",[396,440,442],{"id":441},"_4-retrieval-augmented-generation-rag-overload","4. Retrieval Augmented Generation (RAG) Overload",[14,444,445],{},"RAG is supposed to give your agent access to external knowledge without stuffing everything into the prompt. But poorly tuned RAG does exactly the opposite. It retrieves too many chunks, the chunks are too long, or the relevance threshold is too low.",[14,447,448],{},"The result? Your context window fills up with marginally relevant document fragments that push out the actual conversation history.",[14,450,451,453],{},[17,452,410],{}," Set strict top-k limits (3 to 5 chunks max). Use hybrid search that combines vector similarity with keyword matching to improve relevance. And set a minimum similarity threshold so your agent isn't pulling in documents that scored 0.4 on a 0 to 1 relevance scale.",[396,455,457],{"id":456},"_5-no-persistent-memory-layer","5. No Persistent Memory Layer",[14,459,460],{},"This is the most fundamental issue, and it's the one that separates toy demos from production agents. If your agent relies entirely on the context window for \"memory,\" it will always lose context eventually. The window is finite. Conversations are not.",[14,462,463,465,466,134],{},[17,464,410],{}," Add a persistent memory layer that exists outside the context window. The agent writes important facts and context to this layer. On each new turn, only the relevant memories get retrieved and injected. The context window stays lean. For a deeper look at why agents forget and how memory layers solve it, see our guide on ",[125,467,469],{"href":468},"/blog/ai-agent-memory-why-forgets-how-to-fix","why AI agents forget and how to fix it",[36,471,473],{"id":472},"how-context-management-actually-works-when-done-right","How Context Management Actually Works (When Done Right)",[14,475,476],{},"Here's where it gets practical.",[14,478,479],{},"A well-designed agent doesn't just have a context window. It has a context strategy. That strategy involves three layers working together.",[14,481,482],{},[110,483],{"alt":484,"src":485},"Without persistent memory the context window is full because messages cram everything else out; with persistent memory the context window stays lean and the agent reads and writes to an external memory store on demand. Same agent, same conversations, different architecture","/img/blog/agent-losing-context-fix-guide-persistent-memory.jpg",[14,487,488,491],{},[17,489,490],{},"Layer 1: The Active Context."," This is your context window. It holds the system prompt, the last N messages (or a summary of older ones), any currently relevant retrieved documents, and the results of the most recent tool calls. Think of this as what the agent is actively thinking about right now.",[14,493,494,497],{},[17,495,496],{},"Layer 2: The Session Memory."," This sits just outside the context window but within the same conversation session. It stores the full conversation history, intermediate reasoning, and tool results that might be needed later. When the agent detects a callback to an earlier topic, it pulls from session memory into active context.",[14,499,500,503],{},[17,501,502],{},"Layer 3: The Persistent Memory."," This survives across sessions. Customer preferences learned in January should still be available in June. Key facts, user profiles, learned patterns. This layer uses a combination of vector search (for semantic queries like \"what does this customer usually complain about\") and keyword search (for exact lookups like customer ID or order number).",[14,505,506],{},"When these three layers work together, your agent never \"forgets.\" It just files things away and retrieves them when needed. Exactly like a competent human assistant would.",[14,508,509,510,514,515,518],{},"If this sounds like a lot of infrastructure to build yourself... it is. It's one of the reasons we built BetterClaw as a no-code AI agent builder. The platform handles smart context management, persistent memory with hybrid vector and keyword search, and automatic token optimization. You focus on what your agent should do. The context plumbing is handled. ",[125,511,513],{"href":512},"/free-plan","Free plan available",", ",[125,516,517],{"href":264},"full pricing here",", bring your own API keys with zero markup.",[36,520,522],{"id":521},"the-hidden-cost-of-getting-this-wrong","The Hidden Cost of Getting This Wrong",[14,524,525],{},"Context management isn't just a technical problem. It's a cost problem.",[14,527,528],{},[110,529],{"alt":530,"src":531},"The cost of bad context management: the same agent running the same conversations at 80K tokens/call wastes ~$6K/month on bloated context, versus 15K tokens/call at ~$1.1K/month with managed context — a 5x cost difference","/img/blog/agent-losing-context-fix-guide-cost-of-bad-context.jpg",[14,533,534],{},"Every token in your context window costs money. With GPT-4o, input tokens run about $2.50 per million. If your agent is stuffing 80,000 tokens of unnecessary history into every API call, and it handles 1,000 conversations per day, you're burning roughly $200/day on wasted context. That's $6,000 a month in pure overhead.",[14,536,537],{},"Gartner projects that 40% of enterprise applications will have embedded AI agents by end of 2026. McKinsey estimates the addressable value at $2.6 to $4.4 trillion. But none of that value materializes if your agents are hemorrhaging money on bloated context windows and losing context mid-conversation.",[14,539,540],{},"The agents that actually make it to production share three traits: lean context management, persistent memory, and graceful degradation when context limits are hit.",[36,542,544],{"id":543},"when-to-reach-for-persistent-memory-vs-a-bigger-context-window","When to Reach for Persistent Memory vs. a Bigger Context Window",[14,546,547],{},"There's a tempting shortcut: just use a model with a larger context window. Gemini's million-token window feels like it should solve everything, right?",[14,549,550],{},"Not really. Here's why.",[14,552,553],{},"Larger context windows are slower. They cost more per call. And research consistently shows that model performance degrades on information in the middle of very long contexts, a phenomenon researchers call \"lost in the middle.\" Throwing more tokens at the problem is like buying a bigger desk instead of learning to file.",[14,555,556],{},"Use a bigger context window when you genuinely need the model to reason over a large, interconnected document in a single pass. A legal contract. A full codebase file. A research paper.",[14,558,559],{},"Use persistent memory when you need information to survive across conversations, when relevance varies by turn, or when you want to keep costs predictable. For most agent use cases (support, sales, ops automation, personal assistants), persistent memory wins.",[14,561,562],{},"BetterClaw's context management approach combines both: smart context windowing that prevents token bloat within a session, plus persistent memory with hybrid search across sessions. Agents built on the platform support 28+ AI model providers, so you can pick the right context window size for your specific use case without restructuring your entire agent.",[36,564,566],{"id":565},"a-quick-diagnostic-checklist","A Quick Diagnostic Checklist",[14,568,569],{},"If your agent is losing context right now, run through this:",[220,571,572,575,578,581,584],{},[223,573,574],{},"Is your conversation history growing unbounded? Add summarization after every 10 to 15 turns.",[223,576,577],{},"Is your system prompt over 2,000 tokens? Split it. Core identity stays in the prompt. Specific instructions go into retrievable docs.",[223,579,580],{},"Are tool responses entering the context window raw? Parse them down to only the fields your agent needs.",[223,582,583],{},"Is your RAG pulling more than 5 chunks per query? Tighten the top-k and raise your similarity threshold.",[223,585,586],{},"Does your agent need information from previous sessions? You need persistent memory, period. No context window hack will substitute for this.",[14,588,589],{},"If you're self-hosting an agent framework like CrewAI (47K+ GitHub stars, but requires Python and your own infrastructure) or LangGraph, you'll need to implement each of these layers yourself. That's engineering time measured in weeks, not hours.",[14,591,592,593,596],{},"If the idea of building context management infrastructure sounds like the wrong use of your time, that's exactly the problem BetterClaw's visual agent builder solves. ",[125,594,595],{"href":512},"Free plan",", no credit card, 1 agent and 500 credits a month. Pro is $49/month for teams that need more. Your first deploy takes about 60 seconds. We handle the context plumbing. You handle the interesting part.",[14,598,599,66,602,134],{},[125,600,601],{"href":512},"Start free here",[125,603,265],{"href":264},[36,605,607],{"id":606},"the-part-that-actually-matters","The Part That Actually Matters",[14,609,610],{},"Context management isn't glamorous. Nobody's posting \"just shipped a sliding window summarizer\" on Twitter. But it's the difference between an agent that demos well and an agent that runs in production for months without someone paging you at 2 AM because it started sending gibberish to customers.",[14,612,613],{},"The agents that survive are the ones built on boring, reliable infrastructure. Memory that persists. Context that stays lean. Costs that stay predictable.",[14,615,616],{},"The exciting part isn't the plumbing. It's what your agent does once the plumbing works.",[36,618,269],{"id":268},[396,620,622],{"id":621},"what-is-agent-context-loss-and-why-does-it-happen","What is agent context loss and why does it happen?",[14,624,625],{},"Agent context loss is when an AI agent \"forgets\" information from earlier in a conversation or from previous sessions. It happens because every LLM has a finite context window, and when that window fills up with conversation history, tool responses, and retrieved documents, older information gets truncated or ignored. It's not a model deficiency. It's an architecture problem that requires smart context management and persistent memory to solve.",[396,627,629],{"id":628},"how-does-persistent-memory-compare-to-just-using-a-larger-context-window","How does persistent memory compare to just using a larger context window?",[14,631,632],{},"A larger context window (like Gemini's 1M tokens) lets you fit more information in a single call, but it costs more, runs slower, and research shows models struggle with information in the middle of very long contexts. Persistent memory stores facts externally and retrieves only what's relevant for each turn, keeping costs low and performance consistent. For most agent use cases, persistent memory paired with a moderately sized context window outperforms brute-forcing everything into one giant prompt.",[396,634,636],{"id":635},"how-do-i-fix-my-ai-agent-that-keeps-forgetting-instructions","How do I fix my AI agent that keeps forgetting instructions?",[14,638,639],{},"Start by checking the most common causes: unbounded conversation history (add summarization), oversized system prompts (trim to essentials), raw tool responses entering context (parse them down), over-retrieval from RAG (tighten top-k limits), and no persistent memory layer (add one). In most cases, implementing a sliding window with periodic summarization plus a basic persistent memory store resolves 90% of context loss issues.",[396,641,643],{"id":642},"how-much-does-agent-context-bloat-actually-cost","How much does agent context bloat actually cost?",[14,645,646],{},"It depends on your model and volume, but the math adds up fast. If your agent stuffs 80,000 unnecessary tokens into each call at GPT-4o input pricing (~$2.50/million tokens), and handles 1,000 conversations daily, you're spending roughly $6,000/month on wasted tokens alone. Smart context management can cut that to a fraction by keeping only relevant information in the active window. Platforms like BetterClaw include context optimization as a built-in feature starting at $0/month on the free plan.",[396,648,650],{"id":649},"is-persistent-memory-safe-for-handling-sensitive-customer-data","Is persistent memory safe for handling sensitive customer data?",[14,652,653],{},"It can be, but only with the right safeguards. You need encryption at rest (AES-256 minimum), strict access controls, and ideally an auto-purge mechanism for sensitive data like credentials or payment information. BetterClaw's persistent memory uses AES-256 encryption and automatically purges secrets from agent memory after 5 minutes. Agents run in isolated Docker containers with real-time health monitoring, so sensitive data never leaks between agents or persists longer than necessary.",{"title":301,"searchDepth":302,"depth":302,"links":655},[656,657,665,666,667,668,669,670],{"id":365,"depth":302,"text":366},{"id":390,"depth":302,"text":391,"children":658},[659,661,662,663,664],{"id":398,"depth":660,"text":399},3,{"id":414,"depth":660,"text":415},{"id":429,"depth":660,"text":430},{"id":441,"depth":660,"text":442},{"id":456,"depth":660,"text":457},{"id":472,"depth":302,"text":473},{"id":521,"depth":302,"text":522},{"id":543,"depth":302,"text":544},{"id":565,"depth":302,"text":566},{"id":606,"depth":302,"text":607},{"id":268,"depth":302,"text":269,"children":671},[672,673,674,675,676],{"id":621,"depth":660,"text":622},{"id":628,"depth":660,"text":629},{"id":635,"depth":660,"text":636},{"id":642,"depth":660,"text":643},{"id":649,"depth":660,"text":650},"2026-07-01","Your AI agent keeps forgetting instructions? Diagnose context window overflow, fix token bloat, and add persistent memory. Step-by-step guide.","/img/blog/agent-losing-context-fix-guide.jpg",{},"/blog/agent-losing-context-fix-guide",{"title":341,"description":678},"Agent Losing Context? Fix Memory Leaks in AI Agents (2026)","blog/agent-losing-context-fix-guide",[686,687,688,689,690,691],"agent losing context","agent memory leak","ai agent context management","agent forgetting instructions","context window overflow","persistent memory ai agent","bw1pN5Wh6hBEuIE3pxc9eK2X2DiSmWYSRQQlEGrkW6U",{"id":694,"title":695,"author":696,"body":697,"category":312,"date":1087,"description":1088,"extension":315,"featured":316,"hideToc":316,"image":1089,"imageHeight":336,"imageWidth":336,"meta":1090,"navigation":321,"path":1091,"readingTime":323,"redirected":316,"seo":1092,"seoTitle":1093,"stem":1094,"tags":1095,"updatedDate":1087,"__hash__":1102},"blog/blog/agent-rules-drift-fix.md","Why Your AI Agent Forgets Its Instructions After 20 Messages (and How to Fix It)",{"name":7,"role":8,"avatar":9},{"type":11,"value":698,"toc":1071},[699,704,707,710,713,716,720,723,726,732,735,742,745,748,752,755,761,767,773,779,782,786,797,803,809,815,821,827,833,839,843,846,851,890,895,947,950,953,956,960,966,972,978,985,991,1003,1005,1008,1011,1023,1025,1029,1032,1036,1039,1043,1046,1050,1053,1057,1060,1064,1067],[14,700,701],{},[17,702,703],{},"It's not a bug. It's math. Here's the math, and 7 fixes that actually hold.",[14,705,706],{},"Your agent's SOUL.md says never exceed 3 sentences. For the first 15 messages, it's perfect. Short, punchy replies. Exactly what you asked for.",[14,708,709],{},"Then around message 20, the responses start getting longer. By message 30, it's writing 4 paragraphs. By message 40, it's forgotten the 3-sentence rule entirely, like it never read the file at all.",[14,711,712],{},"You didn't change anything. The agent just... drifted.",[14,714,715],{},"This is rules drift. It happens to every agent, on every platform, running on every model. It's not a bug you can patch. It's a direct consequence of how context windows work, and once you see the mechanism, you'll never be surprised by it again.",[36,717,719],{"id":718},"why-agents-drift-the-context-window-math","Why Agents Drift: The Context Window Math",[14,721,722],{},"Here's the part nobody explains clearly. Every message in a conversation gets added to the context window. Your SOUL.md instructions sit at the very beginning of that context, planted before message 1 even happens.",[14,724,725],{},"As the conversation grows, your instructions stay exactly the same size. But the conversation around them keeps growing. So your rules become a smaller and smaller percentage of the total context with every single message.",[14,727,728],{},[110,729],{"alt":730,"src":731},"The shrinking percentage: why rules drift is math, not magic. Three stacked bars show your fixed-size instructions as a shrinking share of the context window: 40% at message 5, 12% at message 20, 3% at message 40, as conversation history grows underneath. Your rules are still there, they're just buried under all of it.","/img/blog/agent-rules-drift-fix-shrinking-percentage.jpg",[14,733,734],{},"By message 20 to 30, the model starts paying less attention to those early instructions. Not because they vanished. Because they're now buried under thousands of tokens of back-and-forth, and the model weighs recent messages more heavily than old instructions when the two start to conflict.",[14,736,737,738,741],{},"Imagine you're in a meeting. Someone laid out the ground rules at the start: keep answers brief, don't go off-topic. An hour later, the conversation has drifted through 30 different topics. The rules are still technically in effect. Everyone's just forgotten them. That's what happens to your agent. (For the memory-file angle on the same problem, see our guide on ",[125,739,740],{"href":468},"why agents forget and how to fix it",".)",[14,743,744],{},"This isn't a hypothetical. Real production incidents trace back to exactly this pattern. One well-documented case involved an alignment researcher's OpenClaw agent that was told, in chat, not to touch her inbox without explicit approval. The instruction was never written to a file. When her real inbox overwhelmed the context window, the session compressed its history, the unsaved stop command quietly disappeared from the summary, and the agent went back to autonomous mode and started deleting emails.",[14,746,747],{},"That's not an edge case. That's the exact failure mode this whole article is about, just at a scale that made headlines.",[36,749,751],{"id":750},"how-to-spot-rules-drift-before-it-breaks-things","How to Spot Rules Drift Before It Breaks Things",[14,753,754],{},"The frustrating part about drift is that it's invisible until someone notices, and by then the agent has usually done something you didn't want. Here's how to catch it early.",[14,756,757,760],{},[17,758,759],{},"Check response length over time."," If your SOUL.md says \"concise\" and responses are creeping longer message over message, drift has already started.",[14,762,763,766],{},[17,764,765],{},"Test a known constraint every 10 messages."," Ask the agent something that should trigger a hard rule. If the rule doesn't fire, you've found drift in real time instead of after the fact.",[14,768,769,772],{},[17,770,771],{},"Monitor for banned words or phrases."," If SOUL.md says never say \"absolutely\" and it shows up around message 25, that's not a fluke. That's the instruction losing its grip.",[14,774,775,778],{},[17,776,777],{},"Log and compare."," Save the agent's response to the exact same prompt at message 5 and again at message 35. The difference between those two answers is your drift, made visible.",[14,780,781],{},"Here's what nobody tells you about this diagnostic: the comparison test is the most honest one, because it removes every variable except time and volume. Same question, same agent, same rules on paper. Only the conversation length changed.",[36,783,785],{"id":784},"_7-fixes-for-agent-rules-drift","7 Fixes for Agent Rules Drift",[14,787,788,791,792,796],{},[17,789,790],{},"Fix 1: Keep SOUL.md under 500 tokens."," Shorter instructions survive longer in the context window, full stop. Every unnecessary word accelerates drift, because every word is competing with the actual rules for the model's shrinking attention. \"Be a helpful assistant that always provides thorough and detailed responses while maintaining a professional tone\" becomes \"Be concise. Professional tone. Max 3 sentences.\" Same intent, a fraction of the tokens. If you haven't already, our ",[125,793,795],{"href":794},"/blog/soul-md-agents-md-configuration-guide","SOUL.md and AGENTS.md configuration guide"," covers exactly what belongs in each file and where the token ceiling actually sits.",[14,798,799,802],{},[17,800,801],{},"Fix 2: Use negative constraints instead of positive aspirations."," \"Never exceed 3 sentences\" survives drift noticeably better than \"keep responses brief.\" Negative rules, the \"never,\" \"do not,\" \"under no circumstances\" kind, create hard boundaries the model can check itself against. Soft guidance like \"try to\" or \"aim for\" gives the model permission to interpret, and interpretation is exactly where drift creeps in.",[14,804,805,808],{},[17,806,807],{},"Fix 3: Use /new to clear the conversation buffer, but only after saving what matters."," In OpenClaw and Hermes, /new clears the active conversation history, and your workspace memory files stay on disk. That part is genuinely useful. Here's the catch most guides skip: manual resets don't automatically flush unsaved context to a memory file first. Anything discussed in chat but never written down disappears the moment you reset, same as it would in a compaction event. The safe pattern is to have the agent write a quick session note to memory before you run /new, not to assume the reset preserves everything. Do that, and resetting every 15 to 20 messages genuinely does return your instructions to a large percentage of the context, which resets drift along with it.",[14,810,811,814],{},[17,812,813],{},"Fix 4: Repeat critical rules in AGENTS.md procedures."," If SOUL.md says never send emails without approval, restate it inside the relevant workflow step too: \"Step 5: Generate draft reply. DO NOT SEND. Wait for user approval.\" Redundancy across both files gives the rule two separate footholds instead of one, and a rule with two footholds is harder for drift to erode.",[14,816,817,820],{},[17,818,819],{},"Fix 5: Use system-level instruction reinforcement where the platform supports it."," Some setups support pinned instructions that get re-injected into context at intervals instead of sitting only at the start. On raw OpenClaw, this usually means manually re-injecting SOUL.md content every N messages through a skill or hook. On BetterClaw, this is handled by smart context management, so critical rules don't rely on a human remembering to re-inject them.",[14,822,823,826],{},[17,824,825],{},"Fix 6: Break long tasks into shorter sessions."," One 50-message conversation drifts. Three sessions of roughly 15 messages each, each one starting fresh, gets full SOUL.md attention every time. Pass what matters between sessions using memory files, not by dragging the whole conversation history forward. This is the same principle as Fix 3, just applied proactively instead of as a mid-conversation rescue.",[14,828,829,832],{},[17,830,831],{},"Fix 7: Test with adversarial prompts at message 25 and beyond."," Past message 25, deliberately try to get your agent to break its own rules. Ask it to do the exact thing SOUL.md prohibits. If it complies, you've found drift before a real user did. Keep adjusting SOUL.md wording until the rule holds at message 30 and beyond. The rules that survive adversarial testing at message 30 are the only rules you should trust in production. Everything else is a suggestion wearing a rule's clothing.",[14,834,835],{},[110,836],{"alt":837,"src":838},"Four early warning sensors for rules drift. 1. Response length monitor: SOUL.md says \"concise\" but replies keep creeping longer. 2. Known constraint test: trigger a hard rule every 10 messages; if it doesn't fire, drift is detected in real time. 3. Banned word detector: a forbidden word appearing around message 25 isn't a fluke, it's the rule losing its grip. 4. Most honest test, the comparison test: ask the exact same question at message 5 and message 35; the difference is your drift, made visible.","/img/blog/agent-rules-drift-fix-warning-sensors.jpg",[36,840,842],{"id":841},"real-example-soulmd-that-drifts-vs-soulmd-that-holds","Real Example: SOUL.md That Drifts vs SOUL.md That Holds",[14,844,845],{},"Here are two versions of the same email triage agent's SOUL.md. Same intent. Wildly different survival rate.",[14,847,848],{},[17,849,850],{},"Version that drifts:",[852,853,857],"pre",{"className":854,"code":855,"language":856,"meta":301,"style":301},"language-markdown shiki shiki-themes github-light","You are a helpful and knowledgeable email assistant. Your goal is to help\nthe user manage their inbox efficiently. Try to keep your responses concise\nand focused. When classifying emails, consider the sender's importance,\nthe subject line content, and any time-sensitive language. Aim for accuracy\nin your classifications and provide brief summaries when helpful.\n","markdown",[24,858,859,868,873,878,884],{"__ignoreMap":301},[860,861,864],"span",{"class":862,"line":863},"line",1,[860,865,867],{"class":866},"sgsFI","You are a helpful and knowledgeable email assistant. Your goal is to help\n",[860,869,870],{"class":862,"line":302},[860,871,872],{"class":866},"the user manage their inbox efficiently. Try to keep your responses concise\n",[860,874,875],{"class":862,"line":660},[860,876,877],{"class":866},"and focused. When classifying emails, consider the sender's importance,\n",[860,879,881],{"class":862,"line":880},4,[860,882,883],{"class":866},"the subject line content, and any time-sensitive language. Aim for accuracy\n",[860,885,887],{"class":862,"line":886},5,[860,888,889],{"class":866},"in your classifications and provide brief summaries when helpful.\n",[14,891,892],{},[17,893,894],{},"Version that holds:",[852,896,898],{"className":854,"code":897,"language":856,"meta":301,"style":301},"Email triage agent.\n\nRULES:\n- Max 2 sentences per response.\n- NEVER classify unknown senders as \"safe.\"\n- NEVER send, reply, or delete. Read-only.\n- If unsure, mark \"needs review.\" Never guess.\n",[24,899,900,905,910,915,924,931,939],{"__ignoreMap":301},[860,901,902],{"class":862,"line":863},[860,903,904],{"class":866},"Email triage agent.\n",[860,906,907],{"class":862,"line":302},[860,908,909],{"emptyLinePlaceholder":321},"\n",[860,911,912],{"class":862,"line":660},[860,913,914],{"class":866},"RULES:\n",[860,916,917,921],{"class":862,"line":880},[860,918,920],{"class":919},"sqxcx","-",[860,922,923],{"class":866}," Max 2 sentences per response.\n",[860,925,926,928],{"class":862,"line":886},[860,927,920],{"class":919},[860,929,930],{"class":866}," NEVER classify unknown senders as \"safe.\"\n",[860,932,934,936],{"class":862,"line":933},6,[860,935,920],{"class":919},[860,937,938],{"class":866}," NEVER send, reply, or delete. Read-only.\n",[860,940,942,944],{"class":862,"line":941},7,[860,943,920],{"class":919},[860,945,946],{"class":866}," If unsure, mark \"needs review.\" Never guess.\n",[14,948,949],{},"The first version is 80 words of suggestions. The second is 35 words of laws. Agents follow laws. They forget suggestions.",[14,951,952],{},"Look at the specific language. \"Try to keep responses concise\" versus \"max 2 sentences.\" \"Aim for accuracy\" versus \"if unsure, mark needs review, never guess.\" One gives the model room to drift. The other gives it nothing to negotiate with.",[14,954,955],{},"We rewrote a client's production SOUL.md using exactly this pattern and watched the same known-constraint test that failed at message 22 hold clean past message 40. Nothing else about the setup changed. Just the wording.",[36,957,959],{"id":958},"platform-notes-on-where-drift-shows-up","Platform notes on where drift shows up",[14,961,962,965],{},[17,963,964],{},"OpenClaw and Hermes:"," use /new to reset context, and remember that memory files persist across the reset while unsaved chat context does not. Get in the habit of asking the agent to jot a quick note before you clear the buffer.",[14,967,968,971],{},[17,969,970],{},"Claude Code:"," context management is handled by the runtime, but drift still shows up in long sessions the same way it does anywhere else. The practical fix here is procedural: break work into smaller commits and smaller sessions rather than one marathon conversation, so instructions never have to survive fifty turns unassisted.",[14,973,974,977],{},[17,975,976],{},"BetterClaw:"," smart context management handles instruction reinforcement automatically, so rules drift is meaningfully reduced compared to a raw OpenClaw setup where you're manually re-injecting SOUL.md content yourself. That's just how the platform is built, not a sales pitch, it's the same underlying context math, just with the reinforcement handled for you instead of left as a DIY project.",[14,979,980,981,984],{},"If manually babysitting a context window and re-injecting your own instructions sounds like the wrong use of a Tuesday afternoon, that's a big part of why we built BetterClaw the way we did. The ",[125,982,983],{"href":512},"free plan"," includes one agent, 500 credits a month, no credit card, and the same smart context management that's reducing drift on every other agent running on the platform.",[14,986,987],{},[110,988],{"alt":989,"src":990},"Three platforms, same math, different levels of DIY. OpenClaw / Hermes: drift happens, /new resets context, memory files survive but unsaved chat is gone, so ask the agent to write a session note before every reset. Claude Code: drift happens, the runtime manages some context, and the practical fix is smaller commits and shorter sessions instead of a 50-turn marathon. BetterClaw: smart context management handles reinforcement automatically, so rules don't rely on human re-injection. The honest takeaway: rules drift isn't a config mistake, it's a sign your agent has been running long enough to matter.","/img/blog/agent-rules-drift-fix-three-platforms.jpg",[14,992,993,994,998,999,134],{},"Drift isn't unique to email agents either. Anywhere an agent runs long, unattended, or across many turns, the same math applies, and shorter, tighter instruction files paired with fewer redundant tokens in your skills stack both help. If you're curious how much of your token budget your integrations are actually consuming before instructions even enter the picture, our breakdown on ",[125,995,997],{"href":996},"/blog/skills-that-reduce-token-usage","reducing token usage from skills"," is worth a read. And if you're seeing responses cut off entirely rather than just drifting in tone, that's usually a related but distinct problem, covered in our guide to ",[125,1000,1002],{"href":1001},"/blog/hermes-response-truncated-fix","fixing truncated Hermes responses",[36,1004,249],{"id":248},[14,1006,1007],{},"Rules drift isn't a sign you configured something wrong. It's a sign your agent has been running long enough to matter, which is honestly a good problem to have.",[14,1009,1010],{},"The fix was never about writing a longer, more thorough SOUL.md. It was about writing a shorter one, with harder edges, and building in a reset habit before the context window quietly decides which of your rules it can afford to forget.",[14,1012,1013,1014,1018,1019,1022],{},"If you'd rather have that reinforcement handled automatically instead of manually testing your own agent at message 30 every week, ",[125,1015,1017],{"href":258,"rel":1016},[260],"give BetterClaw a try",". Free plan with one agent and 500 credits a month, no credit card. ",[125,1020,1021],{"href":264},"$49 a month for Pro"," when you're ready to run more than one. Your first deploy takes about 60 seconds. We handle keeping your rules in view. You handle deciding what they say.",[36,1024,269],{"id":268},[396,1026,1028],{"id":1027},"why-does-my-ai-agent-forget-its-instructions","Why does my AI agent forget its instructions?",[14,1030,1031],{},"Your agent's instructions sit at the start of the context window and stay a fixed size, while the conversation around them keeps growing. As the conversation gets longer, those instructions become a smaller share of the total context, and the model starts weighing recent messages more heavily. The instructions aren't deleted, they're just outweighed.",[396,1033,1035],{"id":1034},"how-many-messages-before-an-ai-agent-starts-drifting","How many messages before an AI agent starts drifting?",[14,1037,1038],{},"Most agents start showing measurable drift somewhere between message 20 and 30, though the exact point depends on how long your SOUL.md is and how strict your model's context handling is. Shorter instruction files with hard negative constraints tend to hold noticeably longer than long, soft, aspirational ones.",[396,1040,1042],{"id":1041},"how-to-fix-agent-rules-drift","How to fix agent rules drift?",[14,1044,1045],{},"Keep SOUL.md under 500 tokens, use negative constraints instead of soft suggestions, repeat critical rules in AGENTS.md as well, and reset the conversation periodically with something like OpenClaw's /new command after saving any context worth keeping. Testing your agent with adversarial prompts past message 25 is the most reliable way to confirm a fix actually worked.",[396,1047,1049],{"id":1048},"what-is-the-best-length-for-soulmd","What is the best length for SOUL.md?",[14,1051,1052],{},"Keep SOUL.md under 400 to 500 tokens, which is roughly 300 to 400 words. Beyond that ceiling, instructions start losing the model's attention faster as the conversation grows, so shorter files with harder rules consistently outperform longer files full of soft guidance.",[396,1054,1056],{"id":1055},"does-new-reset-agent-memory-in-openclaw","Does /new reset agent memory in OpenClaw?",[14,1058,1059],{},"/new clears the active conversation history but leaves your workspace memory files, like MEMORY.md and daily notes, intact on disk. What it doesn't do is automatically save unsaved context from the chat before wiping it, so anything important that was only discussed in conversation and never written to a file will be lost on reset.",[396,1061,1063],{"id":1062},"how-to-make-ai-agent-follow-instructions-longer","How to make AI agent follow instructions longer?",[14,1065,1066],{},"Write instructions as hard negative constraints rather than soft goals, keep the file short enough that it doesn't get diluted by conversation growth, and reinforce critical rules in more than one place, such as both SOUL.md and AGENTS.md. Periodically resetting the session, or using a platform with automatic context reinforcement, addresses the problem at its root instead of just delaying it.",[1068,1069,1070],"style",{},"html pre.shiki code .sgsFI, html code.shiki .sgsFI{--shiki-default:#24292E}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html pre.shiki code .sqxcx, html code.shiki .sqxcx{--shiki-default:#E36209}",{"title":301,"searchDepth":302,"depth":302,"links":1072},[1073,1074,1075,1076,1077,1078,1079],{"id":718,"depth":302,"text":719},{"id":750,"depth":302,"text":751},{"id":784,"depth":302,"text":785},{"id":841,"depth":302,"text":842},{"id":958,"depth":302,"text":959},{"id":248,"depth":302,"text":249},{"id":268,"depth":302,"text":269,"children":1080},[1081,1082,1083,1084,1085,1086],{"id":1027,"depth":660,"text":1028},{"id":1034,"depth":660,"text":1035},{"id":1041,"depth":660,"text":1042},{"id":1048,"depth":660,"text":1049},{"id":1055,"depth":660,"text":1056},{"id":1062,"depth":660,"text":1063},"2026-07-13","AI agents start ignoring their rules around message 20-30. Here's why it happens, how to detect it, and 7 fixes that actually work. Real examples included.","/img/blog/agent-rules-drift-fix.jpg",{},"/blog/agent-rules-drift-fix",{"title":695,"description":1088},"Why AI Agents Forget Instructions After 20 Messages","blog/agent-rules-drift-fix",[1096,1097,1098,1099,1100,1101],"ai agent forgetting instructions","agent ignoring system prompt","agent rules drift","openclaw agent personality drift","hermes agent ignoring soul.md","agent rules not working after long conversation","HMeAjDVJSsG35kAIfVpPE1OBFiJUXrTfKyipBgLVaqA",{"id":1104,"title":1105,"author":1106,"body":1107,"category":312,"date":1561,"description":1562,"extension":315,"featured":316,"hideToc":316,"image":1563,"imageHeight":336,"imageWidth":336,"meta":1564,"navigation":321,"path":1565,"readingTime":1566,"redirected":316,"seo":1567,"seoTitle":1568,"stem":1569,"tags":1570,"updatedDate":1561,"__hash__":1578},"blog/blog/ai-agent-slow-latency-fix.md","Why Is My AI Agent So Slow? Diagnosing Latency Step by Step",{"name":7,"role":8,"avatar":9},{"type":11,"value":1108,"toc":1533},[1109,1123,1126,1129,1132,1135,1138,1141,1145,1148,1151,1157,1161,1164,1167,1173,1179,1185,1188,1191,1195,1198,1201,1204,1207,1210,1213,1217,1220,1224,1230,1240,1246,1252,1256,1264,1267,1270,1273,1276,1279,1285,1291,1297,1303,1306,1310,1313,1316,1323,1326,1329,1335,1341,1347,1353,1357,1360,1363,1366,1369,1372,1376,1379,1382,1385,1389,1392,1398,1404,1410,1416,1422,1428,1431,1434,1438,1441,1447,1458,1464,1475,1478,1481,1496,1498,1502,1505,1509,1512,1516,1519,1523,1526,1530],[1110,1111,1113],"callout",{"type":1112},"quick-fix",[14,1114,1115,1118,1119,1122],{},[17,1116,1117],{},"Quick fix:"," ",[24,1120,1121],{},"Why is my AI agent so slow?"," - the model is almost never the bottleneck. A single LLM call takes ~800ms, so if your agent takes 15 seconds, 14.2 seconds of latency lives elsewhere. The slowness is usually context bloat (Layer 2) and multi-step compounding (Layer 5) working together. Diagnose before switching models: log your input token count per request - if it exceeds 30,000 tokens you have context bloat, so compress conversation history into summaries, load tool definitions on demand, and filter tool results before they enter context. Then parallelize independent tool calls and reduce total workflow steps.",[14,1124,1125],{},"We had an agent handling email triage. It read new emails, classified urgency, drafted responses for low-priority items, and flagged high-priority ones for human review.",[14,1127,1128],{},"In testing, it was fast. Sub-two-second responses. We were thrilled.",[14,1130,1131],{},"In production, it took 15 seconds per email. Sometimes 20. Users started complaining within the first hour.",[14,1133,1134],{},"My first instinct: the model is too slow, let's switch to something faster. So we swapped Claude Sonnet for GPT-5 Nano. Barely any improvement. Maybe half a second shaved off.",[14,1136,1137],{},"That's when it hit me. The model wasn't the bottleneck. The model was doing its job in under a second. Everything else around it was eating the other 14 seconds.",[14,1139,1140],{},"If your AI agent is slow, the model is almost never the real problem. The real problem lives in one of five places. Here's how to find it.",[36,1142,1144],{"id":1143},"the-five-latency-layers-debug-in-this-order","The five latency layers (debug in this order)",[14,1146,1147],{},"Most people start debugging agent latency by looking at model benchmarks. \"Maybe I need a faster LLM.\" That's like diagnosing a slow website by replacing the database when the real problem is unoptimized SQL queries hitting the database 47 times per page load.",[14,1149,1150],{},"Agent latency has five layers. They compound multiplicatively, not additively. A problem at layer 3 makes layer 4 worse, which makes layer 5 catastrophic.",[14,1152,1153],{},[110,1154],{"alt":1155,"src":1156},"The Five Latency Layers of an AI Agent, stacked to debug top to bottom without skipping: Layer 1 model speed (TTFT plus tok/s, most people blame this but it's rarely the real issue), Layer 2 context window size (every token in context costs processing time on every request), Layer 3 tool execution (external API calls, unmeasured and often the biggest offender), Layer 4 network plus API routing (geography adds up across 8-12 API calls per task), and Layer 5 multi-step compounding (every step multiplies all previous layers, the real killer). A problem at Layer 3 makes Layer 4 worse, and Layer 4 makes Layer 5 catastrophic","/img/blog/ai-agent-latency-five-layers.jpg",[36,1158,1160],{"id":1159},"layer-1-model-speed-the-one-everyone-checks-first","Layer 1: Model speed (the one everyone checks first)",[14,1162,1163],{},"Time to first token (TTFT) measures how long after you send a prompt the model starts generating. Per-token latency (tok/s) measures how fast it generates once it starts.",[14,1165,1166],{},"Here's where things stand in 2026:",[14,1168,1169,1172],{},[17,1170,1171],{},"Fastest TTFT:"," Claude Haiku 4.5 at around 597ms on medium prompts. Mistral Large and GPT-5.2 also hit sub-second consistently.",[14,1174,1175,1178],{},[17,1176,1177],{},"Fastest throughput:"," Gemini 2.5 Flash at 146-173 tokens per second. Mercury 2 by Inception hits 789 tok/s but with quality tradeoffs. Gemini 3.5 Flash reaches 284 tok/s.",[14,1180,1181,1184],{},[17,1182,1183],{},"Reasoning models are intentionally slow."," Models like o3, GPT-5, and Gemini Deep Think use chain-of-thought processing. They generate internal \"thinking\" tokens before the visible answer. TTFT can be 10-150 seconds. This isn't a bug. It's the architecture.",[14,1186,1187],{},"Here's the thing: for most agent workloads, model speed is not your bottleneck. A single LLM call takes about 800 milliseconds. If your agent is taking 15 seconds, the model used 800ms of that. You have 14.2 seconds of latency living somewhere else.",[14,1189,1190],{},"Before switching models, measure your actual model latency. Log the timestamp when you send the request and when the first token arrives. If it's under 2 seconds, your problem isn't the model.",[36,1192,1194],{"id":1193},"layer-2-context-window-bloat-the-silent-killer","Layer 2: Context window bloat (the silent killer)",[14,1196,1197],{},"This is where most agent latency actually lives. And it's invisible unless you're counting tokens.",[14,1199,1200],{},"Every time your agent makes a request, it sends the entire conversation context to the model. System prompt. Conversation history. Tool definitions. Previous tool results. Memory context. All of it.",[14,1202,1203],{},"The numbers are wild. Research from Agenteer found that a single Jira integration adds roughly 17,000 tokens just for tool definitions. Across a typical agent setup with multiple integrations, 134,000 tokens (67% of a 200K context window) get consumed by definitions before the agent starts working.",[14,1205,1206],{},"That's the equivalent of walking into a restaurant and reading a 500-page menu before you can order water.",[14,1208,1209],{},"More tokens means more processing time. A 2,000-token prompt processes in under a second. A 100,000-token prompt with tool definitions, conversation history, and previous results takes significantly longer. The model has to read and attend to every token before generating a response.",[14,1211,1212],{},"Your context window is RAM, not storage. Everything in it costs processing time on every single request.",[396,1214,1216],{"id":1215},"how-to-diagnose-it","How to diagnose it",[14,1218,1219],{},"Log your input token count for each request. If it's growing with every turn of the conversation, you have context bloat. If it starts high (above 20,000 tokens) even on the first turn, your tool definitions and system prompts are too heavy.",[396,1221,1223],{"id":1222},"how-to-fix-it","How to fix it",[14,1225,1226,1229],{},[17,1227,1228],{},"Don't load all tool definitions upfront."," Anthropic's own research showed that Opus 4's tool selection accuracy improved from 49% to 74% when the agent searched for relevant tools on demand instead of parsing all definitions at once. Fewer tools in context means faster processing and better accuracy.",[14,1231,1232,1235,1236,134],{},[17,1233,1234],{},"Summarize conversation history."," Instead of sending the full conversation, compress older turns into summaries. The Mem0 framework published 2026 benchmarks showing that a two-layer memory architecture (summarized context plus targeted retrieval) used 4x fewer tokens than full-context approaches while cutting latency by 91% and actually improving accuracy by 18.7 percentage points. This is the core of how ",[125,1237,1239],{"href":1238},"/blog/how-ai-agent-memory-works","AI agent memory works",[14,1241,1242,1245],{},[17,1243,1244],{},"Trim tool results aggressively."," A single MCP server call that returns a 50-field JSON blob when you only need 3 fields wastes thousands of tokens. Filter tool results before they enter context.",[14,1247,1248],{},[110,1249],{"alt":1250,"src":1251},"Context Bloat, the before and after. Before optimization: 119K tokens and 17-second p95 latency, made up of a 2K system prompt, 17K tool definitions, 40K conversation history and 60K tool results. After optimization: 11K tokens and 1.4-second p95 latency, made up of a 2K system prompt, 3K active tools only, 2K summarized history and 4K filtered results. A 91% latency reduction from context management alone, per Mem0 2026","/img/blog/ai-agent-latency-context-bloat-before-after.jpg",[36,1253,1255],{"id":1254},"layer-3-tool-execution-the-one-you-forgot-to-measure","Layer 3: Tool execution (the one you forgot to measure)",[14,1257,1258,1259,1263],{},"When your agent calls an external tool (send email, read CRM, query database, fetch webpage), the tool's execution time adds directly to the agent's response time. And most people never measure it. Per-task timing is standard on a ",[125,1260,1262],{"href":1261},"/","no-code AI agent builder",", which is usually the fastest way to find out which tool call is actually the slow one.",[14,1265,1266],{},"A Gmail API call to fetch recent emails: 200-800ms. A HubSpot CRM lookup: 300-1,200ms. A web scraping call: 1-5 seconds. A database query on an unindexed table: could be anything from 50ms to 30 seconds.",[14,1268,1269],{},"If your agent makes 3 tool calls in sequence (which is common for multi-step tasks), and each takes an average of 1 second, that's 3 seconds of tool execution time before the model even starts thinking about the next step.",[396,1271,1216],{"id":1272},"how-to-diagnose-it-1",[14,1274,1275],{},"Wrap every tool call with timing logs. You'll often find that one specific tool is responsible for 60-80% of total tool execution time.",[396,1277,1223],{"id":1278},"how-to-fix-it-1",[14,1280,1281,1284],{},[17,1282,1283],{},"Parallelize where possible."," If your agent needs data from Gmail and HubSpot, fetch both simultaneously instead of sequentially. This cuts tool execution time in half for independent calls.",[14,1286,1287],{},[110,1288],{"alt":1289,"src":1290},"Parallelize Independent Tool Calls. Run sequentially, a Gmail fetch, a 900ms HubSpot lookup and an 800ms DB query total 2,300ms. Run in parallel, the same three calls (Gmail 600ms, HubSpot 900ms, DB 800ms) all run at once and total 900ms because the slowest one wins, 2.5x faster. If your agent needs Gmail and HubSpot, fetch both at once, not one then the other","/img/blog/ai-agent-latency-parallelize-tool-calls.jpg",[14,1292,1293,1296],{},[17,1294,1295],{},"Cache repeated lookups."," If your agent queries the same CRM record multiple times in one conversation, cache the first result. Semantic caching, as Redis LangCache demonstrated, can reduce redundant API calls dramatically.",[14,1298,1299,1302],{},[17,1300,1301],{},"Set timeouts."," A tool call that takes 30 seconds because of an external API issue shouldn't freeze your entire agent. Set aggressive timeouts (3-5 seconds) and have fallback behavior.",[14,1304,1305],{},"This is one of the areas where managed agent platforms have an advantage over self-hosted setups. On BetterClaw, integrations are pre-optimized with connection pooling, caching, and timeout handling built in. When you self-host, you're building all of that yourself.",[36,1307,1309],{"id":1308},"layer-4-network-and-api-routing","Layer 4: Network and API routing",[14,1311,1312],{},"If your agent is on a VPS in Frankfurt and your users are in San Francisco, every API round-trip adds 100-200ms of network latency. For a single request, that's barely noticeable. For an agent that makes 8-12 API calls per task (LLM calls plus tool calls plus memory lookups), it adds up to 1-2 seconds of pure network overhead.",[396,1314,1216],{"id":1315},"how-to-diagnose-it-2",[14,1317,1318,1319,1322],{},"Run ",[24,1320,1321],{},"ping"," to your LLM provider's API endpoint from your agent's server. If it's over 100ms, geography is costing you.",[14,1324,1325],{},"Compare agent response times from the same machine the agent runs on versus from your actual user location. The difference is network overhead.",[396,1327,1223],{"id":1328},"how-to-fix-it-2",[14,1330,1331,1334],{},[17,1332,1333],{},"Deploy your agent close to your LLM provider's data centers."," Most major providers (OpenAI, Anthropic, Google) have US and EU endpoints. Match your agent's region to the provider's closest endpoint.",[14,1336,1337,1340],{},[17,1338,1339],{},"Use streaming."," Instead of waiting for the full response, stream tokens to the user as they're generated. This doesn't reduce total latency, but it reduces perceived latency dramatically. The user sees the response building in real-time instead of staring at a loading spinner for 8 seconds.",[14,1342,1343,1346],{},[17,1344,1345],{},"Minimize round-trips."," Every time your agent \"thinks\" (LLM call), \"acts\" (tool call), and \"observes\" (processes result), that's at minimum three network round-trips per step. Reducing the number of steps reduces total round-trip overhead proportionally.",[14,1348,1349],{},[110,1350],{"alt":1351,"src":1352},"Every Step Multiplies Every Other Layer, a line chart of total latency against number of agent steps. An optimized agent at 1.5 seconds per step reaches 15 seconds at 10 steps; a typical agent at 3 seconds per step reaches 30 seconds; and a bloated-context agent at 5 seconds per step reaches 50 seconds, a full minute per task and unusable for users. Most tasks should end by step 5. The fastest agent solves the problem in fewer steps, not faster steps","/img/blog/ai-agent-latency-every-step-multiplies.jpg",[36,1354,1356],{"id":1355},"layer-5-multi-step-compounding-the-multiplier-nobody-talks-about","Layer 5: Multi-step compounding (the multiplier nobody talks about)",[14,1358,1359],{},"Here's where agent latency gets genuinely painful. Every additional step in your agent's workflow multiplies all the previous layers.",[14,1361,1362],{},"A single LLM call: ~800ms. Totally fine.",[14,1364,1365],{},"An orchestrator-worker flow with a reflexion loop: 10-30 seconds. Stevens Institute research puts this as the primary engineering constraint for AI agents in 2026.",[14,1367,1368],{},"A 10-step agent task means 10 LLM calls, potentially 10 tool calls, context growing with every turn, and network overhead on every round-trip. If each step takes 1.5 seconds (fast!), your total task time is 15 seconds. If each step takes 3 seconds (normal), you're at 30 seconds. At 5 seconds per step (common with context bloat), you're looking at nearly a minute.",[14,1370,1371],{},"For user-facing applications, an orchestrator-worker flow with reflection can take 10-30 seconds. For customer support, this latency is often unacceptable.",[396,1373,1375],{"id":1374},"the-honest-math","The honest math",[14,1377,1378],{},"Let's say your agent handles a support ticket. Steps: (1) read the ticket, (2) look up customer in CRM, (3) check order history, (4) check knowledge base, (5) draft response, (6) format and send.",[14,1380,1381],{},"Six steps. Each step involves at least one LLM call (800ms), one tool call (500ms average), and context processing that grows each turn. Conservative estimate: 2 seconds per step = 12 seconds total. Realistic with context bloat: 4 seconds per step = 24 seconds total.",[14,1383,1384],{},"This is why smart agent design keeps step count low. The fastest agent isn't the one with the fastest model. It's the one that solves the problem in 3 steps instead of 8.",[36,1386,1388],{"id":1387},"the-60-second-diagnostic-checklist","The 60-second diagnostic checklist",[14,1390,1391],{},"When your agent is slow, run through this in order:",[14,1393,1394],{},[110,1395],{"alt":1396,"src":1397},"The 60-Second Agent Latency Diagnostic, a five-step checklist: 1, check model TTFT by logging request-to-first-token time, and if it's under 2 seconds the model isn't the problem; 2, count input tokens, and over 30K means context bloat, so check tool defs and history; 3, time each tool call by wrapping every tool with timing logs to find the slowest; 4, check geography by pinging your LLM provider from your server, and over 100ms means move closer; 5, count your steps, and over 5 for a typical task means redesign the workflow. Most slowness is layers 2 and 5 working together, so fix those first","/img/blog/ai-agent-latency-60-second-diagnostic.jpg",[14,1399,1400,1403],{},[17,1401,1402],{},"Check model TTFT."," Log the time between request sent and first token received. If it's under 2 seconds, the model isn't your problem.",[14,1405,1406,1409],{},[17,1407,1408],{},"Count input tokens."," If your input exceeds 30,000 tokens per request, you have context bloat. Check tool definitions, conversation history, and tool results.",[14,1411,1412,1415],{},[17,1413,1414],{},"Time each tool call."," Find the slowest one. It's probably responsible for most of your tool execution latency.",[14,1417,1418,1421],{},[17,1419,1420],{},"Check geography."," Ping your LLM provider from your agent's server. If it's over 100ms, move closer.",[14,1423,1424,1427],{},[17,1425,1426],{},"Count your steps."," If your agent takes more than 5 steps for a typical task, redesign the workflow to reduce steps.",[14,1429,1430],{},"Most agent slowness is layers 2 and 5 working together. Bloated context makes each step slower. More steps means more bloated context. It's a feedback loop that gets worse with every conversation turn.",[14,1432,1433],{},"This is exactly why we built smart context management into BetterClaw from day one. Token bloat is the number one production agent killer, and most self-hosted frameworks leave you to solve it yourself. On BetterClaw, context is automatically managed per agent, tool results are filtered before entering the window, and persistent memory uses hybrid vector plus keyword retrieval so your agent doesn't drag around dead conversation weight. Free plan with 1 agent and 500 credits a month. $49/month for Pro. BYOK with zero inference markup.",[36,1435,1437],{"id":1436},"when-switching-models-actually-helps-and-when-it-doesnt","When switching models actually helps (and when it doesn't)",[14,1439,1440],{},"After all that, there are specific cases where the model genuinely is the bottleneck:",[14,1442,1443],{},[110,1444],{"alt":1445,"src":1446},"Model Switch vs Infrastructure Fix, how to decide. Switch the model when you're using a reasoning model like o3 or GPT-5 for a simple classification task, you need faster streaming for customer-facing responses, you're running local inference where hardware is the real ceiling, or TTFT is over 2 seconds after measuring. Fix infrastructure first when context exceeds 30K tokens per request, tool calls are sequential and unparallelized, the agent takes more than 5 steps per task, or response times vary wildly between requests. The model is 800ms of a 15-second problem; fix the other 14.2 seconds first","/img/blog/ai-agent-latency-model-switch-vs-infrastructure.jpg",[14,1448,1449,1452,1453,1457],{},[17,1450,1451],{},"You're using a reasoning model for a classification task."," If your agent is classifying email urgency (simple task) using o3 or GPT-5 (reasoning model), you're paying 10-30 seconds of \"thinking\" latency for a task that Haiku or Flash can handle in 600ms. Match model size to task complexity. The framework for ",[125,1454,1456],{"href":1455},"/blog/how-to-choose-llm-for-your-task","choosing the right LLM per task"," covers this directly.",[14,1459,1460,1463],{},[17,1461,1462],{},"You need streaming for user-facing interactions."," Some providers stream faster than others. Gemini 2.5 Flash at 173 tok/s finishes a 1,100-token response in under 7 seconds. Slower models might take 20+ seconds for the same output. For customer-facing agents, streaming speed matters.",[14,1465,1466,1469,1470,1474],{},[17,1467,1468],{},"Your agent runs on local hardware."," If you're running local inference on a Mac Mini or mid-range GPU, the model is genuinely slow (3-5 seconds to first token, 30-40 tok/s). Cloud APIs are 5-10x faster for agent workloads. We break down the ",[125,1471,1473],{"href":1472},"/blog/apple-silicon-vs-nvidia-ai-agents","hardware speed gap"," in detail.",[14,1476,1477],{},"For everything else, fix layers 2-5 first. You'll get more speed improvement from trimming 50,000 tokens out of your context window than from switching to a model that's 200ms faster on TTFT.",[14,1479,1480],{},"The difference between a frustrating agent and a fast one usually isn't the model. It's whether someone bothered to measure where the latency actually lives.",[14,1482,1483,1484,1488,1489,1491,1492,1495],{},"If you'd rather skip the latency debugging entirely, ",[125,1485,1487],{"href":258,"rel":1486},[260],"give BetterClaw a look",". Context management, tool optimization, caching, and infrastructure are all handled. ",[125,1490,595],{"href":512}," with 1 agent and 500 credits a month. ",[125,1493,1494],{"href":264},"$49/month for Pro"," on Pro. Your agent deploys in 60 seconds. On infrastructure we've already optimized for speed.",[36,1497,269],{"id":268},[396,1499,1501],{"id":1500},"what-causes-ai-agent-latency","What causes AI agent latency?",[14,1503,1504],{},"AI agent latency comes from five layers: model speed (time to first token and generation rate), context window size (more tokens means more processing time per request), tool execution time (external API calls like CRM, email, or database lookups), network round-trips between your agent and API endpoints, and multi-step compounding where each workflow step multiplies all previous delays. In most cases, context bloat and step count cause more slowness than the model itself.",[396,1506,1508],{"id":1507},"how-does-llm-latency-differ-between-providers-in-2026","How does LLM latency differ between providers in 2026?",[14,1510,1511],{},"Claude Haiku 4.5 leads on time to first token at around 597ms. Gemini 2.5 Flash leads on throughput at 146-173 tokens per second. Reasoning models (o3, GPT-5, Gemini Deep Think) are intentionally slow, often 10-150 seconds to first token due to chain-of-thought processing. For agent workloads, the fastest practical choices are Gemini Flash variants for throughput and Claude Haiku for TTFT.",[396,1513,1515],{"id":1514},"how-do-i-reduce-my-ai-agents-response-time","How do I reduce my AI agent's response time?",[14,1517,1518],{},"Start by logging input token counts. If they exceed 30,000 tokens, compress conversation history into summaries, load tool definitions on demand instead of all at once, and filter tool results before they enter context. Mem0's 2026 benchmarks showed that optimized context management cut latency by 91% while improving accuracy. After fixing context, parallelize independent tool calls and reduce total workflow steps.",[396,1520,1522],{"id":1521},"does-switching-to-a-faster-llm-model-fix-agent-latency","Does switching to a faster LLM model fix agent latency?",[14,1524,1525],{},"Usually not. A single LLM call takes about 800ms. If your agent takes 15 seconds total, the model accounts for roughly 5% of the latency. The other 95% is context processing, tool execution, network overhead, and multi-step compounding. Switch models only when you're using a reasoning model for simple tasks, need faster streaming for user-facing responses, or running local inference where hardware is the genuine bottleneck.",[396,1527,1529],{"id":1528},"is-managed-hosting-faster-than-self-hosted-ai-agents","Is managed hosting faster than self-hosted AI agents?",[14,1531,1532],{},"Generally yes, for three reasons: managed platforms pre-optimize tool integrations with connection pooling and caching, they handle context management automatically to prevent token bloat, and they deploy on infrastructure close to major LLM provider data centers. BetterClaw's managed infrastructure includes smart context management, optimized integrations, and zero setup overhead. Self-hosting gives you full control but requires you to solve every latency layer yourself.",{"title":301,"searchDepth":302,"depth":302,"links":1534},[1535,1536,1537,1541,1545,1549,1552,1553,1554],{"id":1143,"depth":302,"text":1144},{"id":1159,"depth":302,"text":1160},{"id":1193,"depth":302,"text":1194,"children":1538},[1539,1540],{"id":1215,"depth":660,"text":1216},{"id":1222,"depth":660,"text":1223},{"id":1254,"depth":302,"text":1255,"children":1542},[1543,1544],{"id":1272,"depth":660,"text":1216},{"id":1278,"depth":660,"text":1223},{"id":1308,"depth":302,"text":1309,"children":1546},[1547,1548],{"id":1315,"depth":660,"text":1216},{"id":1328,"depth":660,"text":1223},{"id":1355,"depth":302,"text":1356,"children":1550},[1551],{"id":1374,"depth":660,"text":1375},{"id":1387,"depth":302,"text":1388},{"id":1436,"depth":302,"text":1437},{"id":268,"depth":302,"text":269,"children":1555},[1556,1557,1558,1559,1560],{"id":1500,"depth":660,"text":1501},{"id":1507,"depth":660,"text":1508},{"id":1514,"depth":660,"text":1515},{"id":1521,"depth":660,"text":1522},{"id":1528,"depth":660,"text":1529},"2026-06-08","AI agent taking 15+ seconds? The model isn't the bottleneck. Diagnose context bloat, tool lag, and step compounding with this 5-layer framework.","/img/blog/ai-agent-slow-latency-fix.jpg",{},"/blog/ai-agent-slow-latency-fix","11 min read",{"title":1105,"description":1562},"Why Is My AI Agent So Slow? Fix Latency Fast","blog/ai-agent-slow-latency-fix",[1571,1572,1573,1574,1575,1576,1577],"ai agent slow","llm latency","reduce ai agent latency","llm inference speed","ai agent performance","context window optimization","agent response time","saFlOFlWEyQZSpxF023eBakL7OvuX-iPxtQ_W4QIMB8",{"id":1580,"title":1581,"author":1582,"body":1583,"category":312,"date":1996,"description":1997,"extension":315,"featured":316,"hideToc":316,"image":1998,"imageHeight":336,"imageWidth":336,"meta":1999,"navigation":321,"path":2000,"readingTime":2001,"redirected":316,"seo":2002,"seoTitle":2003,"stem":2004,"tags":2005,"updatedDate":336,"__hash__":2012},"blog/blog/ai-provider-rejected-request-fix.md","Fix \"The AI Provider Rejected This Request\" (Schema And Tool Payload Errors)",{"name":7,"role":8,"avatar":9},{"type":11,"value":1584,"toc":1985},[1585,1588,1591,1594,1602,1617,1620,1623,1626,1630,1633,1636,1639,1642,1645,1648,1654,1658,1661,1680,1683,1689,1695,1699,1702,1709,1712,1720,1726,1730,1733,1740,1747,1750,1756,1779,1783,1786,1793,1796,1812,1818,1822,1825,1832,1835,1841,1845,1852,1855,1858,1882,1885,1891,1904,1916,1920,1923,1929,1932,1934,1939,1942,1947,1950,1955,1966,1971,1974,1979],[14,1586,1587],{},"It worked on the first message and died on the fourth. Here are the six causes, ranked by how often they actually happen, and how to tell which one is yours in under two minutes.",[14,1589,1590],{},"The message that gets you here is almost always the same shape.",[14,1592,1593],{},"\"It was working. I sent three messages. The fourth one came back with this.\"",[852,1595,1600],{"className":1596,"code":1598,"language":1599},[1597],"language-text","LLM request failed: provider rejected the request schema or tool payload\n","text",[24,1601,1598],{"__ignoreMap":301},[1110,1603,1604,1610],{"type":1112},[14,1605,1606,1609],{},[17,1607,1608],{},"\"The AI provider rejected this request\" is an HTTP 400 from the model provider."," It is not an outage, a rate limit, or a bad API key — the provider is correctly telling you the request body or tool JSON schema it received was malformed for its API.",[14,1611,1612,1613,1616],{},"Fastest triage: if it worked on message one and failed only after a retry, it is ",[17,1614,1615],{},"cross-provider failover replaying tool schemas"," (Cause 1). Pin the agent to a single provider and remove cross-provider fallbacks.",[14,1618,1619],{},"That is actually good news. A 400 is deterministic. Something in the payload is wrong every single time it is sent, which means it is findable.",[14,1621,1622],{},"Here is what nobody tells you about this particular error: the message is a catch-all. OpenClaw collapses at least six distinct failure modes into one string, so the error text tells you almost nothing about which one you hit. The fix depends entirely on that.",[14,1624,1625],{},"So let us sort them by how often they actually show up.",[36,1627,1629],{"id":1628},"cause-1-tool-schemas-replayed-at-a-fallback-provider","Cause 1: tool schemas replayed at a fallback provider",[14,1631,1632],{},"This is the big one, and it has a signature you can spot instantly.",[14,1634,1635],{},"Your agent works on message one, then dies on a later message right after a retry. That timing is the tell.",[14,1637,1638],{},"Here is the mechanism. OpenClaw prepares your tool definitions once, shaped for your primary model. The primary fails for some unrelated reason, a content filter or a timeout, and the router fails over to a second model. On a different provider. And it replays the same tool definitions, still shaped for the first provider.",[14,1640,1641],{},"Provider B has different rules about what is allowed in a tool input schema. It answers 400. This is documented in OpenClaw issue #64961, where an Azure GPT model returned a content filter error, failover went to Grok, and Grok rejected the untouched tool definitions.",[14,1643,1644],{},"The fix, in order of how quickly you can do it. Pin your agent to a single provider and remove cross-provider fallbacks. Or configure fallbacks only to models on the same provider with the same schema rules. Or update, because normalization on failover is exactly the kind of thing that gets patched.",[14,1646,1647],{},"If it works on message one and fails after a retry, stop reading the rest of this article. It is failover.",[14,1649,1650],{},[110,1651],{"alt":1652,"src":1653},"How failover replay produces a 400: message one goes to Provider A and works, then message four hits a content filter or timeout, the failover router retries against Provider B, and it replays the same tool definitions still shaped for Provider A. Provider B has different schema rules and answers 400. The tell is the timing — it works on message one and dies after a retry. The fix, fastest first: pin to a single provider, allow fallbacks only within the same provider, or update, because normalization patches land here","/img/blog/ai-provider-rejected-request-fix-failover-replay.jpg",[36,1655,1657],{"id":1656},"cause-2-a-json-schema-keyword-the-provider-will-not-accept","Cause 2: a JSON Schema keyword the provider will not accept",[14,1659,1660],{},"Every provider supports a different subset of JSON Schema in tool definitions, and the overlap is smaller than you would hope.",[14,1662,1663,1664,1667,1668,1671,1672,1675,1676,1679],{},"Gemini rejects ",[24,1665,1666],{},"patternProperties",". Claude rejects ",[24,1669,1670],{},"anyOf"," in tool input schemas. Others get strict about ",[24,1673,1674],{},"nullable",", deeply nested objects, or missing ",[24,1677,1678],{},"required"," arrays. OpenClaw carries provider-specific cleaning for some of these, but coverage is not universal and custom skills are where it breaks.",[14,1681,1682],{},"If you wrote or installed a skill and the error started immediately, this is your cause. Not failover. Custom skill schemas are the most common source of exotic keywords.",[14,1684,1685,1686,1688],{},"Strip the schema down to primitives. Flat objects, string and number and boolean types, explicit ",[24,1687,1678],{},", no unions. Then add complexity back one field at a time until it breaks, which takes about five minutes and tells you exactly which keyword the provider hates.",[14,1690,1691],{},[110,1692],{"alt":1693,"src":1694},"The JSON Schema overlap between OpenAI, Gemini and Claude is smaller than you would hope: Gemini rejects patternProperties, Claude rejects anyOf, and deeply nested objects, arrays within arrays and nullable get rejected across the edges. Only flat objects with string, number, boolean and required sit in the safe intersection. Strip a rejected schema down to primitives, then add one field back at a time — about five minutes to find the offending keyword. If you wrote or installed a skill and the error started immediately, this is your cause, not failover","/img/blog/ai-provider-rejected-request-fix-schema-keywords.jpg",[36,1696,1698],{"id":1697},"cause-3-the-model-does-not-support-tool-calling-at-all","Cause 3: the model does not support tool calling at all",[14,1700,1701],{},"Sometimes the answer is boring. You pointed your agent at a model that cannot do function calling, and every request carrying tool definitions fails.",[14,1703,1704,1705,1708],{},"There is a clean diagnostic for this. Set ",[24,1706,1707],{},"compat.supportsTools: false"," and send a message.",[14,1710,1711],{},"If the failures stop completely, the tool surface was the problem. If they shrink but do not disappear, tool schemas were part of the pressure and there is a second issue underneath, usually message shape. That single toggle splits your remaining search space in half.",[14,1713,1714,1715,1719],{},"This is especially common with local models through Ollama, where the tag you pulled may simply not have tool support compiled in. We wrote a fuller breakdown of ",[125,1716,1718],{"href":1717},"/blog/openclaw-model-does-not-support-tools","the model does not support tools error"," covering which models actually work.",[14,1721,1722],{},[110,1723],{"alt":1724,"src":1725},"The compat.supportsTools diagnostic toggle: with the default true, every request carries tool definitions and fails with a 400; set it to false and the request goes out as a clean message with tool definitions removed. If the failures stop completely, the tool surface was the problem and you are on Cause 2 or 3. If they shrink but do not disappear, tool schemas were only part of it and there is a second issue underneath, usually message shape. One toggle splits the remaining search space in half — and with Ollama the model you pulled may simply not have tool support compiled in","/img/blog/ai-provider-rejected-request-fix-supports-tools-toggle.jpg",[36,1727,1729],{"id":1728},"cause-4-the-message-array-shape-not-the-tools","Cause 4: the message array shape, not the tools",[14,1731,1732],{},"This one fools people because they spend hours auditing skills when the tools were never the problem.",[14,1734,1735,1736,1739],{},"Some backends reject a ",[24,1737,1738],{},"messages"," array that is system-only with no trailing user turn. ZAI and GLM have both been reported doing exactly this, in OpenClaw issue #68735. Others reject structured content parts and want a plain string. Others reject OpenAI-style replay metadata sitting on the message keys.",[14,1741,1742,1743,1746],{},"For that last one specifically, there is a config flag: ",[24,1744,1745],{},"models.providers.\u003Cprovider>.models[].compat.strictMessageKeys: true",", which restricts messages to the keys the backend will accept.",[14,1748,1749],{},"You can tell this apart from a tool problem with the Cause 3 toggle. Tools off, still failing, means look here.",[14,1751,1752],{},[110,1753],{"alt":1754,"src":1755},"Message array shape, not tools: ZAI and GLM reject a system-only messages array with no trailing user turn, some backends want message content as a plain string rather than structured parts, and others reject OpenAI-style replay metadata sitting on message keys. The config flag compat.strictMessageKeys set to true restricts messages to the keys the backend will accept. This one fools people because they spend hours auditing skills one by one when the tools were never the problem — turn tools off, and if it still fails, look here","/img/blog/ai-provider-rejected-request-fix-message-shape.jpg",[1110,1757,1759,1767,1770,1776],{"type":1758},"cta",[14,1760,1761],{},[17,1762,1763,1764,1766],{},"If you have spent your evening reading gateway logs to work out whether a provider dislikes your ",[24,1765,1670],{}," or your message keys.",[14,1768,1769],{},"That is roughly the experience we built BetterClaw to remove. Request normalization across 28+ providers, retries, and config validation happen on our side rather than yours.",[14,1771,1772],{},[125,1773,1775],{"href":258,"rel":1774},[260],"Start free →",[14,1777,1778],{},"Free plan · every feature · no credit card · costs an evening less than the debugging does",[36,1780,1782],{"id":1781},"cause-5-reasoning-parameters-the-provider-will-not-take","Cause 5: reasoning parameters the provider will not take",[14,1784,1785],{},"Reasoning models added a whole new category of 400s in 2026.",[14,1787,1788,1789,1792],{},"The best documented case is a version of OpenClaw internally mapping ",[24,1790,1791],{},"reasoning_effort"," to a value the upstream router does not accept, which surfaces as this exact error even though your own config looked valid. Azure AI Foundry reasoning models produced the same failure after an April update, in issue #65603, where disabling reasoning fixed everything except tool-calling requests.",[14,1794,1795],{},"A related variant: some providers require fields from a prior tool-call turn to be echoed back on the follow-up request, and a router that drops them gets a 400 on the second turn of every tool round trip.",[14,1797,1798,1799,1802,1803,1806,1807,1811],{},"Fastest checks are setting ",[24,1800,1801],{},"thinkingDefault"," to ",[24,1804,1805],{},"\"none\""," to take reasoning parameters out of the equation, or switching from a router to the model vendor's native API endpoint. We covered the DeepSeek flavour of this in detail in ",[125,1808,1810],{"href":1809},"/blog/openclaw-deepseek-503-errors","DeepSeek 503 and schema errors",", including the exact config change.",[14,1813,1814],{},[110,1815],{"alt":1816,"src":1817},"Two reasoning-model failure shapes. Internal mapping mismatch: your config looked valid, but the router rewrote reasoning_effort to a label the provider does not accept and returned a 400. Missing echo fields: some providers require fields from a prior tool-call turn to be echoed back, so a router that drops them returns a 400 on the second turn of every tool round trip. Fastest checks are setting thinkingDefault to none, which removes reasoning parameters from the equation, and switching from the router to the model vendor's native API endpoint, which removes the translation layer","/img/blog/ai-provider-rejected-request-fix-reasoning-parameters.jpg",[36,1819,1821],{"id":1820},"cause-6-something-in-front-of-the-provider-not-the-provider","Cause 6: something in front of the provider, not the provider",[14,1823,1824],{},"Rare, but it wastes the most time when it happens, because every diagnostic points at your payload and your payload is fine.",[14,1826,1827,1828,1831],{},"If there is a CDN, WAF, bot-management rule, or reverse proxy in front of an OpenAI-compatible endpoint, it can reject requests before they ever reach the model. The signatures are distinctive. Every model under that provider fails identically. You get HTML or generic security text instead of a structured provider API error. A tiny direct ",[24,1829,1830],{},"curl"," probe succeeds while normal SDK-shaped requests fail.",[14,1833,1834],{},"That last contrast is the giveaway. A real schema rejection fails the small probe too. A security layer usually lets the small one through.",[14,1836,1837],{},[110,1838],{"alt":1839,"src":1840},"Something in front of the provider rather than the provider itself: a CDN, WAF, bot-management rule or reverse proxy rejects the normal SDK request with a 403, an HTML response or generic security text, which your agent sees as a 400 because of the wrapping, while a tiny curl probe sails straight through to the model API. That contrast is the giveaway, because a real schema rejection fails the small probe too. Three signatures point to a security layer: every model under that provider fails identically, you get HTML instead of a structured API error, and a minimal curl succeeds while the SDK fails","/img/blog/ai-provider-rejected-request-fix-security-layer.jpg",[36,1842,1844],{"id":1843},"how-to-work-out-which-one-you-have-in-two-minutes","How to work out which one you have in two minutes",[14,1846,1847,1848,1851],{},"Stop guessing and read the raw error. Run ",[24,1849,1850],{},"openclaw logs --follow"," and send the failing message again.",[14,1853,1854],{},"The gateway's wrapper string is generic, but the upstream 400 body underneath it usually is not. Providers name the offending field. That one line of raw text does more than an hour of config archaeology.",[14,1856,1857],{},"Three checks, in this order:",[1859,1860,1861,1867,1873],"ol",{},[223,1862,1863,1866],{},[17,1864,1865],{},"Does it fail on the first message or only after a retry?"," Retry means Cause 1.",[223,1868,1869,1872],{},[17,1870,1871],{},"Does turning tools off fix it?"," Yes means Causes 2 or 3, no means Cause 4.",[223,1874,1875,1881],{},[17,1876,1877,1878,1880],{},"Does a minimal ",[24,1879,1830],{}," to the same endpoint succeed while the agent fails?"," Yes means Cause 6.",[14,1883,1884],{},"A 400 from a provider is the provider working correctly. It is telling you the request was malformed. The bug lives in whatever built that request.",[14,1886,1887],{},[110,1888],{"alt":1889,"src":1890},"The two-minute diagnostic: run openclaw logs --follow, resend the failing message, and read the raw 400 body, because the upstream usually names the offending field. Check 1, does it fail on the first message or only after a retry — after a retry means Cause 1, failover replay, so pin your provider. Check 2, does turning tools off with supportsTools false fix it — yes means Cause 2 or 3, a schema keyword or no tool support, so flatten the schema; no means Cause 4, message shape, so check strictMessageKeys. Check 3, does a minimal curl to the same endpoint succeed while the agent fails — yes means Cause 6, something in front of the provider; no means Cause 5, reasoning parameters, so set thinkingDefault to none and retest","/img/blog/ai-provider-rejected-request-fix-diagnostic-flowchart.jpg",[14,1892,1893,1894,1898,1899,1903],{},"If you are chasing the same class of error on a different framework, the ",[125,1895,1897],{"href":1896},"/blog/hermes-agent-error-400","Hermes agent error 400 guide"," covers the equivalent failures there, and our ",[125,1900,1902],{"href":1901},"/tools/agent-error-decoder","agent error decoder"," will take a pasted error string and return the specific cause.",[14,1905,1906,1907,1910,1911,1915],{},"If you would rather not own this category of problem at all, start free on BetterClaw. One agent with every feature, no credit card. Pro is $49 a month for five agents, unlimited connectors, and 90-day memory, with 20 percent off annually. ",[125,1908,1909],{"href":264},"Full pricing here",". If you are still deciding between running a framework yourself and using a managed builder, our overview of ",[125,1912,1914],{"href":1913},"/blog/no-code-ai-agent-builder","no-code AI agent builders"," lays out the tradeoff honestly.",[36,1917,1919],{"id":1918},"the-thing-that-makes-this-error-so-annoying","The thing that makes this error so annoying",[14,1921,1922],{},"Every provider agreed to speak roughly the same API dialect, and then quietly disagreed about the details.",[14,1924,1925,1926,1928],{},"One rejects ",[24,1927,1670],{},". One insists on a trailing user turn. One wants reasoning fields echoed back. Individually each rule is reasonable. Collectively they mean any tool that routes across providers is doing continuous translation work, and translation is where things break.",[14,1930,1931],{},"That is the actual lesson buried in this error message. It is not a bug in your config or a bug in the provider. It is the cost of a compatibility layer, showing up on the fourth message of an otherwise perfect afternoon.",[36,1933,269],{"id":268},[14,1935,1936],{},[17,1937,1938],{},"What does \"the AI provider rejected this request\" mean?",[14,1940,1941],{},"It means the model provider returned an HTTP 400 because the request body or tool JSON schema was malformed for its API. It is not a rate limit, an outage, or an authentication failure, all of which produce different status codes. The provider is behaving correctly and the malformed payload was built upstream of it.",[14,1943,1944],{},[17,1945,1946],{},"How is this different from \"model does not support tools\"?",[14,1948,1949],{},"\"Model does not support tools\" is a specific, narrow case where the selected model has no function-calling capability at all. The provider rejection error is a catch-all that covers at least six failure modes, including schema keywords, message array shape, reasoning parameters, and failover replay, of which missing tool support is only one.",[14,1951,1952],{},[17,1953,1954],{},"How do I find out which cause is mine?",[14,1956,1318,1957,1959,1960,1962,1963,1965],{},[24,1958,1850],{}," and resend the failing message so you can read the raw upstream 400 body rather than the wrapper string, since providers usually name the offending field. Then run three checks: does it fail only after a retry, does setting ",[24,1961,1707],{}," stop it, and does a minimal ",[24,1964,1830],{}," to the same endpoint succeed. Those three answers narrow it to one cause in about two minutes.",[14,1967,1968],{},[17,1969,1970],{},"Is it worth switching providers to avoid this?",[14,1972,1973],{},"Sometimes, and it is often the fastest fix rather than the most elegant one. Moving from a multi-provider router to a model vendor's native endpoint removes an entire translation layer and with it most of this error class. The tradeoff is losing failover, so weigh it against how much downtime you can absorb.",[14,1975,1976],{},[17,1977,1978],{},"Should I report this to Anthropic, OpenAI, or my provider?",[14,1980,1981,1982,1984],{},"No. A 400 invalid request error is the provider correctly refusing a malformed payload, so the issue belongs in the tracker of whatever assembled the request. If you can reproduce it with a minimal ",[24,1983,1830],{}," containing the same tool definitions, that reproduction is the single most useful thing to attach to a bug report.",{"title":301,"searchDepth":302,"depth":302,"links":1986},[1987,1988,1989,1990,1991,1992,1993,1994,1995],{"id":1628,"depth":302,"text":1629},{"id":1656,"depth":302,"text":1657},{"id":1697,"depth":302,"text":1698},{"id":1728,"depth":302,"text":1729},{"id":1781,"depth":302,"text":1782},{"id":1820,"depth":302,"text":1821},{"id":1843,"depth":302,"text":1844},{"id":1918,"depth":302,"text":1919},{"id":268,"depth":302,"text":269},"2026-08-13","The AI provider rejected this request? It is a 400 on your schema or tool payload. Six causes ranked by frequency, plus a two-minute diagnostic.","/img/blog/ai-provider-rejected-request-fix.jpg",{},"/blog/ai-provider-rejected-request-fix","8 min read",{"title":1581,"description":1997},"Fix \"The AI Provider Rejected This Request\" (6 Causes)","blog/ai-provider-rejected-request-fix",[2006,2007,2008,2009,2010,2011],"the ai provider rejected this request","provider rejected the request schema or tool payload","openclaw provider rejected","llm request failed 400","openclaw tool schema error","provider rejected tool payload fix","HT9lj9V2of7WHp-a37V1zZbnyQp1xJcVOsDXYlMrPeY",{"id":2014,"title":2015,"author":2016,"body":2017,"category":312,"date":2413,"description":2414,"extension":315,"featured":316,"hideToc":316,"image":2415,"imageHeight":318,"imageWidth":319,"meta":2416,"navigation":321,"path":2417,"readingTime":2418,"redirected":316,"seo":2419,"seoTitle":2420,"stem":2421,"tags":2422,"updatedDate":2413,"__hash__":2429},"blog/blog/claude-cowork-missing-disappeared-fix.md","Claude Cowork Tab Missing or Greyed Out? Here's How to Get It Back",{"name":7,"role":8,"avatar":9},{"type":11,"value":2018,"toc":2401},[2019,2024,2027,2047,2050,2054,2057,2064,2067,2073,2076,2082,2086,2089,2092,2098,2101,2113,2116,2147,2150,2153,2157,2160,2166,2196,2213,2216,2224,2227,2231,2234,2240,2246,2252,2258,2264,2270,2274,2277,2283,2313,2317,2325,2333,2335,2338,2353,2355,2360,2363,2368,2371,2376,2382,2387,2390,2395,2398],[14,2020,2021],{},[17,2022,2023],{},"Four causes, two different symptoms, and the diagnostic question that saves you an hour of guessing.",[14,2025,2026],{},"The Cowork tab usually disappears for one of four reasons: an outdated desktop app that predates Cowork or shipped with a broken build, a Windows requirement that isn't met, a staged feature rollout that hasn't reached your account yet, or a plan that doesn't include it. The first step is figuring out whether the tab is missing entirely (not in the navigation at all) or greyed out (visible but unclickable), because those two symptoms have completely different causes.",[1110,2028,2029],{"type":1112},[14,2030,2031,2034,2035,2038,2039,2042,2043,2046],{},[17,2032,2033],{},"Start here:"," Look at the top nav. ",[17,2036,2037],{},"Greyed out"," (visible but unclickable) = Cowork is on your plan, but a Windows requirement isn't met — hover for the exact error and fix that. ",[17,2040,2041],{},"Missing entirely"," (only Chat and Code show) = your app build doesn't include Cowork or your plan doesn't have access — reinstall from ",[17,2044,2045],{},"claude.ai/download",", or verify you're on Pro/Max/Team/Enterprise. Same visual result, opposite fixes. Diagnose which one first, before typing a single command.",[14,2048,2049],{},"Here's the first thing you need to know. \"Greyed out\" and \"missing\" look similar but they mean different things diagnostically, and fixing the wrong one wastes your whole morning.",[36,2051,2053],{"id":2052},"the-diagnostic-question-is-it-greyed-out-or-is-it-gone","The diagnostic question: is it greyed out, or is it gone?",[14,2055,2056],{},"Look at the top navigation bar in Claude Desktop. You should see tabs for Chat, Code, and Cowork.",[14,2058,2059,2060,2063],{},"If the Cowork tab is ",[17,2061,2062],{},"visible but greyed out or unclickable",", hover over it. You'll usually see a tooltip with a specific error message. \"Missing HCS services: hns, vmcompute, vfpext.\" Or \"Virtual Machine Platform not available.\" Or just a generic \"Cowork is unavailable.\"",[14,2065,2066],{},"This means: Cowork is available on your plan and your app version, but a Windows requirement isn't met. The fix is a Windows configuration issue, not an app or account issue.",[14,2068,2059,2069,2072],{},[17,2070,2071],{},"completely absent"," from the navigation, with only Chat and Code visible, that's a different problem entirely. It means the app build you're running either doesn't include Cowork, or your account/plan doesn't have access to it.",[14,2074,2075],{},"Greyed out = your app knows about Cowork but your system can't run it. Missing entirely = your app doesn't even know Cowork exists on this install. Same visual result. Different cause. Different fix.",[14,2077,2078],{},[110,2079],{"alt":2080,"src":2081},"Two tab bars side by side: a full three-tab bar labelled \"greyed out = Windows problem\" and a two-tab bar labelled \"missing = app or account problem.\"","/img/blog/claude-cowork-missing-disappeared-fix-greyed-vs-missing.jpg",[36,2083,2085],{"id":2084},"fix-1-update-the-desktop-app-most-common-cause-of-the-tab-being-completely-missing","Fix 1: Update the desktop app (most common cause of the tab being completely missing)",[14,2087,2088],{},"This is the fix for the majority of \"Cowork tab not showing up\" cases. Claude Desktop shipped Cowork on February 10, 2026. If you installed before that date using the old Squirrel-based installer, Cowork was never part of your build.",[14,2090,2091],{},"Here's the part that catches people. The in-app \"Check for Updates\" feature on old Squirrel installs falsely reports \"You are running the latest version\" even though a newer MSIX-based build with Cowork exists on a different distribution channel. The updater is checking the Squirrel channel, which has no MSIX version. It's technically correct and practically useless.",[14,2093,2094],{},[110,2095],{"alt":2096,"src":2097},"Diagram: an old Squirrel build (pre-Feb 2026) whose \"you are running the latest version\" popup is crossed out, pointing to reinstalling from claude.ai/download, which includes Cowork.","/img/blog/claude-cowork-missing-disappeared-fix-squirrel-reinstall.jpg",[14,2099,2100],{},"The fix: uninstall Claude Desktop entirely, then download and install the latest version from claude.ai/download. This gives you the MSIX-based build with Cowork included. Your chat history is tied to your account, not the local install, so it survives the reinstall.",[14,2102,2103,2104,2107,2108,2112],{},"For the full walkthrough including the ",[24,2105,2106],{},"%APPDATA%"," cleanup steps for a clean migration, our ",[125,2109,2111],{"href":2110},"/blog/claude-cowork-modern-installer-error-fix","modern installer fix guide"," covers the Squirrel-to-MSIX process step by step.",[14,2114,2115],{},"There's a second version of this problem. On macOS, a specific build (v1.7196.1) shipped with the Cowork runtime completely absent from the app bundle. The tab disappeared after an auto-update even though it was working before. The diagnostic: on macOS, run this in Terminal:",[852,2117,2121],{"className":2118,"code":2119,"language":2120,"meta":301,"style":301},"language-bash shiki shiki-themes github-light","ls /Applications/Claude.app/Contents/Resources/app.asar.unpacked/node_modules/ | grep -i cowork\n","bash",[24,2122,2123],{"__ignoreMap":301},[860,2124,2125,2129,2133,2137,2140,2144],{"class":862,"line":863},[860,2126,2128],{"class":2127},"s7eDp","ls",[860,2130,2132],{"class":2131},"sYBdl"," /Applications/Claude.app/Contents/Resources/app.asar.unpacked/node_modules/",[860,2134,2136],{"class":2135},"sD7c4"," |",[860,2138,2139],{"class":2127}," grep",[860,2141,2143],{"class":2142},"sYu0t"," -i",[860,2145,2146],{"class":2131}," cowork\n",[14,2148,2149],{},"If it returns empty, the Cowork runtime wasn't included in your build. On Windows, the same pattern appeared in build v1.2581.0, where the tab was completely absent with no error message, just missing from the navigation.",[14,2151,2152],{},"The fix for build regressions: check if a newer version is available at claude.ai/download. Anthropic typically patches these within days. If you're already on the latest build and the tab is still missing, it may be an account eligibility issue rather than a build issue, covered in Fix 3 below.",[36,2154,2156],{"id":2155},"fix-2-check-your-windows-setup-if-the-tab-is-greyed-out-not-missing","Fix 2: Check your Windows setup (if the tab is greyed out, not missing)",[14,2158,2159],{},"If the Cowork tab is visible but greyed out or unclickable, the problem is almost always one of these Windows requirements not being met:",[14,2161,2162],{},[110,2163],{"alt":2164,"src":2165},"An unclickable Cowork tab branching to its three common Windows causes: \"Missing HCS services,\" \"VM Platform not available,\" and \"CoworkVMService stopped.\"","/img/blog/claude-cowork-missing-disappeared-fix-windows-errors.jpg",[220,2167,2168,2179,2190],{},[223,2169,2170,2173,2174,2178],{},[17,2171,2172],{},"\"Missing HCS services: hns, vmcompute, vfpext\""," means the Host Compute Service stack that Cowork's sandbox VM depends on isn't running. This is the most common greyed-out cause. Our dedicated ",[125,2175,2177],{"href":2176},"/blog/claude-cowork-missing-hcs-services-fix","HCS services fix guide"," walks through every step, including the vfpext edge case that trips up 30% of users.",[223,2180,2181,2184,2185,2189],{},[17,2182,2183],{},"\"Virtual Machine Platform not available\""," means Windows' virtualization layer is disabled. Our ",[125,2186,2188],{"href":2187},"/blog/claude-virtual-machine-platform-not-available-fix","VM Platform fix"," covers enabling it in Windows Features and BIOS, including the Windows Home carve-out.",[223,2191,2192,2195],{},[17,2193,2194],{},"CoworkVMService stopped"," is the sneaky one. This service ships with startup type set to Manual, so it dies after every reboot, Windows update, and sleep/wake cycle. The tab greys out silently until you restart the service:",[852,2197,2201],{"className":2198,"code":2199,"language":2200,"meta":301,"style":301},"language-powershell shiki shiki-themes github-light","Start-Service CoworkVMService\nSet-Service -Name \"CoworkVMService\" -StartupType Automatic\n","powershell",[24,2202,2203,2208],{"__ignoreMap":301},[860,2204,2205],{"class":862,"line":863},[860,2206,2207],{},"Start-Service CoworkVMService\n",[860,2209,2210],{"class":862,"line":302},[860,2211,2212],{},"Set-Service -Name \"CoworkVMService\" -StartupType Automatic\n",[14,2214,2215],{},"The second command makes it permanent so you don't have to fix this after every restart.",[14,2217,2218,2219,2223],{},"Not sure which error you're hitting? Run the ",[125,2220,2222],{"href":2221},"/blog/claude-cowork-readiness-check-explained","Cowork readiness check"," to identify the exact failing component.",[14,2225,2226],{},"If the idea of troubleshooting Windows services, HCS drivers, and virtualization settings just to get an AI agent running sounds like the wrong use of your time, we built BetterClaw specifically to avoid this class of problem. No desktop install. No VM. No HCS services. Your agent runs on cloud infrastructure, and the Cowork tab equivalent never greys out because there's no local system requirement. Free plan, no credit card, 200+ verified skills, 60-second deploy.",[36,2228,2230],{"id":2229},"fix-3-check-your-plan-and-account-eligibility","Fix 3: Check your plan and account eligibility",[14,2232,2233],{},"If the app is up to date and the tab is still completely absent (not greyed out, but gone from the navigation entirely), it may be a plan or rollout issue.",[14,2235,2236,2239],{},[17,2237,2238],{},"Cowork requires a paid plan."," Free Claude accounts do not include Cowork. Cowork launched on January 12, 2026 as Max-only, then expanded to all Pro subscribers on January 16, 2026. As of July 2026, Cowork on the desktop app is available to Pro ($20/mo), Max ($100 or $200/mo), Team, and Enterprise subscribers.",[14,2241,2242,2245],{},[17,2243,2244],{},"Web and mobile Cowork is Max-only right now."," On July 7, 2026, Anthropic began rolling out Cowork to iOS, Android, and the web for Max subscribers in beta. Pro subscribers don't have web/mobile Cowork yet. If you're on Pro and expecting to see Cowork in your browser or on your phone, that's why it's not there.",[14,2247,2248,2251],{},[17,2249,2250],{},"Team and Enterprise accounts can have Cowork disabled by admins."," Organization owners can toggle Cowork off in Organization Settings under Capabilities, and on Enterprise plans, custom roles can restrict Cowork access per team. If you're on a work account and the tab is missing, check with your IT admin before troubleshooting Windows.",[14,2253,2254,2257],{},[17,2255,2256],{},"Regional availability:"," Cowork is generally available wherever Claude is supported, but region-locked accounts may not have access. If you're seeing \"Not available in your region\" errors, that's the cause.",[14,2259,2260],{},[110,2261],{"alt":2262,"src":2263},"Availability matrix of Cowork by plan across Desktop and Web/Mobile: Free has neither, Max has both, and Team/Enterprise has desktop.","/img/blog/claude-cowork-missing-disappeared-fix-plan-eligibility.jpg",[14,2265,2266,2269],{},[17,2267,2268],{},"How to verify your plan status:"," go to claude.ai in your browser, click your profile, and check your subscription. If it says Pro, Max, Team, or Enterprise, Cowork should be available in the desktop app. If it says Free, you'll need to upgrade.",[36,2271,2273],{"id":2272},"the-it-was-working-yesterday-case","The \"it was working yesterday\" case",[14,2275,2276],{},"This is the most frustrating variant. The tab was there. You were using Cowork. You opened Claude Desktop the next day and it's gone or greyed out.",[14,2278,2279],{},[110,2280],{"alt":2281,"src":2282},"Diagram fanning \"it worked yesterday\" out to four causes: after auto-update → build regression, after reboot → service stopped, after plan change → subscription lapsed, and no known change → sign out and back in.","/img/blog/claude-cowork-missing-disappeared-fix-it-worked-yesterday.jpg",[220,2284,2285,2291,2301,2307],{},[223,2286,2287,2290],{},[17,2288,2289],{},"If it disappeared after an auto-update:"," a build regression may have removed the Cowork runtime from your version. Check claude.ai/download for a newer build. Build regressions that strip the Cowork tab have been documented on both macOS (v1.7196.1) and Windows (v1.2581.0), and Anthropic typically patches them within days.",[223,2292,2293,2296,2297,2300],{},[17,2294,2295],{},"If it greyed out after a reboot or sleep:"," CoworkVMService died because it ships as Manual startup type. Start it with ",[24,2298,2299],{},"Start-Service CoworkVMService"," and set it to Automatic to prevent recurrence.",[223,2302,2303,2306],{},[17,2304,2305],{},"If it disappeared after a plan change or subscription lapse:"," Cowork is removed from the UI when a subscription lapses or downgrades to Free. Reactivating your Pro or Max subscription should restore it.",[223,2308,2309,2312],{},[17,2310,2311],{},"If it disappeared without any change you're aware of:"," sign out of Claude Desktop and sign back in. This refreshes the feature flags that determine which tabs appear. If that doesn't work, a clean reinstall from claude.ai/download is the reliable fallback.",[36,2314,2316],{"id":2315},"the-full-troubleshooting-guide","The full troubleshooting guide",[14,2318,2319,2320,2324],{},"If none of the fixes above resolved your specific case, the full ",[125,2321,2323],{"href":2322},"/blog/claude-cowork-not-working-windows","Cowork troubleshooting guide"," covers all known failure modes in one place, including the detection bug, network conflicts, and corrupted installs.",[14,2326,2327,2328,2332],{},"And if your issue is rate limits rather than the tab itself, our ",[125,2329,2331],{"href":2330},"/blog/claude-cowork-rate-limit-reached","Claude rate limit guide"," covers the separate five-hour rolling window and shared-pool mechanics that affect Cowork sessions.",[36,2334,249],{"id":248},[14,2336,2337],{},"A Cowork tab that disappears or greys out isn't one problem with one fix. It's at least four different problems that all look the same from the outside. The diagnostic question (\"is it greyed out or missing entirely?\") is worth more than all the PowerShell commands in this post combined, because it cuts the possible causes in half before you type a single command.",[99,2339,2340,2344],{},[396,2341,2343],{"id":2342},"skip-the-disappearing-tab-lottery","Skip the disappearing-tab lottery",[14,2345,2346,2347,2352],{},"Your AI agent runs on infrastructure where features don't vanish based on your Windows build, your BIOS settings, or your service startup type. No desktop app. No VM. No tab to disappear.\n",[17,2348,2349],{},[125,2350,1775],{"href":258,"rel":2351},[260],"\nNo credit card · 200+ verified skills · Free plan with 1 agent, every feature · $19/mo per agent for Pro · Deploy in ~60 seconds",[36,2354,269],{"id":268},[14,2356,2357],{},[17,2358,2359],{},"Why is the Cowork tab missing from Claude Desktop?",[14,2361,2362],{},"The most common cause is running an outdated version of Claude Desktop that predates Cowork (installed before February 2026) or a build where the Cowork runtime was accidentally omitted during an auto-update. The fix is to uninstall and reinstall from claude.ai/download. If you're on a Free plan, Cowork isn't included and requires upgrading to Pro ($20/mo) or higher.",[14,2364,2365],{},[17,2366,2367],{},"What does a greyed-out Cowork tab mean?",[14,2369,2370],{},"A greyed-out tab means Cowork is available on your plan and your app version, but a Windows system requirement isn't met. Hover over the tab to see the specific error. \"Missing HCS services\" means the virtualization service stack needs enabling. \"Virtual Machine Platform not available\" means Windows' virtualization layer is disabled. The fix is Windows configuration, not an app or account change.",[14,2372,2373],{},[17,2374,2375],{},"Why did the Cowork tab disappear after an update?",[14,2377,2378,2379,2381],{},"Two known causes. First, a build regression where the Cowork runtime was stripped from the app bundle, documented on both macOS (v1.7196.1) and Windows (v1.2581.0). Check claude.ai/download for a newer build. Second, the CoworkVMService died after the update because it ships with Manual startup type. Run ",[24,2380,2299],{}," in an admin PowerShell.",[14,2383,2384],{},[17,2385,2386],{},"Is Cowork available on Claude Pro or only Max?",[14,2388,2389],{},"Cowork on the desktop app is available to both Pro ($20/mo) and Max ($100+/mo) subscribers since January 16, 2026. Web and mobile Cowork launched July 7, 2026 as a Max-only beta. Pro subscribers currently get desktop Cowork only. Team and Enterprise plans include Cowork, but organization admins can disable it.",[14,2391,2392],{},[17,2393,2394],{},"How do I tell if the missing Cowork tab is a Windows problem or an account problem?",[14,2396,2397],{},"Check two things. First, go to claude.ai in your browser and verify your subscription is active (Pro, Max, Team, or Enterprise). Second, check if the tab is greyed out (visible but unclickable) or completely absent. Greyed out means a Windows requirement isn't met. Completely absent on a paid plan means either an outdated build or a feature flag issue, fixed by reinstalling from claude.ai/download or signing out and back in.",[1068,2399,2400],{},"html pre.shiki code .s7eDp, html code.shiki .s7eDp{--shiki-default:#6F42C1}html pre.shiki code .sYBdl, html code.shiki .sYBdl{--shiki-default:#032F62}html pre.shiki code .sD7c4, html code.shiki .sD7c4{--shiki-default:#D73A49}html pre.shiki code .sYu0t, html code.shiki .sYu0t{--shiki-default:#005CC5}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":301,"searchDepth":302,"depth":302,"links":2402},[2403,2404,2405,2406,2407,2408,2409,2412],{"id":2052,"depth":302,"text":2053},{"id":2084,"depth":302,"text":2085},{"id":2155,"depth":302,"text":2156},{"id":2229,"depth":302,"text":2230},{"id":2272,"depth":302,"text":2273},{"id":2315,"depth":302,"text":2316},{"id":248,"depth":302,"text":249,"children":2410},[2411],{"id":2342,"depth":660,"text":2343},{"id":268,"depth":302,"text":269},"2026-07-24","Claude Cowork tab missing, greyed out, or disappeared? Here's why it's not showing up and how to restore it. Version, plan, and Windows checks covered.","/img/blog/claude-cowork-missing-disappeared-fix.jpg",{},"/blog/claude-cowork-missing-disappeared-fix","10 min read",{"title":2015,"description":2414},"Claude Cowork Missing or Greyed Out? How to Fix It","blog/claude-cowork-missing-disappeared-fix",[2423,2424,2425,2426,2427,2428],"claude cowork missing","cowork tab greyed out","claude cowork not showing up","cowork tab disappeared","claude cowork tab missing","cowork not available","u_s7kiIniZuixl1M0BPP_cztqTBGMHm2QVLGK1bOuKo",{"id":2431,"title":2432,"author":2433,"body":2434,"category":312,"date":2413,"description":3059,"extension":315,"featured":316,"hideToc":316,"image":3060,"imageHeight":318,"imageWidth":319,"meta":3061,"navigation":321,"path":2176,"readingTime":1566,"redirected":316,"seo":3062,"seoTitle":3063,"stem":3064,"tags":3065,"updatedDate":2413,"__hash__":3072},"blog/blog/claude-cowork-missing-hcs-services-fix.md","Fix \"Missing HCS Services: hns, vmcompute, vfpext\" in Claude Cowork (2026)",{"name":7,"role":8,"avatar":9},{"type":11,"value":2435,"toc":3037},[2436,2441,2444,2484,2487,2491,2494,2497,2503,2509,2515,2518,2524,2528,2531,2537,2541,2551,2571,2574,2596,2600,2606,2610,2613,2622,2628,2643,2646,2655,2665,2669,2672,2681,2692,2701,2704,2708,2711,2715,2718,2724,2731,2734,2738,2741,2750,2753,2777,2780,2784,2787,2791,2798,2801,2807,2821,2824,2830,2834,2837,2843,2846,2855,2858,2861,2881,2888,2892,2895,2901,2904,2917,2923,2927,2934,2940,2942,2945,2948,2962,2964,2969,2972,2977,2980,2985,3001,3006,3009,3014,3023,3028,3034],[14,2437,2438],{},[17,2439,2440],{},"Three services, three different failure modes, and a detection bug that wastes an hour if you don't know about it.",[14,2442,2443],{},"If Claude Cowork shows \"Missing HCS services: hns, vmcompute, vfpext,\" it means the Host Compute Service stack that Cowork's sandbox VM depends on isn't running or isn't installed. These three components — VMCompute (the compute layer), HNS (the virtual networking layer), and VFPEXT (the packet-filtering driver) — all need to be present and active. The fix for most machines is to enable Hyper-V, Virtual Machine Platform, and Containers in Windows Features, then restart using Restart (not Shutdown). Takes about five minutes.",[1110,2445,2446],{"type":1112},[14,2447,2448,2451,2452,2455,2456,2459,2460,2463,2464,2467,2468,2471,2472,2475,2476,2479,2480,2483],{},[17,2449,2450],{},"Fastest fix:"," Open PowerShell as Administrator and run ",[24,2453,2454],{},"Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform, Microsoft-Hyper-V, Containers -All -NoRestart",", then ",[17,2457,2458],{},"Restart"," (not Shutdown — Fast Startup can leave the services uninitialized). Verify with ",[24,2461,2462],{},"Get-Service vmcompute, hns"," (both should read ",[17,2465,2466],{},"Running","). If only ",[24,2469,2470],{},"vfpext"," is the holdout and ",[24,2473,2474],{},"Test-Path C:\\Windows\\System32\\drivers\\vfpext.sys"," returns ",[17,2477,2478],{},"True",", clear the Claude cache via ",[17,2481,2482],{},"Help → Troubleshoot"," before touching DISM — a known detection bug reports vfpext missing when it's actually present.",[14,2485,2486],{},"But that's the 70% version. The other 30% of cases involve vfpext specifically, which behaves differently from the other two and has a documented detection bug. This post covers both paths.",[36,2488,2490],{"id":2489},"what-hns-vmcompute-and-vfpext-actually-do-plain-english-version","What HNS, VMCompute, and VFPEXT actually do (plain-English version)",[14,2492,2493],{},"You don't need to understand virtualization internals to fix this error. But knowing what each service does helps you diagnose which one is actually broken, because the error message lists all three regardless of which specific one is missing.",[14,2495,2496],{},"HCS is the low-level API that Hyper-V and Windows containers use to create and manage lightweight VMs. That's exactly what Cowork's sandbox is built on.",[14,2498,2499,2502],{},[17,2500,2501],{},"VMCompute (Hyper-V Host Compute Service)"," is the compute engine. It creates and manages the lightweight VM that Cowork's workspace runs inside. If vmcompute is missing, there's no VM at all. Nothing starts.",[14,2504,2505,2508],{},[17,2506,2507],{},"HNS (Host Network Service)"," provides the virtual networking. It creates the virtual switch and NAT rules that let the Cowork VM communicate with the internet and with your host machine. It manages the subnet (typically 172.16.0.0/24) and the gateway that translates the VM's traffic to the outside world. If HNS is missing, the VM might start but it has no network, so Cowork can't download anything, connect to Claude's API, or serve files back to you.",[14,2510,2511,2514],{},[17,2512,2513],{},"VFPEXT (Virtual Filtering Platform Extension)"," is the packet-filtering driver that HNS depends on. It handles the actual routing and filtering of network packets between the VM and the host. It's the lowest-level component of the three. If vfpext is missing, HNS can't function properly even if HNS itself is technically running.",[14,2516,2517],{},"Think of it as a stack. VMCompute is the engine. HNS is the plumbing. VFPEXT is the valve that controls the water flow. Remove any one of the three and Cowork can't operate.",[14,2519,2520],{},[110,2521],{"alt":2522,"src":2523},"Vertical stack diagram: VMCompute creates the VM, HNS creates the network, VFPEXT filters the packets — with VFPEXT flagged as the most commonly missing component.","/img/blog/claude-cowork-missing-hcs-services-fix-service-stack.jpg",[36,2525,2527],{"id":2526},"the-5-minute-fix-that-works-for-most-machines","The 5-minute fix that works for most machines",[14,2529,2530],{},"This handles about 70% of cases. The error usually appears because the Windows virtualization features that register these services were never enabled, or were disabled by a Windows update.",[14,2532,2533],{},[110,2534],{"alt":2535,"src":2536},"Five-step flow: enable Windows features, restart (not shutdown), verify services, check hypervisor setting, reopen Claude — labelled \"works for about 70% of machines.\"","/img/blog/claude-cowork-missing-hcs-services-fix-5-minute-fix.jpg",[396,2538,2540],{"id":2539},"step-1-enable-the-right-windows-features","Step 1: Enable the right Windows features",[14,2542,2543,2544,66,2547,2550],{},"Open PowerShell as Administrator (right-click Start, select ",[17,2545,2546],{},"Terminal (Admin)",[17,2548,2549],{},"Windows PowerShell (Admin)",") and run all three:",[852,2552,2554],{"className":2198,"code":2553,"language":2200,"meta":301,"style":301},"Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -All -NoRestart\nEnable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All -NoRestart\nEnable-WindowsOptionalFeature -Online -FeatureName Containers -All -NoRestart\n",[24,2555,2556,2561,2566],{"__ignoreMap":301},[860,2557,2558],{"class":862,"line":863},[860,2559,2560],{},"Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -All -NoRestart\n",[860,2562,2563],{"class":862,"line":302},[860,2564,2565],{},"Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All -NoRestart\n",[860,2567,2568],{"class":862,"line":660},[860,2569,2570],{},"Enable-WindowsOptionalFeature -Online -FeatureName Containers -All -NoRestart\n",[14,2572,2573],{},"The Containers feature is the one most guides skip. Enabling Hyper-V, Windows Hypervisor Platform, and Containers together is what registers the full HCS service stack including the vfpext driver. If you only enable Virtual Machine Platform and Hyper-V without Containers, vfpext may not register.",[14,2575,2576,2577,2580,2581,2584,2585,514,2588,2591,2592,2595],{},"If you prefer the GUI: press ",[24,2578,2579],{},"Win+S",", type \"Turn Windows features on or off,\" open it, and check ",[17,2582,2583],{},"Hyper-V"," (all sub-items), ",[17,2586,2587],{},"Virtual Machine Platform",[17,2589,2590],{},"Windows Hypervisor Platform",", and ",[17,2593,2594],{},"Containers",". Click OK.",[396,2597,2599],{"id":2598},"step-2-restart-not-shutdown","Step 2: Restart (not Shutdown)",[14,2601,2602,2603,2605],{},"Use ",[17,2604,2458],{},", not Shutdown and power on. With Windows Fast Startup enabled, a shutdown cycle can leave the virtualization services uninitialized. The services only register fully after a true restart.",[396,2607,2609],{"id":2608},"step-3-verify-the-services-are-running","Step 3: Verify the services are running",[14,2611,2612],{},"After restart, open PowerShell and check:",[852,2614,2616],{"className":2198,"code":2615,"language":2200,"meta":301,"style":301},"Get-Service vmcompute, hns\n",[24,2617,2618],{"__ignoreMap":301},[860,2619,2620],{"class":862,"line":863},[860,2621,2615],{},[14,2623,2624,2625,2627],{},"Both should show ",[17,2626,2466],{},". If either shows Stopped, start them manually:",[852,2629,2631],{"className":2198,"code":2630,"language":2200,"meta":301,"style":301},"Start-Service vmcompute\nStart-Service hns\n",[24,2632,2633,2638],{"__ignoreMap":301},[860,2634,2635],{"class":862,"line":863},[860,2636,2637],{},"Start-Service vmcompute\n",[860,2639,2640],{"class":862,"line":302},[860,2641,2642],{},"Start-Service hns\n",[14,2644,2645],{},"For vfpext (which is a driver, not a standard service), check that the file exists:",[852,2647,2649],{"className":2198,"code":2648,"language":2200,"meta":301,"style":301},"Test-Path C:\\Windows\\System32\\drivers\\vfpext.sys\n",[24,2650,2651],{"__ignoreMap":301},[860,2652,2653],{"class":862,"line":863},[860,2654,2648],{},[14,2656,2657,2658,2660,2661,2664],{},"If it returns ",[24,2659,2478],{},", the driver is installed. If ",[24,2662,2663],{},"False",", see the dedicated vfpext section below.",[396,2666,2668],{"id":2667},"step-4-check-for-conflicting-hypervisors","Step 4: Check for conflicting hypervisors",[14,2670,2671],{},"If you previously had VMware Workstation or VirtualBox installed, they may have changed the hypervisor boot setting. Run:",[852,2673,2675],{"className":2198,"code":2674,"language":2200,"meta":301,"style":301},"bcdedit\n",[24,2676,2677],{"__ignoreMap":301},[860,2678,2679],{"class":862,"line":863},[860,2680,2674],{},[14,2682,2683,2684,2687,2688,2691],{},"Look for ",[24,2685,2686],{},"hypervisorlaunchtype",". If it reads anything other than ",[24,2689,2690],{},"Auto",", fix it:",[852,2693,2695],{"className":2198,"code":2694,"language":2200,"meta":301,"style":301},"bcdedit /set hypervisorlaunchtype auto\n",[24,2696,2697],{"__ignoreMap":301},[860,2698,2699],{"class":862,"line":863},[860,2700,2694],{},[14,2702,2703],{},"Restart again after this change.",[396,2705,2707],{"id":2706},"step-5-reopen-claude-desktop","Step 5: Reopen Claude Desktop",[14,2709,2710],{},"Launch Claude Desktop and try the Cowork tab. If the error is gone, you're done. If it persists, read on.",[36,2712,2714],{"id":2713},"if-vfpext-is-the-only-one-missing","If VFPEXT is the only one missing",[14,2716,2717],{},"Stay with me here, because this is the failure mode that converts at the highest rate in search and frustrates people the most. VMCompute and HNS are running perfectly. The vfpext driver is the only thing missing. And the standard fix doesn't always bring it back.",[14,2719,2720],{},[110,2721],{"alt":2722,"src":2723},"Status list showing vmcompute and hns as running (green) but vfpext as \"not found\" (red), pointing to the conclusion: this is a Windows-side driver issue, not Claude.","/img/blog/claude-cowork-missing-hcs-services-fix-vfpext-only-missing.jpg",[14,2725,2726,2727,2730],{},"On Windows 11 Pro, the vfpext driver can be absent from disk even with vmcompute and hns running normally. ",[24,2728,2729],{},"Get-Service vfpext"," returns \"Cannot find any service with service name 'vfpext'\" while HNS and VMCompute report Running.",[14,2732,2733],{},"This is a Windows-side issue, not a Claude-side issue. The driver should be installed as part of the Hyper-V and Containers feature set, but on some Windows 11 builds (particularly 25H2), it doesn't register even after enabling all the right features.",[396,2735,2737],{"id":2736},"the-dism-repair-path","The DISM repair path",[14,2739,2740],{},"Try repairing the Windows component store first:",[852,2742,2744],{"className":2198,"code":2743,"language":2200,"meta":301,"style":301},"DISM /Online /Cleanup-Image /RestoreHealth\n",[24,2745,2746],{"__ignoreMap":301},[860,2747,2748],{"class":862,"line":863},[860,2749,2743],{},[14,2751,2752],{},"Wait for it to complete (can take 5–15 minutes). Then re-enable the features:",[852,2754,2756],{"className":2198,"code":2755,"language":2200,"meta":301,"style":301},"Disable-WindowsOptionalFeature -Online -FeatureName Containers -NoRestart\nEnable-WindowsOptionalFeature -Online -FeatureName Containers -All -NoRestart\nDisable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -NoRestart\nEnable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All\n",[24,2757,2758,2763,2767,2772],{"__ignoreMap":301},[860,2759,2760],{"class":862,"line":863},[860,2761,2762],{},"Disable-WindowsOptionalFeature -Online -FeatureName Containers -NoRestart\n",[860,2764,2765],{"class":862,"line":302},[860,2766,2570],{},[860,2768,2769],{"class":862,"line":660},[860,2770,2771],{},"Disable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -NoRestart\n",[860,2773,2774],{"class":862,"line":880},[860,2775,2776],{},"Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All\n",[14,2778,2779],{},"This forces Windows to rebuild the feature registration from scratch rather than trying to incrementally fix it. Restart after.",[396,2781,2783],{"id":2782},"the-arm64-edge-case","The ARM64 edge case",[14,2785,2786],{},"On Windows 11 Pro ARM64 devices (Surface Pro with Snapdragon), vfpext is consistently missing even after full Hyper-V repair. This is a known issue filed as recently as July 18, 2026 (GitHub issue #78866). As of this writing, there is no confirmed fix for this specific hardware configuration. ARM64 support for the full HCS stack appears to be incomplete in current Windows builds.",[396,2788,2790],{"id":2789},"the-detection-false-negative-discovered-july-2026","The detection false negative (discovered July 2026)",[14,2792,2793,2794,2797],{},"In some configurations, every component Cowork's troubleshooting docs point to — VirtualMachinePlatform enabled, ",[24,2795,2796],{},"vfpext.sys"," file present, vmcompute and hns running, active VM switch, Hyper-V Management PowerShell installed — is confirmed present and functioning. Despite this, Cowork's internal check still reports vfpext as a missing HCS service.",[14,2799,2800],{},"This suggests the detection check itself may be checking service RUNNING state rather than driver-loaded state, producing a false negative on configurations where vfpext is registered as an on-demand driver rather than a running service.",[14,2802,2803,2804,2806],{},"The fix that worked: after confirming everything was properly configured, clearing the Claude Code cache via ",[17,2805,2482],{}," in the menu resolved the false positive and allowed Cowork to start.",[14,2808,2809,2810,2813,2814,2817,2818,2820],{},"So before you spend two hours on DISM repairs, try this: open Claude Desktop, go to ",[17,2811,2812],{},"Help",", click ",[17,2815,2816],{},"Troubleshoot",", and clear the cache. Restart Claude Desktop. If ",[24,2819,2796],{}," exists on disk and all other services are running, the detection bug may be the actual problem.",[14,2822,2823],{},"If debugging Windows driver registration and component store repairs sounds like the wrong use of your Tuesday afternoon, that frustration is exactly why managed platforms exist. We built BetterClaw so your AI agent runs on cloud infrastructure where HCS services, Hyper-V drivers, and Windows component stores are someone else's problem. Free plan, no credit card, 200+ verified skills, and your agent deploys in 60 seconds. No VM. No vfpext. No driver registration.",[14,2825,2826],{},[110,2827],{"alt":2828,"src":2829},"Decision tree: does vfpext.sys exist on disk? Yes → clear Claude cache and restart; No → run DISM repair, re-enable Containers and Hyper-V, restart.","/img/blog/claude-cowork-missing-hcs-services-fix-vfpext-decision.jpg",[36,2831,2833],{"id":2832},"fixing-it-on-windows-11-home","Fixing it on Windows 11 Home",[14,2835,2836],{},"Windows Home does not include full Hyper-V, which means the Containers feature that registers the full HCS stack (including vfpext) is not available through the standard Windows Features dialog.",[14,2838,2839,2840,2842],{},"What Home does support: ",[17,2841,2587],{},". This is the lightweight virtualization layer, and Cowork is designed to work with it. But the HCS services error specifically means the full HCS stack is expected, which lives in the Hyper-V and Containers feature set that Home doesn't ship.",[14,2844,2845],{},"What to try on Home — enable Virtual Machine Platform using the standard PowerShell command:",[852,2847,2849],{"className":2198,"code":2848,"language":2200,"meta":301,"style":301},"Enable-WindowsOptionalFeature -Online -FeatureName VirtualMachinePlatform -All\n",[24,2850,2851],{"__ignoreMap":301},[860,2852,2853],{"class":862,"line":863},[860,2854,2848],{},[14,2856,2857],{},"Restart. If Cowork starts, you're done. Virtual Machine Platform alone is sometimes sufficient.",[14,2859,2860],{},"If it still shows the HCS error, you're hitting the limitation where Cowork specifically needs HCS components that Home edition doesn't include. Your options are:",[220,2862,2863,2869,2875],{},[223,2864,2865,2868],{},[17,2866,2867],{},"Upgrade to Windows Pro"," ($99 from the Microsoft Store). This is the permanent fix because it gives you full Hyper-V and Containers.",[223,2870,2871,2874],{},[17,2872,2873],{},"Use Claude Code instead of Cowork."," Claude Code runs in your terminal without requiring a VM at all. You lose the visual Cowork workspace but keep the AI coding capabilities.",[223,2876,2877,2880],{},[17,2878,2879],{},"Use Claude.ai chat in your browser."," No VM, no virtualization, works on any edition.",[14,2882,2883,2884,2887],{},"For a full walkthrough of the Virtual Machine Platform enablement process, including BIOS settings, our ",[125,2885,2886],{"href":2187},"VM Platform fix guide"," covers each step.",[36,2889,2891],{"id":2890},"coworkvmservice-the-service-that-dies-after-every-reboot","CoworkVMService: the service that dies after every reboot",[14,2893,2894],{},"Here's what nobody tells you about this error. Even after you fix the HCS services, CoworkVMService ships with startup type Manual, so it dies after reboots, Windows updates, and sleep/wake cycles. You fix the HCS error once, everything works for a day, and then tomorrow the Cowork tab is greyed out again.",[14,2896,2897],{},[110,2898],{"alt":2899,"src":2900},"A loop diagram: fix works, then a reboot/update/sleep stops the service again, over and over — broken by setting the service StartupType to Automatic.","/img/blog/claude-cowork-missing-hcs-services-fix-coworkvmservice-loop.jpg",[14,2902,2903],{},"The fix is to set it to start automatically:",[852,2905,2907],{"className":2198,"code":2906,"language":2200,"meta":301,"style":301},"Set-Service -Name \"CoworkVMService\" -StartupType Automatic\nStart-Service CoworkVMService\n",[24,2908,2909,2913],{"__ignoreMap":301},[860,2910,2911],{"class":862,"line":863},[860,2912,2212],{},[860,2914,2915],{"class":862,"line":302},[860,2916,2207],{},[14,2918,2919,2920,2922],{},"If Set-Service returns \"service not found,\" your Claude Desktop install may be broken. Reinstall from claude.ai/download using the MSIX installer. Our ",[125,2921,2111],{"href":2110}," covers the Squirrel-to-MSIX migration that's usually the root cause.",[36,2924,2926],{"id":2925},"still-not-working-run-the-readiness-check","Still not working? Run the readiness check",[14,2928,2929,2930,2933],{},"If you've tried everything above and Cowork still won't start, Anthropic's readiness check tool pinpoints the exact failing component. Our ",[125,2931,2932],{"href":2221},"readiness check walkthrough"," explains what each of the six tests checks and the exact fix for each failure.",[14,2935,2936,2937,2939],{},"If you're hitting rate limits on top of setup issues, our ",[125,2938,2331],{"href":2330}," covers the separate five-hour rolling window and shared-pool mechanics.",[36,2941,249],{"id":248},[14,2943,2944],{},"The HCS services error looks like one error, but it's actually three different failure modes wearing the same message. VMCompute and HNS are usually fixed by enabling the right Windows features and restarting. VFPEXT is the stubborn one, with a Windows-side driver registration issue on some builds, an ARM64 gap that hasn't been resolved, and a detection false negative in Cowork itself that's been filed as recently as two days before this post was published.",[14,2946,2947],{},"The fix path is: enable features, restart properly, check for conflicting hypervisors, then tackle vfpext specifically if it's the holdout. And clear the Claude cache before you start repairing Windows, because the detection bug means the driver might already be there and Cowork just isn't seeing it.",[99,2949,2950,2954],{},[396,2951,2953],{"id":2952},"skip-the-windows-features-dialog-entirely","Skip the Windows Features dialog entirely",[14,2955,2956,2957,2352],{},"Your AI agent runs on managed cloud infrastructure, where HCS services, Hyper-V drivers, and component stores are someone else's problem. No VM. No vfpext. No driver registration.\n",[17,2958,2959],{},[125,2960,1775],{"href":258,"rel":2961},[260],[36,2963,269],{"id":268},[14,2965,2966],{},[17,2967,2968],{},"What does \"missing HCS services: hns, vmcompute, vfpext\" mean in Claude Cowork?",[14,2970,2971],{},"It means the three Windows Host Compute Service components that Cowork's sandbox VM depends on aren't running or aren't installed. VMCompute creates the VM, HNS provides networking, and VFPEXT handles packet filtering. The fix is usually enabling Hyper-V, Virtual Machine Platform, and Containers in Windows Features, then restarting. The whole process takes about five minutes on most machines.",[14,2973,2974],{},[17,2975,2976],{},"Why is only vfpext missing when vmcompute and hns are running?",[14,2978,2979],{},"VFPEXT is a driver rather than a standard Windows service, and it registers differently from the other two. On some Windows 11 builds (particularly 25H2), the driver doesn't install even with Hyper-V fully enabled. The fix involves running DISM to repair the component store and then re-enabling the Containers feature specifically. On ARM64 devices (Surface Pro with Snapdragon), the vfpext driver is consistently absent and there's no confirmed fix as of July 2026.",[14,2981,2982],{},[17,2983,2984],{},"How do I check if HCS services are running on my machine?",[14,2986,2987,2988,2990,2991,2993,2994,2997,2998,134],{},"Open PowerShell and run ",[24,2989,2462],{}," to check VMCompute and HNS. Both should show Running. For vfpext, run ",[24,2992,2474],{}," to check if the driver file exists on disk. If vmcompute or hns show Stopped, start them with ",[24,2995,2996],{},"Start-Service vmcompute"," and ",[24,2999,3000],{},"Start-Service hns",[14,3002,3003],{},[17,3004,3005],{},"Does Claude Cowork work on Windows Home without HCS services?",[14,3007,3008],{},"Windows Home does not include the full Hyper-V and Containers features that register the complete HCS stack. Cowork may work on Home with just Virtual Machine Platform enabled, but if it shows the HCS services error, you'll need to either upgrade to Windows Pro ($99) or use Claude Code (terminal-based, no VM required) as an alternative.",[14,3010,3011],{},[17,3012,3013],{},"Why does the HCS error come back after every reboot?",[14,3015,3016,3017,3020,3021,134],{},"CoworkVMService, the Windows service that manages Cowork's VM, ships with startup type set to Manual. This means it stops after every reboot, Windows update, and sleep/wake cycle. Fix it permanently by running ",[24,3018,3019],{},"Set-Service -Name \"CoworkVMService\" -StartupType Automatic"," in an admin PowerShell, then starting the service with ",[24,3022,2299],{},[14,3024,3025],{},[17,3026,3027],{},"Can clearing the Claude cache fix the \"missing vfpext\" error?",[14,3029,3030,3031,3033],{},"Yes, in some cases. A detection false negative was documented in July 2026 where Cowork reported vfpext as missing despite all components being properly installed and functioning. Clearing the cache via Claude Desktop's Help → Troubleshoot menu resolved the issue. Try this before spending time on DISM repairs, especially if ",[24,3032,2474],{}," returns True on your machine.",[1068,3035,3036],{},"html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}",{"title":301,"searchDepth":302,"depth":302,"links":3038},[3039,3040,3047,3052,3053,3054,3055,3058],{"id":2489,"depth":302,"text":2490},{"id":2526,"depth":302,"text":2527,"children":3041},[3042,3043,3044,3045,3046],{"id":2539,"depth":660,"text":2540},{"id":2598,"depth":660,"text":2599},{"id":2608,"depth":660,"text":2609},{"id":2667,"depth":660,"text":2668},{"id":2706,"depth":660,"text":2707},{"id":2713,"depth":302,"text":2714,"children":3048},[3049,3050,3051],{"id":2736,"depth":660,"text":2737},{"id":2782,"depth":660,"text":2783},{"id":2789,"depth":660,"text":2790},{"id":2832,"depth":302,"text":2833},{"id":2890,"depth":302,"text":2891},{"id":2925,"depth":302,"text":2926},{"id":248,"depth":302,"text":249,"children":3056},[3057],{"id":2952,"depth":660,"text":2953},{"id":268,"depth":302,"text":269},"Claude Cowork showing \"missing HCS services: hns, vmcompute, vfpext\"? Here's which Windows services to enable and the commands to fix it in 5 minutes.","/img/blog/claude-cowork-missing-hcs-services-fix.jpg",{},{"title":2432,"description":3059},"Fix Missing HCS Services: hns, vmcompute, vfpext (Claude)","blog/claude-cowork-missing-hcs-services-fix",[3066,3067,3068,3069,3070,3071],"missing hcs services claude","hns vmcompute vfpext","claude cowork hcs services fix","vfpext missing claude","vmcompute not running cowork","claude cowork windows fix","43Kvgyn23GRjb4g97QPeXMCOYP5Fkp04Or84qA7bsqQ",{"id":3074,"title":3075,"author":3076,"body":3077,"category":312,"date":3441,"description":3442,"extension":315,"featured":316,"hideToc":316,"image":3443,"imageHeight":318,"imageWidth":319,"meta":3444,"navigation":321,"path":2110,"readingTime":2001,"redirected":316,"seo":3445,"seoTitle":3446,"stem":3447,"tags":3448,"updatedDate":3441,"__hash__":3454},"blog/blog/claude-cowork-modern-installer-error-fix.md","\"Cowork Requires Claude Desktop to Be Installed via a Modern Installer\": How to Fix It",{"name":7,"role":8,"avatar":9},{"type":11,"value":3078,"toc":3426},[3079,3084,3087,3120,3123,3127,3134,3137,3143,3149,3152,3156,3159,3165,3168,3171,3174,3178,3181,3187,3191,3208,3225,3229,3232,3244,3247,3250,3254,3257,3264,3267,3271,3280,3283,3286,3290,3293,3299,3342,3344,3347,3350,3356,3370,3376,3378,3383,3386,3391,3397,3402,3405,3410,3413,3418],[14,3080,3081],{},[17,3082,3083],{},"The Reinstall button doesn't work. Check for Updates lies. Here's the actual fix and why it happened.",[14,3085,3086],{},"This error means your copy of Claude Desktop was installed using an older method that Cowork can't work with. Cowork requires Claude Desktop to be installed through Anthropic's current MSIX-based installer, which registers the virtualization service Cowork depends on. The fix is to fully uninstall your existing Claude Desktop, download the latest installer from claude.ai/download, and reinstall. It takes about five minutes, and your chat history stays intact because it's tied to your account, not the local install.",[1110,3088,3089],{"type":1112},[14,3090,3091,3093,3094,3097,3098,2997,3101,3104,3105,3107,3108,3111,3112,3115,3116,3119],{},[17,3092,2450],{}," Uninstall Claude Desktop from ",[17,3095,3096],{},"Settings → Apps → Installed apps",", delete the leftover ",[24,3099,3100],{},"%LOCALAPPDATA%\\claude-desktop",[24,3102,3103],{},"%APPDATA%\\Claude"," folders, then reinstall from ",[17,3106,2045],{}," (never Winget/Chocolatey/an old download — those can serve the outdated Squirrel format). Accept the UAC prompt so the installer can register ",[24,3109,3110],{},"CoworkVMService",". The in-app ",[17,3113,3114],{},"Reinstall"," button and ",[17,3117,3118],{},"Check for Updates"," both query the dead Squirrel channel, so they'll never fix this.",[14,3121,3122],{},"Here's what makes this error especially frustrating. Claude Desktop has a \"Reinstall\" button in the banner that says you need a newer installation. That button does nothing. And \"Check for Updates\" tells you you're on the latest version. You're not.",[36,3124,3126],{"id":3125},"why-youre-seeing-this-error-the-squirrel-to-msix-migration-nobody-told-you-about","Why you're seeing this error (the Squirrel-to-MSIX migration nobody told you about)",[14,3128,3129,3130,3133],{},"Around February 10, 2026, Anthropic shipped Cowork and simultaneously switched the Windows installer from the older Squirrel-based ",[24,3131,3132],{},".exe"," format to MSIX, Microsoft's modern app packaging standard. Every Claude Desktop install before that date used Squirrel. Every install after uses MSIX.",[14,3135,3136],{},"The problem: there is no automatic upgrade path from the Squirrel installer to the MSIX format. The Squirrel-based install and the MSIX-based install are essentially two different applications as far as Windows is concerned.",[14,3138,3139],{},[110,3140],{"alt":3141,"src":3142},"Timeline showing the Squirrel installer and the MSIX installer plus Cowork as two separate branches, with no auto-upgrade path bridging them after February 2026.","/img/blog/claude-cowork-modern-installer-error-fix-squirrel-msix-migration.jpg",[14,3144,3145,3146,3148],{},"So if you installed Claude Desktop before mid-February 2026, or installed it from an old download link, or used a package manager that cached the Squirrel version, you're running an installer format that predates Cowork entirely. Cowork's VM service (",[24,3147,3110],{},") only gets registered by the MSIX installer. The Squirrel installer has no concept of it.",[14,3150,3151],{},"But that's not even the real problem. The real problem is that Claude Desktop tries to help you fix it, and the help doesn't work.",[36,3153,3155],{"id":3154},"the-reinstall-button-trap","The \"Reinstall\" button trap",[14,3157,3158],{},"Claude Desktop shows a banner at the top of the app: \"Cowork requires a newer installation\" with a Reinstall button. Clicking the Reinstall button does absolutely nothing. No download starts, no installer launches, no error message appears. The app state doesn't change.",[14,3160,3161],{},[110,3162],{"alt":3163,"src":3164},"The Claude Desktop banner reading \"Cowork requires a newer installation\" with a Reinstall button that does nothing, alongside a \"No Update Available\" message.","/img/blog/claude-cowork-modern-installer-error-fix-reinstall-button-trap.jpg",[14,3166,3167],{},"Additionally, going to Help → Check for Updates shows \"No Update Available — You are running the latest version.\" This creates a dead end: the app says you need to reinstall, provides a button to do so, but the button is non-functional, and the update checker contradicts the banner entirely.",[14,3169,3170],{},"Here's why. The in-app updater and the Reinstall button both check the Squirrel update channel. The MSIX version lives on a completely different channel. The Squirrel channel genuinely has no newer version, so the updater is technically correct when it says you're current. It just doesn't know that the MSIX version exists.",[14,3172,3173],{},"The Reinstall button and the Check for Updates dialog are checking the old channel. The new installer lives on a different channel entirely. Manual uninstall and reinstall from claude.ai/download is the only path.",[36,3175,3177],{"id":3176},"the-fix-clean-uninstall-then-reinstall-from-claudeaidownload","The fix: clean uninstall, then reinstall from claude.ai/download",[14,3179,3180],{},"This is a four-step process. The key word is \"clean,\" because leftover Squirrel files can prevent the MSIX installer from completing.",[14,3182,3183],{},[110,3184],{"alt":3185,"src":3186},"The four-step fix as a flow: 1. Uninstall, 2. Clean leftover files, 3. Download from claude.ai, 4. Install and open Cowork — with \"clean\" as the key word.","/img/blog/claude-cowork-modern-installer-error-fix-clean-uninstall-steps.jpg",[396,3188,3190],{"id":3189},"step-1-uninstall-the-current-claude-desktop","Step 1: Uninstall the current Claude Desktop",[14,3192,3193,3194,3197,3198,2455,3201,3204,3205,134],{},"Press ",[24,3195,3196],{},"Win+I"," to open Settings, go to ",[17,3199,3200],{},"Apps",[17,3202,3203],{},"Installed apps",". Find Claude in the list and click ",[17,3206,3207],{},"Uninstall",[14,3209,3210,3211,3214,3215,3217,3218,66,3221,3224],{},"If Claude doesn't appear in Installed apps (this happens with some older Squirrel installs that didn't register properly), check for a Claude folder in ",[24,3212,3213],{},"%LOCALAPPDATA%"," instead. Open File Explorer, paste ",[24,3216,3213],{}," into the address bar, and look for a ",[24,3219,3220],{},"claude-desktop",[24,3222,3223],{},"Claude"," folder. Delete it manually.",[396,3226,3228],{"id":3227},"step-2-clean-up-leftover-files","Step 2: Clean up leftover files",[14,3230,3231],{},"After uninstalling, check for and remove any leftover Claude files. Open File Explorer and navigate to each of these locations. Delete the Claude folders if they exist:",[220,3233,3234,3239],{},[223,3235,3236,3238],{},[24,3237,3100],{}," (old Squirrel install location)",[223,3240,3241,3243],{},[24,3242,3103],{}," (settings, logs, VM cache)",[14,3245,3246],{},"Removing the old Squirrel install from all user profiles is essential before the managed MSIX install will work cleanly. If you skip this step and the MSIX installer finds Squirrel remnants, it can fail silently with a cryptic HRESULT error and leave you right back where you started.",[14,3248,3249],{},"Your chat history is safe. Conversations are stored in your Anthropic account, not in these local folders. What you're deleting is cached data, logs, and the old installer's registration, not your work.",[396,3251,3253],{"id":3252},"step-3-download-the-latest-installer-from-claudeaidownload","Step 3: Download the latest installer from claude.ai/download",[14,3255,3256],{},"Go to claude.ai/download and get the current Windows installer. This gives you the MSIX-based version automatically.",[14,3258,3259,3260,3263],{},"Do ",[17,3261,3262],{},"not"," use an old download you saved, a link from a third-party site, a Winget package that might be caching the Squirrel version, or a Chocolatey install. Any of those can give you the old format and you'll be right back to the same error.",[14,3265,3266],{},"If you're on an enterprise machine managed by Intune, the process is different. The standard Claude Desktop installer requires Developer Mode or Trusted App Installs to be enabled for MSIX sideloading, which violates CIS benchmarks and NIST hardening guidelines on most enterprise configurations. The fix for IT teams is to deploy the signed MSIX package directly through Intune as a Line of Business app, bypassing the bootstrapper installer entirely. Send your IT admin the Anthropic enterprise deployment guide rather than asking them to run the consumer installer.",[396,3268,3270],{"id":3269},"step-4-run-the-installer-and-open-cowork","Step 4: Run the installer and open Cowork",[14,3272,3273,3274,3277,3278,134],{},"Open the downloaded file, follow the prompts, and accept the default install location. When it asks for admin permission (UAC prompt), click ",[17,3275,3276],{},"Yes",". The MSIX installer needs admin rights to register the ",[24,3279,3110],{},[14,3281,3282],{},"Launch Claude Desktop, sign in, and the Cowork tab should now appear.",[14,3284,3285],{},"If the idea of debugging installer formats, cleaning up leftover registry entries, and figuring out which update channel your version is on sounds like an unreasonable amount of work just to get an AI agent running, we built BetterClaw specifically to avoid this class of problem entirely. No desktop installer. No VM. No MSIX. No Squirrel. Your agent runs in the cloud on managed infrastructure. Free plan, no credit card, 200+ verified skills, 60-second deploy.",[36,3287,3289],{"id":3288},"if-cowork-still-doesnt-appear-after-reinstalling","If Cowork still doesn't appear after reinstalling",[14,3291,3292],{},"If you've done the clean uninstall, removed the leftover files, installed the MSIX version from claude.ai/download, and Cowork still isn't working, the problem has shifted from the installer to a Windows requirement. Different error, different fix.",[14,3294,3295],{},[110,3296],{"alt":3297,"src":3298},"Decision flow from the four reinstall steps into \"Still not working?\" branching to VM Platform not available, Missing HCS services, and Cowork tab visible but nothing happens.","/img/blog/claude-cowork-modern-installer-error-fix-still-not-appearing.jpg",[220,3300,3301,3310,3320,3333],{},[223,3302,3303,3306,3307,3309],{},[17,3304,3305],{},"\"Virtual Machine Platform not available\":"," your Windows virtualization features need enabling. Our step-by-step ",[125,3308,2188],{"href":2187}," covers exactly how to enable it and what to do in BIOS.",[223,3311,3312,3315,3316,3319],{},[17,3313,3314],{},"\"Missing HCS services: HNS, vmcompute, vfpext\":"," the Host Compute Service stack that Cowork's sandbox runs on isn't registered. Our ",[125,3317,3318],{"href":2322},"Cowork readiness guide"," walks through each required component and the fix for each.",[223,3321,3322,3325,3326,3328,3329,3332],{},[17,3323,3324],{},"Cowork tab visible but nothing happens when you click it:"," the ",[24,3327,3110],{}," may not have registered properly during the MSIX install. A per-user MSIX install can complete without registering the Cowork virtualization service. Redeploying using ",[24,3330,3331],{},"Add-AppxProvisionedPackage"," so the service registers machine-wide is the fix. This is most common on enterprise machines where the install ran in user context rather than device context.",[223,3334,3335,3338,3339,3341],{},[17,3336,3337],{},"Still stuck:"," the full ",[125,3340,2323],{"href":2322}," covers every known failure mode in one place.",[36,3343,249],{"id":248},[14,3345,3346],{},"This error exists because of a packaging format migration that Anthropic handled poorly on the user-facing side. The old installer has no idea the new one exists. The in-app buttons that should fix it don't work. And the error message says \"modern installer\" without telling you what that means or where to get it.",[14,3348,3349],{},"The fix itself is simple: uninstall, clean up, reinstall from claude.ai/download. Five minutes. But the fact that you needed this page to figure that out is a sign that desktop software deployment, even in 2026, hasn't gotten meaningfully easier for the person at the keyboard.",[14,3351,3352],{},[110,3353],{"alt":3354,"src":3355},"A tangled desktop install of MSIX, Squirrel, VM, and channels versus a clean cloud agent with no installer — \"someone else's problem.\"","/img/blog/claude-cowork-modern-installer-error-fix-cloud-agent.jpg",[99,3357,3358,3362],{},[396,3359,3361],{"id":3360},"skip-desktop-installers-entirely","Skip desktop installers entirely",[14,3363,3364,3365,2352],{},"Your AI agent runs in the cloud, where packaging formats and VM services are someone else's problem. No installer. No VM. No MSIX. No Squirrel.\n",[17,3366,3367],{},[125,3368,1775],{"href":258,"rel":3369},[260],[14,3371,3372,3373,3375],{},"If you're also hitting usage caps once Cowork is running, our ",[125,3374,2331],{"href":2330}," covers the five-hour rolling window and shared-pool mechanics that affect Cowork sessions differently from regular chat.",[36,3377,269],{"id":268},[14,3379,3380],{},[17,3381,3382],{},"Will reinstalling Claude Desktop delete my chats?",[14,3384,3385],{},"No. Your conversation history is tied to your Anthropic account, not the local install. Uninstalling removes cached data, logs, and the installer registration. Your conversations, settings, and any saved context will be there when you sign back in after reinstalling.",[14,3387,3388],{},[17,3389,3390],{},"Do I need admin rights to reinstall Claude Desktop?",[14,3392,3393,3394,3396],{},"Yes. The MSIX installer needs administrator permission to register the ",[24,3395,3110],{},", which is the Windows service Cowork depends on. On a personal machine, click Yes on the UAC prompt. On a work machine managed by IT, ask your IT team to deploy the signed MSIX package through their endpoint management tool rather than running the consumer installer.",[14,3398,3399],{},[17,3400,3401],{},"Is the \"modern installer\" a separate download?",[14,3403,3404],{},"No. It's just the current official Claude Desktop installer from claude.ai/download, which uses MSIX packaging instead of the older Squirrel format. Any download from claude.ai/download after February 2026 gives you the MSIX version automatically. The term \"modern installer\" in the error message refers to this MSIX-based version.",[14,3406,3407],{},[17,3408,3409],{},"Why doesn't the \"Reinstall\" button in Claude Desktop work?",[14,3411,3412],{},"The Reinstall button and the Check for Updates feature both query the old Squirrel update channel, which no longer receives updates. The MSIX version lives on a different distribution channel entirely. The buttons are checking the right place for the old format and finding nothing new, because nothing new was ever published to that channel.",[14,3414,3415],{},[17,3416,3417],{},"I installed Claude via Winget or Chocolatey. Is that the problem?",[14,3419,3420,3421,2997,3423,3425],{},"Possibly. If the package manager cached the Squirrel-based version, you may have installed the old format without knowing it. Uninstall via the package manager, clean up the leftover files from ",[24,3422,3213],{},[24,3424,2106],{},", and reinstall directly from claude.ai/download to ensure you get the current MSIX version.",{"title":301,"searchDepth":302,"depth":302,"links":3427},[3428,3429,3430,3436,3437,3440],{"id":3125,"depth":302,"text":3126},{"id":3154,"depth":302,"text":3155},{"id":3176,"depth":302,"text":3177,"children":3431},[3432,3433,3434,3435],{"id":3189,"depth":660,"text":3190},{"id":3227,"depth":660,"text":3228},{"id":3252,"depth":660,"text":3253},{"id":3269,"depth":660,"text":3270},{"id":3288,"depth":302,"text":3289},{"id":248,"depth":302,"text":249,"children":3438},[3439],{"id":3360,"depth":660,"text":3361},{"id":268,"depth":302,"text":269},"2026-07-23","Getting \"Cowork requires Claude Desktop installed via modern installer\"? The Reinstall button won't help. Here's the real fix: clean uninstall + MSIX reinstall.","/img/blog/claude-cowork-modern-installer-error-fix.jpg",{},{"title":3075,"description":3442},"Fix \"Cowork Requires Modern Installer\" Claude Error","blog/claude-cowork-modern-installer-error-fix",[3449,3450,3451,3452,3453],"cowork requires modern installer","claude cowork modern installer error","claude desktop squirrel msix","claude desktop reinstall cowork","cowork requires claude desktop installed modern installer","1OgwP9zng1rHLqNFx0A_JIJXOz-eeVfLfOtm6_mhwmY",{"id":3456,"title":3457,"author":3458,"body":3459,"category":312,"date":4450,"description":4451,"extension":315,"featured":316,"hideToc":321,"image":4452,"imageHeight":336,"imageWidth":336,"meta":4453,"navigation":321,"path":2322,"readingTime":4454,"redirected":316,"seo":4455,"seoTitle":3457,"stem":4456,"tags":4457,"updatedDate":2413,"__hash__":4466},"blog/blog/claude-cowork-not-working-windows.md","Claude Cowork \"Missing HCS Services (hns, vmcompute, vfpext)\" — Fix + Every Windows Bug (2026)",{"name":7,"role":8,"avatar":9},{"type":11,"value":3460,"toc":4414},[3461,3476,3516,3521,3529,3533,3563,3583,3586,3611,3614,3651,3658,3677,3684,3688,3721,3730,3734,3759,3763,3769,3772,3780,3787,3796,3801,3805,3810,3813,3822,3831,3840,3843,3847,3862,3866,3869,3873,3876,3880,3883,3887,3890,3894,3897,3901,3904,3910,3914,3917,3945,3949,3959,3962,3990,3994,3997,4029,4032,4036,4039,4042,4045,4048,4051,4060,4068,4071,4074,4077,4084,4091,4095,4105,4108,4119,4123,4126,4129,4132,4135,4138,4141,4147,4165,4169,4173,4176,4201,4204,4208,4215,4237,4240,4244,4247,4251,4254,4269,4275,4279,4282,4289,4293,4296,4312,4314,4319,4322,4327,4356,4361,4374,4379,4389,4394,4404,4409,4412],[14,3462,3463,3464,514,3467,514,3470,3472,3473,3475],{},"Claude Cowork fails on Windows when the virtualization stack it depends on isn't running. In practice that means one of three things: the Windows Host Compute Service components are missing or stopped (",[24,3465,3466],{},"hns",[24,3468,3469],{},"vmcompute",[24,3471,2470],{},"), ",[24,3474,3110],{}," has stopped after a reboot or sleep, or the machine doesn't meet Cowork's hardware and edition requirements - most often Windows Home, which lacks the full Hyper-V stack. Each has a different fix, and all three are checkable in under five minutes.",[1110,3477,3478,3494,3509],{"type":1112},[14,3479,3480,3482,3483,3485,3486,3489,3490,3493],{},[17,3481,1117],{}," If Claude Cowork hangs or fails to connect on Windows, the most common cause is that ",[24,3484,3110],{}," stopped - it ships with startup type ",[17,3487,3488],{},"Manual",", so it dies after reboots, updates, and sleep/wake. The cryptic ",[24,3491,3492],{},"yukonSilver not supported (status=unsupported)"," missing-tab bug is a separate platform-detection issue. Start the service and make it persist (PowerShell as Administrator):",[852,3495,3497],{"className":2198,"code":3496,"language":2200,"meta":301,"style":301},"sc start CoworkVMService\nsc config CoworkVMService start= auto   # mind the space after =\n",[24,3498,3499,3504],{"__ignoreMap":301},[860,3500,3501],{"class":862,"line":863},[860,3502,3503],{},"sc start CoworkVMService\n",[860,3505,3506],{"class":862,"line":302},[860,3507,3508],{},"sc config CoworkVMService start= auto   # mind the space after =\n",[14,3510,3511,3512,3515],{},"If ",[24,3513,3514],{},"sc start"," returns \"service not found,\" your install is broken - reinstall fresh from the official Claude download page.",[14,3517,3518],{},[17,3519,3520],{},"Broken down further, those three causes split into five distinct failure modes: (1) the CoworkVMService stops after reboot or sleep, (2) the \"yukonSilver\" platform detection bug marks capable systems as unsupported, (3) Windows Home edition lacks the full Hyper-V stack Cowork needs, (4) network conflicts with VPNs or Docker on the 172.16.0.0/24 range, and (5) corrupted installs from the old Squirrel installer. Each has a different fix.",[14,3522,3523,3524,3528],{},"Cowork shipped on Windows on February 10, 2026, and went GA across all paying subscribers on April 9, 2026. If you haven't installed it yet, our ",[125,3525,3527],{"href":3526},"/blog/claude-cowork-windows-setup","Claude Cowork Windows setup guide"," walks through the clean install and the three requirements nobody mentions upfront. The Claude Code GitHub repo has been collecting Windows-specific bugs since launch: cryptic \"yukonSilver not supported\" errors, missing Cowork tabs on fully capable machines, and a VM service that resists removal. We've tracked the major failure modes and what actually fixes each one. No fluff.",[36,3530,3532],{"id":3531},"fix-missing-hcs-services-hns-vmcompute-vfpext","Fix: Missing HCS Services (hns, vmcompute, vfpext)",[1110,3534,3535],{"type":1112},[14,3536,3537,3539,3540,3543,3544,3546,3547,3549,3550,3552,3553,514,3555,2591,3557,3559,3560,134],{},[17,3538,1117],{}," Cowork's sandbox runs on the Windows ",[17,3541,3542],{},"Host Compute Service (HCS)"," stack - ",[24,3545,3469],{}," (VM Compute), ",[24,3548,3466],{}," (Host Network Service), and the ",[24,3551,2470],{}," virtual-filtering driver. If any are missing or stopped, the VM never boots. Enable ",[17,3554,2583],{},[17,3556,2590],{},[17,3558,2594],{}," in Windows Features, reboot, then confirm with ",[24,3561,3562],{},"Get-Service vmcompute",[14,3564,3565,3566,3569,3570,3572,3573,3569,3576,3578,3579,3582],{},"If Cowork reports a missing HCS service - or missing HCS services - it means the Host Compute Service and its networking components aren't running or aren't installed. HCS is the low-level API that Hyper-V and Windows containers use to create and manage lightweight VMs - exactly what Cowork's sandbox is built on. ",[17,3567,3568],{},"VMCompute"," (",[24,3571,3469],{},") hosts the compute layer, ",[17,3574,3575],{},"HNS",[24,3577,3466],{},") provides the virtual networking the sandbox needs, and ",[17,3580,3581],{},"VFPExt"," (Virtual Filtering Platform Extension) is the packet-filtering driver HNS depends on. If these don't exist or won't start, Cowork can't stand up its environment and usually fails silently or throws a mount/boot error.",[14,3584,3585],{},"First, check whether the services exist and are running (PowerShell as Administrator):",[852,3587,3589],{"className":2198,"code":3588,"language":2200,"meta":301,"style":301},"Get-Service vmcompute\nGet-Service hns\n# VFPExt is a driver, not a normal service - check it the same way:\nGet-Service vfpext -ErrorAction SilentlyContinue\n",[24,3590,3591,3596,3601,3606],{"__ignoreMap":301},[860,3592,3593],{"class":862,"line":863},[860,3594,3595],{},"Get-Service vmcompute\n",[860,3597,3598],{"class":862,"line":302},[860,3599,3600],{},"Get-Service hns\n",[860,3602,3603],{"class":862,"line":660},[860,3604,3605],{},"# VFPExt is a driver, not a normal service - check it the same way:\n",[860,3607,3608],{"class":862,"line":880},[860,3609,3610],{},"Get-Service vfpext -ErrorAction SilentlyContinue\n",[14,3612,3613],{},"If any return \"Cannot find any service,\" the underlying feature isn't installed. Fix it:",[1859,3615,3616,3627,3636,3643],{},[223,3617,3618,3619,3622,3623,3626],{},"Open ",[17,3620,3621],{},"Control Panel → Programs → Turn Windows features on or off"," (or run ",[24,3624,3625],{},"optionalfeatures",").",[223,3628,3629,3630,514,3632,2591,3634,134],{},"Enable ",[17,3631,2583],{},[17,3633,2590],{},[17,3635,2594],{},[223,3637,3638,3639,3642],{},"Click OK and ",[17,3640,3641],{},"restart"," when prompted - the services only register after a reboot.",[223,3644,3645,3646,3648,3649,134],{},"Re-run ",[24,3647,3562],{}," and confirm Status shows ",[17,3650,2466],{},[14,3652,3653,3654,3657],{},"If the services now exist but show ",[17,3655,3656],{},"Stopped",", set them to start automatically and start them:",[852,3659,3661],{"className":2198,"code":3660,"language":2200,"meta":301,"style":301},"Set-Service vmcompute -StartupType Automatic\nStart-Service vmcompute\nGet-Service vmcompute   # confirm Status = Running\n",[24,3662,3663,3668,3672],{"__ignoreMap":301},[860,3664,3665],{"class":862,"line":863},[860,3666,3667],{},"Set-Service vmcompute -StartupType Automatic\n",[860,3669,3670],{"class":862,"line":302},[860,3671,2637],{},[860,3673,3674],{"class":862,"line":660},[860,3675,3676],{},"Get-Service vmcompute   # confirm Status = Running\n",[14,3678,3679,3680,3683],{},"Finally, none of this works if hardware virtualization is off. ",[17,3681,3682],{},"VT-x (Intel) or AMD-V (AMD)"," must be enabled in your BIOS/UEFI - reboot into firmware settings, turn virtualization on, save, and boot back into Windows before re-checking the services.",[396,3685,3687],{"id":3686},"if-only-vfpext-is-missing","If only vfpext is missing",[14,3689,3690,3692,3693,2997,3695,3697,3698,3700,3701,3703,3704,3706,3707,3709,3710,3712,3713,3716,3717,3720],{},[24,3691,2729],{}," returning \"Cannot find any service\" while ",[24,3694,3469],{},[24,3696,3466],{}," are present is a case worth calling out on its own. VFPExt (Virtual Filtering Platform Extension) is the packet-filtering driver HNS loads to route traffic in and out of the sandbox VM. It ships with the Hyper-V / Containers feature set, so if you enabled ",[17,3699,2583],{}," but skipped ",[17,3702,2594],{},", you can end up with ",[24,3705,3466],{}," present but ",[24,3708,2470],{}," never loaded - and Cowork's VM boots with no working network. Enable ",[17,3711,2594],{}," in ",[88,3714,3715],{},"Turn Windows features on or off",", reboot, and re-check with ",[24,3718,3719],{},"Get-Service vfpext -ErrorAction SilentlyContinue",". If it still won't load on a machine that already has those features on, repair the stack from an elevated prompt and reboot:",[852,3722,3724],{"className":2198,"code":3723,"language":2200,"meta":301,"style":301},"DISM /Online /Enable-Feature /FeatureName:Microsoft-Hyper-V-All /All\n",[24,3725,3726],{"__ignoreMap":301},[860,3727,3728],{"class":862,"line":863},[860,3729,3723],{},[396,3731,3733],{"id":3732},"cowork-tab-greyed-out-or-unclickable","Cowork tab greyed out or unclickable",[14,3735,2059,3736,3739,3740,3743,3744,66,3746,3748,3749,3751,3752,3754,3755,3758],{},[88,3737,3738],{},"visible"," but ",[17,3741,3742],{},"greyed out"," and won't respond to clicks, your account is eligible - the app just can't reach a ready local VM. That's this HCS path, not a UI glitch: ",[24,3745,3469],{},[24,3747,3466],{}," is missing or stopped, or ",[24,3750,3110],{}," died after a reboot or sleep. Run the ",[24,3753,3562],{}," checks above, then start the VM service with ",[24,3756,3757],{},"sc start CoworkVMService",". A greyed-out tab almost never means a broken install - it means the virtualization stack isn't up yet.",[36,3760,3762],{"id":3761},"try-this-first-restart-coworkvmservice","Try this first: restart CoworkVMService",[14,3764,3765,3766,3768],{},"Before anything else, check whether Cowork's background service is actually running. CoworkVMService ships with startup type ",[17,3767,3488],{},", which means it stops after reboots, Windows updates, and sleep/wake cycles. Once it stops, Cowork hangs or fails to connect even though everything else looks fine. This is the most common Cowork issue on Windows and the fastest one to fix.",[14,3770,3771],{},"Open PowerShell as Administrator and run:",[852,3773,3774],{"className":2198,"code":3503,"language":2200,"meta":301,"style":301},[24,3775,3776],{"__ignoreMap":301},[860,3777,3778],{"class":862,"line":863},[860,3779,3503],{},[14,3781,3782,3783,3786],{},"If that fixes Cowork until the next reboot, make it stick by switching the service to automatic startup (mind the space after ",[24,3784,3785],{},"=","):",[852,3788,3790],{"className":2198,"code":3789,"language":2200,"meta":301,"style":301},"sc config CoworkVMService start= auto\n",[24,3791,3792],{"__ignoreMap":301},[860,3793,3794],{"class":862,"line":863},[860,3795,3789],{},[14,3797,3511,3798,3800],{},[24,3799,3514],{}," returns \"service not found,\" skip to the install-related sections below - your Cowork installation may be broken. Otherwise, restart Claude Desktop and check the Cowork tab.",[396,3802,3804],{"id":3803},"claudes-workspace-service-isnt-running","\"Claude's Workspace Service Isn't Running\"",[14,3806,3807,3808,134],{},"This is the same problem as above, just worded differently in some versions of the error dialog. \"Claude's workspace service\" is ",[24,3809,3110],{},[14,3811,3812],{},"If you see this message, open PowerShell as Administrator and run:",[852,3814,3816],{"className":2198,"code":3815,"language":2200,"meta":301,"style":301},"Restart-Service CoworkVMService\n",[24,3817,3818],{"__ignoreMap":301},[860,3819,3820],{"class":862,"line":863},[860,3821,3815],{},[14,3823,3824,3825,3827,3828,3830],{},"If the service has stopped after a reboot, sleep/wake, or a Windows update, that is expected - ",[24,3826,3110],{}," ships with startup type ",[17,3829,3488],{},", so it does not survive restarts on its own. To make it persistent:",[852,3832,3834],{"className":2198,"code":3833,"language":2200,"meta":301,"style":301},"Set-Service CoworkVMService -StartupType Automatic\n",[24,3835,3836],{"__ignoreMap":301},[860,3837,3838],{"class":862,"line":863},[860,3839,3833],{},[14,3841,3842],{},"Then restart once. The error should not return.",[36,3844,3846],{"id":3845},"check-your-system-before-you-debug","Check your system before you debug",[14,3848,3849,3850,3853,3854,3857,3858,3861],{},"Anthropic ships a downloadable ",[17,3851,3852],{},"Cowork readiness checker"," linked from the \"Get started with Claude Cowork\" article in Anthropic's help center (separate utility, not part of Claude Desktop). Run it first - it reports whether your machine has the Hyper-V components Cowork needs. Caveat: on Windows 11 Home it can falsely report \"ready\" because Windows 11 internally still reports as ",[24,3855,3856],{},"10.0"," and the checker misidentifies the OS (GitHub #50621). If the checker says ready but Cowork won't load, run ",[24,3859,3860],{},"Get-Service vmms"," in PowerShell - if that service doesn't exist, you're on Home and Cowork won't work.",[36,3863,3865],{"id":3864},"the-five-ways-cowork-breaks-on-windows","The Five Ways Cowork Breaks on Windows",[14,3867,3868],{},"The problems aren't random. They fall into five distinct patterns, and knowing which one you're hitting is half the battle.",[396,3870,3872],{"id":3871},"_1-the-missing-tab-yukonsilver-bug","1. The Missing Tab (yukonSilver bug)",[14,3874,3875],{},"You install Claude Desktop, open it, and the Cowork tab simply isn't there. Only \"Chat\" shows up. This is the \"yukonSilver not supported\" bug, tracked in GitHub issues #25136, #32004, and #32837. Claude's internal platform detection incorrectly marks your system as incompatible, even when all virtualization features are enabled.",[396,3877,3879],{"id":3878},"_2-the-infinite-setup-spinner","2. The Infinite Setup Spinner",[14,3881,3882],{},"The Cowork tab appears, but clicking it shows \"Setting up Claude's workspace\" with a loading bar stuck at 80 to 90%. It never completes. Users have reported leaving it running for 12+ hours with no progress. No error message. Just spinning.",[396,3884,3886],{"id":3885},"_3-the-api-connection-failure","3. The API Connection Failure",[14,3888,3889],{},"The workspace starts but can't reach Claude's API. You get \"Cannot connect to Claude API from workspace\" or its Japanese equivalent. This was a day-one launch bug on Windows 11 Home and has resurfaced multiple times since.",[396,3891,3893],{"id":3892},"_4-the-network-conflict","4. The Network Conflict",[14,3895,3896],{},"Cowork uses a hardcoded network range (172.16.0.0/24) for its internal NAT. If your home network, corporate VPN, or another VM tool uses the same range, Cowork's VM can't reach the internet. Worse, it can break your WSL2 and Docker networking in the process.",[396,3898,3900],{"id":3899},"_5-the-update-regression","5. The Update Regression",[14,3902,3903],{},"Auto-updates have introduced Cowork-breaking regressions more than once. The most-reported example was v1.1.5749 on March 9, 2026, which broke working installs and required a patch release to recover. Anthropic has since shipped multiple updates; if you're stuck on a known-bad version, updating to the current Claude Desktop release is usually the fix.",[14,3905,3906],{},[110,3907],{"alt":3908,"src":3909},"The five ways Claude Cowork breaks on Windows: missing tab, infinite spinner, API failure, network conflict, and update regression","/img/blog/claude-cowork-not-working-windows-five-bugs.jpg",[36,3911,3913],{"id":3912},"cowork-tab-missing-or-disappeared-from-the-desktop-app","Cowork Tab Missing or Disappeared from the Desktop App?",[14,3915,3916],{},"Three different symptoms get reported the same way, and they have different causes. Identify yours first:",[220,3918,3919,3925,3931],{},[223,3920,3921,3924],{},[17,3922,3923],{},"The tab never appeared."," A first-run problem - version, feature flag, or plan eligibility. Work through the three checks below.",[223,3926,3927,3930],{},[17,3928,3929],{},"The tab was there and disappeared."," Almost always an update regression or a plan change. Cowork is removed from the UI when the app updates to a build where platform detection fails, or when a subscription lapses or downgrades.",[223,3932,3933,3936,3937,3939,3940,3944],{},[17,3934,3935],{},"The tab is visible but greyed out or unclickable."," The app sees your account as eligible but the local VM stack isn't ready. This is the HCS/",[24,3938,3110],{}," path, not a UI bug - jump to the ",[125,3941,3943],{"href":3942},"#fix-missing-hcs-services-hns-vmcompute-vfpext","HCS services fix"," above.",[396,3946,3948],{"id":3947},"i-dont-see-cowork-on-my-desktop-app","\"I don't see Cowork on my desktop app\"",[14,3950,3951,3952,66,3955,3958],{},"Searching ",[88,3953,3954],{},"why is Claude Cowork not showing up",[88,3956,3957],{},"Cowork not showing up","? If the tab never appeared at all, it's a first-run problem - your Claude Desktop build, a feature flag, or plan eligibility - not a bug in the VM stack. Work the three checks below in order; if the tab still won't show up on a Pro or Enterprise machine with them all satisfied, it's the yukonSilver platform-detection bug covered above.",[14,3960,3961],{},"If the Cowork tab never appears - and you've ruled out the yukonSilver platform-detection bug above - work through three quick checks before deeper debugging:",[1859,3963,3964,3974,3984],{},[223,3965,3966,3969,3970,3973],{},[17,3967,3968],{},"Update the app."," Cowork only ships in recent Claude Desktop builds. Open ",[17,3971,3972],{},"Settings → About",", install any available update, then fully quit and relaunch the app (a background restart isn't enough).",[223,3975,3976,3979,3980,3983],{},[17,3977,3978],{},"Confirm the feature is enabled."," Check ",[17,3981,3982],{},"Settings → Features"," (Beta/Labs on some builds) and make sure Cowork is toggled on for your account.",[223,3985,3986,3989],{},[17,3987,3988],{},"Check plan eligibility."," Cowork is gated to paid tiers. If you're on the free plan the tab won't appear regardless of version - upgrade to a qualifying plan, then relaunch.",[396,3991,3993],{"id":3992},"the-tab-disappeared-after-working-fine","The tab disappeared after working fine",[14,3995,3996],{},"If Cowork was working and then vanished, check these in order:",[1859,3998,3999,4008,4014,4020],{},[223,4000,4001,4004,4005,4007],{},[17,4002,4003],{},"Did the app update recently?"," Open ",[17,4006,3972],{}," and note the build. The v1.1.5749 regression documented below removed the tab on machines that had been running Cowork without issue. Rolling back to the prior build restores it.",[223,4009,4010,4013],{},[17,4011,4012],{},"Did your plan change?"," A lapsed card, a downgrade, or a seat removed from a Team workspace all revoke Cowork access immediately, and the tab disappears without an explanatory message.",[223,4015,4016,4019],{},[17,4017,4018],{},"Did you switch accounts?"," Cowork eligibility is per-account, not per-install. Signing into a free account on the same machine hides the tab until you switch back.",[223,4021,4022,4025,4026,4028],{},[17,4023,4024],{},"Did Windows update?"," A feature update can reset Windows Features, silently turning off Virtual Machine Platform or Hyper-V. Re-check them with ",[24,4027,3562],{}," before assuming it's an app problem.",[14,4030,4031],{},"If all of the above check out and the tab is still missing, revisit the yukonSilver and Windows Home sections above.",[36,4033,4035],{"id":4034},"the-windows-home-problem-that-anthropic-still-hasnt-documented","The Windows Home Problem That Anthropic Still Hasn't Documented",[14,4037,4038],{},"This is where it gets messy.",[14,4040,4041],{},"Claude Cowork runs inside a lightweight Hyper-V virtual machine on your Windows machine. That's how it creates its sandboxed environment for file access and code execution. The problem? Windows 11 Home doesn't include the full Hyper-V stack.",[14,4043,4044],{},"Home edition has Virtual Machine Platform and Windows Hypervisor Platform. But it's missing the vmms (Virtual Machine Management) service that Cowork's VM requires. Without it, the VM either fails silently or throws a cryptic \"Plan9 mount failed: bad address\" error.",[14,4046,4047],{},"At least seven separate GitHub issues have been filed by Windows Home users who spent hours troubleshooting before discovering that their Windows edition simply can't run Cowork. One user explicitly noted they \"subscribed to Max specifically to use this feature\" and only discovered the incompatibility after paying.",[14,4049,4050],{},"A documentation request (GitHub issue #27906) was filed in February asking Anthropic to add this information clearly. That issue is now closed and the help center's deployment article has been updated to be more explicit about edition requirements.",[14,4052,4053,4054,4056,4057,4059],{},"The quickest check is to open PowerShell and run ",[24,4055,3860],{},". If the service isn't found, Cowork won't work without upgrading to Windows 11 Pro or Enterprise. Don't rely on Anthropic's readiness checker alone - GitHub #50621 documents that it falsely reports \"ready\" on Windows 11 Home because Windows 11 internally still reports its version as ",[24,4058,3856],{}," and the checker misclassifies the OS. A handful of community reports describe partial functionality on Home, but the official position is that Cowork requires the Pro/Enterprise Hyper-V stack.",[36,4061,4063,4064,4067],{"id":4062},"the-yukonsilver-not-supported-bug-and-why-your-pro-machine-still-fails","The ",[24,4065,4066],{},"yukonSilver not supported"," Bug and Why Your Pro Machine Still Fails",[14,4069,4070],{},"Stay with me here, because this one is especially frustrating.",[14,4072,4073],{},"Even if you're running Windows 11 Pro with every virtualization feature enabled (Hyper-V, VMP, WHP, WSL2), you might still see the Cowork tab missing entirely. The logs will show \"yukonSilver not supported (status=unsupported)\" followed by the VM bundle cleanup routine running instead of the actual VM boot.",[14,4075,4076],{},"\"yukonSilver\" is Claude's internal codename for its VM configuration on Windows. The bug is in the platform detection logic: it incorrectly classifies fully capable x64 Windows 11 Pro systems as unsupported.",[14,4078,4079,4080,4083],{},"But that's not even the real problem. The installer also creates a Windows service called CoworkVMService, and this service sometimes becomes impossible to remove. Running ",[24,4081,4082],{},"sc.exe delete CoworkVMService"," as Administrator returns \"Access denied.\" The service blocks clean reinstalls and creates a circular failure where you can't fix the problem and you can't start fresh.",[14,4085,4086,4087,4090],{},"The documented workaround from community debugging: manually run ",[24,4088,4089],{},"Add-AppxPackage"," as the target user to install the MSIX package correctly for your account. It's a PowerShell command that most of Cowork's target audience (non-developers) would never discover on their own.",[396,4092,4094],{"id":4093},"squirrel-vs-msix-which-installer-do-you-have","Squirrel vs. MSIX: which installer do you have?",[14,4096,4097,4098,4100,4101,4104],{},"Anthropic switched Claude Desktop on Windows from a Squirrel ",[24,4099,3132],{}," installer to an MSIX/Microsoft Store package around February 10-13, 2026. If you installed Claude Desktop before that, you have the Squirrel build, and the in-app \"Reinstall\" button can silently fail (tracked in GitHub issues #25162, #25385, #26457; error code ",[24,4102,4103],{},"0x80073CFA"," in some logs). The fix is a manual uninstall via \"Add or remove programs,\" followed by downloading the fresh MSIX from the official Claude download page. Note that MSIX installs also require Windows \"Sideload apps\" / \"Trusted App Installs\" to be enabled - without it, the MSIX install fails before it starts.",[14,4106,4107],{},"As one developer debugging the issue put it: \"Cowork is marketed at the people least equipped to debug it when it breaks.\"",[14,4109,4110,4111,4115,4116,134],{},"If you've been running into similar infrastructure headaches with AI agents and want something that works out of the box, our ",[125,4112,4114],{"href":4113},"/compare/self-hosted","comparison of self-hosted vs managed OpenClaw deployments"," covers why some teams are moving away from local setups entirely. And if the errors you're chasing are usage-related rather than install-related, see what to do when you hit a ",[125,4117,4118],{"href":2330},"rate limit reached on Claude Cowork",[36,4120,4122],{"id":4121},"the-network-bug-that-breaks-docker-too","The Network Bug That Breaks Docker Too",[14,4124,4125],{},"Here's what nobody tells you about Cowork's networking on Windows.",[14,4127,4128],{},"Cowork creates its own Hyper-V virtual switch and NAT network. It's separate from WSL2's networking and separate from Docker Desktop's networking. Three different tenants sharing the same hypervisor, each with their own plumbing.",[14,4130,4131],{},"The specific failure: Cowork creates an HNS (Host Network Service) network called \"cowork-vm-nat\" but sometimes fails to create the corresponding WinNAT rule. The HNS network exists, but there's no NAT translation. The VM boots, but it has no internet access.",[14,4133,4134],{},"And in a particularly fun bug, Cowork's virtual network has been reported to permanently break WSL2's internet connectivity until you manually find and delete the offending network configuration using PowerShell HNS diagnostic tools.",[14,4136,4137],{},"The fix, discovered by community members, involves stopping all Claude processes, killing the Cowork VM via hcsdiag, removing the broken HNS network, and recreating it on a non-conflicting subnet like 172.24.0.0/24 or 10.200.0.0/24.",[14,4139,4140],{},"This is three PowerShell commands for someone who knows what they're doing. For someone who just wanted to organize their Downloads folder with AI, it's a wall.",[14,4142,4143],{},[110,4144],{"alt":4145,"src":4146},"Cowork network conflict diagram showing Hyper-V NAT, WSL2, and Docker competing on the same subnet","/img/blog/claude-cowork-not-working-windows-network-conflict.jpg",[1110,4148,4149,4154,4157,4162],{"type":1758},[14,4150,4151],{},[17,4152,4153],{},"No more PowerShell surgery on a Tuesday night.",[14,4155,4156],{},"A managed agent skips the local VM entirely - no Hyper-V, no NAT conflicts, no CoworkVMService to restart after every reboot. BetterClaw runs in the cloud.",[14,4158,4159],{},[125,4160,1775],{"href":258,"rel":4161},[260],[14,4163,4164],{},"Free plan · 60-second setup · no config files",[36,4166,4168],{"id":4167},"what-actually-fixes-each-bug-quick-reference","What Actually Fixes Each Bug (Quick Reference)",[396,4170,4172],{"id":4171},"missing-cowork-tab-yukonsilver-bug","Missing Cowork Tab (yukonSilver bug)",[14,4174,4175],{},"First, confirm you're not on Windows Home. If you're on Pro or Enterprise and still don't see the tab, fully uninstall Claude Desktop, remove the leftover service, and clear residual files before reinstalling:",[852,4177,4179],{"className":2198,"code":4178,"language":2200,"meta":301,"style":301},"sc.exe stop CoworkVMService\nsc.exe delete CoworkVMService\nRemove-Item -Recurse \"$env:APPDATA\\Claude\"\nRemove-Item -Recurse \"$env:LOCALAPPDATA\\Packages\\Claude_*\"\n",[24,4180,4181,4186,4191,4196],{"__ignoreMap":301},[860,4182,4183],{"class":862,"line":863},[860,4184,4185],{},"sc.exe stop CoworkVMService\n",[860,4187,4188],{"class":862,"line":302},[860,4189,4190],{},"sc.exe delete CoworkVMService\n",[860,4192,4193],{"class":862,"line":660},[860,4194,4195],{},"Remove-Item -Recurse \"$env:APPDATA\\Claude\"\n",[860,4197,4198],{"class":862,"line":880},[860,4199,4200],{},"Remove-Item -Recurse \"$env:LOCALAPPDATA\\Packages\\Claude_*\"\n",[14,4202,4203],{},"Then reinstall fresh from the official Claude download page.",[396,4205,4207],{"id":4206},"infinite-setup-spinner","Infinite Setup Spinner",[14,4209,4210,4211,4214],{},"Two common causes here. First, the VM download itself. Look in ",[24,4212,4213],{},"%APPDATA%\\Claude\\vm_bundles\\"," - if the directory is empty or incomplete, your download was interrupted and a clean reinstall usually resolves it.",[14,4216,4217,4218,4221,4222,1802,4225,4228,4229,4232,4233,4236],{},"Second, the ",[17,4219,4220],{},"cross-drive storage path bug"," (GitHub #36642, #30584, #37754). Cowork writes ",[24,4223,4224],{},"rootfs.vhdx",[24,4226,4227],{},"C:\\Windows\\Temp"," first and then tries to rename it into its final location. If Windows \"Where new content is saved\" sends user data to a non-C: drive, that rename crosses devices and Node.js throws ",[24,4230,4231],{},"EXDEV: cross-device link not permitted",". Symptom: the spinner hangs forever with no visible error. Fix: open ",[17,4234,4235],{},"Settings → System → Storage → Advanced storage settings → Where new content is saved",", switch \"New apps\" back to the C: drive, and retry.",[14,4238,4239],{},"If the spinner persists on Windows Home, it's the Hyper-V incompatibility and there's no fix short of upgrading your edition.",[396,4241,4243],{"id":4242},"api-connection-failure","API Connection Failure",[14,4245,4246],{},"Disable your VPN temporarily (fully quit, don't just disconnect). Check whether your network uses the 172.16.0.0/24 range. If Chat works but Cowork doesn't, the problem is the VM's network stack, not your internet. Update to the latest Claude Desktop - v1.1.4328 or higher specifically addressed early API connection bugs.",[396,4248,4250],{"id":4249},"network-conflict","Network Conflict",[14,4252,4253],{},"Check whether Cowork's HNS network exists but the NAT rule doesn't:",[852,4255,4257],{"className":2198,"code":4256,"language":2200,"meta":301,"style":301},"Get-NetNat\nGet-HnsNetwork | Where-Object {$_.Name -eq \"cowork-vm-nat\"}\n",[24,4258,4259,4264],{"__ignoreMap":301},[860,4260,4261],{"class":862,"line":863},[860,4262,4263],{},"Get-NetNat\n",[860,4265,4266],{"class":862,"line":302},[860,4267,4268],{},"Get-HnsNetwork | Where-Object {$_.Name -eq \"cowork-vm-nat\"}\n",[14,4270,3511,4271,4274],{},[24,4272,4273],{},"Get-NetNat"," is empty but the HNS query returns a result, you're in the \"missing NAT rule\" state. Remove the broken network and recreate it on a non-conflicting subnet like 172.24.0.0/24 or 10.200.0.0/24.",[396,4276,4278],{"id":4277},"update-regression-v115749","Update Regression (v1.1.5749)",[14,4280,4281],{},"If Cowork broke after the March 9 update, there's no user-side fix. Update to the latest Claude Desktop release - Anthropic has shipped multiple patches since.",[14,4283,4284,4285,4288],{},"If all of this sounds like a lot of infrastructure debugging for a tool that's supposed to \"just work,\" that's because it is. This is the kind of operational friction we built ",[125,4286,4287],{"href":1261},"BetterClaw"," to eliminate. Your OpenClaw agent runs on managed infrastructure: no local VMs, no Hyper-V, no NAT conflicts. $49/month for Pro, BYOK, first deploy in ~60 seconds.",[36,4290,4292],{"id":4291},"cowork-vs-a-managed-agent-pick-what-matches-your-job","Cowork vs. a managed agent: pick what matches your job",[14,4294,4295],{},"Cowork is a desktop co-pilot. It runs a local Hyper-V VM, which is why every Windows edition quirk, network conflict, and update regression becomes a potential failure point. If you need a co-pilot you sit beside, that trade-off makes sense.",[14,4297,4298,4299,4303,4304,4308,4309,134],{},"If you need an always-on agent that handles tasks across messaging platforms while your computer is asleep, the architecture has to be different. Our ",[125,4300,4302],{"href":4301},"/blog/openclaw-vs-claude-cowork","OpenClaw vs Claude Cowork comparison"," breaks down exactly when a desktop agent makes sense and when you need a server-based one. ",[125,4305,4307],{"href":4306},"/openclaw-hosting","Managed OpenClaw hosting"," runs your agent on cloud infrastructure with Slack, Discord, WhatsApp, and 15+ channels. No local VM, no Hyper-V, no PowerShell on a Tuesday night. $49/month, BYOK, first deploy in ~60 seconds. ",[125,4310,261],{"href":258,"rel":4311},[260],[36,4313,269],{"id":268},[14,4315,4316],{},[17,4317,4318],{},"Why is Claude Cowork not working on my Windows machine?",[14,4320,4321],{},"Top causes: CoworkVMService stopped after reboot or sleep, Windows Home edition missing the full Hyper-V stack, the \"yukonSilver\" platform detection bug, network conflicts with VPNs or Docker on 172.16.0.0/24, or a corrupted install from the old Squirrel package. Check your Windows edition, then your VM service state, then the Claude Code GitHub issues for your exact error.",[14,4323,4324],{},[17,4325,4326],{},"How do I fix \"missing HCS services: hns, vmcompute, vfpext\" in Claude Cowork?",[14,4328,4329,4330,4332,4333,514,4335,2591,4337,4339,4340,2997,4342,4345,4346,4349,4350,4352,4353,4355],{},"Those are the Windows Host Compute Service components Cowork's sandbox VM needs. Open ",[17,4331,3715],{},", enable ",[17,4334,2583],{},[17,4336,2590],{},[17,4338,2594],{},", then reboot so the services register. Confirm with ",[24,4341,3562],{},[24,4343,4344],{},"Get-Service hns"," in an elevated PowerShell. If they exist but show Stopped, run ",[24,4347,4348],{},"Set-Service vmcompute -StartupType Automatic; Start-Service vmcompute",". If only ",[24,4351,2470],{}," is missing, the ",[17,4354,2594],{}," feature is the one to enable.",[14,4357,4358],{},[17,4359,4360],{},"How do I restart CoworkVMService on Windows?",[14,4362,4363,4364,4366,4367,4370,4371,4373],{},"Open PowerShell as Administrator and run ",[24,4365,3757],{}," to start it for the current session. To make it survive reboots, run ",[24,4368,4369],{},"sc config CoworkVMService start= auto"," (mind the space after ",[24,4372,3785],{},"). The service ships with startup type Manual, so it stops after reboots, Windows updates, and sleep/wake cycles. This is the single most common Cowork fix on Windows.",[14,4375,4376],{},[17,4377,4378],{},"Does Claude Cowork work on Windows 11 Home?",[14,4380,4381,4382,4385,4386,4388],{},"No, officially. Cowork requires the Hyper-V ",[24,4383,4384],{},"vmms"," service, which Home editions lack. Anthropic's readiness checker can falsely report Home as \"ready\" (it misidentifies the OS), so don't trust it alone - run ",[24,4387,3860],{}," in PowerShell. If it's missing, upgrade to Windows 11 Pro or Enterprise.",[14,4390,4391],{},[17,4392,4393],{},"How do I fix the \"yukonSilver not supported\" error in Claude Cowork?",[14,4395,4396,4397,4399,4400,4403],{},"This is a platform detection bug on Claude's side, still open as of May 2026. The workaround: fully uninstall Claude Desktop, stop and delete CoworkVMService via elevated PowerShell, clear ",[24,4398,3103],{}," and the ",[24,4401,4402],{},"%LOCALAPPDATA%\\Packages\\Claude_*"," folder, then reinstall fresh from the official download.",[14,4405,4406],{},[17,4407,4408],{},"Is Claude Cowork on Windows stable enough for daily use in 2026?",[14,4410,4411],{},"Cowork went GA in April 2026, but Windows is still the rougher platform. The yukonSilver bug remains open, the CoworkVMService Manual-startup behavior catches users after every reboot, and update regressions appear periodically. Fine for desktop tasks if your system is compatible. For workloads where downtime means lost work, a managed agent is more reliable.",[1068,4413,3036],{},{"title":301,"searchDepth":302,"depth":302,"links":4415},[4416,4420,4423,4424,4431,4435,4436,4440,4441,4448,4449],{"id":3531,"depth":302,"text":3532,"children":4417},[4418,4419],{"id":3686,"depth":660,"text":3687},{"id":3732,"depth":660,"text":3733},{"id":3761,"depth":302,"text":3762,"children":4421},[4422],{"id":3803,"depth":660,"text":3804},{"id":3845,"depth":302,"text":3846},{"id":3864,"depth":302,"text":3865,"children":4425},[4426,4427,4428,4429,4430],{"id":3871,"depth":660,"text":3872},{"id":3878,"depth":660,"text":3879},{"id":3885,"depth":660,"text":3886},{"id":3892,"depth":660,"text":3893},{"id":3899,"depth":660,"text":3900},{"id":3912,"depth":302,"text":3913,"children":4432},[4433,4434],{"id":3947,"depth":660,"text":3948},{"id":3992,"depth":660,"text":3993},{"id":4034,"depth":302,"text":4035},{"id":4062,"depth":302,"text":4437,"children":4438},"The yukonSilver not supported Bug and Why Your Pro Machine Still Fails",[4439],{"id":4093,"depth":660,"text":4094},{"id":4121,"depth":302,"text":4122},{"id":4167,"depth":302,"text":4168,"children":4442},[4443,4444,4445,4446,4447],{"id":4171,"depth":660,"text":4172},{"id":4206,"depth":660,"text":4207},{"id":4242,"depth":660,"text":4243},{"id":4249,"depth":660,"text":4250},{"id":4277,"depth":660,"text":4278},{"id":4291,"depth":302,"text":4292},{"id":268,"depth":302,"text":269},"2026-03-27","Fix Claude Cowork on Windows - \"missing HCS services: hns, vmcompute, vfpext,\" greyed-out tab, won't load, and Windows 11 errors. Step-by-step, under 5 minutes.","/img/blog/claude-cowork-not-working-windows.jpg",{},"14 min read",{"title":3457,"description":4451},"blog/claude-cowork-not-working-windows",[4458,4459,4460,4461,4462,4463,4464,4465],"Claude Cowork not working Windows","Claude Cowork missing HCS services","vfpext hns vmcompute","Cowork Windows bugs","yukonSilver error","Claude Cowork Windows fix","Cowork Hyper-V","Cowork Windows Home","jLaJlLTIpO6x8MQ5dmkgH95ezEuv1DvN4XAnwu8dagQ",1788958453159]