armandmcqueen.dev
← All runs

opus-5

8/8/2026, 8:52:29 AM · 15 tests · run ec152dbb-c5a1-45ea-bc28-848eb5826193

basic-generation

ok

Plain streaming generation with a soft length constraint (~100 words).

  • Produced 114 words (244 output tokens).
Result
{
  "wordCount": 114,
  "outputTokens": 244
}
5942d758-7cee-43fc-a52d-e9bf282db335
Aug 8, 2026, 08:50:51

anthropic:claude-opus-5

Input
20
Output
244
Reasoning
25
Answer
219
Cost
$0.0062
Mode
streaming
Cost breakdown
Input $0.000100Output $0.0061
Latency
4.5s
TTFT
1.7s
Tok/s
53.7
Tok/s (adj)
75.8

usage-cost

ok

Asserts usage tokens populate and cost computes from the ChatReq contract.

  • in=20 out=11 rt=0 cost=$0.000375 (paid).
Result
{
  "inputTokens": 20,
  "outputTokens": 11,
  "reasoningTokens": 0,
  "costUsd": 0.000375,
  "paid": true
}
6a6ccb55-3023-4ed6-b68d-4ca9dc8e8e50
Aug 8, 2026, 08:50:53

anthropic:claude-opus-5

Input
20
Output
11
Reasoning
0
Answer
11
Cost
$0.000375
Mode
streaming
Cost breakdown
Input $0.000100Output $0.000275
Latency
2.3s
TTFT
1.3s
Tok/s
4.7
Tok/s (adj)
10.7

streaming-structure

ok

Asserts a streaming call captures events that reconstruct into the final text.

  • mode=streaming, 11 stream events, 1 text block(s), 35 chars.
Result
{
  "mode": "streaming",
  "streamEventCount": 11,
  "textBlocks": 1,
  "textLen": 35
}
59a88467-70fa-40c4-a350-f5350d438460
Aug 8, 2026, 08:50:55

anthropic:claude-opus-5

Input
21
Output
53
Reasoning
22
Answer
31
Cost
$0.0014
Mode
streaming
Cost breakdown
Input $0.000105Output $0.0013
Latency
1.8s
TTFT
1.8s
Tok/s
29.8
Tok/s (adj)
2336.1

complete-stream-parity

ok

Same prompt via stream() and complete() both return valid, matching results.

  • stream="Paris" · complete="Paris"
Result
{
  "streamText": "Paris",
  "completeText": "Paris"
}
43fe4831-083c-47fb-87e3-8de67e93218b
Aug 8, 2026, 08:50:57

anthropic:claude-opus-5

Input
23
Output
25
Reasoning
20
Answer
5
Cost
$0.000740
Mode
streaming
Cost breakdown
Input $0.000115Output $0.000625
Latency
2.1s
TTFT
2.1s
Tok/s
11.9
Tok/s (adj)
2840.9
4a117361-628d-4557-b54d-f7e3f8cb2246
Aug 8, 2026, 08:50:59

anthropic:claude-opus-5

Input
23
Output
25
Cost
$0.000740
Mode
non-streaming
Cost breakdown
Input $0.000115Output $0.000625
Latency
1.5s
Tok/s
16.2

reasoning-conformance

ok

Asserts the model's reasoning knob behaves as its reasoning-config declares.

  • Class (from reasoning-config): always-on.
  • reasoningTokens=153, outputTokens=829.
Result
{
  "class": "always-on",
  "reasoningTokens": 153,
  "outputTokens": 829
}
29c68b8a-1f51-4d80-b7e4-4affc8091ebe
Aug 8, 2026, 08:51:08

anthropic:claude-opus-5

Input
127
Output
829
Reasoning
153
Answer
676
Cost
$0.0214
Mode
streaming
Cost breakdown
Input $0.000635Output $0.0207
Latency
9.6s
TTFT
3.0s
Tok/s
86.8
Tok/s (adj)
103.5

single-tool-call

ok

Offers a calculator tool and checks the model calls it for an arithmetic question.

  • Called "multiply" with args {"a":23,"b":17}.
Result
{
  "toolCalled": true,
  "toolName": "multiply",
  "args": {
    "a": 23,
    "b": 17
  },
  "correct": true
}
90ac6886-7a62-4521-931f-88c2b57b8e05
Aug 8, 2026, 08:51:10

anthropic:claude-opus-5

Input
468
Output
68
Reasoning
0
Answer
68
Cost
$0.0040
Mode
streaming
Cost breakdown
Input $0.0023Output $0.0017
Latency
1.8s
Tok/s
37.0

tool-loop

ok

Forces a tool call, feeds the result back, and checks the continuation uses it.

  • step1 (required): multiply({"a":23,"b":17}) → step2: "23 multiplied by 17 is 391."
Result
{
  "toolName": "multiply",
  "args": {
    "a": 23,
    "b": 17
  },
  "product": 391,
  "continuation": "23 multiplied by 17 is 391.",
  "usesResult": true,
  "forced": true
}
82e06e0a-179d-4ced-8f6b-9de13489ef85
Aug 8, 2026, 08:51:15

anthropic:claude-opus-5

Input
591
Output
58
Reasoning
0
Answer
58
Cost
$0.0044
Mode
streaming
Cost breakdown
Input $0.0030Output $0.0014
Latency
4.4s
Tok/s
13.2
4edd5a56-ad94-46a9-8a3c-cb771cb4364f
Aug 8, 2026, 08:51:16

anthropic:claude-opus-5

Input
550
Output
16
Reasoning
0
Answer
16
Cost
$0.0032
Mode
streaming
Cost breakdown
Input $0.0028Output $0.000400
Latency
1.4s
TTFT
1.0s
Tok/s
11.6
Tok/s (adj)
46.7

web-search

ok

Enables server-side web search and checks invocation counts, the per-request cost surcharge, and provider-executed output blocks.

  • Ran 1 web search(es); surcharge 0.0100 USD on top of token cost.
Result
{
  "searches": 1,
  "surchargeUsd": 0.01
}
768c80cc-be1d-4c0a-afa8-6461a08e3d19
Aug 8, 2026, 08:51:38

anthropic:claude-opus-5

Input
14,775
Output
960
Reasoning
107
Answer
853
Web searches
1
Cost
$0.1079
Mode
streaming
Cost breakdown
Input $0.0739Output $0.0240Web search $0.0100
Latency
21.7s
TTFT
1.8s
Tok/s
44.3
Tok/s (adj)
42.9

reasoning-tool-continuity

ok

Reasoning model: continuity token captured on a tool call and replayed so the follow-up succeeds.

  • Step 1 didn't engage reasoning (adaptive discretion) — signature not exercised this run.
  • reasoned=false, anthropic token —; follow-up → "## Balance lookup Account `acme-42`: **$1,234.00** ## Calculation F"
Result
{
  "signatureType": "anthropic",
  "tokenCaptured": false,
  "reasoned": false,
  "answered": true,
  "continuation": "## Balance lookup\n\nAccount `acme-42`: **$1,234.00**\n\n## Calculation\n\nFormula: A = P(1 + r)ⁿ = 1234 × (1.05)⁷\n\nStep 1 — compute the growth fa"
}
bee5564e-43a3-4c5d-9a10-72c47f7c0a40
Aug 8, 2026, 08:51:45

anthropic:claude-opus-5

Input
519
Output
53
Reasoning
0
Answer
53
Cost
$0.0039
Mode
streaming
Cost breakdown
Input $0.0026Output $0.0013
Latency
1.6s
Tok/s
32.7
4bfd3d2c-d170-4b4e-88af-2248b35058bb
Aug 8, 2026, 08:51:56

anthropic:claude-opus-5

Input
589
Output
748
Reasoning
323
Answer
425
Cost
$0.0216
Mode
streaming
Cost breakdown
Input $0.0029Output $0.0187
Latency
10.8s
TTFT
6.5s
Tok/s
69.2
Tok/s (adj)
97.6

prompt-cache

ok

Repeat a large prefix; assert cache-read tokens are reported and cost drops.

  • anthropic cache; cacheRead per attempt [14458]; hit=yes.
Result
{
  "cacheStyle": "anthropic",
  "cacheReadPerAttempt": [
    14458
  ],
  "cacheReadTokens": 14458,
  "cacheHitCost": 0.009334
}
9bc05089-7e4f-47ea-ab19-9b9cd4acb250
Aug 8, 2026, 08:51:59

anthropic:claude-opus-5

Input
14,479
Output
80
Cache Write
14,458
Cost
$0.0925
Mode
non-streaming
Cost breakdown
Input $0.000105Output $0.0020Cache write $0.0904
Latency
3.3s
Tok/s
24.3
cd8e72ad-bc1a-4f99-a501-5ab41a02f494
Aug 8, 2026, 08:52:02

anthropic:claude-opus-5

Input
14,479
Output
80
Cache Read
14,458
Cost
$0.0093
Mode
non-streaming
Cost breakdown
Input $0.000105Output $0.0020Cache read $0.0072
Latency
2.8s
Tok/s
28.3

json-output

ok

Requests a strict JSON object and checks it parses with the required keys.

  • Output parsed as JSON.
  • All required keys present.
  • Output is bare JSON (no leading prose/fence).
Result
{
  "parsed": {
    "name": "Anthropic",
    "founded": 2021,
    "headquarters": "San Francisco, California, USA"
  },
  "validJson": true,
  "missingKeys": [],
  "bareJson": true
}
3e35e4ed-6a04-423e-af8c-431dfec9eb1e
Aug 8, 2026, 08:52:04

anthropic:claude-opus-5

Input
86
Output
40
Reasoning
0
Answer
40
Cost
$0.0014
Mode
streaming
Cost breakdown
Input $0.000430Output $0.0010
Latency
1.7s
TTFT
854ms
Tok/s
23.1
Tok/s (adj)
45.7

summarize-memex

ok

Summarizes an ~11k-token essay to ~500 words (long input, reasoning minimized).

  • Read ~14533 input tokens, wrote 567 words (1345 output tokens) in 21309ms.
Result
{
  "wordCount": 567,
  "inputTokens": 14533,
  "outputTokens": 1345,
  "latencyMs": 21309
}
2a34edd3-89d2-44a3-9d26-5987c579ab9d
Aug 8, 2026, 08:52:25

anthropic:claude-opus-5

Input
14,533
Output
1,345
Reasoning
54
Answer
1,291
Cost
$0.1063
Mode
streaming
Cost breakdown
Input $0.0727Output $0.0336
Latency
21.3s
TTFT
1.9s
Tok/s
63.1
Tok/s (adj)
66.4

truncation

ok

Tiny maxTokens on a long prompt yields finishReason:"length".

  • finishReason=length, out=100 tokens.
Result
{
  "finishReason": "length",
  "outputTokens": 100
}
b679cfae-6149-4231-84d7-fc59697842a2
Aug 8, 2026, 08:52:27

anthropic:claude-opus-5

Input
30
Output
100
Reasoning
100
Answer
0
Cost
$0.0027
Mode
streaming
Cost breakdown
Input $0.000150Output $0.0025
Latency
2.3s
Tok/s
42.7

streaming-only-rejection

ok

Streaming-only models reject complete(); all others accept it.

  • streamingOnly=false; complete() succeeded.
Result
{
  "streamingOnly": false,
  "completeThrew": false
}

abort

ok

A pre-aborted signal rejects the call (abort is threaded + honored).

  • pre-aborted signal → rejected (AbortError).
Result
{
  "rejected": true,
  "errorName": "AbortError"
}