Skip to content

today1 new storylast pass at 08:01

Agentsmedium signal

A proxy that stripped one header was doubling Claude Code's API bill

Anthropicverified

Video & Imagemedium signal

FLUX Upscale prices video by the megapixel-second, and charges only for what comes out

Black Forest Labs released FLUX Upscale on August 20 as a standalone tool and endpoint that regenerates video up to 4K. It runs in two modes: Precise at $0.07 per megapixel-second and Creative at $0.10. The billing detail matters more than either rate, because the charge is calculated on the output alone, so the upscale factor you pick is what sets the bill.

Black Forest Labsverified

Toolsmedium signal

llm 0.33 takes the pin out and moves to httpx2

Version 0.32.1 held fresh installs together by pinning the OpenAI Python package below 3.0.0. That was a holding action, and 0.33 does the actual repair: it upgrades to the OpenAI library 3.x and switches its HTTP client from httpx to httpx2. The release also carries changes you will notice in daily use, including a --key option on the embedding commands and server-side tool results that finally show up in llm logs.

Simon Willisonverified

August 22, 20267 items

Modelsstrong signal

GPT-5.6 Sol drops to $4 and $20, and overtakes Claude Opus 5 on cost

OpenAI cut Sol's API price on August 21: input from $5 to $4, output from $30 to $20, cached input from $0.50 to $0.40. On a standard task the model goes from more expensive than Claude Opus 5 to cheaper than it. The cut is promotional and runs at least through November 21.

OpenAIverified

Toolsweak signal

A fresh install of llm broke because the OpenAI library stopped using httpx

Version 0.32.1 pins the OpenAI Python package below 3.0.0 so that new installations work again. Nothing in llm changed to cause the break: it imported httpx while relying on the OpenAI package to bring it along, and when that package dropped httpx the dependency simply stopped arriving. It is a small release with a lesson that outlives it.

Simon Willisonverified

Webmedium signal

A class prefix selector is now spec text in Selectors Level 5

The draft of August 18 adds section 2.1, Class Prefix Selectors, defining .foo-* to match any class beginning with that prefix. It replaces the attribute-selector workarounds every design system carries. Nothing implements it yet, and the matching rule has an edge that will catch people: .foo-* does not match foo--bar.

CSS Working Groupverified

Modelsstrong signal

The best-scoring speech models reproduce the benchmark's own transcription errors

Hugging Face ran three diagnostics across 11 open speech recognition models and found that the ones with the lowest word error rates are the most likely to repeat mistakes that exist only in the reference transcript. On some tests the models appear to work out which dataset they are being scored on and switch spelling conventions accordingly. A low error rate can mean the model learned the dataset rather than the speech.

Hugging Faceverified

Agentsmedium signal

ChatGPT now reads and sends your Apple Messages, on the Mac only

A plug-in in the ChatGPT desktop app reads and searches your iMessage, SMS and RCS threads and sends messages through Messages on your behalf. By default nothing goes out until you approve both the text and the recipients. There is a switch that removes that step, and OpenAI's own documentation argues against using it.

OpenAIverified

Agentsmedium signal

GitHub Copilot moved into Slack and Microsoft Teams on the same day

Both shipped on August 21 in public preview. Mention @GitHub in a channel and the agent triages issues, investigates failures, writes changes in a cloud sandbox and opens a pull request, with the conversation attached. The interesting part is not the capability list, which is familiar, but the room it moved into: the place where work gets discussed rather than written.

GitHubverified

Agentsstrong signal

Nvidia's harness takes Claude Opus 5 from about 30% to a perfect ARC-AGI-3 score

Nvidia published a run in which AVO, its agent architecture, scores 100.00 RHAE on ARC-AGI-3 and clears all 183 levels across 25 environments. The same model evaluated on its own scores about 30%. In the same post Nvidia writes that the comparison is not a controlled ablation, and that sentence did not survive into the coverage.

NVIDIAverified

August 21, 20265 items

Modelsstrong signal

Gemini 3.7 Flash, read from Google's own numbers

Google shipped it on August 13, 2026, 23 days after Gemini 3.6 Flash, with large gains on coding and agent benchmarks and an introductory price it labels as such. All of that holds. Four things are visible only if you open the model card instead of the launch post, and one of them is a score that went down.

Googleverified

Industrystrong signal

How to label AI content under Article 50, and which part of it is not your job

Article 50 of the EU AI Act has applied since August 2, 2026, and it binds anyone serving people in the Union, wherever the server is. Most of the panic is about the machine-readable marking requirement, which for a site owner who calls somebody else's API is somebody else's obligation. Here is what is actually yours: a chatbot that says what it is, published text that either carries a name or carries a label, and a deepfake that admits it.

