spb/zyquo-cloud Public MIT
Native macOS AI chat client for 12 cloud providers — your keys, every cloud model, one beautiful chat.
Swift 97.4%
Shell 1.7%
Makefile 1%
1<!--2 VERIFICATION.md3 Zyquo Cloud4 Author: Simon-Pierre Boucher5 Mail: contact@spboucher.ai6-->78# API Verification Results — 2026-07-30T19:12:18Z910**202 tests · 202 passed · 0 failed**1112Note: 3 tests (DeepInfra `deepseek-ai/DeepSeek-R1-0528` chat; Kimi `kimi-k3` stream & vision) hit transient 429s during the parallel sweep (Moonshot `engine_overloaded_error`, DeepInfra burst limit) and were re-verified green the same day via the same production clients (`--verify --provider deepinfra` 37/37, `--verify --provider kimi --quick` 4/4).1314| Provider | Model | Test | Result | Latency | Detail |15|---|---|---|---|---|---|16| Anthropic | `—` | models | ✅ | 0.3s | 11 live |17| Anthropic | `claude-fable-5` | chat | ✅ | 2.6s | |18| Anthropic | `claude-haiku-4-5-20251001` | chat | ✅ | 0.9s | |19| Anthropic | `claude-opus-4-1-20250805` | chat | ✅ | 1.8s | |20| Anthropic | `claude-opus-4-5-20251101` | chat | ✅ | 1.5s | |21| Anthropic | `claude-opus-4-6` | chat | ✅ | 2.9s | |22| Anthropic | `claude-opus-4-7` | chat | ✅ | 1.9s | |23| Anthropic | `claude-opus-4-8` | chat | ✅ | 1.0s | |24| Anthropic | `claude-opus-5` | chat | ✅ | 2.4s | |25| Anthropic | `claude-opus-5` | stream | ✅ | 2.2s | deltas=2 usage=true |26| Anthropic | `claude-opus-5` | vision | ✅ | 2.4s | Red |27| Anthropic | `claude-sonnet-4-5-20250929` | chat | ✅ | 2.1s | |28| Anthropic | `claude-sonnet-4-6` | chat | ✅ | 0.9s | |29| Anthropic | `claude-sonnet-5` | chat | ✅ | 1.4s | |30| Cerebras | `—` | models | ✅ | 0.1s | 3 live |31| Cerebras | `gemma-4-31b` | chat | ✅ | 0.2s | |32| Cerebras | `gemma-4-31b` | vision | ✅ | 0.2s | Red |33| Cerebras | `gpt-oss-120b` | chat | ✅ | 0.1s | |34| Cerebras | `gpt-oss-120b` | stream | ✅ | 0.1s | deltas=1 usage=true |35| Cerebras | `zai-glm-4.7` | chat | ✅ | 0.3s | |36| DeepInfra | `—` | models | ✅ | 0.9s | 174 live |37| DeepInfra | `MiniMaxAI/MiniMax-M3` | chat | ✅ | 0.6s | |38| DeepInfra | `Qwen/Qwen3-235B-A22B-Instruct-2507` | chat | ✅ | 0.3s | |39| DeepInfra | `Qwen/Qwen3-235B-A22B-Thinking-2507` | chat | ✅ | 1.6s | |40| DeepInfra | `Qwen/Qwen3-Coder-480B-A35B-Instruct-Turbo` | chat | ✅ | 0.3s | |41| DeepInfra | `Qwen/Qwen3-VL-235B-A22B-Instruct` | chat | ✅ | 2.9s | |42| DeepInfra | `Qwen/Qwen3.5-397B-A17B` | chat | ✅ | 4.0s | |43| DeepInfra | `Qwen/Qwen3.7-Max` | chat | ✅ | 3.8s | |44| DeepInfra | `anthropic/claude-fable-5` | chat | ✅ | 2.3s | |45| DeepInfra | `anthropic/claude-fable-5` | stream | ✅ | 1.8s | deltas=4 usage=true |46| DeepInfra | `anthropic/claude-fable-5` | vision | ✅ | 1.8s | Red |47| DeepInfra | `anthropic/claude-haiku-4-5` | chat | ✅ | 0.9s | |48| DeepInfra | `anthropic/claude-opus-4-8` | chat | ✅ | 2.1s | |49| DeepInfra | `anthropic/claude-opus-5` | chat | ✅ | 1.4s | |50| DeepInfra | `anthropic/claude-sonnet-5` | chat | ✅ | 1.5s | |51| DeepInfra | `deepseek-ai/DeepSeek-R1-0528` | chat | ✅ | 1.8s | |52| DeepInfra | `deepseek-ai/DeepSeek-V3.1` | chat | ✅ | 0.4s | |53| DeepInfra | `deepseek-ai/DeepSeek-V4-Flash` | chat | ✅ | 0.3s | |54| DeepInfra | `deepseek-ai/DeepSeek-V4-Pro` | chat | ✅ | 0.4s | |55| DeepInfra | `google/gemini-2.5-flash` | chat | ✅ | 1.2s | |56| DeepInfra | `google/gemini-2.5-pro` | chat | ✅ | 7.5s | |57| DeepInfra | `google/gemini-3.1-flash-lite` | chat | ✅ | 3.0s | |58| DeepInfra | `google/gemini-3.1-pro` | chat | ✅ | 4.1s | |59| DeepInfra | `google/gemini-3.5-flash` | chat | ✅ | 2.3s | |60| DeepInfra | `meta-llama/Llama-3.3-70B-Instruct-Turbo` | chat | ✅ | 0.2s | |61| DeepInfra | `meta-llama/Llama-4-Maverick-17B-128E-Instruct-FP8` | chat | ✅ | 0.2s | |62| DeepInfra | `meta-llama/Llama-4-Scout-17B-16E-Instruct` | chat | ✅ | 0.3s | |63| DeepInfra | `meta-llama/Meta-Llama-3.1-8B-Instruct-Turbo` | chat | ✅ | 0.4s | |64| DeepInfra | `mistralai/Mistral-Small-3.2-24B-Instruct-2506` | chat | ✅ | 25.4s | |65| DeepInfra | `moonshotai/Kimi-K2.5` | chat | ✅ | 0.9s | |66| DeepInfra | `moonshotai/Kimi-K2.6` | chat | ✅ | 37.4s | |67| DeepInfra | `moonshotai/Kimi-K2.7-Code` | chat | ✅ | 0.7s | |68| DeepInfra | `nvidia/NVIDIA-Nemotron-3-Ultra-550B-A55B` | chat | ✅ | 1.0s | |69| DeepInfra | `openai/gpt-oss-120b` | chat | ✅ | 1.0s | |70| DeepInfra | `openai/gpt-oss-20b` | chat | ✅ | 1.0s | |71| DeepInfra | `zai-org/GLM-4.7` | chat | ✅ | 3.0s | |72| DeepInfra | `zai-org/GLM-5.2` | chat | ✅ | 2.5s | |73| DeepSeek | `—` | models | ✅ | 0.4s | 2 live |74| DeepSeek | `deepseek-v4-flash` | chat | ✅ | 1.2s | |75| DeepSeek | `deepseek-v4-flash` | stream | ✅ | 1.3s | deltas=9 usage=true |76| DeepSeek | `deepseek-v4-pro` | chat | ✅ | 1.2s | |77| Google Gemini | `—` | models | ✅ | 0.2s | 59 live |78| Google Gemini | `gemini-2.5-flash` | chat | ✅ | 0.5s | |79| Google Gemini | `gemini-2.5-flash-lite` | chat | ✅ | 0.4s | |80| Google Gemini | `gemini-2.5-pro` | chat | ✅ | 2.8s | |81| Google Gemini | `gemini-3-flash-preview` | chat | ✅ | 1.1s | |82| Google Gemini | `gemini-3.1-flash-lite` | chat | ✅ | 0.8s | |83| Google Gemini | `gemini-3.1-pro-preview` | chat | ✅ | 2.1s | |84| Google Gemini | `gemini-3.5-flash` | chat | ✅ | 0.9s | |85| Google Gemini | `gemini-3.5-flash-lite` | chat | ✅ | 0.8s | |86| Google Gemini | `gemini-3.6-flash` | chat | ✅ | 1.1s | |87| Google Gemini | `gemini-3.6-flash` | stream | ✅ | 1.1s | deltas=1 usage=true |88| Google Gemini | `gemini-3.6-flash` | vision | ✅ | 1.3s | Red |89| Google Gemini | `gemini-flash-latest` | chat | ✅ | 1.0s | |90| Google Gemini | `gemini-flash-lite-latest` | chat | ✅ | 0.5s | |91| Google Gemini | `gemini-pro-latest` | chat | ✅ | 2.5s | |92| Google Gemini | `gemma-4-26b-a4b-it` | chat | ✅ | 1.8s | |93| Google Gemini | `gemma-4-31b-it` | chat | ✅ | 2.0s | |94| Kimi | `—` | models | ✅ | 0.3s | 12 live |95| Kimi | `kimi-k2.5` | chat | ✅ | 3.7s | |96| Kimi | `kimi-k2.6` | chat | ✅ | 2.4s | |97| Kimi | `kimi-k2.7-code` | chat | ✅ | 1.0s | |98| Kimi | `kimi-k2.7-code-highspeed` | chat | ✅ | 1.1s | |99| Kimi | `kimi-k3` | chat | ✅ | 17.4s | |100| Kimi | `kimi-k3` | stream | ✅ | 3.8s | deltas=9 usage=true |101| Kimi | `kimi-k3` | vision | ✅ | 3.5s | Red |102| Kimi | `moonshot-v1-128k` | chat | ✅ | 0.7s | |103| Kimi | `moonshot-v1-128k-vision-preview` | chat | ✅ | 0.5s | |104| Kimi | `moonshot-v1-32k` | chat | ✅ | 0.7s | |105| Kimi | `moonshot-v1-32k-vision-preview` | chat | ✅ | 1.0s | |106| Kimi | `moonshot-v1-8k` | chat | ✅ | 0.8s | |107| Kimi | `moonshot-v1-8k-vision-preview` | chat | ✅ | 0.5s | |108| Kimi | `moonshot-v1-auto` | chat | ✅ | 0.8s | |109| Mistral | `—` | models | ✅ | 0.3s | 60 live |110| Mistral | `codestral-latest` | chat | ✅ | 0.5s | |111| Mistral | `devstral-latest` | chat | ✅ | 0.3s | |112| Mistral | `magistral-medium-latest` | chat | ✅ | 1.0s | |113| Mistral | `ministral-14b-latest` | chat | ✅ | 0.2s | |114| Mistral | `ministral-3b-latest` | chat | ✅ | 0.3s | |115| Mistral | `ministral-8b-latest` | chat | ✅ | 0.2s | |116| Mistral | `mistral-large-latest` | chat | ✅ | 0.5s | |117| Mistral | `mistral-medium-latest` | chat | ✅ | 0.5s | |118| Mistral | `mistral-medium-latest` | stream | ✅ | 0.5s | deltas=9 usage=true |119| Mistral | `mistral-medium-latest` | vision | ✅ | 0.6s | The image is a solid red color. There ar |120| Mistral | `mistral-small-latest` | chat | ✅ | 0.7s | |121| Mistral | `open-mistral-nemo` | chat | ✅ | 0.3s | |122| OpenAI | `—` | models | ✅ | 0.5s | 131 live |123| OpenAI | `chat-latest` | chat | ✅ | 0.9s | |124| OpenAI | `gpt-3.5-turbo` | chat | ✅ | 1.2s | |125| OpenAI | `gpt-4` | chat | ✅ | 1.2s | |126| OpenAI | `gpt-4-turbo` | chat | ✅ | 2.1s | |127| OpenAI | `gpt-4.1` | chat | ✅ | 0.6s | |128| OpenAI | `gpt-4.1-mini` | chat | ✅ | 0.6s | |129| OpenAI | `gpt-4.1-nano` | chat | ✅ | 0.4s | |130| OpenAI | `gpt-4o` | chat | ✅ | 0.5s | |131| OpenAI | `gpt-4o-mini` | chat | ✅ | 0.5s | |132| OpenAI | `gpt-5` | chat | ✅ | 2.0s | |133| OpenAI | `gpt-5-mini` | chat | ✅ | 1.6s | |134| OpenAI | `gpt-5-nano` | chat | ✅ | 0.7s | |135| OpenAI | `gpt-5.1` | chat | ✅ | 0.8s | |136| OpenAI | `gpt-5.2` | chat | ✅ | 1.0s | |137| OpenAI | `gpt-5.2-chat-latest` | chat | ✅ | 1.0s | |138| OpenAI | `gpt-5.3-chat-latest` | chat | ✅ | 1.0s | |139| OpenAI | `gpt-5.4` | chat | ✅ | 0.8s | |140| OpenAI | `gpt-5.4-mini` | chat | ✅ | 0.5s | |141| OpenAI | `gpt-5.4-nano` | chat | ✅ | 2.7s | |142| OpenAI | `gpt-5.5` | chat | ✅ | 1.1s | |143| OpenAI | `gpt-5.6-luna` | chat | ✅ | 0.5s | |144| OpenAI | `gpt-5.6-sol` | chat | ✅ | 1.1s | |145| OpenAI | `gpt-5.6-sol` | stream | ✅ | 0.9s | deltas=9 usage=true |146| OpenAI | `gpt-5.6-sol` | vision | ✅ | 1.1s | Red |147| OpenAI | `gpt-5.6-terra` | chat | ✅ | 1.0s | |148| OpenAI | `o1` | chat | ✅ | 3.0s | |149| OpenAI | `o3` | chat | ✅ | 0.8s | |150| OpenAI | `o3-mini` | chat | ✅ | 1.4s | |151| OpenAI | `o4-mini` | chat | ✅ | 1.1s | |152| Perplexity | `sonar` | chat | ✅ | 1.7s | |153| Perplexity | `sonar` | stream | ✅ | 1.8s | deltas=9 usage=true |154| Perplexity | `sonar-deep-research` | chat | ✅ | — | SKIPPED: multi-minute agentic research runs; verified via docs only |155| Perplexity | `sonar-pro` | chat | ✅ | 1.8s | |156| Perplexity | `sonar-reasoning-pro` | chat | ✅ | 2.8s | |157| Alibaba Qwen | `—` | models | ✅ | 0.9s | 152 live |158| Alibaba Qwen | `deepseek-v4-flash` | chat | ✅ | 1.3s | |159| Alibaba Qwen | `deepseek-v4-pro` | chat | ✅ | 2.6s | |160| Alibaba Qwen | `glm-5.2` | chat | ✅ | 2.3s | |161| Alibaba Qwen | `kimi-k2.7-code` | chat | ✅ | 1.3s | |162| Alibaba Qwen | `qvq-max` | chat | ✅ | 2.3s | |163| Alibaba Qwen | `qwen-flash` | chat | ✅ | 0.4s | |164| Alibaba Qwen | `qwen-max` | chat | ✅ | 0.5s | |165| Alibaba Qwen | `qwen-plus` | chat | ✅ | 0.6s | |166| Alibaba Qwen | `qwen-turbo` | chat | ✅ | 0.4s | |167| Alibaba Qwen | `qwen3-235b-a22b-instruct-2507` | chat | ✅ | 0.6s | |168| Alibaba Qwen | `qwen3-235b-a22b-thinking-2507` | chat | ✅ | 0.9s | |169| Alibaba Qwen | `qwen3-coder-480b-a35b-instruct` | chat | ✅ | 0.8s | |170| Alibaba Qwen | `qwen3-coder-flash` | chat | ✅ | 0.9s | |171| Alibaba Qwen | `qwen3-coder-next` | chat | ✅ | 0.8s | |172| Alibaba Qwen | `qwen3-coder-plus` | chat | ✅ | 0.9s | |173| Alibaba Qwen | `qwen3-next-80b-a3b-instruct` | chat | ✅ | 0.5s | |174| Alibaba Qwen | `qwen3-next-80b-a3b-thinking` | chat | ✅ | 1.0s | |175| Alibaba Qwen | `qwen3-vl-235b-a22b-instruct` | chat | ✅ | 0.5s | |176| Alibaba Qwen | `qwen3-vl-235b-a22b-thinking` | chat | ✅ | 1.7s | |177| Alibaba Qwen | `qwen3-vl-flash` | chat | ✅ | 0.5s | |178| Alibaba Qwen | `qwen3-vl-plus` | chat | ✅ | 0.5s | |179| Alibaba Qwen | `qwen3.5-122b-a10b` | chat | ✅ | 1.9s | |180| Alibaba Qwen | `qwen3.5-35b-a3b` | chat | ✅ | 1.1s | |181| Alibaba Qwen | `qwen3.5-397b-a17b` | chat | ✅ | 5.0s | |182| Alibaba Qwen | `qwen3.5-flash` | chat | ✅ | 1.9s | |183| Alibaba Qwen | `qwen3.5-plus` | chat | ✅ | 4.9s | |184| Alibaba Qwen | `qwen3.6-flash` | chat | ✅ | 1.9s | |185| Alibaba Qwen | `qwen3.6-plus` | chat | ✅ | 4.7s | |186| Alibaba Qwen | `qwen3.7-flash` | chat | ✅ | 2.6s | |187| Alibaba Qwen | `qwen3.7-max` | chat | ✅ | 4.3s | |188| Alibaba Qwen | `qwen3.7-max` | stream | ✅ | 8.5s | deltas=3 usage=true |189| Alibaba Qwen | `qwen3.7-plus` | chat | ✅ | 4.6s | |190| Alibaba Qwen | `qwen3.7-plus` | vision | ✅ | 1.9s | Red |191| Alibaba Qwen | `qwq-plus` | chat | ✅ | 3.7s | |192| Together AI | `—` | models | ✅ | 0.4s | 270 live |193| Together AI | `MiniMaxAI/MiniMax-M3` | chat | ✅ | 1.0s | |194| Together AI | `Qwen/Qwen3.5-9B` | chat | ✅ | 4.1s | |195| Together AI | `Qwen/Qwen3.6-Plus` | chat | ✅ | 4.1s | |196| Together AI | `Qwen/Qwen3.7-Max` | chat | ✅ | 4.4s | |197| Together AI | `Qwen/Qwen3.7-Plus` | chat | ✅ | 3.2s | |198| Together AI | `deepseek-ai/DeepSeek-V4-Pro` | chat | ✅ | 0.9s | |199| Together AI | `google/gemma-4-31B-it` | chat | ✅ | 1.3s | |200| Together AI | `meta-llama/Llama-3.3-70B-Instruct-Turbo` | chat | ✅ | 1.6s | |201| Together AI | `moonshotai/Kimi-K2.6` | chat | ✅ | 0.8s | |202| Together AI | `moonshotai/Kimi-K2.7-Code` | chat | ✅ | 0.8s | |203| Together AI | `moonshotai/Kimi-K3` | chat | ✅ | 4.4s | |204| Together AI | `moonshotai/Kimi-K3` | stream | ✅ | 4.0s | deltas=2 usage=true |205| Together AI | `nvidia/nemotron-3-ultra-550b-a55b` | chat | ✅ | 0.9s | |206| Together AI | `openai/gpt-oss-120b` | chat | ✅ | 0.7s | |207| Together AI | `openai/gpt-oss-20b` | chat | ✅ | 0.4s | |208| Together AI | `thinkingmachines/Inkling` | chat | ✅ | 0.8s | |209| Together AI | `zai-org/GLM-5.2` | chat | ✅ | 0.7s | |210| xAI | `—` | models | ✅ | 0.2s | 10 live |211| xAI | `grok-4.20` | chat | ✅ | 1.3s | |212| xAI | `grok-4.20-non-reasoning` | chat | ✅ | 0.5s | |213| xAI | `grok-4.3` | chat | ✅ | 1.1s | |214| xAI | `grok-4.5` | chat | ✅ | 0.7s | |215| xAI | `grok-4.5` | stream | ✅ | 1.0s | deltas=9 usage=true |216| xAI | `grok-4.5` | vision | ✅ | 1.3s | Red |217| xAI | `grok-code-fast-1` | chat | ✅ | 1.3s | |218