Update claude-api skill: Claude Opus 5 (#1476)

* Update claude-api skill: Claude Opus 5

- Add Claude Opus 5 (`claude-opus-5`) as the default model across all
  SDK examples, model tables, pricing, and migration guidance.
- Add an Opus 5 migration section covering the API changes that come
  with it, and move Opus 4.8 into the previous-generation slot.
- Drop the Opus 4.7 fast-mode guidance, which no longer applies.
- Scope the server-side fallbacks beta header to the current version.

* Update claude-api skill: Opus 5 fast-follow corrections

- Server-side refusal fallbacks are available on Claude Platform on AWS,
  not just the Claude API. Correct the availability statements in
  SKILL.md, the migration guide, and the platform-availability table.
- Simplify the effort guidance: start at `high` (the API default) and
  sweep down, rather than starting at `xhigh` for coding work.
- Add a time-to-first-token section with the prompt instruction that
  reduces pre-answer thinking on latency-sensitive routes.
- Replace the two separate thinking-disabled mitigations with the single
  combined instruction that covers both failure modes.
This commit is contained in:
Lance Martin
2026-07-24 13:12:34 -07:00
committed by GitHub
parent 1f630fdf92
commit b29e7cf65e
50 changed files with 608 additions and 278 deletions
+6 -5
View File
@@ -26,7 +26,7 @@ client = Anthropic::Client.new(api_key: "your-api-key")
```ruby
message = client.messages.create(
model: :"claude-opus-4-8",
model: :"claude-opus-5",
max_tokens: 16000,
messages: [
{ role: "user", content: "What is the capital of France?" }
@@ -44,12 +44,13 @@ end
## Extended Thinking
> **Fable 5, Opus 4.8, Opus 4.7, Opus 4.6, and Sonnet 4.6:** Use adaptive thinking. `budget_tokens` is removed on Fable 5, Opus 4.8, and 4.7 (400 if sent); deprecated on Opus 4.6 and Sonnet 4.6.
> **Fable 5, Claude Opus 5, Opus 4.8, Opus 4.7, Opus 4.6, and Sonnet 4.6:** Use adaptive thinking. `budget_tokens` is removed on Fable 5, Claude Opus 5, Opus 4.8, and 4.7 (400 if sent); deprecated on Opus 4.6 and Sonnet 4.6.
> **Claude Opus 5:** thinking is on by default — omitting `thinking:` runs adaptive (`{ type: "adaptive" }` is equivalent), unlike Opus 4.8/4.7 where omitting it meant no thinking. `{ type: "disabled" }` is accepted only at effort `high` or lower; pairing it with `xhigh`/`max` returns a 400.
> **Older models:** Use `thinking: { type: "enabled", budget_tokens: N }` (must be < `max_tokens`, min 1024).
```ruby
message = client.messages.create(
model: :"claude-opus-4-8",
model: :"claude-opus-5",
max_tokens: 16000,
thinking: { type: "adaptive" },
messages: [{ role: "user", content: "Solve: 27 * 453" }]
@@ -71,7 +72,7 @@ end
```ruby
message = client.messages.create(
model: :"claude-opus-4-8",
model: :"claude-opus-5",
max_tokens: 16000,
system_: [
{ type: "text", text: long_system_prompt, cache_control: { type: "ephemeral" } }
@@ -109,7 +110,7 @@ end
```ruby
response = client.beta.messages.create(
model: :"claude-opus-4-8",
model: :"claude-opus-5",
max_tokens: 16000,
output_config: { task_budget: { type: :tokens, total: 64_000 } },
tools: [...],
@@ -4,7 +4,7 @@
```ruby
stream = client.messages.stream(
model: :"claude-opus-4-8",
model: :"claude-opus-5",
max_tokens: 64000,
messages: [{ role: "user", content: "Write a haiku" }]
)
@@ -24,7 +24,7 @@ class GetWeather < Anthropic::BaseTool
end
client.beta.messages.tool_runner(
model: :"claude-opus-4-8",
model: :"claude-opus-5",
max_tokens: 16000,
tools: [GetWeather.new],
messages: [{ role: "user", content: "What's the weather in San Francisco?" }]
@@ -51,7 +51,7 @@ puts "Environment ID: #{environment.id}" # env_...
# 1. Create the agent (reusable, versioned)
agent = client.beta.agents.create(
name: "Coding Assistant",
model: :"claude-opus-4-8",
model: :"claude-opus-5",
system_: "You are a helpful coding assistant.",
tools: [{type: "agent_toolset_20260401"}]
)
@@ -265,7 +265,7 @@ client.beta.sessions.delete(session.id)
# Agent declares MCP server (no auth here — auth goes in a vault)
agent = client.beta.agents.create(
name: "GitHub Assistant",
model: :"claude-opus-4-8",
model: :"claude-opus-5",
mcp_servers: [
{
type: "url",