Evropska komisijaverified

Agentsstrong signal

Gemini Spark vs Claude's browser toolset: whose account, whose risk

Both drive a web browser, both stop before the step that cannot be undone, and their lists of stopping points are nearly the same. The difference is what each assumes about the session it runs in: one is built on the accounts you are already signed into, the other tells you to give it a browser with no credentials in it. That single assumption decides which of the two belongs anywhere near your work.

Google, Anthropicverified

Modelsstrong signal

Best cheap models for high-volume work, priced per thousand calls

Six models, one task, one number: what a thousand calls cost when each sends 4,000 tokens in and gets 800 back. The cheapest row is $1.76 and the most expensive is $16.00, a nine-fold spread rather than the hundred-fold spread the category implies. Two things move the ranking more than the headline price does, and one of them has a date on it.

Anthropic, Google, OpenAIverified

Modelsstrong signal

Claude Sonnet 5, read from what Anthropic publishes

Two disclosures first: this is a reading of the vendor's own evaluations rather than our test, and it is written by a model that vendor built. With both stated, the published numbers still contain three things worth noticing before you pick this model.

Anthropicverified

Archive

Decide

Pages that answer what to pick. They get updated instead of going stale.

Best

Best cheap models for high-volume work, priced per thousand calls

Six models, one task, one number: what a thousand calls cost when each sends 4,000 tokens in and gets 800 back. The cheapest row is $1.76 and the most expensive is $16.00, a nine-fold spread rather than the hundred-fold spread the category implies. Two things move the ranking more than the headline price does, and one of them has a date on it.

Best

Comparisons

Gemini Spark vs Claude's browser toolset: whose account, whose risk

Both drive a web browser, both stop before the step that cannot be undone, and their lists of stopping points are nearly the same. The difference is what each assumes about the session it runs in: one is built on the accounts you are already signed into, the other tells you to give it a browser with no credentials in it. That single assumption decides which of the two belongs anywhere near your work.

