Jaggedness and limitations
Every single-pass decision model has a jagged capability frontier: it outperforms slow generative LLMs on narrow, well-scoped judgment calls, and underperforms on tasks that require multi-step scratchpad computation or exact counting. Designing reliable agent harnesses means calling mouse-1 where a single forward pass is strong and keeping deterministic code or reasoning models where it is not.
Where mouse-1 excels
Section titled “Where mouse-1 excels”| Use case | Why a single forward pass wins | Recommended primitive |
|---|---|---|
| Zero-shot tool and intent routing | Dynamic option sets (criteria changes per turn or user), natural-language descriptions, ~40–100 ms latency | choice |
| Pre-execution action gating | Binary safety/policy check on a proposed command, URL, or diff before execution | noul |
| Prompt-injection resistance | Untrusted content lives inside state and is never decoded as instructions; mouse-1 only scores your fixed option keys | noul + choice |
| Ordinal patch and rubric grading | Evaluating whether a diff or test log satisfies an objective along 2–10 concrete levels | score |
| Speculative multi-question fan-out | Answering 5–50 independent questions over one state in a single pass (state_tokens billed once) | choice + noul + score |
Known failure modes (do not use mouse-1 for these)
Section titled “Known failure modes (do not use mouse-1 for these)”Because mouse-1 scores options in one non-autoregressive forward pass with zero output tokens (output_tokens = 0), it has no chain-of-thought scratchpad. Avoid delegating these tasks to the model:
- Exact multi-step arithmetic and financial totals: Do not ask
mouse-1whetherinvoice.line_itemssum toinvoice.total. Compute the sum in application code and pass the boolean or discrepancy intostateif a semantic judgment is still needed. - Exact counting over large arrays or long strings: Do not ask
"Are there more than 15 failed tests in test_log?"over raw log text. Parse or count in code (failed_count: 17) and pass the structured count instate. - Calendar, timezone, and date math: Do not ask
"Is 2026-10-14 more than 14 business days after 2026-09-22?". Compute the delta in code using your runtime's date library. - ** Cryptographic, regex, or syntax validation:** Checksums, UUID formats, JSON schema validity, and carrier opt-out keywords (
STOP,UNSUBSCRIBE) belong in deterministic validators, never a probabilistic model. - States exceeding 65,536 tokens:
mouse-1refuses states above 65,536 tokens with422 state_too_long($0billed) rather than silently truncating. Pre-filter relevant files or fields before calling/v1/decisions.
When a fixed-label supervised classifier (DeBERTa / ModernBERT) is a better fit
Section titled “When a fixed-label supervised classifier (DeBERTa / ModernBERT) is a better fit”A general-purpose decision model is not always the right tool. Consider a fine-tuned encoder (such as DeBERTa-v3 or ModernBERT) instead of mouse-1 when all four of these hold:
- Your label set is fixed and small (for example, a permanent 3-way sentiment or spam tagger that never changes per customer or per turn).
- You already have 10,000+ clean labeled examples for that exact schema and retrain whenever the rubric changes.
- Your input is a short single text (
< 512tokens) rather than a multi-field agent state or 10k-token diff. - You only ask one question per input rather than fanning out multiple
choice,noul, andscorequestions in a single pass.
Conversely, use mouse-1 when your options or rubrics are dynamic per tenant or turn, when you have 0 to 1,000 labeled examples (using POST /v1/calibrations once you reach 200 examples), or when you evaluate multiple heterogeneous questions against a shared agent state.