Feature request: provider-native model listing, required-header validation, and non-chat endpoints (Anthropic / Gemini)
I maintainer di solito rispondono entro 1 giorno
@jpr5 ci sta già lavorando.
Dal 12/10/2026.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 14/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- bun, typescript
- Ambito
- api, testing-qa
Direzione di ricerca
The payload names no source files, so start by locating how the existing GET /v1/models route and strict mode are handled in the aimock repository. The request bundles four separate features (provider-native model listings, required-header checks, extra endpoints, and cache usage fields), so the first step is to agree with maintainers on which part to take. Done means one scoped part works under strict mode with a test that fails without the change.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Context
We use aimock (1.44.0, strict mode, in a Bun test suite) to test an app that talks to user-configured providers in four formats: OpenAI Chat Completions, OpenAI Responses, Anthropic Messages and Gemini. Generation goes through the Vercel AI SDK and aimock covers it well. The gaps we hit are the calls around generation, which our app makes with plain fetch.
A concrete miss: our model-discovery call to an Anthropic endpoint sent x-api-key but no anthropic-version. The real API answers that with
{"type":"error","error":{"type":"invalid_request_error","message":"anthropic-version: header is required"}}
(HTTP 400), but our aimock-backed tests passed, so we only found it with a real key.
What we would like
-
Provider-native model listing. Today
GET /v1/modelsreturns one OpenAI-shaped list ({object: "list", data: [{id, object: "model", owned_by}]}) to every client, and there is noGET /v1beta/models. It would help to have:- Anthropic
GET /v1/modelsin its own shape (data[{type: "model", id, display_name, created_at}],has_more,first_id,last_id), withlimit/after_idpaging, selected e.g. by the presence ofanthropic-versionorx-api-key. - Gemini
GET /v1beta/models(models[{name: "models/…", displayName, inputTokenLimit, outputTokenLimit, supportedGenerationMethods}],nextPageToken). - Paging that can be forced from fixtures or options (e.g. a small page size), so clients that ignore
has_more/nextPageTokenfail in tests.
- Anthropic
-
Required-header validation under strict mode. On Anthropic routes (
/v1/messages,/v1/models), reject a request withoutanthropic-versionwith the real 400 body above. More generally, strict mode could enforce each provider's documented required headers, since that is exactly the class of rule an SDK-based happy path never exercises. -
Other non-generation endpoints, so they can be tested next to chat:
- Anthropic
GET /v1/models/{model_id}andPOST /v1/messages/count_tokens. - Gemini
GET /v1beta/models/{model}andPOST /v1beta/models/{model}:countTokens.
- Anthropic
-
Anthropic prompt-cache usage in fixtures. As far as we can tell, an Anthropic fixture cannot return
cache_creation_input_tokens,cache_read_input_tokensor thecache_creation.ephemeral_5m_input_tokens/ephemeral_1h_input_tokensbreakdown. Being able to set these (or having replay serve recorded values) would let us test cost and context accounting for cached prompts without a live key.
Happy to provide more detail or test a pre-release. Thanks for aimock.
- Lingua principale
- TypeScript
- Stelle
- 979
- Fork
- 84
- Merge medio
- 1g 5h
- PR unite (30g)
- 75
Preparare l'ambiente
- Include un Dockerfile o un file Docker Compose
- Nessun modello di pull request
- Nessuna guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di CopilotKit/aimock
-
Difficoltà 3/5 1-2 giorni Idoneità per principianti 58/100
CopilotKit/aimock#549 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Feature: model-generated files (inline images) in chat/responses turnsForse già presa @abhiaiyer91 l’ha presa 4 giorni fa. Aperta
Difficoltà 4/5 3-5 giorni Idoneità per principianti 35/100
CopilotKit/aimock#548 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Feature: scriptable citations / annotations on text responsesForse già presa @abhiaiyer91 l’ha presa 4 giorni fa. Aperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
CopilotKit/aimock#547 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno
-
Dependency DashboardAperta
Difficoltà 5/5 Più di una settimana Idoneità per principianti 10/100
CopilotKit/aimock#289 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di CopilotKit/aimock
Issue simili
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
endora-commerce/endora-commerce#397 ·
I maintainer di solito rispondono entro 1 giorno
-
level/task
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
wazuh/wazuh-dashboard-plugins#9472 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 63/100
I maintainer di solito rispondono entro 1 giorno
-
ready-for-agent
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
xavxyz/bei-shan-lin-shui#57 ·
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
opennextjs/opennextjs-cloudflare#1461 ·
I maintainer di solito rispondono entro 1 giorno