Ricevi la newsletter
Tool, prompt e workflow AI. Una volta a settimana, gratis.
Sei dentro. Da questa settimana ricevi la newsletter.
Configurazioni complete e proxy open source per usare Claude Cowork 3P con DeepSeek, Minimax, Z.ai GLM e Ollama Cloud. File pronti da incollare.

Se sei arrivato qui dal video, sai già di cosa parliamo. Sotto trovi i tre file di configurazione (DeepSeek, Minimax, Z.ai GLM) pronti da incollare, le istruzioni del proxy per Ollama Cloud, e i link a tutta la documentazione ufficiale.
Se invece sei capitato qui senza aver visto il video, ti consiglio di partire da quello: la parte visiva (dove cliccare, come si presenta Cowork in modalità 3P, le demo dal vivo) è molto più chiara guardandola che leggendola. Sotto trovi comunque tutto.
🐙 Repo del proxy: github.com/francescogruner/claude-3p-ollama-proxy
Cowork 3P è una modalità di Claude Desktop che fa girare l’inferenza fuori dall’infrastruttura Anthropic. È pensata per le aziende che usano Amazon Bedrock, Google Vertex AI, Microsoft Azure Foundry o un gateway LLM interno. Il punto è semplice: i prompt e le risposte non passano mai dai server Anthropic, e di conseguenza l’app diventa utilizzabile in scenari prima bloccati per ragioni di compliance, GDPR o residenza del dato.
L’opzione che useremo si chiama Gateway personalizzato: accetta qualsiasi endpoint che parli l’API Anthropic.
Documentazione ufficiale:
Per qualche settimana 3P era piuttosto permissiva. Le bastava un baseURL e una chiave API per accettare praticamente qualunque modello con API Anthropic-compatible. Anche Ollama aveva rilasciato un suo lanciatore dedicato (Ollama Launch Cloud Desktop) che pre-configurava tutto.
Poi pochi giorni fa Anthropic ha aggiunto un controllo sul nome del modello. Adesso il backend si aspetta alias come claude-sonnet-4-5 o claude-haiku-4-5. Se gli passi gemma4:31b-cloud direttamente, ti risponde model not found. Ollama, di conseguenza, ha tolto la sua funzione di lancio.
Non è la fine. Provider come DeepSeek, Minimax e Z.ai espongono già endpoint che accettano alias Anthropic e li mappano internamente al loro modello. Funzionano direttamente, senza nessun proxy. Ollama Cloud invece no — e per quello ho dovuto scrivere il proxy che vedi su GitHub.
Ricevi una guida pratica ogni settimana. AI, tool e automazioni.
| Provider | Configurazione diretta | Proxy necessario | Note |
|---|---|---|---|
| DeepSeek | Sì | No | Endpoint Anthropic-compatible, ricarica via API |
| Minimax | Sì | No | Anthropic-compatible, supporta tools/thinking, credito API minimo 25 USD |
| Z.ai (GLM) | Sì | No | Anthropic-compatible, richiede GLM Coding Plan attivo |
| Ollama Cloud | Instabile | Sì | Discovery del modello fallisce, serve il proxy |
Tutte e quattro le configurazioni le ho testate il 9 maggio 2026. Se leggi questo articolo tra qualche settimana e qualcosa non funziona più, fammelo sapere nei commenti del video.
Vale per tutti i provider, fai questi tre passi una volta sola.
Quando applichi e fai click su Applica localmente, l’app si riavvia in modalità 3P. Te ne accorgi perché:
Cowork 3P · GatewayIl file di configurazione viene salvato qui:
%APPDATA%\Local\Cloud-3P\config.json
Su macOS o Linux equivale a ~/.config/Cloud-3P/. Puoi modificarlo direttamente con un editor di testo: tutti i config qui sotto vanno incollati lì.
Genera la chiave API dalla dashboard DeepSeek → API keys → Create new key. Per i primi test bastano 2-5 dollari di credito, le tariffe sono basse.
{
"preferences": {
"coworkScheduledTasksEnabled": true,
"ccdScheduledTasksEnabled": false,
"sidebarMode": "task",
"coworkWebSearchEnabled": true,
"epitaxyPrefs": {
"starred-local-code-sessions": []
}
},
"deploymentMode": "3p",
"providers": [
{
"id": "deepseek",
"displayName": "DeepSeek AI",
"type": "custom",
"apiKey": "LA_TUA_DEEPSEEK_API_KEY",
"baseUrl": "https://api.deepseek.com/anthropic",
"inferenceModels": [
{
"id": "anthropic/claude-sonnet-4-5",
"providerModelId": "deepseek-v4-flash",
"displayName": "DeepSeek V4 Flash"
}
]
}
]
}
Salva, fai Applica localmente, riavvia. Quando apri una nuova task vedi Sonnet 4.5 come modello selezionato, ma sotto il cofano stai parlando con DeepSeek V4 Flash. Se al modello chiedi “che modello sei”, ti dirà di essere Claude — il filtro sul nome modello viene applicato anche al prompt.
Minimax è quello che, nei miei test, restituisce risultati più vicini a Claude. Costa una frazione delle API ufficiali e supporta tools, thinking e tutto il workflow agentico. Richiede un credito minimo iniziale di 25 dollari.
{
"preferences": {
"coworkScheduledTasksEnabled": true,
"ccdScheduledTasksEnabled": false,
"sidebarMode": "task",
"coworkWebSearchEnabled": true,
"epitaxyPrefs": {
"starred-local-code-sessions": []
}
},
"deploymentMode": "3p",
"providers": [
{
"id": "minimax",
"displayName": "MiniMax",
"type": "custom",
"apiKey": "LA_TUA_MINIMAX_API_KEY",
"baseUrl": "https://api.minimax.io/anthropic",
"inferenceModels": [
{
"id": "anthropic/claude-sonnet-4-5",
"providerModelId": "MiniMax-M2.7",
"displayName": "MiniMax M2.7"
},
{
"id": "anthropic/claude-haiku-4-5",
"providerModelId": "MiniMax-M2.7-highspeed",
"displayName": "MiniMax M2.7 Highspeed"
},
{
"id": "anthropic/claude-opus-4-5",
"providerModelId": "MiniMax-M2.7",
"displayName": "MiniMax M2.7 Opus Route"
}
]
}
]
}
Qui ho mappato anche Haiku e Opus, così nel selettore modelli ne hai tre. Utile se vuoi simulare scenari con costi diversi senza cambiare provider.
GLM funziona un po’ come Anthropic stessa: oltre alla chiave API serve un GLM Coding Plan attivo (è un abbonamento di pochi dollari al mese). Solo la chiave non basta per usarlo dentro strumenti di sviluppo come Cowork. Una volta attivato il piano, GLM 4.7 è potente sul coding.
{
"preferences": {
"coworkScheduledTasksEnabled": true,
"ccdScheduledTasksEnabled": false,
"sidebarMode": "task",
"coworkWebSearchEnabled": true,
"epitaxyPrefs": {
"starred-local-code-sessions": []
}
},
"deploymentMode": "3p",
"providers": [
{
"id": "zai-glm",
"displayName": "Z.ai GLM",
"type": "custom",
"apiKey": "LA_TUA_ZAI_API_KEY",
"baseUrl": "https://api.z.ai/api/anthropic",
"inferenceModels": [
{
"id": "anthropic/claude-sonnet-4-5",
"providerModelId": "glm-4.7",
"displayName": "GLM 4.7"
},
{
"id": "anthropic/claude-haiku-4-5",
"providerModelId": "glm-4.5-air",
"displayName": "GLM 4.5 Air"
},
{
"id": "anthropic/claude-opus-4-5",
"providerModelId": "glm-4.7",
"displayName": "GLM 4.7 Opus Route"
}
]
}
]
}
Qui la cosa si complica e per questo ho dovuto scrivere un piccolo proxy. Il problema è che Claude Desktop, in modalità 3P, fa una discovery dei modelli chiamando /v1/models. Ollama risponde con i suoi nomi nativi (gemma4:31b-cloud, gpt-oss:120b-cloud). Poi Claude però prova a richiamarli usando alias claude-sonnet-4-5-20250929, e Ollama risponde model not found.
Il proxy si mette in mezzo: espone gli alias Anthropic verso Claude e riscrive il nome modello prima di inoltrare la richiesta a Ollama. Una sessantina di righe Node.js, zero dipendenze esterne, MIT license.
Repo: github.com/francescogruner/claude-3p-ollama-proxy
Claude Desktop / Cowork
↓
http://localhost:8787 (proxy)
↓
https://ollama.com/v1/messages
Il mapping di default:
claude-sonnet-4-5-20250929 → gemma4:31b-cloud
claude-haiku-4-5-20251001 → gpt-oss:120b-cloud
Lo puoi cambiare con variabili d’ambiente (MODEL_SONNET, MODEL_HAIKU, DEFAULT_MODEL).
Servono Node.js 18+ e una chiave API di Ollama Cloud.
git clone https://github.com/francescogruner/claude-3p-ollama-proxy.git
cd claude-3p-ollama-proxy
Niente npm install: il proxy usa solo moduli built-in di Node.
$env:OLLAMA_API_KEY="LA_TUA_OLLAMA_API_KEY"
node server.js
export OLLAMA_API_KEY="LA_TUA_OLLAMA_API_KEY"
node server.js
Quando parte, in console leggi:
Proxy attivo su http://localhost:8787
Upstream: https://ollama.com
Modelli esposti a Claude:
[ 'claude-sonnet-4-5-20250929', 'claude-haiku-4-5-20251001' ]
Mapping verso Ollama:
{
'claude-sonnet-4-5-20250929': 'gemma4:31b-cloud',
'claude-haiku-4-5-20251001': 'gpt-oss:120b-cloud'
}
Default: gemma4:31b-cloud
In Sviluppatore → Configura inferenza di terze parti scegli Gateway personalizzato e imposta:
http://localhost:8787ollama-proxy (qualsiasi stringa, è solo per superare il check)bearerLasciare la lista vuota è importante: così Claude Desktop chiama /v1/models sul proxy e scopre da solo gli alias.
Mentre il proxy è in esecuzione, in un altro tab del browser apri:
http://localhost:8787/health
Risposta attesa:
{
"ok": true,
"proxy": "claude-desktop-to-ollama-anthropic-proxy",
"upstream": "https://ollama.com",
"exposedModels": [
"claude-sonnet-4-5-20250929",
"claude-haiku-4-5-20251001"
]
}
Il proxy non converte OpenAI chat completions in formato Anthropic. Si limita a riscrivere il nome del modello e a inoltrare il payload tale e quale. Funziona perché Ollama Cloud espone già /v1/messages Anthropic-compatible. Per provider che parlano solo OpenAI-style servirebbe una traduzione completa, e quella tipicamente rompe i flussi avanzati di Claude (tool_use, tool_result, streaming, MCP). Ho preferito tenere il proxy semplice e affidabile per il caso Ollama, che è quello che mi serviva.
Funzionano:
Non funzionano:
La ricerca web nativa non gira con tutti i provider terze parti (ufficialmente è supportata su Vertex e Azure). Ti basta collegare un MCP server tipo FireCrawl per replicare lo stesso comportamento.
Vale la pena dirlo chiaramente: la modalità 3P è nata per non far uscire i tuoi dati dall’infrastruttura che controlli. Ha senso quando “infrastruttura che controlli” significa la tua VPC su AWS, il tuo tenant Vertex AI con regione EU, o un gateway LLM aziendale.
Quando configuri DeepSeek o Minimax come provider, i tuoi prompt finiscono sui server di DeepSeek o Minimax (in Cina). Il vantaggio originale di sovranità del dato decade. Quello che ottieni in cambio è accesso a modelli potenti a una frazione del costo, e la possibilità di usare Cowork senza un abbonamento Anthropic Pro.
Sono due use case completamente diversi. Decidi tu quale è il tuo:
Io personalmente uso entrambi gli approcci a seconda del progetto. Per cose mie sperimentali Minimax è il mio preferito in questo momento.
Cowork 3P è una funzione che evolve di settimana in settimana. Quello che oggi funziona potrebbe non funzionare più tra un po’, oppure potrebbero aprirsi nuovi scenari che oggi sono bloccati. Se quando leggi qualcosa è cambiato, fammelo sapere nei commenti del video o aprimi una issue su GitHub.
Se l’articolo ti è stato utile, iscriviti alla newsletter: ogni venerdì ti mando un riassunto pratico delle novità AI che valgono il tempo di leggere.