# TensorX provider per pi-agent Estensione pi che registra **TensorX** (https://api.tensorx.ai) come provider di modelli OpenAI-compatible, con scoperta dinamica dei modelli e menù di gestione. ## Funzionamento - All'avvio la factory async legge la config (`~/.pi/agent/tensorx.json`) e, se è presente una API key, interroga: - `GET /v1/models` — elenco modelli disponibili per la chiave - `GET /v1/model/info` — metadati (best-effort): `max_input_tokens`, `max_output_tokens`, `supports_reasoning`, `supports_vision`, `mode` (i modelli non-LLM vengono filtrati) e registra il provider `tensorx` (`openai-completions`). Se la rete fallisce usa la cache locale. - I modelli compaiono nel selettore `/model` come `tensorx/`. - Se non c'è una chiave, il provider non viene registrato: usa `/tensorx` per configurarla. ## Comando `/tensorx` Menù interattivo: - **Aggiorna elenco modelli** — fetch live + re-registrazione immediata (senza `/reload`) - **Modifica API key** — input + validazione live contro `/v1/models` - **Mostra stato** — endpoint, sorgente chiave, numero modelli, ultima sincronizzazione - **Esci** Sottocomandi diretti: `/tensorx refresh`, `/tensorx key`, `/tensorx status`. ## Config — `~/.pi/agent/tensorx.json` ```json { "apiKey": "la-tua-chiave", "baseUrl": "https://api.tensorx.ai/v1", "updatedAt": "2026-01-01T00:00:00.000Z", "models": [ { "id": "z-ai/glm-5.2", "reasoning": true, "contextWindow": 1048576, "maxTokens": 131072 } ] } ``` - File creato automaticamente con permessi `600` (contiene la chiave in chiaro, come `auth.json`). - Precedenza chiave: config → variabile d'ambiente `TENSORX_API_KEY`. - `baseUrl` opzionale (utile per test o endpoint self-hosted). ## Note - I costi non sono pubblicati via API: rimangono a zero (nessun tracciamento costi). - I modelli con `supports_reasoning: true` ricevono `reasoning_effort` quando il thinking è attivo.