diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index af9110a..29c90f0 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -275,7 +275,7 @@ jobs: **npm 全局安装** \`\`\`bash - npm install -g lingxiao_cli + npm install -g @lingxiao-office/lingxiao-coding lingxiao \`\`\` EOF @@ -315,3 +315,34 @@ jobs: generate_release_notes: true env: GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + # ── 发布到 npm ────────────────────────────────────────────────── + publish-npm: + name: Publish to npm + needs: [check-release, build-portable, build-binary, build-source] + runs-on: ubuntu-latest + if: needs.check-release.outputs.should_run == 'true' + steps: + - uses: actions/checkout@v4 + + - name: Setup Node.js + uses: actions/setup-node@v4 + with: + node-version: '24' + registry-url: 'https://registry.npmjs.org' + + - name: Install dependencies + run: npm ci + + - name: Install web dependencies + run: cd web && npm ci + + - name: Build package + run: npm run build:package + env: + LINGXIAO_SKIP_MODELS_SNAPSHOT: '1' + + - name: Publish + run: npm publish --access public + env: + NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }} diff --git a/README.md b/README.md index ae58fee..07da86f 100644 --- a/README.md +++ b/README.md @@ -132,6 +132,13 @@ LingXiao 内置了 Claude Code Driver 和 Codex Driver,可以把 `claude` CLI - npm 或兼容包管理器 ``` +### npm 全局安装(推荐) + +```bash +npm install -g @lingxiao-office/lingxiao-coding +lingxiao +``` + ### 源码安装 ```bash diff --git a/VERSION b/VERSION index 1cac385..f8f4f03 100644 --- a/VERSION +++ b/VERSION @@ -1 +1 @@ -1.11.0 +1.12.1 diff --git a/package-lock.json b/package-lock.json index bcb3522..47c9d65 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,18 +1,18 @@ { - "name": "lingxiao_cli", - "version": "1.12.0", + "name": "@lingxiao-office/lingxiao-coding", + "version": "1.12.1", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "lingxiao_cli", - "version": "1.12.0", + "name": "@lingxiao-office/lingxiao-coding", + "version": "1.12.1", "cpu": [ "x64", "arm64" ], "hasInstallScript": true, - "license": "UNLICENSED", + "license": "AGPL-3.0-only", "os": [ "darwin", "linux", @@ -38,6 +38,7 @@ "@langfuse/client": "^5.5.3", "@langfuse/otel": "^5.5.3", "@langfuse/tracing": "^5.5.3", + "@lingxiao-office/sdk": "^1.0.1", "@lydell/node-pty": "1.2.0-beta.10", "@modelcontextprotocol/sdk": "^1.29.0", "@nodesecure/js-x-ray": "^11.1.0", @@ -3418,6 +3419,82 @@ "integrity": "sha512-XlK9dERP2n9afkJ23JyJzpmesLgiOHmhqKuGgeytnT+IVGFdAsYl1wLr2o+byXNAN5fveNbc7CCI6RfBsd5FCw==", "license": "MIT" }, + "node_modules/@lingxiao-office/sdk": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/@lingxiao-office/sdk/-/sdk-1.0.1.tgz", + "integrity": "sha512-P89YQCsDgRxBdcCxmb85T8kIKKDmGhuq9RY+I948bQE9oKJbWJJV/Ilqg2xetO8xuYN3sX4n+yjPmyAndOUFVw==", + "license": "MIT", + "dependencies": { + "@ai-sdk/amazon-bedrock": "^3.0.101", + "@ai-sdk/anthropic": "^2.0.81", + "@ai-sdk/google": "^2.0.74", + "@ai-sdk/openai": "^2.0.106", + "@ai-sdk/provider": "^2.0.0", + "@ai-sdk/provider-utils": "^3.0.0", + "@anthropic-ai/sdk": "^0.82.0", + "@fastify/cors": "^11.2.0", + "@fastify/static": "^9.1.1", + "@fastify/websocket": "^11.2.0", + "@modelcontextprotocol/sdk": "^1.29.0", + "acorn": "^8.16.0", + "ai": "^5.0.198", + "ajv": "^8.17.1", + "chokidar": "^5.0.0", + "fastify": "^5.8.4", + "glob": "^13.0.6", + "js-tiktoken": "^1.0.21", + "node-fetch": "^3.3.2", + "openai": "^6.33.0", + "proxy-agent": "^8.0.1", + "simple-git": "^3.36.0", + "string-width": "^8.2.0", + "typescript": "^6.0.2", + "undici": "^8.0.2", + "yaml": "^2.9.0", + "zod": "^4.3.6" + }, + "engines": { + "node": ">=24.0.0" + }, + "optionalDependencies": { + "@ast-grep/lang-c": "^0.0.6", + "@ast-grep/lang-cpp": "^0.0.6", + "@ast-grep/lang-go": "^0.0.6", + "@ast-grep/lang-java": "^0.0.7", + "@ast-grep/lang-python": "^0.0.6", + "@ast-grep/lang-ruby": "^0.0.7", + "@ast-grep/lang-rust": "^0.0.7", + "@ast-grep/napi": "^0.42.2", + "@langfuse/client": "^5.5.3", + "@langfuse/otel": "^5.5.3", + "@langfuse/tracing": "^5.5.3", + "@lydell/node-pty": "1.2.0-beta.10", + "@lydell/node-pty-darwin-arm64": "1.2.0-beta.10", + "@lydell/node-pty-darwin-x64": "1.2.0-beta.10", + "@lydell/node-pty-linux-arm64": "1.2.0-beta.10", + "@lydell/node-pty-linux-x64": "1.2.0-beta.10", + "@lydell/node-pty-win32-arm64": "1.2.0-beta.10", + "@lydell/node-pty-win32-x64": "1.2.0-beta.10", + "@nodesecure/js-x-ray": "^11.1.0", + "@opentelemetry/api": "^1.9.1", + "@opentelemetry/sdk-node": "^0.219.0", + "@slidev/cli": "^52.15.2", + "@xterm/headless": "5.5.0", + "docx": "^9.7.1", + "exceljs": "^4.4.0", + "jszip": "^3.10.1", + "mammoth": "^1.12.0", + "pdf-lib": "^1.17.1", + "pdf-parse": "^2.4.5", + "pdfkit": "^0.18.0", + "playwright": "^1.59.1", + "pptxgenjs": "^4.0.1", + "sharp": "^0.34.5", + "skia-canvas": "^3.0.8", + "tesseract.js": "^7.0.0", + "unzipper": "^0.12.5" + } + }, "node_modules/@lukeed/ms": { "version": "2.0.2", "resolved": "https://registry.npmmirror.com/@lukeed/ms/-/ms-2.0.2.tgz", diff --git a/package.json b/package.json index 8373755..ae32458 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { - "name": "lingxiao_cli", - "version": "1.12.0", - "description": "凌霄剑域 - 动态智能编排系统 (Node.js 版本)", + "name": "@lingxiao-office/lingxiao-coding", + "version": "1.12.1", + "description": "凌霄剑域 - 动态智能编排系统 (Node.js 版本) | Lingxiao Coding - Dynamic Agent Orchestration System", "main": "dist/index.js", "type": "module", "engines": { @@ -63,9 +63,20 @@ "README.md", "LICENSE" ], - "keywords": [], - "author": "", - "license": "UNLICENSED", + "keywords": [ + "lingxiao", + "agent", + "ai", + "llm", + "cli", + "orchestration", + "coding-assistant", + "multi-agent", + "tool-calling", + "framework" + ], + "author": "Lingxiao Office", + "license": "AGPL-3.0-only", "devDependencies": { "@types/node": "^25.5.0", "@types/pdfkit": "^0.17.6", @@ -97,10 +108,10 @@ "@langfuse/client": "^5.5.3", "@langfuse/otel": "^5.5.3", "@langfuse/tracing": "^5.5.3", + "@lingxiao-office/sdk": "^1.0.1", "@lydell/node-pty": "1.2.0-beta.10", "@modelcontextprotocol/sdk": "^1.29.0", "@nodesecure/js-x-ray": "^11.1.0", - "electron-updater": "^6.8.9", "@opentelemetry/api": "^1.9.1", "@opentelemetry/sdk-node": "^0.219.0", "@slidev/cli": "^52.15.2", @@ -111,6 +122,7 @@ "chokidar": "^5.0.0", "commander": "^14.0.3", "docx": "^9.7.1", + "electron-updater": "^6.8.9", "exceljs": "^4.4.0", "fastify": "^5.8.4", "glob": "^13.0.6", @@ -224,5 +236,17 @@ ], "category": "Development" } + }, + "homepage": "https://github.com/hexian2001/lingxiao-coding", + "repository": { + "type": "git", + "url": "git+https://github.com/hexian2001/lingxiao-coding.git" + }, + "bugs": { + "url": "https://github.com/hexian2001/lingxiao-coding/issues" + }, + "publishConfig": { + "access": "public", + "registry": "https://registry.npmjs.org/" } } diff --git a/src/llm/models-snapshot.json b/src/llm/models-snapshot.json index 213d326..77faa67 100644 --- a/src/llm/models-snapshot.json +++ b/src/llm/models-snapshot.json @@ -20516,8 +20516,8 @@ "output": 262144 }, "cost": { - "input": 0.95, - "output": 4, + "input": 0.8, + "output": 3.4, "cache_read": 0.16 } }, @@ -21295,14 +21295,14 @@ "output": 131072 }, "cost": { - "input": 2, - "output": 6, - "cache_read": 0.4, + "input": 0.522, + "output": 1.044, + "cache_read": 0.0043, "tiers": [ { - "input": 2, - "output": 6, - "cache_read": 0.4, + "input": 0.522, + "output": 1.044, + "cache_read": 0.0043, "tier": { "type": "context", "size": 256000 @@ -21310,9 +21310,9 @@ } ], "context_over_200k": { - "input": 2, - "output": 6, - "cache_read": 0.4 + "input": 0.522, + "output": 1.044, + "cache_read": 0.0043 } } }, @@ -21523,7 +21523,7 @@ "output": 131072 }, "cost": { - "input": 1.4, + "input": 1.38, "output": 4.4, "cache_read": 0.26 } @@ -21682,7 +21682,8 @@ }, "cost": { "input": 0.13, - "output": 0.85 + "output": 0.85, + "cache_read": 0.025 } }, "zai-org/glm-4.7-flash": { @@ -22069,7 +22070,7 @@ "cost": { "input": 1.25, "output": 3.75, - "cache_read": 0.125, + "cache_read": 0.25, "cache_write": 1.5625 } }, @@ -22502,8 +22503,8 @@ "output": 65536 }, "cost": { - "input": 0.3, - "output": 1.3 + "input": 0.38, + "output": 1.55 } }, "qwen/qwen3.5-397b-a17b": { @@ -23021,9 +23022,9 @@ "output": 393216 }, "cost": { - "input": 1.69, - "output": 3.38, - "cache_read": 0.13 + "input": 1.6, + "output": 3.2, + "cache_read": 0.135 } }, "deepseek/deepseek-v3.2-exp": { @@ -29570,6 +29571,284 @@ } } }, + "trustedrouter": { + "id": "trustedrouter", + "env": [ + "TRUSTEDROUTER_API_KEY" + ], + "npm": "@ai-sdk/openai-compatible", + "api": "https://api.trustedrouter.com/v1", + "name": "TrustedRouter", + "doc": "https://trustedrouter.com/docs", + "models": { + "zdr": { + "id": "zdr", + "name": "Zero Data Retention", + "description": "TrustedRouter privacy routing alias that prefers zero data retention model endpoints.", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "none", + "low", + "medium", + "high" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": true, + "release_date": "2026-06-01", + "last_updated": "2026-06-27", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 131072 + } + }, + "e2e": { + "id": "e2e", + "name": "End-to-End Encrypted", + "description": "TrustedRouter privacy routing alias for end-to-end encrypted provider routes where available.", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "none", + "low", + "medium", + "high" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": true, + "release_date": "2026-06-01", + "last_updated": "2026-06-27", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 131072 + } + }, + "synth-code": { + "id": "synth-code", + "name": "Synth Code", + "description": "TrustedRouter code synthesis orchestration alias that combines multiple model responses into one answer.", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "none", + "low", + "medium", + "high" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": true, + "release_date": "2026-06-20", + "last_updated": "2026-06-27", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 131072 + } + }, + "fast": { + "id": "fast", + "name": "Fast", + "description": "TrustedRouter speed routing alias that prefers low-latency healthy model endpoints.", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "none", + "low", + "medium", + "high" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": true, + "release_date": "2026-06-01", + "last_updated": "2026-06-27", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 131072 + } + }, + "synth": { + "id": "synth", + "name": "Synth", + "description": "TrustedRouter synthesis orchestration alias that combines multiple model responses into one answer.", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "none", + "low", + "medium", + "high" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": true, + "release_date": "2026-06-20", + "last_updated": "2026-06-27", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 131072 + } + }, + "auto": { + "id": "auto", + "name": "Auto", + "description": "TrustedRouter automatic routing alias that chooses a healthy supported model endpoint for the request.", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "none", + "low", + "medium", + "high" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": true, + "release_date": "2026-05-01", + "last_updated": "2026-06-27", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 131072 + } + }, + "cheap": { + "id": "cheap", + "name": "Cheap", + "description": "TrustedRouter low-cost routing alias that prefers inexpensive healthy model endpoints.", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "none", + "low", + "medium", + "high" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": true, + "release_date": "2026-05-01", + "last_updated": "2026-06-27", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 131072 + } + } + } + }, "zhipuai": { "id": "zhipuai", "env": [ @@ -33953,14 +34232,74 @@ "name": "StepFun AI", "doc": "https://platform.stepfun.ai/docs/en/step-plan/integrations/open-code", "models": { + "step-2-16k": { + "id": "step-2-16k", + "name": "Step 2 (16K)", + "description": "StepFun flash model for efficient multimodal reasoning, coding, and tool use", + "attachment": false, + "reasoning": true, + "reasoning_options": [], + "tool_call": true, + "temperature": true, + "knowledge": "2024-06", + "release_date": "2025-01-01", + "last_updated": "2026-02-13", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 16384, + "input": 16384, + "output": 8192 + }, + "cost": { + "input": 5.21, + "output": 16.44, + "cache_read": 1.04 + } + }, + "step-tts-2": { + "id": "step-tts-2", + "name": "Step TTS 2", + "description": "Speech generation model for controllable voice, narration, and audio delivery", + "family": "step", + "attachment": false, + "reasoning": false, + "tool_call": false, + "temperature": false, + "release_date": "2026-03-01", + "last_updated": "2026-07-02", + "modalities": { + "input": [ + "text" + ], + "output": [ + "audio" + ] + }, + "open_weights": false, + "limit": { + "context": 0, + "output": 0 + } + }, "step-3.5-flash": { "id": "step-3.5-flash", "name": "Step 3.5 Flash", - "description": "StepFun flash model for efficient multimodal reasoning, coding, and tool use", + "description": "StepFun flash lane for quick multimodal reasoning and coding assistance", "attachment": false, "reasoning": true, "reasoning_options": [], "tool_call": true, + "interleaved": { + "field": "reasoning_content" + }, "temperature": true, "knowledge": "2025-01", "release_date": "2026-01-29", @@ -33985,6 +34324,56 @@ "cache_read": 0.02 } }, + "stepaudio-2.5-asr": { + "id": "stepaudio-2.5-asr", + "name": "StepAudio 2.5 ASR", + "description": "Speech transcription model for accurate audio-to-text and captioning workflows", + "family": "step", + "attachment": false, + "reasoning": false, + "tool_call": false, + "temperature": false, + "release_date": "2026-04-24", + "last_updated": "2026-07-02", + "modalities": { + "input": [ + "audio" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 0, + "output": 0 + } + }, + "stepaudio-2.5-tts": { + "id": "stepaudio-2.5-tts", + "name": "StepAudio 2.5 TTS", + "description": "Speech generation model for controllable voice, narration, and audio delivery", + "family": "step", + "attachment": false, + "reasoning": false, + "tool_call": false, + "temperature": false, + "release_date": "2026-04-16", + "last_updated": "2026-07-02", + "modalities": { + "input": [ + "text" + ], + "output": [ + "audio" + ] + }, + "open_weights": false, + "limit": { + "context": 0, + "output": 0 + } + }, "step-3.5-flash-2603": { "id": "step-3.5-flash-2603", "name": "Step 3.5 Flash 2603", @@ -34001,6 +34390,9 @@ } ], "tool_call": true, + "interleaved": { + "field": "reasoning_content" + }, "temperature": true, "knowledge": "2025-01", "release_date": "2026-04-02", @@ -34024,6 +34416,83 @@ "output": 0.3, "cache_read": 0.02 } + }, + "step-3.7-flash": { + "id": "step-3.7-flash", + "name": "Step 3.7 Flash", + "description": "Newer StepFun flash model for faster agents, coding, and multimodal prompts", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "low", + "medium", + "high" + ] + } + ], + "tool_call": true, + "interleaved": { + "field": "reasoning_content" + }, + "temperature": true, + "knowledge": "2026-01-01", + "release_date": "2026-05-29", + "last_updated": "2026-06-29", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 256000, + "input": 256000, + "output": 256000 + }, + "cost": { + "input": 0.2, + "output": 1.15, + "cache_read": 0.04 + } + }, + "step-1-32k": { + "id": "step-1-32k", + "name": "Step 1 (32K)", + "description": "StepFun flash model for efficient multimodal reasoning, coding, and tool use", + "attachment": false, + "reasoning": true, + "reasoning_options": [], + "tool_call": true, + "temperature": true, + "knowledge": "2024-06", + "release_date": "2025-01-01", + "last_updated": "2026-02-13", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 32768, + "input": 32768, + "output": 32768 + }, + "cost": { + "input": 2.05, + "output": 9.59, + "cache_read": 0.41 + } } } }, @@ -48913,21 +49382,33 @@ "output": 4.48 } }, - "anthropic/claude-3.5-haiku": { - "id": "anthropic/claude-3.5-haiku", - "name": "Claude 3.5 Haiku", - "description": "Fast Claude model for responsive assistance, classification, and lightweight agents", + "anthropic/claude-sonnet-5-free": { + "id": "anthropic/claude-sonnet-5-free", + "name": "Claude Sonnet 5 (Free)", + "description": "Everyday Claude agent model for coding, planning, browsing, and general work", + "family": "claude-sonnet", "attachment": true, - "reasoning": false, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "low", + "medium", + "high" + ] + } + ], "tool_call": true, - "temperature": true, - "knowledge": "2025-01-01", - "release_date": "2024-11-04", - "last_updated": "2024-11-04", + "temperature": false, + "knowledge": "2026-01-31", + "release_date": "2026-06-30", + "last_updated": "2026-06-30", "modalities": { "input": [ "text", - "image" + "image", + "pdf" ], "output": [ "text" @@ -48935,46 +49416,35 @@ }, "open_weights": false, "limit": { - "context": 200000, - "output": 64000 + "context": 1000000, + "output": 128000 }, "provider": { "npm": "@ai-sdk/anthropic", "api": "https://zenmux.ai/api/anthropic/v1" }, "cost": { - "input": 0.8, - "output": 4, - "cache_read": 0.08, - "cache_write": 1 + "input": 0, + "output": 0, + "cache_read": 0, + "cache_write": 0 } }, - "anthropic/claude-sonnet-4.5": { - "id": "anthropic/claude-sonnet-4.5", - "name": "Claude Sonnet 4.5", - "description": "Balanced Claude model for coding, analysis, agent workflows, and cost control", + "anthropic/claude-3.5-haiku": { + "id": "anthropic/claude-3.5-haiku", + "name": "Claude 3.5 Haiku", + "description": "Fast Claude model for responsive assistance, classification, and lightweight agents", "attachment": true, - "reasoning": true, - "reasoning_options": [ - { - "type": "effort", - "values": [ - "low", - "medium", - "high" - ] - } - ], + "reasoning": false, "tool_call": true, "temperature": true, "knowledge": "2025-01-01", - "release_date": "2025-09-29", - "last_updated": "2025-09-29", + "release_date": "2024-11-04", + "last_updated": "2024-11-04", "modalities": { "input": [ "text", - "image", - "pdf" + "image" ], "output": [ "text" @@ -48982,7 +49452,7 @@ }, "open_weights": false, "limit": { - "context": 1000000, + "context": 200000, "output": 64000 }, "provider": { @@ -48990,15 +49460,15 @@ "api": "https://zenmux.ai/api/anthropic/v1" }, "cost": { - "input": 3, - "output": 15, - "cache_read": 0.3, - "cache_write": 3.75 + "input": 0.8, + "output": 4, + "cache_read": 0.08, + "cache_write": 1 } }, - "anthropic/claude-sonnet-4": { - "id": "anthropic/claude-sonnet-4", - "name": "Claude Sonnet 4", + "anthropic/claude-sonnet-4.5": { + "id": "anthropic/claude-sonnet-4.5", + "name": "Claude Sonnet 4.5", "description": "Balanced Claude model for coding, analysis, agent workflows, and cost control", "attachment": true, "reasoning": true, @@ -49015,11 +49485,58 @@ "tool_call": true, "temperature": true, "knowledge": "2025-01-01", - "release_date": "2025-05-22", - "last_updated": "2025-05-22", + "release_date": "2025-09-29", + "last_updated": "2025-09-29", "modalities": { "input": [ - "image", + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 64000 + }, + "provider": { + "npm": "@ai-sdk/anthropic", + "api": "https://zenmux.ai/api/anthropic/v1" + }, + "cost": { + "input": 3, + "output": 15, + "cache_read": 0.3, + "cache_write": 3.75 + } + }, + "anthropic/claude-sonnet-4": { + "id": "anthropic/claude-sonnet-4", + "name": "Claude Sonnet 4", + "description": "Balanced Claude model for coding, analysis, agent workflows, and cost control", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "low", + "medium", + "high" + ] + } + ], + "tool_call": true, + "temperature": true, + "knowledge": "2025-01-01", + "release_date": "2025-05-22", + "last_updated": "2025-05-22", + "modalities": { + "input": [ + "image", "text", "pdf" ], @@ -49079,6 +49596,54 @@ "cache_write": 1.25 } }, + "anthropic/claude-sonnet-5": { + "id": "anthropic/claude-sonnet-5", + "name": "Claude Sonnet 5", + "description": "Everyday Claude agent model for coding, planning, browsing, and general work", + "family": "claude-sonnet", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "low", + "medium", + "high" + ] + } + ], + "tool_call": true, + "temperature": false, + "knowledge": "2026-01-31", + "release_date": "2026-06-30", + "last_updated": "2026-06-30", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 128000 + }, + "provider": { + "npm": "@ai-sdk/anthropic", + "api": "https://zenmux.ai/api/anthropic/v1" + }, + "cost": { + "input": 2, + "output": 10, + "cache_read": 0.2, + "cache_write": 4 + } + }, "anthropic/claude-opus-4.7": { "id": "anthropic/claude-opus-4.7", "name": "Claude Opus 4.7", @@ -50437,6 +51002,882 @@ } } }, + "kenari": { + "id": "kenari", + "env": [ + "KENARI_API_KEY" + ], + "npm": "@ai-sdk/openai-compatible", + "api": "https://kenari.id/v1", + "name": "Kenari", + "doc": "https://kenari.id/docs", + "models": { + "deepseek-v4-flash": { + "id": "deepseek-v4-flash", + "name": "DeepSeek V4 Flash", + "description": "Fast DeepSeek V4 lane for economical reasoning, coding, and long-context work", + "family": "deepseek-flash", + "attachment": false, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "high", + "xhigh" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": true, + "knowledge": "2025-05", + "release_date": "2026-04-24", + "last_updated": "2026-04-24", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 1000000, + "output": 384000 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "kimi-k2-6": { + "id": "kimi-k2-6", + "name": "Kimi K2.6", + "description": "Multimodal Kimi workhorse for agent loops, coding tasks, and visual context", + "family": "kimi-k2", + "attachment": true, + "reasoning": true, + "reasoning_options": [], + "tool_call": true, + "structured_output": true, + "temperature": true, + "knowledge": "2025-01", + "release_date": "2026-04-21", + "last_updated": "2026-04-21", + "modalities": { + "input": [ + "text", + "image", + "video" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 262144, + "output": 262144 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "glm-5-1": { + "id": "glm-5-1", + "name": "GLM-5.1", + "description": "Strong GLM coding model for agentic engineering, terminals, and repository generation", + "family": "glm", + "attachment": false, + "reasoning": true, + "reasoning_options": [], + "tool_call": true, + "structured_output": true, + "temperature": true, + "release_date": "2026-04-07", + "last_updated": "2026-04-07", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 200000, + "output": 131072 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "gemma-4-31b-it": { + "id": "gemma-4-31b-it", + "name": "Gemma 4 31B IT", + "description": "Largest Gemma 4 instruction model for open, self-hosted chat and reasoning", + "family": "gemma", + "attachment": true, + "reasoning": true, + "reasoning_options": [], + "tool_call": true, + "structured_output": true, + "temperature": true, + "release_date": "2026-04-02", + "last_updated": "2026-04-02", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 262144, + "output": 32768 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "grok-4-3": { + "id": "grok-4-3", + "name": "Grok 4.3", + "description": "xAI's default Grok for chat, coding, agentic tools, and lower hallucination risk", + "family": "grok", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "none", + "low", + "medium", + "high" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": true, + "release_date": "2026-04-17", + "last_updated": "2026-04-17", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 30000 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "qwen3-7-plus": { + "id": "qwen3-7-plus", + "name": "Qwen3.7 Plus", + "description": "Multimodal Qwen workhorse for long-context agents, visual inputs, and coding", + "family": "qwen", + "attachment": false, + "reasoning": true, + "reasoning_options": [], + "tool_call": true, + "temperature": true, + "knowledge": "2025-04", + "release_date": "2026-06-02", + "last_updated": "2026-06-02", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 64000 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "kimi-k2-7-code": { + "id": "kimi-k2-7-code", + "name": "Kimi K2.7 Code", + "description": "Coding-focused Kimi model, stronger on long-horizon repo work with less overthinking", + "family": "kimi-k2", + "attachment": true, + "reasoning": true, + "reasoning_options": [], + "tool_call": true, + "structured_output": true, + "temperature": false, + "knowledge": "2025-01", + "release_date": "2026-06-12", + "last_updated": "2026-06-12", + "modalities": { + "input": [ + "text", + "image", + "video" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 262144, + "output": 262144 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "deepseek-v4-pro": { + "id": "deepseek-v4-pro", + "name": "DeepSeek V4 Pro", + "description": "Open MoE flagship with million-token context for coding and long agent runs", + "family": "deepseek-thinking", + "attachment": false, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "high", + "xhigh" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": true, + "knowledge": "2025-05", + "release_date": "2026-04-24", + "last_updated": "2026-04-24", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 1000000, + "output": 384000 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "deepseek-v4-flash:free": { + "id": "deepseek-v4-flash:free", + "name": "DeepSeek V4 Flash (Free)", + "description": "Fast DeepSeek V4 lane for economical reasoning, coding, and long-context work", + "family": "deepseek-flash", + "attachment": false, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "high", + "xhigh" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": true, + "knowledge": "2025-05", + "release_date": "2026-04-24", + "last_updated": "2026-04-24", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 1000000, + "output": 384000 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "claude-opus-4-7": { + "id": "claude-opus-4-7", + "name": "Claude Opus 4.7", + "description": "Stronger Opus tier for advanced software work and high-stakes reasoning", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "low", + "medium", + "high", + "xhigh", + "max" + ] + } + ], + "tool_call": true, + "temperature": false, + "knowledge": "2026-01-31", + "release_date": "2026-04-16", + "last_updated": "2026-04-16", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 128000 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "minimax-m3": { + "id": "minimax-m3", + "name": "MiniMax-M3", + "description": "MiniMax multimodal model for long-context coding, perception, and agent planning", + "family": "minimax", + "attachment": true, + "reasoning": true, + "reasoning_options": [], + "tool_call": true, + "temperature": true, + "release_date": "2026-06-01", + "last_updated": "2026-06-01", + "modalities": { + "input": [ + "text", + "image", + "video" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 512000, + "output": 128000 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "claude-opus-4-8": { + "id": "claude-opus-4-8", + "name": "Claude Opus 4.8", + "description": "Top Claude Opus tier for the hardest reasoning, coding, and long-horizon agents", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "low", + "medium", + "high", + "xhigh", + "max" + ] + } + ], + "tool_call": true, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 128000 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "gpt-5-4-mini": { + "id": "gpt-5-4-mini", + "name": "GPT-5.4 mini", + "description": "Strong small GPT for coding subagents, quick tool use, and high-volume work", + "family": "gpt-mini", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "none", + "low", + "medium", + "high", + "xhigh" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": false, + "knowledge": "2025-08-31", + "release_date": "2026-03-17", + "last_updated": "2026-03-17", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 400000, + "input": 272000, + "output": 128000 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "mimo-v2-5": { + "id": "mimo-v2-5", + "name": "MiMo-V2.5", + "description": "Open MiMo model for multimodal coding agents and long-context automation", + "family": "mimo", + "attachment": true, + "reasoning": true, + "reasoning_options": [], + "tool_call": true, + "temperature": true, + "knowledge": "2024-12", + "release_date": "2026-04-22", + "last_updated": "2026-04-22", + "modalities": { + "input": [ + "text", + "image", + "audio", + "video" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 1048576, + "output": 131072 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "gpt-oss-120b": { + "id": "gpt-oss-120b", + "name": "GPT OSS 120B", + "description": "Open GPT reasoning model for self-hosted agents and controllable deployments", + "family": "gpt-oss", + "attachment": false, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "low", + "medium", + "high" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": true, + "release_date": "2025-08-05", + "last_updated": "2025-08-05", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 131072, + "output": 32768 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "gpt-5-5": { + "id": "gpt-5-5", + "name": "GPT-5.5", + "description": "Default frontier GPT for coding, computer use, research, and knowledge work", + "family": "gpt", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "none", + "low", + "medium", + "high", + "xhigh" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": false, + "knowledge": "2025-12-01", + "release_date": "2026-04-23", + "last_updated": "2026-04-23", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1050000, + "input": 922000, + "output": 128000 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "glm-5-2": { + "id": "glm-5-2", + "name": "GLM-5.2", + "description": "Open flagship GLM for long-horizon coding agents and million-token context work", + "family": "glm", + "attachment": false, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "high", + "xhigh" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": true, + "release_date": "2026-06-13", + "last_updated": "2026-06-13", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 1000000, + "output": 131072 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "grok-build-0-1": { + "id": "grok-build-0-1", + "name": "Grok Build 0.1", + "description": "Fast Grok coding model tuned for agentic engineering and iterative edits", + "family": "grok-build", + "attachment": true, + "reasoning": true, + "reasoning_options": [], + "tool_call": true, + "structured_output": true, + "temperature": true, + "release_date": "2026-04-16", + "last_updated": "2026-04-16", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 256000, + "output": 256000 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "claude-sonnet-4-6": { + "id": "claude-sonnet-4-6", + "name": "Claude Sonnet 4.6", + "description": "Claude workhorse for coding agents, careful analysis, and production cost control", + "family": "claude-sonnet", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "low", + "medium", + "high", + "max" + ] + } + ], + "tool_call": true, + "temperature": true, + "knowledge": "2025-08-31", + "release_date": "2026-02-17", + "last_updated": "2026-03-13", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 64000 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "gpt-oss-20b": { + "id": "gpt-oss-20b", + "name": "GPT OSS 20B", + "description": "Open-weight GPT reasoning model for self-hosted agents and controllable deployments", + "family": "gpt-oss", + "attachment": false, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "low", + "medium", + "high" + ] + } + ], + "tool_call": true, + "release_date": "2025-08-05", + "last_updated": "2025-08-05", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 131072, + "output": 32768 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "mimo-v2-5-pro": { + "id": "mimo-v2-5-pro", + "name": "MiMo-V2.5-Pro", + "description": "Stronger MiMo Pro tier for multimodal reasoning and coding-agent execution", + "family": "mimo", + "attachment": false, + "reasoning": true, + "reasoning_options": [], + "tool_call": true, + "temperature": true, + "knowledge": "2024-12", + "release_date": "2026-04-22", + "last_updated": "2026-04-22", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 1048576, + "output": 131072 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "deepseek-v4-pro:free": { + "id": "deepseek-v4-pro:free", + "name": "DeepSeek V4 Pro (Free)", + "description": "Open MoE flagship with million-token context for coding and long agent runs", + "family": "deepseek-thinking", + "attachment": false, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "high", + "xhigh" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": true, + "knowledge": "2025-05", + "release_date": "2026-04-24", + "last_updated": "2026-04-24", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 1000000, + "output": 384000 + }, + "cost": { + "input": 0, + "output": 0 + } + }, + "gpt-image-2": { + "id": "gpt-image-2", + "name": "GPT-Image-2", + "description": "Image model for prompt-driven generation, editing, and visual design workflows", + "family": "gpt-image", + "attachment": true, + "reasoning": false, + "tool_call": false, + "temperature": false, + "release_date": "2026-04-21", + "last_updated": "2026-04-21", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "image" + ] + }, + "open_weights": false, + "limit": { + "context": 272000, + "output": 16384 + }, + "cost": { + "input": 0, + "output": 0 + } + } + } + }, "openai": { "id": "openai", "env": [ @@ -73911,10 +75352,10 @@ "output": 1000000 }, "cost": { - "input": 3, - "output": 15, - "cache_read": 0.3, - "cache_write": 3.75 + "input": 2, + "output": 10, + "cache_read": 0.2, + "cache_write": 2.5 } }, "grok-4-1-fast-non-reasoning": { @@ -92094,6 +93535,7 @@ "context": 131072, "output": 131072 }, + "status": "deprecated", "cost": { "input": 0, "output": 0 @@ -102819,6 +104261,9 @@ } ], "tool_call": true, + "interleaved": { + "field": "reasoning_content" + }, "temperature": true, "knowledge": "2026-01-01", "release_date": "2026-05-29", @@ -102860,6 +104305,9 @@ } ], "tool_call": true, + "interleaved": { + "field": "reasoning_content" + }, "temperature": true, "knowledge": "2025-01", "release_date": "2026-04-02", @@ -102884,6 +104332,56 @@ "cache_read": 0.02 } }, + "stepaudio-2.5-tts": { + "id": "stepaudio-2.5-tts", + "name": "StepAudio 2.5 TTS", + "description": "Speech generation model for controllable voice, narration, and audio delivery", + "family": "step", + "attachment": false, + "reasoning": false, + "tool_call": false, + "temperature": false, + "release_date": "2026-04-16", + "last_updated": "2026-07-02", + "modalities": { + "input": [ + "text" + ], + "output": [ + "audio" + ] + }, + "open_weights": false, + "limit": { + "context": 0, + "output": 0 + } + }, + "stepaudio-2.5-asr": { + "id": "stepaudio-2.5-asr", + "name": "StepAudio 2.5 ASR", + "description": "Speech transcription model for accurate audio-to-text and captioning workflows", + "family": "step", + "attachment": false, + "reasoning": false, + "tool_call": false, + "temperature": false, + "release_date": "2026-04-24", + "last_updated": "2026-07-02", + "modalities": { + "input": [ + "audio" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 0, + "output": 0 + } + }, "step-3.5-flash": { "id": "step-3.5-flash", "name": "Step 3.5 Flash", @@ -102892,6 +104390,9 @@ "reasoning": true, "reasoning_options": [], "tool_call": true, + "interleaved": { + "field": "reasoning_content" + }, "temperature": true, "knowledge": "2025-01", "release_date": "2026-01-29", @@ -102916,6 +104417,31 @@ "cache_read": 0.02 } }, + "step-tts-2": { + "id": "step-tts-2", + "name": "Step TTS 2", + "description": "Speech generation model for controllable voice, narration, and audio delivery", + "family": "step", + "attachment": false, + "reasoning": false, + "tool_call": false, + "temperature": false, + "release_date": "2026-03-01", + "last_updated": "2026-07-02", + "modalities": { + "input": [ + "text" + ], + "output": [ + "audio" + ] + }, + "open_weights": false, + "limit": { + "context": 0, + "output": 0 + } + }, "step-2-16k": { "id": "step-2-16k", "name": "Step 2 (16K)", @@ -115042,6 +116568,52 @@ "output": 0 } }, + "duo-chat-fable-5": { + "id": "duo-chat-fable-5", + "name": "Agentic Chat (Claude Fable 5)", + "description": "Claude model for creative writing, analysis, and controlled agent workflows", + "family": "claude-fable", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "low", + "medium", + "high", + "xhigh", + "max" + ] + } + ], + "tool_call": true, + "temperature": false, + "knowledge": "2026-01-31", + "release_date": "2026-06-09", + "last_updated": "2026-06-09", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 128000 + }, + "cost": { + "input": 0, + "output": 0, + "cache_read": 0, + "cache_write": 0 + } + }, "duo-chat-gpt-5-5": { "id": "duo-chat-gpt-5-5", "name": "Agentic Chat (GPT-5.5)", @@ -115284,6 +116856,55 @@ "output": 0 } }, + "duo-chat-sonnet-5": { + "id": "duo-chat-sonnet-5", + "name": "Agentic Chat (Claude Sonnet 5)", + "description": "Everyday Claude agent model for coding, planning, browsing, and general work", + "family": "claude-sonnet", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "toggle" + }, + { + "type": "effort", + "values": [ + "low", + "medium", + "high", + "xhigh", + "max" + ] + } + ], + "tool_call": true, + "temperature": false, + "knowledge": "2026-01-31", + "release_date": "2026-06-30", + "last_updated": "2026-06-30", + "modalities": { + "input": [ + "text", + "image", + "pdf" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 1000000, + "output": 64000 + }, + "cost": { + "input": 0, + "output": 0, + "cache_read": 0, + "cache_write": 0 + } + }, "duo-chat-gpt-5-4-mini": { "id": "duo-chat-gpt-5-4-mini", "name": "Agentic Chat (GPT-5.4 Mini)", @@ -132479,7 +134100,7 @@ "temperature": true, "knowledge": "2023-12", "release_date": "2024-12-06", - "last_updated": "2024-12-06", + "last_updated": "2026-07-02", "modalities": { "input": [ "text" @@ -132494,8 +134115,8 @@ "output": 131072 }, "cost": { - "input": 0.88, - "output": 0.88 + "input": 1.04, + "output": 1.04 } }, "moonshotai/Kimi-K2.6": { @@ -132680,7 +134301,7 @@ "tool_call": true, "temperature": true, "release_date": "2026-05-21", - "last_updated": "2026-06-15", + "last_updated": "2026-07-02", "modalities": { "input": [ "text" @@ -133207,7 +134828,7 @@ "temperature": true, "knowledge": "2025-11", "release_date": "2026-04-07", - "last_updated": "2026-04-07", + "last_updated": "2026-07-02", "modalities": { "input": [ "text" @@ -135423,9 +137044,9 @@ "output": 262144 }, "cost": { - "input": 0.55, - "output": 3.2, - "cache_read": 0.11 + "input": 0.66, + "output": 3.41, + "cache_read": 0.14 } }, "moonshotai/kimi-k2-0905": { @@ -137160,6 +138781,36 @@ "output": 0.62 } }, + "poolside/laguna-xs-2.1:free": { + "id": "poolside/laguna-xs-2.1:free", + "name": "Laguna XS 2.1 (free)", + "description": "Free provider route for experiments, demos, and cost-sensitive chat workloads", + "attachment": false, + "reasoning": true, + "reasoning_options": [], + "tool_call": true, + "structured_output": false, + "temperature": true, + "release_date": "2026-07-02", + "last_updated": "2026-07-02", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 262144, + "output": 32768 + }, + "cost": { + "input": 0, + "output": 0 + } + }, "poolside/laguna-xs.2": { "id": "poolside/laguna-xs.2", "name": "Laguna XS.2", @@ -137255,6 +138906,37 @@ "cache_read": 0.1 } }, + "poolside/laguna-xs-2.1": { + "id": "poolside/laguna-xs-2.1", + "name": "Laguna XS 2.1", + "description": "Reasoning model for deliberate analysis, multi-step problem solving, and tool use", + "attachment": false, + "reasoning": true, + "reasoning_options": [], + "tool_call": true, + "structured_output": false, + "temperature": true, + "release_date": "2026-07-02", + "last_updated": "2026-07-02", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 262144, + "output": 32768 + }, + "cost": { + "input": 0.06, + "output": 0.12, + "cache_read": 0.03 + } + }, "poolside/laguna-m.1:free": { "id": "poolside/laguna-m.1:free", "name": "Laguna M.1 (free)", @@ -143193,9 +144875,9 @@ "output": 262144 }, "cost": { - "input": 0.55, - "output": 3.2, - "cache_read": 0.11 + "input": 0.66, + "output": 3.41, + "cache_read": 0.14 } }, "relace/relace-search": { @@ -144099,8 +145781,8 @@ "output": 32768 }, "cost": { - "input": 0.08, - "output": 0.5 + "input": 0.117, + "output": 0.455 } }, "qwen/qwen3.7-plus": { @@ -146095,7 +147777,7 @@ "output": 16384 }, "cost": { - "input": 0.09, + "input": 0.089, "output": 0.18, "cache_read": 0.018 } @@ -162032,6 +163714,54 @@ "cache_read": 0.125 } }, + "claude-opus-4-8": { + "id": "claude-opus-4-8", + "name": "Claude Opus 4.8", + "description": "Top Claude Opus tier for the hardest reasoning, coding, and long-horizon agents", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "toggle" + }, + { + "type": "effort", + "values": [ + "low", + "medium", + "high", + "xhigh", + "max" + ] + } + ], + "tool_call": true, + "interleaved": true, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 200000, + "output": 32000 + }, + "cost": { + "input": 5, + "output": 25, + "cache_read": 0.5, + "cache_write": 6.25 + } + }, "gemini-3.1-pro-preview-customtools": { "id": "gemini-3.1-pro-preview-customtools", "name": "Gemini 3.1 Pro Preview Custom Tools", @@ -163207,6 +164937,56 @@ "output": 0.2 } }, + "claude-opus-4-8-think": { + "id": "claude-opus-4-8-think", + "name": "Claude Opus 4.8", + "description": "Top Claude Opus tier for the hardest reasoning, coding, and long-horizon agents", + "family": "claude-opus", + "attachment": true, + "reasoning": true, + "reasoning_options": [ + { + "type": "toggle" + }, + { + "type": "effort", + "values": [ + "low", + "medium", + "high", + "xhigh", + "max" + ] + } + ], + "tool_call": true, + "interleaved": { + "field": "reasoning_content" + }, + "temperature": false, + "release_date": "2026-05-28", + "last_updated": "2026-05-28", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 200000, + "output": 32000 + }, + "cost": { + "input": 5, + "output": 25, + "cache_read": 0.5, + "cache_write": 6.25 + } + }, "qwen3.6-max-preview": { "id": "qwen3.6-max-preview", "name": "Qwen3.6 Max Preview", @@ -189130,6 +190910,41 @@ "input_audio": 1.5 } }, + "kimi-k2.7-code": { + "id": "kimi-k2.7-code", + "name": "Kimi K2.7 Code", + "description": "Coding-focused Kimi model, stronger on long-horizon repo work with less overthinking", + "family": "kimi-k2", + "attachment": true, + "reasoning": true, + "reasoning_options": [], + "tool_call": true, + "structured_output": true, + "temperature": false, + "knowledge": "2025-01", + "release_date": "2026-06-12", + "last_updated": "2026-06-12", + "modalities": { + "input": [ + "text", + "image" + ], + "output": [ + "text" + ] + }, + "open_weights": true, + "limit": { + "context": 256000, + "input": 224000, + "output": 32000 + }, + "cost": { + "input": 0.95, + "output": 4, + "cache_read": 0.19 + } + }, "claude-sonnet-5": { "id": "claude-sonnet-5", "name": "Claude Sonnet 5", @@ -189278,6 +191093,49 @@ "cache_write": 6.25 } }, + "mai-code-1-flash-picker": { + "id": "mai-code-1-flash-picker", + "name": "MAI-Code-1-Flash", + "description": "Microsoft coding model built for fast, efficient assistance in everyday developer workflows", + "family": "mai", + "attachment": false, + "reasoning": true, + "reasoning_options": [ + { + "type": "effort", + "values": [ + "low", + "medium", + "high" + ] + } + ], + "tool_call": true, + "structured_output": true, + "temperature": true, + "knowledge": "2025-12", + "release_date": "2026-06-02", + "last_updated": "2026-06-08", + "modalities": { + "input": [ + "text" + ], + "output": [ + "text" + ] + }, + "open_weights": false, + "limit": { + "context": 256000, + "input": 128000, + "output": 128000 + }, + "cost": { + "input": 0.75, + "output": 4.5, + "cache_read": 0.075 + } + }, "gpt-5.2": { "id": "gpt-5.2", "name": "GPT-5.2", diff --git a/web/package-lock.json b/web/package-lock.json index 17ac22d..e873f34 100644 --- a/web/package-lock.json +++ b/web/package-lock.json @@ -1,12 +1,12 @@ { "name": "lingxiao-web", - "version": "1.12.0", + "version": "1.12.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "lingxiao-web", - "version": "1.12.0", + "version": "1.12.1", "dependencies": { "@monaco-editor/react": "^4.7.0", "@xterm/addon-fit": "^0.11.0", diff --git a/web/package.json b/web/package.json index ca5edb2..4a051c8 100644 --- a/web/package.json +++ b/web/package.json @@ -1,7 +1,7 @@ { "name": "lingxiao-web", "private": true, - "version": "1.12.0", + "version": "1.12.1", "type": "module", "scripts": { "dev": "vite", diff --git a/web/src/components/settings/SettingsView.tsx b/web/src/components/settings/SettingsView.tsx index 75969cc..4a96d14 100644 --- a/web/src/components/settings/SettingsView.tsx +++ b/web/src/components/settings/SettingsView.tsx @@ -196,7 +196,7 @@ export default function SettingsView() { search={navSearch} onSearchChange={setNavSearch} /> -