Repository navigation
v0.5.4
MMSP 0.5.4 gives every client one environment-key rule and exports it for hosts as @prismshadow/mmsp/credentials and mmsp.credentials (#258). It also adds GPT-6 Luna (#257).
Highlights
- One environment-key rule: a key passed in is always used. Without one, a client reads its
<P>_API_KEYonly when given no base URL, or when given its own default endpoint, such ashttps://api.deepseek.comfordeepseek-official. Any other base URL passed without a key raisesApiKeyRequiredErrorbefore any request. The message names both fixes: pass the key, or drop the base URL and set<P>_API_KEY, plus<P>_BASE_URLfor an endpoint other than the default. Themmspclient still calls an open server keyless. credentialsmodule:CLIENT_CREDENTIALS,environmentCredential(clientType, baseUrl)androutedClientType(model, clientType)tell a host what a client will do without building one. The TypeScript subpath imports nothing and fits a browser bundle. The clients andAutoLLMClientresolve through the same table.- GPT-6 Luna:
gpt-6-lunaon OpenAI andopenai/gpt-6-lunaon OpenRouter, withThinkingLevel.NONEkept asreasoning.effort: "none". - CI: model tests run for the clients a change affects, and publication waits for the full Python and TypeScript suites (#255). The README lists Vertex AI support for Gemini 4 Argon (#256).
Breaking
deepseek-official, zai-official, moonshot-official, minimax-official and google-official no longer send their environment key to a base_url other than their default endpoint. Pass api_key with such a URL, or drop base_url and set <P>_BASE_URL beside <P>_API_KEY. Code that matched the old refusal text should catch ApiKeyRequiredError.
Install
pip install mmsp==0.5.4
npm install @prismshadow/mmsp@0.5.4