Blog

  • Move the Design System Before December 14 — the Chat Does Not Come With It

    Move the Design System Before December 14 — the Chat Does Not Come With It

    The standalone Claude Design site at claude.ai/design closes on December 14, 2026. After that date, the address opens Claude. Anthropic’s announcement gives the reason in one sentence: “Running two versions slows down fixes for both, so we’re folding the standalone site into Claude.”

    The migration that Anthropic offers moves design systems. It does not move projects. And the parts of your work that live only in the standalone product — the chats, the comments, the originals — have a deletion date, not a transfer path. This is the procedure for a team that has brand systems and client one-pagers in there, in the order the steps have to happen.

    What gets deleted, exactly

    Anthropic’s migration guide names the deletion list in two bullets: “Your chats with Claude” and “Comments on your projects and design systems.” Those stay in the standalone version and are deleted after it closes, per Anthropic’s data retention practices.

    Your originals are a separate statement, in the guide’s FAQ: they keep working in the standalone version until it closes on December 14, 2026, and “after that, they’re deleted.” A design system you migrate leaves its original behind in the standalone product, unchanged — and that original is on the same clock.

    Public links to standalone projects are a third outcome, and the guide words it differently on purpose: they “will no longer work after it closes.” Not deleted — dead. Every client you sent a public project link to holds a URL with an expiry date.

    The instruction Anthropic prints is the whole strategy for this section: save anything you need from your chats and comments before the standalone version closes. No fetched Anthropic page documents an export for chats or comments. The capture that matches the documentation is a screenshot of each comment thread and a copy of the chat text, done by hand.

    The dangerous sentence: “You don’t need to do anything with your projects yet”

    That sentence is in the migration guide, and it is true — your projects keep working in the standalone version until the close. It is also the sentence that will get client work deleted, because projects are the files with no migration path and a deadline.

    The Artifacts page in Claude lists up to 60 of your standalone projects, and they open in the standalone version. That list is a directory back into the product that is closing. It is not a move, and it is not a complete inventory if your team has made more than 60 projects. Anthropic’s position, in the guide’s words: “More details about moving your projects to Claude are coming soon.” Soon is doing a lot of work in that sentence, and December 14 is 56 days out.

    So the inventory step happens in the standalone product itself, not on the Artifacts list. Walk the standalone library for every client one-pager, deck, and brand system — including everything past the first 60 the Artifacts page shows.

    Before anyone clicks Migrate: the sharing problem

    One migration brings over every design system in your organization, including other people’s. It only needs to be started once — and anyone who can use Claude Design can start it, not just the organization’s owners. On individual plans there is no confirmation step at all: click, and it starts.

    The consequence that matters for a shop holding more than one client’s brand: “Published design systems that aren’t private will be shared with everyone in your organization and appear in their design system menu.” A system you published so your own projects would use it becomes an entry in every teammate’s menu the moment anyone runs the migration. On individual plans, nothing is shared — this is a team and organization trap, not a solo one.

    The precaution has to happen before the first click, because undoing it is not documented. In the standalone product, the setup guide names the Published toggle as the control that makes a system the organization’s working system. For every design system that should not appear in the whole organization’s menu, turn that toggle off first. A second migration is not a way back: a later run leaves an unchanged system alone and skips one that has changed inside Claude, so neither pass pulls a system out of the menu.

    Two kinds of systems do not migrate at all, no matter who clicks: “Empty design systems aren’t migrated, and neither are ones made from a built-in starter theme, even if you’ve edited them.” If your house brand began life as a starter theme you customized, the migration will silently leave it behind. There is no documented design-system export to fall back on. Copy the source assets out by hand before December 14.

    The export drill: one project, one zip

    There is no bulk download. Anthropic’s FAQ is blunt: “Not all at once. You can download them one at a time.” Open the project in the standalone version, click Share, choose “Project HTML” — for a slide deck, that item hides under “More formats and apps” — keep “Project archive” selected, and click Export.

    You get a .zip file with every file in the project. It is free and does not count toward your usage limits. Repeat it for every client one-pager and deck you cannot afford to lose, and store the zips outside Claude.

    Know what the zip is not. It is documented as every file in the project. Chats are on the deletion list, and no Anthropic page says the conversation comes along inside the archive. The zip preserves the files. The reasoning your team talked through in chat, and the client’s comments on the work, survive only if you captured them in the previous step.

    Enterprise: three switches, and one hard stop

    On Enterprise plans the migration is gated by settings that are easy to flatten into one wrong sentence, so take them separately. Artifacts themselves must be on — if they are off, people cannot migrate anything and will not even see the “Claude Design lives here now” banner.

    Design systems are a separate template switch: on for Team plans, off for Enterprise until an owner turns on Design systems in Organization settings > Artifacts. That is a different switch from Design and Slides, which Anthropic’s pages say were set to turn on by default on October 15, 2026 — a date that has now passed, with the help text still printing the scheduled sentence, so check your own settings rather than assuming either state. On plans with custom roles, each role also needs the Artifacts permissions, and a design system cannot be migrated if its owner’s role does not include design systems.

    The hard stop: “Organizations with zero data retention (ZDR) can’t turn on artifacts, so they can’t migrate.” If that is your organization, the migration procedure does not exist for you. The guide’s path is the per-project download, done before the close, one zip at a time.

    One more setting that does not do what an admin might hope: the Enterprise custom-retention article states that custom retention periods “do not apply to Claude Design.” The retention dial your organization already configured is not the instrument that keeps or deletes standalone chats, comments, or originals. The closure is.

    After it lands

    A migrated design system keeps its files as they were, and it cannot be hand-edited on its page yet. Its editors see the note: “Migrated from the standalone version. Ask Claude to make changes.” The editing model for a migrated brand system is a conversation, not a settings page.

    If someone edits a migrated system inside Claude and you later run the migration again, that system is listed under Skipped — “changed on claude.ai, left as they are” — so your edits are not overwritten. Replacing it with a fresh copy is a deliberate act: duplicate it first if the Claude-side changes matter, delete it in Claude, then migrate again.

    New design work lives in three doors now: any chat (ask for a design, or Output > Design in the message box), the Artifacts tab, and Claude Code, with /design to create, edit, and sync designs and /design-sync to pull in your design system. All of it draws on the same usage pool as the rest of Claude, including Claude Code — the separate weekly Claude Design allowance the product launched with is already gone, per the get-started guide.

    Two gaps in the new home are worth knowing before you move the team: Claude Design does not have version history yet, and inline comments there occasionally fail to appear on the page — Anthropic’s own workaround is to paste the feedback into the chat instead. The standalone product’s comment threads, the ones being deleted in December, are still the reliable record until you screenshot them.

    The order is the procedure

    Inventory in the standalone product. Turn off Published on anything that must not become an organization-wide menu entry. Mark the empty and starter-theme systems the migration will refuse, and copy their assets out by hand. Export every project that matters, one zip at a time. Screenshot the comments and copy the chats. Only then — owners having turned on Artifacts, Design systems, and the role permissions — does one person click Migrate, read the results window, and fix any failed system in the standalone product before running it again.

    Do those steps in that order and December 14 is a non-event: the address starts opening Claude, and everything you cared about is already there or already saved. Do them out of order — migrate first, inventory later — and the button will happily move the systems while the projects, comments, and originals sit in a product with 56 days left on it. We track vendor surface changes like this one on the desk because the procedure is always in the help pages; it is just never in the announcement. The announcement for this closure said chats and comments “won’t be available.” The help center is the text that says deleted.

    Sources: Anthropic’s migration guide, Migrate from standalone Claude Design to Claude, and the get-started guide, Get started with Claude Design, both read in full on October 19, 2026. A related surface change, worked the same way: Cursor’s shareable canvases, and how we check a vendor’s what’s-new claims in What’s New in Cursor Is a Claim.

  • Six in Seven AI Answers Never Look Anything Up

    Six in Seven AI Answers Never Look Anything Up

    Most of what an AI answer says about your business was never looked up. It was remembered — or invented in the shape of a memory. Ahrefs put a number on that in a study published October 12, 2026: across 66.6 million free, logged-out ChatGPT responses from August and September 2026, a web search ran in only 14.4% of them. Six in seven answers were written without checking anything.

    That single fact reorganizes the work. If the answer usually comes from what the model already carries, then being findable is only half the game. The other half is being known — and, for the one answer in seven where the engine does go looking, having the fact it needs sitting in plain text on your own domain, where it looks first.

    The search, when it happens, is narrow

    The same study logged 15 million fan-out queries — the searches ChatGPT issues behind an answer when it decides to search at all. A searching response ran about 1.6 of them on average. This is not a research department fanning out across the open web. It is a quick, targeted check, and the targeting is the story.

    6.8% of those fan-out queries used a site: operator to search one specific website, spread across roughly 116,000 domains. Among the most common of those targeted searches, 75.9% pointed at a brand’s own site — not a retailer, not a forum, not a review aggregator. When the engine wants a price or a specification, it goes to the company that sells the thing.

    The vocabulary inside the queries leans the same way. The word “official” appeared in 13.1% of English fan-out queries in September 2026, up from 10.1% in August. “Price” climbed from 6.04% to 8.88% of fan-outs in the same month — a relative rise of nearly half. The engine is increasingly searching for the authoritative version of a fact, and the facts it most wants are commercial ones: what it costs, what it includes, what the official page says.

    Facts go home; comparisons wander

    Ahrefs paired the fan-out data with a separate test of 20,000 US prompts, and the split inside it is worth keeping separate in your head, because it is a different instrument from the 66.6 million. In that test, 84.4% of factual questions — pricing, product features, company details — cited at least one official source. For factual questions, 63.4% of all citations pointed at official websites. For comparison questions (“A vs B,” “which is cheaper”), the official share fell to 46.4%: most citations went somewhere else.

    Read together, the two datasets describe one behavior with two modes. Asked for a fact, the engine goes home to the source. Asked to judge, it goes out to the crowd. An operator cannot control the judging mode. The fact mode is entirely winnable: it is won by having the fact, in the open, on the domain the engine already searches by name.

    The playbook that follows

    Publish the price, the spec, and the support fact in plain text on your own domain. Not in a PDF the crawler has to excavate, not inside a configurator, not implied by a sales page’s adjectives. The fan-out query literally contains the words “official” and “price” — it is asking for a page that states the number. Whoever states it cleanly gets cited for it.

    Publish the pages only you can publish. Your measured results, your actual process, your own numbers with dates on them. A summary of somebody else’s facts competes with the original; the original is what the engine is learning to prefer (the citation movement below shows how far that preference has already moved).

    Treat fan-out queries as an instrument of their own. The queries an engine issues about your category — which words it adds, which domains it targets, how that shifts month to month — are a measurement channel separate from citation counts. Watch them separately. We grade the flight recorder, not just the answer, for the same reason: the queries show the intent; the answer only shows the outcome.

    Never blend two dashboards into one story. The 14.4% comes from 66.6 million free logged-out responses. The 84.4% comes from a different, 20,000-prompt test. The citation movements in the next section come from a third cut again. Each number is true inside its own denominator and misleading outside it. This is the same discipline we run on our own visibility work: being cited is not being chosen, and being measured is not being measured the same way twice. Our running instrument for the citation side is the Citation Pulse.

    The second movement: summarizers are losing

    Ahrefs’ Brand Radar citation data for the US — 2.4 million ChatGPT answers in March 2026 against 3.8 million in September, a different dataset from the fan-out study above — shows where the citations went. Reddit fell from roughly one citation in every five answers in March to about one in 43 by late September. Wikipedia fell from one in seven to one in 35. The share those summarizers and forums lost moved to research bodies, regulators, brand and support pages, and hands-on testers. On a matched set of about 25,000 prompts present in both months, every tracked site moved in the same direction, so the shift is not an artifact of new questions entering the sample.

    For an operator, that is the durable part of the whole study. The memory answers reward whoever the model already knows. The searching answers reward whoever publishes the primary fact. The citation trend rewards the originator over the summarizer. All three roads end at the same address: your own domain, carrying your own facts, in plain text.

    The same citation movement, read for hospitals and the firms that build for them — why clinical and facility specifications now have to live as primary documents — is on Healthcare Facility Hub: The Citation List Is Moving Toward the Source Document.

    Sources: Ahrefs, “How ChatGPT Does Query Fan-Out” (October 12, 2026) — fan-out dataset (66.6M responses, 15M queries, Aug–Sep 2026), the 20,000-prompt official-source test reported in the same article, and the Brand Radar US citation comparison (2.4M answers March 2026; 3.8M September 2026). Each figure above is stated with the dataset it came from; the three are not interchangeable.

  • Review the Run, Not the Diff: Cursor’s Shareable Canvases in a Fleet Loop

    Review the Run, Not the Diff: Cursor’s Shareable Canvases in a Fleet Loop

    What shipped on October 16

    Cursor’s changelog entry dated October 16, 2026 — “Cloud Agent Canvases and Environment Improvements” — is three short sections long, and one of them changes the shape of a finished run: “Cloud agents can now build interactive canvases as part of their work. Share a finished canvas with your team by sending its link.” That sentence is Cursor’s. Everything in this section is theirs, from that changelog entry and the Canvases page of their docs, read October 19, 2026.

    A canvas, in their docs, is an interactive artifact that renders next to the chat: a standalone view laid out with sections, stats, and tables, instead of a long markdown table or a code block to scroll through. Ask an agent for a dashboard, an analysis, an audit, or a report, and Cursor opens the result in a canvas when a visual view is the better fit. The canvas is saved to the workspace’s canvas list, so you can reopen it, edit it, and rerun it later with fresh data.

    Sharing is a publish, not a forward. From the canvas toolbar you Publish — which publishes a share or refreshes an existing one — then copy the link and send it. What the link opens is a live snapshot: the same layout, charts, and tables, without rerunning the agent and without digging through the chat history. Teammates open it in the browser with read-only access. A Shared Canvases page on the dashboard lists the shares you published yourself, so you can reopen, copy, or delete your own; it does not list a teammate’s shares — for those, you ask for the link.

    The same release carried two more items, logged here for completeness. The Environments API is available in beta: a programmatic way to create and manage the cloud environments agents run in. And the environments themselves grew: up to 300 repositories per environment, with large environments loading 5x faster — Cursor’s numbers, not measurements of ours. Neither item is this piece’s subject; both are on the desk’s check list.

    The gate is part of the story

    A canvas link is not a public link. The docs are explicit: anyone on your team can open the link in the browser. Only members of your team can open a share, and you need to be on a team to share at all. Sending the link outside the team sends a door the recipient cannot walk through — which makes the canvas a team surface, not a publishing surface.

    Sharing is also a paid-plan surface with conditions attached. Shares can be created on paid plans — Premium and higher, Teams, Enterprise, and the legacy Pro, Pro+, and Ultra tiers; free accounts cannot create shares. Sharing requires a privacy mode that allows data storage, so Legacy Privacy Mode blocks it. And a team admin can turn shared canvases off for the whole organization from team settings. A shop adopting the feature checks those three gates before it builds a habit on them.

    A snapshot is not the run itself. The canvas shows the view as published; the chat, the reasoning, and the diff stay behind it. When the underlying numbers move, the share does not move with them — refreshing it is another Publish. A reviewer who needs the execution record still goes to the record. The canvas is the board on the wall, not the flight recorder.

    Where it lands in our loop

    Our loop fits in one sentence: a work order is written with everything the executor needs, the agent flies it, and the result is debriefed at the receiving end — the live page checked in a browser, the delivered file opened, the count re-added by hand. The debrief is where quality is decided here, and its surface depends on the seat. A cloud run launched over the API hands back result text. A Desktop sitting hands back a transcript and screenshots at verification points, which this shop trusts over any summary.

    A canvas inserts a third surface into that debrief: the agent arranges its own evidence — sections, stats, tables — into the board the reviewer actually opens. For the data-heavy work this shop runs constantly — citation pulls, model-catalog diffs, site audits — a rendered board is the shape the answer wanted anyway. Cursor’s docs make the same point from their side: canvases earn their keep on data-intensive tasks, where information arranged non-linearly is easier to digest than a wall of text.

    The approval moment in this shop is a tap on finished work. Will reviews results, not work in progress, and the decision lands on an artifact he can read in one pass. A canvas link is the first Cursor surface shaped exactly like that decision: open the link, read the board, decide. No repo, no diff, and no IDE sits between the finished result and the person approving it.

    The lane question the feature raises is a seat question. What reaches Stefani and Ziggy today is finished artifacts — live pages, PDFs, one-line summaries — because they work outside the operator’s seat. A canvas would be the cheapest of those artifacts to produce and the easiest to read, if the recipients hold team seats. The docs make team membership the door, so who holds a seat becomes a setup decision to make on purpose — not an assumption to discover after a link bounces off someone it was meant for.

    What is not established, labeled plainly: our production lane launches cloud agents over the API and receives text back. The docs describe canvases in the app surfaces — the Agents Window, the canvas toolbar, the dashboard. Whether a run launched through the API can produce a canvas, or return a share link, is not in the docs we read and not in our records. That question goes on the check list. It does not go into the workflow.

    One more mapping, labeled as intent rather than record. The docs say common canvas workflows can be packaged as skills, so every run that uses the skill returns the same output shape. In this shop’s language, that is a debrief template: the same board for every fleet run — what was asked, what landed, what the counts say, what failed. A debrief-canvas skill is the first experiment this change earns here. It has not run yet.

    Our record, stated plainly

    No canvas has appeared in our runs yet. Our run record — every cloud agent this desk has launched, reconciled from the API and watched daily — contains no canvas artifact and no share link as of October 19, 2026. The only “canvas” in that record is an agent named for a Google Maps canvas, a different sense of the word, and a standing reminder to grep carefully before claiming a first.

    So this piece is a map, written before the landing: what the feature is on the vendor’s own pages, what its gates are, and where it would sit in a loop that already exists. The check is decided. The next data-heavy Desktop sitting asks for its debrief as a canvas, by name, and the canvas gets read against the same sitting’s transcript — the surface we trust — before the desk adopts it anywhere. If the board and the record disagree, the record wins, and the disagreement gets written down on this page with a date.

    Method & settings — this piece

    Sources: Cursor changelog, entry dated October 16, 2026; Cursor Docs, “Canvases” (read October 19, 2026). Vendor facts are stated as the vendor’s; the secondary write-ups that surfaced this item were used as leads only, never as sources

    Our surfaces in this mapping: Desktop 3.25.9 on the laptop (read from the install itself, October 19, 2026); cloud agents over the API (model catalog baseline 46 models, October 16, 2026)

    Our canvas record: none — no canvas artifact or share link in our run record as of October 19, 2026. This is a mapping piece, not a hands-on report

    Desk rule: every fact carries its provenance and date — our record, or Cursor’s page, never blended

    Filed under the Cursor desk — the desk that runs Cursor as a production harness.

  • The Puget Sound Playbook: How AI Decides Who Gets the Water-Damage Call

    The Puget Sound Playbook: How AI Decides Who Gets the Water-Damage Call

    The tactics in this playbook are the same ones we publish for every market: be readable to the machines, be named, be cited, measure it with the denominators showing. What changes in Puget Sound is that Puget Sound is not one market. It is at least six, stacked on top of each other along one highway — and the move that wins in Tacoma wastes money in Everett, while the move that matters most in Edmonds barely registers in Seattle. This is the local edition: the same doctrine, market by market, with our own measurements where we have them and honest labels where we don’t.

    It has two halves, because the playbook was always two books bound together. The first half is visibility: how the answer engines decide whose name a flooded homeowner hears. The second half is the specialty work — the fire extinguisher tag, the records room, the server rack, the art on the lobby wall — the plays that get a restoration company inside commercial buildings before anything breaks. Same Sound, same six markets, same rule in both halves: a tactic only earns its place here with a local reason, and where there is no local reason, we say so instead of swapping in a city name and calling it local.

    Every number below that carries a percentage was measured on our rig on October 18, 2026: real homeowner questions, asked mid-flood style — “who should I call,” “who’s best,” “who has the most reviews” — put to ChatGPT, Perplexity, Gemini, and Google AI Mode, with every answer scored for who got named and whose pages got cited. Google AI Overview returned no answer on any question in these batteries and is excluded everywhere below. A snapshot is not a census. It is one dated sample, with its denominators showing, and it is still the only honest way we know to talk about this.

    The doctrine, before the geography

    Named and cited are two different jobs. An answer engine can use your page as a source and still recommend somebody else — we have watched it happen, and the section on Everett below shows the receipt. Being named is the engine volunteering your company in the answer text. Being cited is your page appearing in the source list underneath it. The first job gets you the call. The second job is how the first one eventually happens. Any report that blends the two into one “visibility score” is hiding the only distinction that matters.

    Your website is a minority of what the engines say about you. The frame we use on our own offer comes from McKinsey’s research: a brand’s own website is a small share of the citations about that brand. The rest comes from the pages the models already trust — directories, association profiles, local references, roundup pages. That is why the work is the service pages, the insurance and certification language, and the outside profiles, in that combination. A beautiful website with thin directory presence is a company the engines can describe but rarely do.

    The competitor set is fixed, visible, and smaller than you think. Ask an engine who handles water damage in a city and it names one or two companies, out of a frame of maybe eight that ever appear. The frame repeats. The same names show up answer after answer, which means the game is not “rank higher” — it is “get into the frame, then take share inside it.” You can read your frame any time you want. We run a fixed list of prompts for exactly that reason.

    Reviews are machine food now, and the machines cross-check. The engines quote review counts back at homeowners — “over 160 five-star Google reviews” is the kind of clause that decides an answer. But the footprint has to agree with itself across the surfaces the engines read. A deep review base on one surface and a thin, stale profile on another reads to a model the way a half-finished job reads to an adjuster: possible, but not the safe recommendation.

    Each engine reads different sources, so “AI visibility” is not one number. In our measurements, Perplexity and Google AI Mode cite Yelp in roughly one answer in six; Gemini has never cited Yelp in our rig at all — zero of 35 answers. A tactic that feeds Perplexity may do nothing for Gemini. Anyone selling you a single score for all of AI is averaging away the part you could have acted on.

    Directories are citation infrastructure, not paperwork. Across 143 answers measured the same week, the directory order was BBB first, then Thumbtack, HomeAdvisor, and Yelp fourth — 21 Yelp citations, ahead of Expertise and Angi. When a homeowner asks an engine whether a specific company is any good, the engine goes to that company’s own directory pages: in all three Puget Sound branded checks we ran, the company’s Yelp business page was the page cited. Claimed, complete, current is not hygiene. It is the asset.

    Measure first, fix the biggest gap, re-measure. Every engagement we run starts with the same sequence: a fixed prompt list, scored answers, one highest-leverage fix, then the same list again after the fix so the movement is provable. The fix is usually unglamorous — a service page that does for one city what another of your pages already does for a different city, a directory profile completed, a name collision cleaned up. Small repairs, precisely aimed, beat a website rebuild aimed at everything.

    Seattle metro: the saturated frame

    Seattle is the hardest frame in the region to enter, because it is the one market here where franchise density and review volume stack on top of each other. When we asked ChatGPT which Seattle-area water damage company has the most reviews, the answer crowned listing names — shops whose review counts the engine could read and repeat — and never reached a local company holding 100+ five-star reviews of its own. In a saturated market, the engine’s shortlist is built from whatever is most legible at scale, and legibility at scale is what national brands manufacture for a living.

    The tactic that matters most in Seattle is citation capture on the questions franchises answer sloppily: the specific ones. “Who handles sewage cleanup in a condo building” is a different frame from “best water damage company,” and it is thinner. The tactic that matters least is another generic service page saying you do water damage in Seattle — the frame already has that page, written by a brand with two thousand locations. In Seattle you do not out-shout the wall. You find the doors in it.

    The Eastside: commercial money, quiet homeowners

    Bellevue, Redmond, and Kirkland run on a different economy than the rest of the Sound: higher-value homes, a deep commercial and property-management layer, and franchise-owned restoration territory. We have not run a dedicated Eastside measurement battery yet, so this section is doctrine, labeled as such — it will get its own snapshot before we treat it as anything more.

    The doctrine says the Eastside rewards the commercial signals: insurance billing fluency, documented response time, capacity language a property manager can forward to an owner. The buyer asking the question is often not the homeowner at all. It is the manager of a flooded HOA or a warehouse, asking an engine who can handle it — and the citation has to prove commercial capability, not just residential warmth. Review volume matters less here than it does in Seattle; a smaller, current, consistent profile across the directories beats a big stale one, because the questions are fewer and the reader is checking, not browsing.

    Tacoma and Pierce County: the winnable frame

    Tacoma is where we can prove a local leader can own serious share of the frame. In our October 18 battery — seven unbranded questions, 27 answers that named a company — the leading independent was named in 41% of answers. That is a real seat at the table. But the same battery shows the split that decides everything: the independent was cited in only 11% of answers, while SERVPRO was named in 59% and cited in 52%. The engines know the local company exists. They name it from memory and cite the franchise from evidence.

    The Tacoma battery also produced the single most instructive answer in our Puget Sound work. On Perplexity, asked for the best water damage company in Tacoma, the answer opened by calling SERVPRO of Tacoma “the strongest overall choice” — in the same market where the independent’s own Tacoma page ranks first on Google for that question. Winning Google and winning the answer are now separate competitions, and Tacoma is where the gap between them is easiest to close: the naming is already there, so the work is the cited evidence underneath it — the service pages, the directory records, the outside pages Perplexity actually reads.

    One more Tacoma lesson, and it is about humility at the engine layer: asked about a burst pipe in Kent — where the leading independent is headquartered — Gemini hedged on whether Kent was in Washington or Ohio, and named SERVPRO. Engines get local geography wrong in ways a human never would. Part of the local play is feeding them geography so plainly stated, in so many consistent places, that the machine cannot confuse your city with one in Ohio.

    Everett and Snohomish County: the wall, and the split

    Everett is the wall. In our battery — seven unbranded questions, 28 answers — SERVPRO was named in 71%. The leading independent, holding the deepest review base of any independent in the corridor (682 Google reviews, displayed on its own website), was named in 29% and cited in 18%. That is not an unknown company being ignored. That is a known company losing to a frame: SERVPRO, PuroClean, Roto-Rooter, and a rotation of local names divide the answers, and the independent’s share is real but third-tier.

    Everett also gave us the cleanest proof in the region that cited and named are different jobs. On one Gemini answer, the source list included the independent’s own Everett page — the engine read it, used it, and then recommended three other companies by name. If your reporting only counts citations, that answer looks like a win. If you sell water damage work, it is a loss with a citation attached. The Everett fix is therefore not “get cited more.” It is converting existing citation into naming: the answer assets, the directory records, and the review surface have to say the same name the page already earns.

    Asked about the company by name, all four engines named and cited it — four of four. That pattern repeats in every Puget Sound battery we have run, and it is the most hopeful fact in this playbook: nobody we have measured is unknown to the machines. They are un-volunteered. The distance between branded and unbranded is the entire business.

    Edmonds and the small cities: branded invisibility

    Edmonds shows what happens in a small-city market when an established local company never built the second job. In our battery — 27 answers on unbranded questions — the Edmonds-headquartered company was named in 26% and its website cited in 7%, while SERVPRO took 70% of namings. Gemini named the company zero times in six answers, including both questions about Edmonds, its home city. And on the four questions that named the company directly, every engine named it back — while not one of the four cited its website. An engine that will confirm you exist but never send a reader to your page is a directory that has your name and not your number.

    The small-city lesson cuts the other way too, and it is the best news in this playbook for independents. The expected national rival in Edmonds was not SERVPRO’s shadow brand — 1-800 WATER DAMAGE was named in just 4% of answers and cited in none. In small markets, the second franchise seat is often empty. The wall is one brand deep. A local company with a complete directory presence, consistent reviews, and one strong city page is not fighting a category — it is fighting a single incumbent’s local footprint, and footprints can be out-built.

    Small-city tactics therefore invert the Seattle order. In Seattle, directories are table stakes under a mountain of franchise content. In Edmonds, Lynnwood, Mountlake Terrace, and their kin, the directory record and the branded page are the game: they are what the engine has to read, and there is little else competing for its attention. Completeness beats cleverness in a thin market.

    Kitsap and the rural edges: thin ice, honest label

    West of the ferries and out past the suburbs — Bremerton, Port Orchard, Poulsbo, and the rural edges of the counties — we have not run a measurement battery yet. This section is doctrine, and it stays labeled that way until a Kitsap snapshot exists.

    The doctrine is encouraging. Rural and small-market frames are thin: fewer franchises with real local pages, fewer directories competing, fewer answers being generated at all. In a thin frame, one complete, consistent presence — claimed Google profile, complete Yelp page, BBB record, one service page per town that says plainly what you do and where — can outrank a franchise’s tenth location page, because the engine assembles its answer from whatever exists and there is not much. Word of mouth still closes most rural work; the engines fill the silence for everyone who moved there last year and does not have a neighbor to ask. Being the one full record in a thin file is the cheapest seat in this whole playbook, and the first shop in each rural market to take it seriously will be hard to dislodge.

    Part Two: the specialty playbook, localized

    The first half of this playbook is about being named. This half is about being inside the building before anything breaks. Water mitigation is the call every facility already has a vendor for; the specialty plays are the door past that vendor — the work aimed at the assets an adjuster cannot simply cut a check against. The model, as we publish it: you do not perform the specialty work yourself. You hold the agreement, you stabilize in the first hours, you coordinate a pre-qualified specialist bench, and the chain of custody is the product. What follows is each play as published, then where in the Sound it actually earns — and where it doesn’t.

    The fire extinguisher tag: the compliance door

    Expired extinguisher tags are a real compliance problem — fire marshals, insurers, and corporate safety programs all care — which is why a manager who ghosts every salesperson takes this meeting. You run the inspection as a real service, walk the building with a restoration operator’s eyes while you do it, and leave a written report with your after-hours number in the manager’s file. The ethics are the strategy: if the tags are fine, you say so and leave. The play earns where buildings stack and one manager covers several addresses — downtown Seattle’s office and hospital stock, the Eastside’s office parks, the multifamily corridors running down to Tacoma. It does not earn in rural Kitsap, and the published play itself says why: it dies aimed at buildings too small to matter. On the far side of the ferries the tag check rides along on other work, or it doesn’t run.

    The Cintas lesson: cadence is the product, and the route rep is a channel

    Cintas looks like uniforms; what it actually sells is a weekly stop inside a multi-year auto-renewing agreement. The restoration translation we publish is the emergency response agreement with scheduled walkthroughs and a quarterly review — sell the stop, not the emergency, and stack accounts on one corridor so a crew can work a loop instead of chasing singles. The second half of the lesson is who carries your name into buildings: the route reps of Cintas, Aramark, and their regional competitors are inside a hundred or more commercial properties a week, they know every property manager by name, and almost nobody in restoration talks to them. That channel runs on the I-5 corridor exactly the way the doctrine wants — Seattle to Tacoma is one long route. In Kitsap the ferry splits the corridor in two, and both the national reps’ books and yours have to be built as separate loops. Density is the whole mechanic; where the water cuts the route, the mechanic halves.

    Documents and records: sell to the records manager

    Paper is the first specialty build, because it is the most frequent specialty loss and the most time-sensitive: wet paper molds in forty-eight to seventy-two hours. The response is freeze first, chamber second — vacuum freeze-drying at a specialist like Polygon or Document Reprocessors — and the restoration company’s product is everything around the chamber: the first-twelve-hours stabilization, the packout, the frozen transport, and a chain-of-custody package the customer can hand to their carrier, their regulator, and their lawyer. The buyer is not the facilities director. It is the records custodian — the office manager, the records clerk, the information governance director — the person whose job becomes the records problem the moment water hits the file room.

    Seattle holds the densest records map in the region: a major research university and its medical system, county and municipal archives, and a downtown full of law and accounting firms whose files are their business. Tacoma runs a close second with the county seat, a large health system, and three universities. Everett’s version is the county government and its hospital system. The Eastside’s records sit inside corporate headquarters — but the biggest campuses run their own machines, so the sellable layer there is the professional firms around them, not the logos. Edmonds is the honest small version: a hospital’s records and a city hall’s, real but counted in ones and twos. And Kitsap carries a limit worth printing: much of its records mass sits behind federal fence lines at the shipyard and the naval base, which procure through federal channels. The local play is the county, the cities, the school districts, and the clinics — not the fence.

    Electronics: the seventy-two-hour corrosion window

    Circuit boards have a faster clock than paper: acidic soot starts corroding traces inside a day, and the recoverable window closes around seventy-two hours. The restoration company’s work is the stabilization — a controlled power-down coordinated with the client’s own engineers, humidity driven below forty percent, exposed boards neutralized, every serialized unit triaged and logged — and the specialist’s ultrasonic tanks do the rest. The Eastside is this region’s electronics capital: the Redmond and Kirkland tech campuses concentrate more servers, labs, and custom-configured equipment than anywhere else in the Sound, and none of it can be re-ordered on Tuesday. Seattle’s version is data centers, broadcast facilities, research labs, and the port’s logistics systems. Tacoma’s is industrial controls around the port. Everett’s is the supplier ring around the great plant — the plant itself buys at national scale, but the shops that feed it don’t. In the small cities, electronics and medical are the same room: the imaging suite. And Kitsap’s heaviest electronics sit behind the same fence as its records, which is why the realistic Kitsap bench is the contractor and supplier shops outside the gates in Bremerton and Silverdale.

    Technical drying: the engineered end of drying

    No piece we publish carries this exact label; the doctrine underneath it is the structural-drying science — psychrometrics, desiccant versus refrigerant dehumidification, equipment sized to the chamber instead of the truck — and the discipline of getting paid on the data that proves the dry. As a play it is simple: on a big footprint, documented engineered drying is the version of the work that survives an adjuster’s scrutiny. It follows footprint, not population. Port warehouses in Seattle and Tacoma, plant-scale buildings in Everett, hospital campuses anywhere — those are its ground. The Sound adds one local argument: marine air. Structures on the water, and the vessel-adjacent work around the marinas, live at humidities that make desiccant the default rather than the upgrade. In the small cities and the rural edges there is no standing market for it — the capability shows up there as proof on the occasional school or gymnasium loss, not as a line you staff. That difference is written here instead of a paragraph pretending otherwise.

    Fine art and collections: stabilize, document, hand off

    The art play has the humblest job description in this book: you do not treat the art. The conservator — often designated by the carrier — determines treatment. You stabilize in place, document photographically, isolate the piece from the ongoing damage, and make the handoff clean. What you are selling is a competent first twenty-four hours. Seattle’s anchors are its museums and corporate collections. Tacoma owns a signature class of its own — glass, with a museum built for it and an art museum beside it. The Eastside’s version is the region’s one residential exception to the rule that specialty is commercial: the lakefront estate belt, where the collections hang in houses, and where the published doctrine already says luxury residential is the only residential segment where this economics works. Edmonds proves the play scales down — a small art museum with a real collection is still a collection. Everett’s art center is real too, and it is a line in this paragraph rather than a market, because that is what it is. Rural Kitsap, past one island museum, has no anchor institution to build on, and this play does not pretend to one.

    Medical and laboratory equipment: the regulated room

    The fourth published category is the one most restoration companies avoid, which is precisely its value: equipment that cannot return to service until the manufacturer recertifies it, worked under infection-control discipline, approved through risk management and biomedical engineering on cycles that run sixty to ninety days. Every market in this playbook has the anchor — the regional trauma center and university medical system in Seattle, hospital systems in Tacoma, Everett, Bellevue, and Silverdale, and a full hospital in Edmonds, which is why a town of twenty thousand supports a regulated-room play at all. What changes by market is not the need. It is the length of the approval path, and the operator who knows that going in prices the patience correctly.

    Documentation-only: sell the record

    The newest play in this book inverts the usual sale. Some losses will be remedied by the property manager’s own crews or the owner’s contractor — that decision is already made, and fighting it wins nothing. What that loss still needs, inside the first forty-eight hours, is a record that survives the adjuster: the two-audience photo protocol, the moisture map and readings log, the scope narrative, the pre-existing condition log — the packet our published doctrine has always treated as the real product, now sold on its own, flat per loss. The liability line is the whole design: the restorer sells a record, never a certification of somebody else’s remedy. The record states what was observed. It does not state what should be done.

    Inside a pre-signed emergency services plan, the play runs at three levels, and a property manager mixes them across a portfolio property by property. Document from the beginning is the record alone — its commercial function is buying the decision-maker time while the evidence is secured. Hold conditions adds preservation and stabilization during the decision window, short of full mitigation — the clocks get slowed, nothing gets solved, and the file says exactly that. Emergency respond is the full response with documentation built in from minute one instead of reconstructed afterward. Which level sells where follows the same density law as everything else in this book: the record-only level sells where portfolios concentrate — Seattle and Eastside property management, owners and general contractors who self-perform — because a buyer with forty doors buys documentation forty times. Hold conditions sells where decision windows are structurally long: institutional owners, carrier-approval chains, the management companies working the military corridor outside Tacoma. And where the density isn’t there, the honest test replaces the pitch: a buyer needs enough doors, losing often enough, to buy records on purpose — in the rural edges that buyer may not exist yet, and the play waits until one does. The cross-reference to the first half of this playbook is direct: a documentation client is a relationship that recurs on every loss, including the losses you were never going to win. The company that holds the record is the company the building already knows when the big one comes.

    How the sequence runs, in any of these markets

    The order of operations does not change with the zip code. Measure the frame for your city with a fixed list of the questions your customers actually ask, scored for named and cited separately, engine by engine. Read who is in the frame and which outside pages the answers are built from. Fix the single biggest gap first — it is usually a page, a profile, or a name consistency problem, not a budget problem. Then run the same list again and keep the rate as a trailing number, because frames move when a competitor publishes or a model updates.

    The specialty half runs its own sequence, and it is just as fixed: build the bench before you sell the category, sign the agreement before the loss, drill the response before the call comes. Sell only the specialties on your bench. Add a category when the teaming agreement is signed, not when the brochure is printed.

    That is the whole practice. The Sound just makes it interesting: six markets, six different first moves, one discipline. If you want your frame measured, the free mini-check asks one real question about your company and reports back what the answer said. The full scan runs your city’s whole list. Either way, you will know your frame — and in Puget Sound, knowing which of the six games you are actually playing is most of the game.


    Measurements: Tygart Media citation snapshots, October 18, 2026 (Everett/Snohomish, Tacoma/Pierce, Edmonds/Seattle batteries; 143-answer directory measurement, same week). Rates are one dated sample with denominators shown, not rankings or promises. Companies are named only as they appear in those published measurements. Specialty doctrine: Tygart Media’s published specialty cluster (the fire extinguisher tag strategy; document and records recovery; electronics restoration; the specialty accounts pillar) and Restoration Intel’s recurring-revenue and specialty-recovery pieces, localized as marked — doctrine is labeled doctrine wherever no local measurement exists yet.

  • Meta Model API Pricing & Limits: Wonder, Spark, and the Cheap Tier That Trains on You

    Meta Model API Pricing & Limits: Wonder, Spark, and the Cheap Tier That Trains on You

    From the Tygart Media Meta desk. Prices below are Meta’s published rates, verified against Meta’s own pricing documentation on October 13, 2026, and cross-checked against our account’s live catalog on October 19, 2026. This page is the desk’s drift-watch surface: when Meta moves a number, this page is where the change gets recorded, dated. Desk home: Meta AI, Run in the Open.

    Meta’s pricing has one genuinely simple story and one trap. The simple story: a flagship priced exactly at the market’s flagship rate, a workhorse priced like a workhorse, both with million-token context and no long-context surcharge. The trap is a third tier that costs about 95% less — because you’re paying with your data instead. Here is the whole map, with the trap labeled.

    The API tiers (per million tokens)

    Model Input Cached input Output Rate limits (per team)
    Muse Wonder $4.00 $0.20 $20.00 3,000 RPM / 4M TPM
    Muse Spark 1.3 / 1.2 / 1.1 (Standard) $1.25 $0.15 $4.25 3,000 RPM / 4M TPM
    Muse Spark Contributor $0.10 $0.002 $0.20 150 RPM / 3M TPM

    Wonder’s $4/$20 matches the going flagship rate dollar for dollar — Meta is not discounting its best model, it’s daring you to compare it. Spark at $1.25/$4.25 is the tier a working shop will actually live on: a quarter of the flagship’s input price and under a quarter of its output price, with the same 1M-token context window and the same rate limits. There is no long-context premium at any length, which quietly removes a whole category of surprise bill. Web-search grounding, if you use Meta’s built-in tool, is $2.50 per 1,000 queries on top.

    The rest of the catalog is priced like utilities: Muse Image generates at a flat $0.01 an image, Voice Transcribe runs $0.18 per audio hour with diarization, and the SAM 3.1 segmentation model is $2.50 per 1,000 images — all three confirmed in our own account census on October 14, 2026. Spark’s maximum output is 131,072 tokens; Wonder’s maximum output is not stated on the pages Meta publishes, and this page won’t guess it.

    The Contributor trap: cheap because it trains on you

    Read the Contributor tier’s price again: $0.10 in, $0.20 out. That is not a sale. Meta’s own pricing page is plain about the exchange — in Contributor mode, Meta may use your prompts and the model’s completions to improve and train its products. Your discount is paid in data. Standard mode, at the prices in the table above, is the mode where your content is not used for training.

    Our house rule, printed so our future selves can’t negotiate with it: Contributor tiers are for disposable experiments only — never for client work, never for unpublished material, never for anything you wouldn’t read aloud in Meta’s lobby. The arithmetic isn’t close. A shop that routes real work through Contributor to save $4 a million tokens is selling its clients’ material at a price it would never accept in a contract. And one more wrinkle worth knowing: Muse Code subscriptions default to Contributor mode unless you turn it off — so the trap is also a default, and defaults are where shops actually live.

    The Cursor split: Spark is in, Wonder is out

    If your shop runs Cursor, your Meta options today are exactly one model long. Muse Spark 1.3 is a first-class Cursor model — added September 8, 2026, about six days after the model itself shipped — at the same $1.25/$4.25 rates, with full access to Cursor’s agent tools, a 300k context window by default or the full 1M in Max Mode. Muse Wonder is not in Cursor at all: no model page, no changelog entry, no announced timeline, and Cursor’s official bring-your-own-key program covers five providers — Meta is not among them. The base-URL override workaround exists, but Cursor staff describe it as unsupported and partially broken, it applies globally while it’s on, and it can never bring you Wonder Full. Bottom line from a shop that checked: for Meta inside Cursor, run native Spark 1.3; for Wonder, use the API.

    Muse Code plans — reported, not verified by us

    Meta’s own terminal agent, Muse Code, is sold by subscription as an alternative to per-token billing. The plan structure is verified on Meta’s documentation: four tiers — Everyday, High, Power, Maximum — with Power and Maximum including Wonder Full, the stronger flagship variant that the API does not sell at any price. The dollar figures below come from secondary reproductions of Meta’s pages, and we label them reported because we have not paid one yet: Everyday $5/month, High $15/month (5×), Power $50/month (20×), Maximum $200/month (80×). When this shop runs Muse Code through a real sitting, this section gets rewritten from receipts. Until then, it stays labeled.

    What the numbers don’t tell you

    Two costs never appear on a pricing page. The first is token hunger: independent launch-week measurement found Wonder slower to first token than its rivals’ median and thirstier with output tokens, and in an agent loop — where a model may be called hundreds of times on one job — a thirsty model at a fair per-token price can still be the expensive seat. The second is your own switching cost, which Meta has unusually lowered: one key speaking OpenAI and Anthropic protocols means the harness you already run is the harness you evaluate with. Our proof of that, and the gotcha that came with it, is in The Meta Model API, As We Run It.

    Last verified: October 19, 2026. The desk’s catalog watch re-reads Meta’s model list daily; pricing drift gets recorded here with its date, the same discipline this site applies to Claude’s pricing.

  • The Meta Model API, As We Run It

    The Meta Model API, As We Run It

    From the Tygart Media Meta desk — our own API key, our own test envelope, our own receipts. Desk home: Meta AI, Run in the Open.

    Every vendor will sell you an API with a launch post. What a working shop needs is duller and more valuable: does it answer, does it finish real work, what does it cost to find out, and what stupid thing will eat your first afternoon? On October 14, 2026, we wired Meta’s Model API into our own tooling and ran it. Here is the whole story, including the part where we blamed the API for our own mistake.

    The setup: one key, stored like it matters

    Meta’s developer platform is dev.meta.ai. You make a key in the dashboard, you put it in a vault — ours lives in our credential store, injected into the process only at run time, never written to disk, never pasted into a chat. Billing rides a partner-controlled card with a hard $25 test envelope on it. That envelope is a deliberate choice: a new platform earns production trust in stages, and stage one is “prove it works for pocket change.”

    The first check cost nothing: list the models. Our key read Meta’s catalog clean — nine models, from Muse Wonder down to a segmentation model we still haven’t touched. A key that can read the catalog is a key that works; everything after that is about the work, not the wiring.

    The proof: a work-order-shaped task, 52 seconds

    We pointed OpenCode — an open-source terminal agent, version 1.19.0 — at Meta’s API as an OpenAI-compatible provider, and handed Muse Spark 1.3 the kind of job this shop hands every seat: a written spec (SPEC.md), from which it had to produce a working Python module (a slug utility) plus a pytest suite covering it. Not a riddle, not a benchmark — a small, real, verifiable unit of work with a pass/fail at the end.

    Spark 1.3 finished in about 52 seconds. Mid-run it discovered pytest wasn’t installed in its environment, provisioned its own virtual environment, installed what it needed, and ran its tests: 8 of 8 passing. Then we did what we do with every seat’s output, including our own: we didn’t take its word. We re-ran the suite ourselves, added five extra cases of our own, read the code line by line. All green, code clean. Total damage to the $25 envelope across the entire day’s probing of every text model on the account: under two cents.

    The gotcha: our first failure was not Meta’s

    The first attempt “failed.” Silently. No error, no output — the run simply never came back. The natural conclusion is that the shiny new API is broken. The actual cause: opencode run hangs forever when its standard input is left open in a non-terminal session. Run it with stdin closed — </dev/null — and it works perfectly. No API fault, no key fault; a harness quirk that cost us one debugging cycle and taught us, again, the oldest lesson in this shop: when a new platform “fails,” check your own plumbing before you write the platform off. We’re printing the gotcha in the desk’s first article on purpose. The next shop that wires this API deserves to skip our lost afternoon.

    One API, three dialects — and why a shop should care

    The most consequential thing about Meta’s API is not any single model. It’s that the same key speaks three protocols: OpenAI’s Chat Completions, OpenAI’s Responses API, and Anthropic’s Messages API. Meta’s own quickstart documents pointing Claude Code at api.meta.ai by changing a base URL, Codex at the Responses surface, and OpenCode at the OpenAI-compatible endpoint — all with the one key.

    For a shop, that collapses a real cost. Harnesses are habits: your prompts, your permissions, your work-order formats, your muscle memory. A model provider that demands a new harness taxes every one of those. A provider that plugs into the harness you already run lets you spend your evaluation budget on the only question that matters — is the model any good at your work? It’s also a discipline on the provider: when switching is cheap, the model has to win on merit every month, not on lock-in. We like platforms that volunteer for that test.

    Two quirks worth knowing before your first loop. Reasoning is mandatory on these models: settings like reasoning_effort: "none" come back as errors rather than being quietly ignored, so sloppy OpenAI drop-in code can fail loudly — better than silently, but plan for it. And reasoning tokens burn against your output cap, so set generous maximums; a tight cap buys you empty replies, as our census probes found out so yours don’t have to.

    What this does not prove — yet

    One 52-second task proves the route works and the model can finish a small job cleanly. It does not prove Wonder’s ceiling, anyone’s reliability across a month of autonomous loops, or behavior under production load — and this desk won’t claim otherwise. The head-to-head that would actually settle the seat question — Composer vs. Spark in Cursor vs. Wonder through this API, same work order, same scoring — is scheduled and unrun, and it’s named that way on the desk’s front page. When it runs, it lands here, numbers and all, whichever way it cuts.

    Prices, tiers, and the one discount that should make you read the fine print twice are on the desk’s pricing page: Meta Model API Pricing & Limits.

  • What’s New in Cursor Is a Claim. Here’s How We Check It.

    What’s New in Cursor Is a Claim. Here’s How We Check It.

    A changelog entry is a claim

    When a platform ships an upgrade, the changelog tells you what the vendor wants you to believe about it. Sometimes the claim is the whole story. Sometimes the feature is real and irrelevant to your work. Sometimes — the dangerous case — something you depend on moved and the entry is three lines long. A shop that builds on a harness needs a discipline that sorts those three piles. This is ours.

    The loop, in order

    • Watch. Two daily diffs: the model catalog (running since October 16, 2026) and the changelog itself (from today). Change-only reporting — silence means nothing moved, and a failed watch reports itself once rather than going quietly blind.
    • Read against our record. Every real change gets one question: does it touch a surface we run — Desktop sittings, the cloud API, mobile steering, or a model our routing names? If not, it is logged and skipped, however shiny.
    • Check before adopting. A change that touches the harness earns a check against a known quantity — a brief we have already graded, a sitting pattern we already run. The check’s result, not the changelog’s adjectives, decides what changes in our work-order kit.
    • Write it down, dated. The desk pages update with the date of the change and the date of our check. A claim we repeated and later found wrong gets corrected in place, with the correction visible.

    This week’s page, sorted by the discipline

    Cursor’s changelog top, as of October 19, 2026 (entry dates October 16 and 13 at the head of the page): cloud-agent entries lead — canvases from cloud agents, an environments API. Those matter here, because cloud agents are a production lane for us; they go on the check list. A remote-control entry — see and reply to local agents from the iOS app, in Cursor’s description — matters specifically to a shop whose sittings run on one laptop: it changes how a sitting can be supervised, so it gets read carefully before it gets used. A marketplace launch and a pair of shipping bots are logged-and-skipped for now: real, announced, and not touching our record yet. Those descriptions are Cursor’s; the sorting is ours.

    Say where each fact came from

    One habit does more for a desk’s credibility than any other: provenance on the page. The changelog currently shows entry dates but no Desktop version string — so this desk’s version knowledge does not come from the changelog. It comes from reading our own install (3.25.9, October 19, 2026). When the basis of a number is our fleet, we say fleet. When it is the vendor’s page, we say vendor. A reader who can tell which is which can trust both.

    That is the whole method: vendor claims in, checked knowledge out, dates on everything. The watches are cheap. The discipline is the product.

    Method & settings — this piece

    Watches: Model-catalog diff (daily since October 16, 2026) + changelog diff (daily from October 19, 2026); change-only; failures reported once

    Sorting rule: Touches a surface we run = check list. Otherwise logged and skipped. Vendor descriptions labeled as the vendor’s

    Desk rule: Every fact carries its provenance and date — our record, or Cursor’s page, never blended

    Filed under the Cursor desk — the desk these watches feed.

  • Composer 2.5 Is Our Code Seat. Here’s Its Record.

    Composer 2.5 Is Our Code Seat. Here’s Its Record.

    Why Composer holds the code seat

    Every work order this shop writes names its executor up front — the model, the seat, and what happens if that seat is unavailable (stop; never substitute quietly). For code, the name on the order is Composer 2.5, Cursor’s own model. It did not get the seat by brand. It got it on a board we ran ourselves.

    The board: October 16, 2026

    Our fleet comparison put the models on one identical brief and graded the work. In the initial trio — Grok 4.7, Composer 2.5, and Auto — all three scored perfectly, and Composer was the fastest of the three: 31 seconds, 13 cents. Across the full board it was the fastest model tested, full stop, while identical perfect scores elsewhere on the board cost up to 86 cents. Speed with a perfect score is exactly the profile a code seat wants: code work is iterative, and iteration speed compounds.

    The same board explains the seat Composer does not hold. Our first pass — the wide, cheap, read-everything pass — belongs to GLM 5.3 Flash, which produced its perfect score for 0.83 cents. A hundred-fold cost spread for the same correct answers is the whole argument for routing by evidence instead of by logo: Composer where its speed pays, GLM where its price pays, and the receipts to say which is which.

    What we have put through it

    Through Desktop sittings, Composer executes the shop’s build work: fleet website builds and repairs across our WordPress properties, the Work Order Desk application (a BMAD+ build whose doctor checks pass 35 of 35), and the tooling runs in between. The work-order standard it runs under is not a prompt and a prayer — it is an unaided first pass in its own words before any templating, a permissions pre-flight, ship/hold boundaries stated in the order, and evidence graded on its timestamped trail plus screenshots at the verification points.

    The dents, on the record

    • The seat is bounded by the order. Our standing rule exists because it was earned: a work order that comes back with questions is a work order that was not finished. Composer executes what the order covers — gaps in the order surface as gaps in the run.
    • The real gates stay human. Sends, deletions, money, and credentials are never pre-approved for any executor. Composer stops there by design, and that is a feature of the harness, not a limit of the model.
    • The pipeline around it can bruise the output. In one October sitting, deliverables written through the Windows pipeline came back with mojibake on the em-dashes; the fix was ours to make — UTF-8 stated explicitly in every work order since. Blaming the model for a harness defect is how shops learn nothing.

    Cursor describes Composer as its in-house model family built for agentic coding — that is their claim, labeled as theirs. What this desk can vouch for is narrower and, we think, worth more: on our briefs, on our board, at our volume, it is the fastest pair of hands we have measured, and the record above is the whole of why it holds the seat.

    Method & settings — this piece

    Comparison: One identical brief across the fleet’s models, October 16, 2026; graded on output and execution trajectory; Composer 2.5: perfect score, 31 s, 13¢

    Seats: Composer 2.5 = code executor (Desktop sittings); GLM 5.3 Flash at max = first pass; Grok 4.7 = deep-verification seat — all three on Will’s Cursor plan

    Work-order standard: WO-198: execution model first, unaided first pass, permissions pre-flight, evidence = timestamped trail + screenshots

    Filed under the Cursor desk.

  • The Cursor Model Catalog, Watched Daily

    The Cursor Model Catalog, Watched Daily

    Your stack includes a list you didn’t write

    Every shop building on AI agents has a dependency it rarely names: the model catalog. Which models exist, what they are called, which variant is the default, what the reasoning dial offers — all of it is set by the platform, and all of it can change overnight. If your routing doctrine names a model, the catalog is part of your infrastructure. We diff ours every morning.

    The baseline: 46 models, October 16, 2026

    The watch started with a full pull of Cursor’s model list through the API on October 16, 2026: 46 models. Each model is normalized the same way every day — its id, its display name, the values its reasoning parameter offers, and which variant is marked default. The GLM family that day, the family our first pass rides on:

    • GLM 5.2 — reasoning: high, max — default: high
    • GLM 5.3 — reasoning: low, high, max — default: max
    • GLM 5.3 Flash — reasoning: low, high, max — default: max

    That last line is load-bearing. Our first-pass doctrine is GLM 5.3 Flash at reasoning set explicitly to max on every launch. The explicit set is not ceremony: the day a platform quietly changes a default is the day your output changes and nobody knows why. A daily diff turns that silent event into a dated line in a changes log.

    What a catalog change actually does to a shop

    • A model arrives: it earns nothing until it runs the identical brief against the incumbents. New seats are tested, never adopted on a changelog’s say-so.
    • A model leaves: every doctrine that names it has a hole. The diff tells you the morning it happens, not the week a job starts failing.
    • A default changes: the most dangerous entry in the catalog, because nothing in your own setup moved. This is the change the watch exists to catch.
    • A dial gains a setting: a reasoning value appearing or vanishing changes what your pinned configuration even means.

    The trap in the easy route

    One tooling lesson from building this watch, offered free: the convenient command-line listing of the catalog truncates at roughly 6 KB — a partial catalog that looks complete. The full list only comes through the raw API call. A shop reading the truncated output believes it is watching 46 models while seeing a fraction of them. Whatever you monitor, monitor the untruncated source.

    The watch reports changes only. Silence means the catalog is what it was yesterday — and if the API itself fails, the failure is reported once, out loud. A blind watch is worse than a noisy one.

    Method & settings — this piece

    Baseline: Full model-list pull via api.cursor.com/v1, October 16, 2026: 46 models total, 3 GLM

    Normalization: id, displayName, reasoning parameter values, default variant — compared field by field against the stored snapshot

    Cadence: Daily, change-only reporting; failures reported once

    Full method: The same watch pattern guards our GLM doctrine — see the GLM desk

    Filed under the Cursor desk.

  • Desktop, Cloud, or API: One Cursor Harness, Three Seats

    Desktop, Cloud, or API: One Cursor Harness, Three Seats

    The seat is a routing decision

    Cursor is not one tool in this shop. It is three seats that share a harness — a Desktop app on a laptop, cloud agents behind an API, and a phone — and picking the wrong one wastes the day in a characteristic way. Desktop waits on a human. The cloud knows nothing about your logged-in life. The phone is a steering wheel, not a workbench. The routing rule we run: the seat is decided by where the work’s context lives.

    Desktop wins when the unlock is a logged-in browser

    A Desktop sitting is a supervised run: a written work order, an executor (Composer 2.5 in our shop) that makes an unaided first pass in its own words before any templating, and a human in the room for the real gates. Its superpower is everything the laptop already is — signed-in dashboards, the WordPress admin, the GA4 Advisor, the files on disk. When a fleet site needs hands inside a web UI that only exists behind Will’s login, no API lane substitutes.

    We learned the boundary the hard way. On October 18, an executor stopped cold at a site’s login redirect and left the step undone — which cost that sitting its unlock path. The standing rule now: in a sitting on Will’s own laptop, the executor clicks through sign-ins using the browser’s saved session. Saved-login only. No saved login means the step logs a HOLD — nobody hunts a password, ever.

    Desktop’s honest cost: it waits on a human, and a queued sitting is not a running job. Our TM pricing diagnosis (WO-353) has sat untouched since October 18 at 6:16 PM — steps written, folder staged — because a sitting starts when Will sits down. Anyone who tells you their Desktop pipeline is autonomous has not watched a folder sit still for a day.

    The cloud wins when the work fans out

    Cloud agents, launched from this desk over api.cursor.com, are the opposite shape: no login, no laptop, no waiting room — and they multiply. On October 16 we ran a census through that API: 44 models, one identical brief, five comparison rounds, graded on their execution trajectories. That is a shape of work a single Desktop seat cannot do before lunch, and it set our model routing for everything since.

    The scale shows in the bookkeeping: our completion watcher has seen 1,431 cloud agents come and go. The API runs two launch shapes for us — repo tasks that come back as pull requests, and no-repo research and evaluation runs with the model pinned in the launch body. The API is beta, and we treat it that way: when an endpoint changes shape, the error gets surfaced plainly, never papered over with invented fields.

    Mobile wins when the human is the bottleneck

    The phone’s job is judgment at human speed. Will reviews runs, reads results, and steers from his phone while the machines work elsewhere — and because a review that evaporates is a review wasted, a distiller folds his mobile and Desktop runs into the shop’s memory and Feed every 20 minutes. Mobile is not a production surface here. It is where the approvals live, and approvals are the scarcest resource in the building.

    What each seat’s failure taught the kit

    • Desktop: permission prompts were taxing the one human in the loop — fixed by a Step 0 permissions pre-flight in every work order (October 18): the executor declares the commands it expects up front, the human approves once, and prompts are reserved for sends, deletions, money, and credentials — which are never pre-approved.
    • Cloud: a finished summary is not evidence — fixed by trajectory grading and a completion watcher: results are verified at the receiving end, or they are not results.
    • Mobile: steering from the phone only counts if it lands in the record — fixed by the 20-minute distiller.

    One harness, three seats, and a routing rule a shop can steal: if the context is a login, sit down at Desktop. If the work fans out, launch it in the cloud. If the blocker is a decision, put it on the phone.

    Method & settings — this piece

    Evidence: This shop’s work-order record, October 2026: WO-198 standard, the WO-343 and WO-348 sittings, the WO-353 stall, the October 16 cloud census

    Desktop: Cursor 3.25.9 on Will’s laptop (read from the install, October 19, 2026); executor seat Composer 2.5

    Cloud: api.cursor.com/v1 (beta); completion watcher count 1,431 agents seen as of October 18, 2026

    Mobile: Cursor mobile app in a review/steer role; runs distilled into memory + Feed every 20 minutes

    Filed under the Cursor desk — where the catalog and the changelog are watched daily.