mistral-sdk-patterns

v2026.09.24

Design a pinned Mistral client adapter with typed results, cancellation, retry classification, and usage accounting. Use when implementing or refactoring SDK access. Trigger with "wrap the Mistral SDK", "review Mistral client code", or "standardize Mistral calls".

GitHub
Install command
npx skhub add jeremylongshore/mistral-sdk-patterns
Markdown
SKILL.md

Mistral SDK Boundary Patterns

Overview

Prevent provider-specific shapes and volatile client behavior from spreading. Centralize configuration, normalize results and errors, and expose cancellation and usage as first-class fields.

Prerequisites

  • A locked official client version and matching documentation.
  • An application interface for chat, embeddings, and optional streams.
  • Defined timeout, retry, observability, and redaction policies.

Current Contract

Mistral documents official Python and TypeScript clients, but signatures can move independently of application code. REST endpoints remain the verification boundary for the pinned client.

Authentication

Inject MISTRAL_API_KEY into one server-side client factory. Return no key or authorization metadata from the adapter.

Instructions

  1. Inventory imports, transport overrides, model strings, and response shapes.
  2. Define normalized types including request ID, usage, finish state, and error class.
  3. Create one factory with explicit host, timeout, user agent, and dependency pin.
  4. Retry only classified transient failures while honoring deadline, cancellation, and budget.
  5. Keep stream assembly and tool-call validation in separate tested components.
  6. Add characterization tests before migrating call sites.

Tool Discipline

Use Read, Glob, and Grep to inspect code, locks, configuration, tests, and evidence. Use Write and Edit only for approved repository changes. Invocation alone does not authorize network calls, paid usage, uploads, stateful resources, admin mutations, deployments, or deletion.

Approval Boundaries

Require approval for dependency, transport, retry, fallback-model, or live characterization changes. Never execute returned tool arguments automatically.

Error Handling

  • Retrying every exception can multiply spend and hide invalid requests.
  • Import-time client construction makes rotation and tests unsafe.
  • Returning raw SDK objects couples the app to undocumented fields.

Output

Return client pin, adapter surface, timeout/retry matrix, normalized fields, affected call sites, tests, and rollback.

Examples

  • Wrap chat and embeddings behind explicit adapter methods.
  • Map 429 as retryable only within the operation deadline and budget.

Validation

Prove only the adapter imports the SDK, errors remain typed, cancellation propagates, usage survives, and secrets do not.

Resources

  • Current first-party evidence map — recheck dated sources before relying on mutable endpoints, models, limits, prices, preview status, or retention.
  • Record live account observations as environment-specific evidence, not universal Mistral guarantees.
Discovery
Tags

No tags published for this skill.

Version
Latest version metadata

Version

v2026.09.24

Published

Sep 24, 2026

Category

Uncategorized

License

MIT

Source path

skills/.curated/mistral-sdk-patterns

Default branch

main

Latest commit

e5a6c3b

Tree SHA

c2dc8e8