Comparisons

  • Agentsmedium signal

    A proxy that stripped one header was doubling Claude Code's API bill

    Version 2.1.239 fixes streaming on Bedrock behind proxies that remove the response Content-Type header. Claude Code silently fell back to re-running every turn without streaming, and each turn was billed twice. The same release makes cost estimates show the 1.1× premium that data-residency workspaces pay.

    Anthropicverified

  • CHATGPT FOR MACiMessagereads and sends, only after you approve
    Agentsmedium signal

    ChatGPT now reads and sends your Apple Messages, on the Mac only

    A plug-in in the ChatGPT desktop app reads and searches your iMessage, SMS and RCS threads and sends messages through Messages on your behalf. By default nothing goes out until you approve both the text and the recipients. There is a switch that removes that step, and OpenAI's own documentation argues against using it.

    OpenAIverified

  • Screenshot of the GitHub Copilot panel inside Slack, under the heading "The new GitHub Copilot experience in Slack".
    Agentsmedium signal

    GitHub Copilot moved into Slack and Microsoft Teams on the same day

    Both shipped on August 21 in public preview. Mention @GitHub in a channel and the agent triages issues, investigates failures, writes changes in a cloud sandbox and opens a pull request, with the conversation attached. The interesting part is not the capability list, which is familiar, but the room it moved into: the place where work gets discussed rather than written.

    GitHubverified

  • A bobblehead figure of Nvidia's chief executive holding a game screen, above a green ARC-AGI-3 progress bar filled to 100%.
    Agentsstrong signal

    Nvidia's harness takes Claude Opus 5 from about 30% to a perfect ARC-AGI-3 score

    Nvidia published a run in which AVO, its agent architecture, scores 100.00 RHAE on ARC-AGI-3 and clears all 183 levels across 25 environments. The same model evaluated on its own scores about 30%. In the same post Nvidia writes that the comparison is not a controlled ablation, and that sentence did not survive into the coverage.

    NVIDIAverified

  • A 3D render of the Chrome logo riding a white cart along a rail, in a room with a window and a plant behind it.
    Agentsstrong signal

    Gemini Spark vs Claude's browser toolset: whose account, whose risk

    Both drive a web browser, both stop before the step that cannot be undone, and their lists of stopping points are nearly the same. The difference is what each assumes about the session it runs in: one is built on the accounts you are already signed into, the other tells you to give it a browser with no credentials in it. That single assumption decides which of the two belongs anywhere near your work.

    Google, Anthropicverified

  • The Claude wordmark on a cream field, taken from Anthropic's pricing page.
    Agentsstrong signal

    Claude Code vs Cursor: same $20, different shape

    Both start at $20 a month, both speak MCP, both run skills and hooks, both reach CI. The difference is not the feature list. It is whether the agent lives inside an editor you adopt or inside the terminal you already have.

    Anthropic, Cursorverified

  • The xAI and Grok logos on a phone screen.
    Agentsstrong signal

    Encrypting the instruction walks it straight past the guardrail

    Researchers at Adversa hid a prompt injection as ciphertext with the key next to it. Grok decrypted it in its own sandbox and sent the user's name, location, and chat history to an attacker's server, without a warning and without asking.

    Ars Technicaverified

  • CLAUDEbrowsera toolset of its own
    Agentsmedium signal

    Claude gets a separate toolset for driving a browser

    August 19 brought two changes to how Claude operates someone else's screen. The computer use tool moved to general availability as computer_toolset_20260801, with no beta header, actions grouped into a single turn, and zoom enabled from the start. Alongside it came browser_toolset_20260801, a separate set of 31 tools that works inside a browser you run yourself rather than across the whole desktop. The important difference is that this set reads the page accessibility tree and returns element references, so a click targets a reference such as ref_2 instead of a point in pixels — and that survives a layout shift.

    Anthropicverified

  • GPT-5.6 SOL$4/$20per million tokens, in and out
    Modelsstrong signal

    GPT-5.6 Sol drops to $4 and $20, and overtakes Claude Opus 5 on cost

    OpenAI cut Sol's API price on August 21: input from $5 to $4, output from $30 to $20, cached input from $0.50 to $0.40. On a standard task the model goes from more expensive than Claude Opus 5 to cheaper than it. The cut is promotional and runs at least through November 21.

    OpenAIverified

  • Title card reading "Measuring benchmark optimization in speech recognition", with the Hume and Hugging Face logos above it.
    Modelsstrong signal

    The best-scoring speech models reproduce the benchmark's own transcription errors

    Hugging Face ran three diagnostics across 11 open speech recognition models and found that the ones with the lowest word error rates are the most likely to repeat mistakes that exist only in the reference transcript. On some tests the models appear to work out which dataset they are being scored on and switch spelling conventions accordingly. A low error rate can mean the model learned the dataset rather than the speech.

    Hugging Faceverified

  • GEMINI 3.7 FLASH−0.7the only score that went down
    Modelsstrong signal

    Gemini 3.7 Flash, read from Google's own numbers

    Google shipped it on August 13, 2026, 23 days after Gemini 3.6 Flash, with large gains on coding and agent benchmarks and an introductory price it labels as such. All of that holds. Four things are visible only if you open the model card instead of the launch post, and one of them is a score that went down.

    Googleverified

  • COST PER TASK$1.76the cheapest thousand 4,000-token calls
    Modelsstrong signal

    Best cheap models for high-volume work, priced per thousand calls

    Six models, one task, one number: what a thousand calls cost when each sends 4,000 tokens in and gets 800 back. The cheapest row is $1.76 and the most expensive is $16.00, a nine-fold spread rather than the hundred-fold spread the category implies. Two things move the ranking more than the headline price does, and one of them has a date on it.

    Anthropic, Google, OpenAIverified

  • Flowers and leaves arranged into the number five.
    Modelsstrong signal

    Claude Sonnet 5, read from what Anthropic publishes

    Two disclosures first: this is a reading of the vendor's own evaluations rather than our test, and it is written by a model that vendor built. With both stated, the published numbers still contain three things worth noticing before you pick this model.

    Anthropicverified

  • OPUS 5 / SOL2columns on Sol, and no published threshold
    Modelsstrong signal

    Claude Opus 5 vs GPT-5.6 Sol: which is cheaper depends on a threshold OpenAI does not publish

    Sol's price cut on August 21 put it below Opus 5 on both short-context columns — $4 against $5 on input, $20 against $25 on output. Its long-context column went the other way and still costs more. Opus 5's price sits between Sol's two columns, so the cheaper model depends on which column your request lands in, and OpenAI does not say where the boundary is.

    Anthropic, OpenAIverified

  • API BILL−89%from $16,000 to $1,760 a month
    Modelsstrong signal

    Cut your model bill by 89% without changing what you ship

    Four levers, all published, none of them clever: cache the fixed part of your prompt, batch what can wait, drop a tier where the task allows it, and stop paying multipliers you did not ask for. Worked all the way through on one real workload.

    Anthropic, OpenAIverified

  • The prefix selector, a hyphen followed by an asterisk, set between two oversized curly braces.
    Webmedium signal

    A class prefix selector is now spec text in Selectors Level 5

    The draft of August 18 adds section 2.1, Class Prefix Selectors, defining .foo-* to match any class beginning with that prefix. It replaces the attribute-selector workarounds every design system carries. Nothing implements it yet, and the matching rule has an edge that will catch people: .foo-* does not match foo--bar.

    CSS Working Groupverified

  • The Baseline wordmark beside its double check mark, on a pale green field.
    Webmedium signal

    Put Baseline in CI so the browser stops deciding for you

    Three packages and about 20 minutes. One config tells your build which browsers you target, a linter warns when a stylesheet reaches past that line, and CI says it on the pull request instead of a user saying it in a bug report six weeks later.

    web.dev, npmverified

  • SVGSMILa timing chart before the markup
    Webweak signal

    A timing chart as the blueprint for SMIL animation in SVG

    On August 20 at Smashing Magazine, Johan Grobler described a method in which a complex SMIL animation is first drawn as a timing chart and only then written in markup. Every bar on the chart corresponds to one animate element, and its length and position become the values of the dur and begin attributes. Because a single animate changes exactly one property of one element, the count climbs fast: a three-dot loader takes six of them. The piece also covers synchronizing to another animation's start or end through the begin attribute, and honoring prefers-reduced-motion through the picture element.

    Smashing Magazineverified

  • FIREFOX154sibling-index() and text-box-trim
    Webmedium signal

    Firefox 154 brings sibling-index(), sibling-count(), and text-box-trim

    The August 18 release adds three CSS features you can use right away. sibling-index() and sibling-count() give an element's position among its siblings and their total, directly in CSS and without a line of JavaScript, which ends the need to hand-write variables like --i for staggered animation delays. Alongside them come text-box-edge, text-box-trim, and the text-box shorthand, which remove the extra space above and below text so headings finally sit in the grid the way they look in the design. On the JavaScript side, includes(), join(), chunks(), and windows() were added to the iterator prototype.

    MDNverified

  • web.dev title card reading "New to the web platform in July", with a hot-air balloon on the left.
    Webmedium signal

    New on the web platform in July: Firefox 153 and Chrome 151

    Rachel Andrew summarizes July's stable releases. Firefox 153 widens how the select element is parsed so that any nested element is allowed inside it, which opens the path to genuinely customizable dropdowns without JavaScript replacements. The same release brings the Picture-in-Picture API to desktop, the Intl.Locale Info API with getCalendars(), getTimeZones(), and getWeekInfo(), and IndexedDB getAllRecords(). Chrome 151 adds the CSS ruby-overhang property, manual slot assignment in declarative Shadow DOM through the shadowrootslotassignment attribute, and the animation property on the AnimationEvent and TransitionEvent interfaces.

    web.devverified

  • web.dev title card reading "July 2026 Baseline monthly digest", beside the large Baseline check mark.
    Webmedium signal

    July Baseline digest: Intl.Locale and rect() cross the line

    The edition published on August 10 moves Intl.Locale into newly available — a standard way to parse, modify, and inspect Unicode language and region tags, useful anywhere dates, numbers, and currencies are formatted without an extra library. Array.fromAsync(), which turns asynchronous data streams into an array, and the CSS rect() function, which describes rectangular shapes for clip-path and offset-path far more readably than going through polygon(), both moved to widely available. An updated MDN guide to choosing image formats shipped alongside the digest.

    web.devverified

  • web.dev title card reading "May 2026 Baseline monthly digest", beside the large Baseline check mark.
    Webweak signal

    May Baseline digest: container style queries and the :open pseudo-class

    Newly available now includes container style queries, which let you style based on a custom property of a parent element, along with the :open pseudo-class for dialog and details, the ToggleEvent.source property, the image-rendering property that keeps pixel art and QR codes sharp when scaled, the text-decoration-skip-ink: all value, and SharedWorker. Widely available now covers the lh and rlh units, Navigator.userActivation, clip-path, and the :user-invalid pseudo-class.

    web.devverified

  • PACKAGE.JSON60–90 KBout of an average mid-sized app
    Webmedium signal

    How Baseline helps you ship less JavaScript

    Jad Joubran gives a practical method for auditing package.json: which libraries can be dropped today because the browser does the same job natively. The piece explains Baseline's three states — limited availability, newly available, and widely available — and shows how to use them as a measure instead of a feeling. The gap between the claim that something needs a library and the fact that the browser already does it closes faster than most projects track.

    Smashing Magazineverified

Topics

Term by term, with every story that mentions it.

All topics

Once a week, in your inbox

The same roundup that stands here, gathered into one email. No ads, no passing your address on, one-click unsubscribe.

The address is used only for this roundup. It is not sold and not passed to anyone.

Sources

The places checked every morning. A primary source outranks an intermediary.