🧭 Claude Code v2.1.243: Per-Loop Usage Breakdowns, Model Picker Curation, and Prompt-Cache TTL Controls
Two Claude Code releases landed today: v2.1.243 (substantive feature update, August 24–25) and v2.1.245 (targeted crash fix, August 25). Together they close several gaps that developers running Claude Code in multi-loop and multi-model environments have been hitting.
New in v2.1.243
- Loops breakdown in
/usage — the usage report now shows a per-loop table: run count, total tokens, tokens per run, and last-run timestamp. Runaway or chatty /loop tasks that silently drain token budgets are now easy to spot at a glance.
modelPicker setting — curate the /model picker with an ordered, labelled list of models. Teams that want developers defaulting to Sonnet 5 rather than Mythos can now enforce this without relying on environment variables.
promptCacheTtl and subagentPromptCacheTtl — API-key and cloud-provider users can configure a 1-hour prompt cache on the main conversation while keeping subagents at the default 5-minute window. This prevents unnecessary cache misses on long agentic runs without over-caching the more volatile subagent context.
modelPricing managed setting — set your organisation's contracted per-model rates and a discount multiplier once. All downstream /cost reports, the status line, and telemetry cost figures use these real rates instead of public list prices — making budget tracking meaningful for enterprise customers on negotiated contracts.
- claude-api skill context cut from ~200 k to ~25 k tokens — the built-in
claude-api skill previously loaded its full reference documentation up front, consuming 200 k+ context tokens on every session. It now loads docs on demand, an ~87% reduction in per-session overhead for any workflow that calls the skill.
/permissions and /add-dir now work mid-run — both commands previously required Claude to be idle. They can now be opened while Claude is actively working, removing a workflow interruption that affected interactive use.
v2.1.245 — glibc 2.44 crash fix
This patch fixes a startup crash on Linux distributions that ship glibc 2.44, including Arch Linux, CachyOS, and Fedora Rawhide. If you run Claude Code on any of these distributions and hit an immediate crash on launch, update to v2.1.245 via claude update or your package manager.
Actionable: audit your /loop token spend right now
After updating, run a representative workflow and then type /usage. If any loop shows tokens-per-run growing across iterations, your prompt is accumulating conversation history it does not need. Add an explicit instruction to your loop's system prompt: "Summarise your findings in under 200 words at the end of each run and discard intermediate reasoning." This keeps context compact across iterations and directly reduces cost — the new per-loop breakdown makes verifying the improvement straightforward.
Claude Code
release
usage tracking
prompt caching
model picker
🧭 Anthropic Python SDK Hits v1.0 — httpx2 Upgrade Breaks Tracing and Mocking Integrations
Anthropic released v1.0.0 of its Python SDK on August 20. The headline change is an upgrade from httpx to httpx2 — a maintained, API-compatible fork — which introduces a small but meaningful set of breaking changes that any production integration should audit before upgrading.
What changed
- httpx → httpx2: if you rely on tracing or mocking libraries that patch
httpx (e.g. pytest-httpx, respx), you must call httpx2.alias_httpx() at application startup after upgrading. Without this call, your patches will stop intercepting requests silently.
- Python 3.10+ required: the SDK no longer supports Python 3.8 or 3.9. Confirm your runtime version before upgrading in CI.
- Legacy Text Completions API removed: the deprecated
/v1/complete endpoint wrapper is gone. Migrate to the Messages API (/v1/messages) if you have not already done so.
temperature, top_p, top_k removed from messages.create(): these parameters have moved into thinking config blocks or model-specific API extensions. Passing them directly to messages.create() now raises a TypeError.
- Async client:
await response.parse(): .with_raw_response on the async client now returns a coroutine; you must await response.parse() rather than calling it synchronously.
- AnthropicBedrock raises on missing region: rather than defaulting silently to
us-east-1, the Bedrock client now raises an error if no AWS region is configured — a more honest failure mode but one that will surface in any environment where AWS_DEFAULT_REGION was unset.
Before you run pip install --upgrade anthropic
Read MIGRATION.md in the repository (linked from the v1.0.0 release notes) — it contains before-and-after code snippets for every breaking change. If you use respx or pytest-httpx in your test suite, the httpx2.alias_httpx() call must be the first statement executed, before the SDK client is imported anywhere in the process. If you are not ready to migrate, pin anthropic<1.0 in your requirements.txt or pyproject.toml to keep receiving 0.x patch releases while you work through the changes.
Python SDK
breaking change
httpx2
migration
API
🧭 Console Playground Replaces Workbench: Stateless, Full-Parameter API Inspection Now Live
Since August 18, the legacy Claude Console Workbench at platform.claude.com/workbench is gone. In its place: the new Playground at platform.claude.com/playground. The redesign is not a cosmetic rename — the architecture is fundamentally different.
What the Playground is
- Stateless by design: Playground stores no prompts or conversations on Anthropic's servers. Every session starts fresh. If you want to save a prompt, export it or store it in your source repository — this is an explicit trade-off for reduced data-retention surface.
- Full Messages API coverage: Playground exposes every parameter the Messages API supports — including extended thinking budgets, tool definitions, custom system prompts, and cache-control headers — not just the subset the old Workbench surfaced.
- Request/response inspection: the Playground shows the exact SDK snippet corresponding to your current configuration alongside the raw API response body. This makes it a practical debugging and learning tool, not just a chat window.
- Feature templates: built-in templates demonstrate code execution, web search, computer use, and other advanced API capabilities — useful starting points for developers integrating these features for the first time.
What was retired alongside Workbench
Three experimental prompt tools APIs retired on August 17:
/v1/experimental/generate_prompt
/v1/experimental/improve_prompt
/v1/experimental/templatize_prompt
If any automation pipeline was calling these endpoints, it is now broken. Equivalent functionality can be replicated directly: pass your draft prompt to Claude with instructions to improve or generalise it using the standard Messages API.
The bigger shift: from saved prompts to versioned prompts
The old Workbench encouraged storing prompts inside Anthropic's Console — creating a hidden dependency on Anthropic's infrastructure and keeping prompts invisible to code review. The stateless Playground implicitly pushes teams toward treating prompts as code: version them in Git, review them in PRs, deploy them alongside the application. If your team has prompts living only in the old Workbench UI, today is the moment to extract and commit them — they will not be migrated automatically.
Console
Playground
developer experience
API
Workbench