Follow Discord
Sweep 10 Nov 2026 · 02:18Z Build v2.1.322 539 read Stable v2.1.311 Latest v2.1.322 Next v2.1.322 Feeds RSS JSON llms.txt llms-full.txt Unofficial

PreModelSwitch

hook never mined documented JSON

A Claude Code hook event, read out of the shipped bundle. No mined inventory carries it: everything below comes from what this site has written about it.

Before Claude Code applies a model switch that you or a client requested. Can block the switch

Anthropic's own wording. Read off Hooks reference, captured 2026-11-11.

First seen — never in a mined build
Last seen — never in a mined build
Builds0 / 161on this box, as of v2.1.322
Written about v2.1.251 first named in a changelog, 28 Aug 2026

In the changelogs

13

Releases whose published page names PreModelSwitch.

  1. v2.1.307
    Changing the model from a program now reports the model that applies

    When a program changes Claude Code's model, the reply now names the model in use, and the wait message mentions the PreModelSwitch hook

    found in this entry's text

  2. v2.1.302
    Tools run remotely can use a location already checked by the remote runner

    When a session runs a tool remotely, Claude Code can now use a location the remote runner has already checked

    found in this entry's text

  3. v2.1.295
    A new setting limits what your own skills, agents and hooks can do

    Setting CLAUDE_CODE_RESTRICT_PERSONAL_CONFIG stops your own skills, agents and hooks from widening permissions, and makes key hooks required

    found in this entry's text

  4. v2.1.295
    Switching fast mode can now run hooks and wait for the workspace

    Turning fast mode on or off now goes through a step that can run PreModelSwitch hooks and show "Waiting for the workspace…"

    found in this entry's text, named in this entry

  5. v2.1.284
    Hooks from a plugin on an unavailable machine now fail with a clear message

    Hooks from a plugin that runs on another machine now report that the machine is unavailable, instead of failing with an unexplained error

    found in this entry's text

  6. v2.1.260
    PreModelSwitch/PostModelSwitch hook-load failures now give more actionable errors

    Failed model-switch hook loads now give a specific, actionable error message.

    found in this entry's text, named in this entry

  7. v2.1.251
    New PreModelSwitch and PostModelSwitch hooks

    New PreModelSwitch and PostModelSwitch hooks let you gate or annotate every model change.

    named in this entry, found in this entry's text

  8. v2.1.251
    /model switches can be blocked or held for confirmation by a hook

    A PreModelSwitch hook can block or hold your /model change for confirmation.

    named in this entry, found in this entry's text

  9. v2.1.251
    Fast mode now vets the model change through a hook before applying

    Turning Fast mode on now runs your model-switch hook and can be refused.

    found in this entry's text

  10. v2.1.251
    The /model menu and SDK flag changes wait on PreModelSwitch hooks

    Model and effort changes from the picker now run hooks first and can be cancelled.

    found in this entry's text

  11. v2.1.251
    Switch confirmation can show a hook's own reason

    Model and effort switch dialogs can show that a PreModelSwitch hook asked you to confirm.

    named in this entry, found in this entry's text

  12. v2.1.251
    Pending model switches now get an immediate reply and a follow-up

    A model switch over the control bridge replies immediately as pending, then follows up with the result.

    found in this entry's text

  13. v2.1.251
    Fast mode failures explain why

    When fast mode can't toggle, the message says whether it timed out, was refused, or the model changed.

    found in this entry's text

First cited

14

The earliest release whose published evidence quoted PreModelSwitch was v2.1.251, 28 Aug 2026. That is the oldest release this project wrote about it, so it is a floor on the name's age and not the release that introduced it. It is not a presence reading: which builds carried the name is the table below.

ReleaseDateThe span that was quoted
v2.1.25128 Aug 2026A PreModelSwitch hook asked you to confirm
v2.1.25128 Aug 2026Fast mode was not ${o}: the model changed while PreModelSwitch hooks ran; try again
v2.1.25128 Aug 2026Fast mode was not enabled: the model changed while PreModelSwitch hooks ran; try again
v2.1.25128 Aug 2026Model switch blocked by a PreModelSwitch hook
v2.1.25128 Aug 2026PreModelSwitch
v2.1.25128 Aug 2026PreModelSwitch: [], PostModelSwitch: [],

8 further spans in the ledger name it. The list above is the earliest first and stops at 6.

Presence across releases

0

The miner has never read a build containing this name. It is here because a changelog entry of ours names it, which is evidence that it existed and not evidence of which releases carried it. The inventory starts at v2.1.138 and everything older than that was never mined.

Read out of the published npm bundle release by release, and out of Anthropic's own documentation as this site captured it. Nothing on this page is a description anybody here wrote about what the hook event does. All hook events.

Feedback