Skip to content

Add claude-haiku-5-5 to the model catalog (adaptive thinking, image input, 1M context, tiered pricing) #2892

Description

@code-yeongyu

Summary

Add Claude Haiku 5.5 (claude-haiku-5-5) to the model catalog. It was released on 2026-10-07; upstream oh-my-pi (7af89a4) and pingdotgg/t3code (#16903) added it the same day. Our newest Haiku in packages/ai/src/providers/data is claude-haiku-4-5.

Model facts (from the upstream commits and Anthropic's model docs)

  • Thinking: adaptive, the first adaptive Haiku. budget_tokens is rejected with a 400. Effort ranges from low to max (upstream t3code adds ultrathink); the API default is medium.
  • Input: text and image.
  • Context: 1M tokens native, with 1M as the default; t3code also offers a 200k profile. Max output is 128K tokens.
  • Pricing: tiered. Requests above 100K input tokens bill the whole request at the long-context rates. Take the exact per-token prices from Anthropic's pricing page.
  • No fast mode.
  • Thinking binding: Haiku 5.5 binds signed thinking to the exact preceding conversation, like Sonnet 5.5 (upstream applies the same thinking-binding rules).
  • Discovery gap: Anthropic's /v1/models reports neither reasoning, vision, pricing nor limits for this model. A discovered row would therefore come out as text-only and unpriced, so the catalog needs an explicit patch, not a passive regen.
  • Claude Code subscription lane: requires Claude Code 2.1.293 or later. Earlier versions don't know the model.

How to add it

Mirror how Opus 5.5 (1ca1a14) and Sonnet 5.5 (fd4353b) were added:

  • an explicit entry and patch in packages/ai/scripts/generate-models.ts;
  • regenerated providers/data/*.json for every provider that serves it;
  • the .manifest.json bump;
  • a changes.md entry;
  • a focused test like test/anthropic-opus-5-5.test.ts, covering thinking mode, input modalities, limits, and long-context pricing.

Checklist

  • claude-haiku-5-5 is in the catalog for every provider that serves it, with adaptive thinking, text+image input, 1M context, 128K output, and both pricing tiers.

  • The thinking request uses adaptive mode (no budget_tokens), and the effort levels low..max are offered, with medium as the default.

  • Haiku substring checks. Two places treat every model whose id contains haiku as an older Haiku, and need checking against Haiku 5.5's actual capabilities before the model is offered:

    • packages/ai/src/utils/prompt-cache-ttl.ts:68 (defaultSupportsToolReferences: Haiku rejects client-side tool_reference blocks);
    • packages/coding-agent/src/core/extensions/builtin/tool-search/native-support.ts:26 (native tool search).

    Replace the substring with a version-aware check if 5.5 supports either feature.

  • Aliases. senpi currently has no bare haiku / opus / sonnet alias table, unlike t3code, which points its bare aliases at the 5.5 line. If one is added (or if the desktop or omo maps such names), haiku should resolve to claude-haiku-5-5.

  • Recommended models. Decide whether Haiku 5.5 belongs on any recommended ladder or title/utility-model default that currently names Haiku 4.5.

  • Desktop model picker (code-yeongyu/omo-desktop-app) follows the catalog: Haiku 5.5 is listed with its effort levels and context options, and Haiku 4.5 is shown as the older model. This goes in the same change set or right after the next runtime pin; no separate desktop issue.

Related

Activity

  1. code-yeongyu commented on Oct 8, 2026

    @code-yeongyu
    OwnerAuthor

    Status of the #2892 checklist (delivered in #2911, stacked on #2913):

    #2911 uses Refs #2892. This issue is closed by hand after #2913 and #2911 merge, with the open items carried by #2914.

  2. code-yeongyu commented on Oct 8, 2026

    @code-yeongyu
    OwnerAuthor

    Delivered by #2911, merged as c09e009 and stacked on #2913. claude-haiku-5-5 is in senpi main and ships with the next release.

    What ships

    • 13 catalog rows across 7 providers: Anthropic, 6 Bedrock routes, OpenCode, OpenCode Go, 2 OpenRouter rows, Venice and Vercel.
    • Thinking and pricing: adaptive thinking with effort, image input, and the tiered price bands (the long-context rate above 100K input).
    • Default window: 100K, where the 5x long-context price band starts, so nothing past 100K is billed at 5x without an explicit choice.
    • API rules covered by request-shape tests: no temperature, top_p, top_k, budget_tokens or assistant prefill on the Anthropic and Bedrock rows. Thinking is billed as output. The top-level effort stays stable across turns, so the prompt cache holds. Response blocks are parsed by type.

    Follow-ups

    Evidence at the merged head d688c38

    • Build, bun run check and the full packages/ai suite: 372 files, 3709 passed, 0 failed.
    • GitHub CI: 33 checks green.
    • QA mock loop: 60/60.
    • Review: two independent passes approved it.

    Thanks for the request!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions