chore(sdk): release v0.0.70

This commit is contained in:
Saoud Rizwan
2026-08-05 01:59:51 -07:00
parent 5594512eb0
commit 6997fae815
10 changed files with 2548 additions and 1104 deletions
+5 -5
View File
@@ -629,7 +629,7 @@
},
"sdk/packages/agents": {
"name": "@cline/agents",
"version": "0.0.69",
"version": "0.0.70",
"dependencies": {
"@cline/llms": "workspace:*",
"@cline/shared": "workspace:*",
@@ -638,7 +638,7 @@
},
"sdk/packages/core": {
"name": "@cline/core",
"version": "0.0.69",
"version": "0.0.70",
"dependencies": {
"@cline/agents": "workspace:*",
"@cline/llms": "workspace:*",
@@ -676,7 +676,7 @@
},
"sdk/packages/llms": {
"name": "@cline/llms",
"version": "0.0.69",
"version": "0.0.70",
"dependencies": {
"@ai-sdk/amazon-bedrock": "^5",
"@ai-sdk/anthropic": "^4",
@@ -718,14 +718,14 @@
},
"sdk/packages/sdk": {
"name": "@cline/sdk",
"version": "0.0.69",
"version": "0.0.70",
"dependencies": {
"@cline/core": "workspace:*",
},
},
"sdk/packages/shared": {
"name": "@cline/shared",
"version": "0.0.69",
"version": "0.0.70",
"dependencies": {
"aws4fetch": "^1.0.20",
"jsonrepair": "^3.13.2",
+15
View File
@@ -1,5 +1,20 @@
# Cline SDK Changelog
## 0.0.70
- Plan mode now hard-blocks file-editing shell commands instead of relying on prompting alone — `run_commands` stays available for read-only investigation, but file-manipulation commands, in-place editors (`sed -i`, `perl -i`), redirection to files, mutating git subcommands, package installs, and nested command strings (`sh -c`, `eval`, `sudo`, `xargs`) are rejected with a tool error, on Windows and PowerShell too
- Context-window overflow errors are now detected and recovered from instead of surfacing as raw unclassified provider errors: the runtime force-compacts with a deterministic strategy that needs no extra LLM call and retries the run once, and terminal cases (nothing left to compact, a retry that still overflows) fail with an actionable message
- Sessions now record how they began — a new `mode` on `StartSessionInput` (`user`, `automation`, `subagent`, `team`) alongside `source` — and root-session persistence is lazy: starting a runtime allocates the session id in memory without writing a database row, so closing it before any user turn no longer leaves an empty history entry
- Turns that come back completely empty are now retried on every provider, not just Ollama — hosted backends (OpenRouter, Cline, OpenAI-compatible endpoints) previously failed the task outright with "Model returned empty response". Tool-call-only turns are never retried, and turns that error or hit the token limit pass through unchanged
- Adaptive-era Claude models (4.6+ and 5.x) are no longer sent the manual thinking wire shape and rejected with "thinking.type.enabled is not supported" — the baked model catalog now carries reasoning metadata, and unlisted or user-typed adaptive ids are inferred correctly when that metadata is missing
- Bedrock prompt caching works again: the provider now emits Converse `cachePoint` markers instead of Anthropic `cache_control`, which the Bedrock converter silently dropped, so cache reads and writes are no longer always 0 and no stray `cache_control` field leaks into the request body
- Bedrock foundation models are now routed through geo inference profiles
- Reasoning models on OpenAI-compatible endpoints now receive `max_completion_tokens` instead of the rejected `max_tokens`
- Requests to models without image support now substitute image content instead of failing
- MiniMax now inherits its default model from models.dev
- Upgraded the model layer to AI SDK 7, switched Ollama to the native AI SDK provider (with wire-contract fixes for empty `think` settings, mid-stream errors, and attachment-only turns), and emitted the canonical AI SDK 7 file parts for images so image-bearing requests no longer log deprecation warnings
- `sdk.error` telemetry is no longer emitted twice for the same provider failure, and repeated failures from unattended retry loops are rate-limited
## 0.0.69
- Ollama's response-start timeout now defaults to 5 minutes instead of 30 seconds, so large models that cold-load no longer fail before they finish loading — unreachable servers still fail immediately, requests are still cancelable, and an explicit `requestTimeoutMs` is still honored
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@cline/agents",
"version": "0.0.69",
"version": "0.0.70",
"repository": {
"type": "git",
"url": "https://github.com/cline/cline",
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "@cline/core",
"description": "Cline Core SDK for Node Runtime",
"version": "0.0.69",
"version": "0.0.70",
"repository": {
"type": "git",
"url": "https://github.com/cline/cline",
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@cline/llms",
"version": "0.0.69",
"version": "0.0.70",
"description": "Config-driven SDK for selecting, extending, and instantiating LLM providers and models",
"repository": {
"type": "git",
File diff suppressed because it is too large Load Diff
@@ -73,6 +73,7 @@ export const GENERATED_PROVIDER_IDS = [
"inceptron",
"inference",
"inferx",
"infomaniak",
"io-net",
"jiekou",
"kenari",
@@ -133,6 +134,7 @@ export const GENERATED_PROVIDER_IDS = [
"sapaicore",
"sarvam",
"scaleway",
"scx",
"siliconflow",
"siliconflow-cn",
"snowflake-cortex",
@@ -119,7 +119,7 @@ export const GENERATED_PROVIDER_SPECS: readonly BuiltinSpec[] = [
family: "openai-compatible",
capabilities: ["tools", "reasoning", "prompt-cache"],
modelsProviderId: "alibaba",
defaultModelId: "qwen3.7-plus",
defaultModelId: "qwen3.8-max",
apiKeyEnv: ["DASHSCOPE_API_KEY"],
docsUrl: "https://www.alibabacloud.com/help/en/model-studio/models",
defaults: {
@@ -133,7 +133,7 @@ export const GENERATED_PROVIDER_SPECS: readonly BuiltinSpec[] = [
family: "openai-compatible",
capabilities: ["tools", "reasoning", "prompt-cache"],
modelsProviderId: "alibaba-cn",
defaultModelId: "qwen3.7-flash",
defaultModelId: "qwen3.8-max",
apiKeyEnv: ["DASHSCOPE_API_KEY"],
docsUrl: "https://www.alibabacloud.com/help/en/model-studio/models",
defaults: {
@@ -443,7 +443,7 @@ export const GENERATED_PROVIDER_SPECS: readonly BuiltinSpec[] = [
family: "openai-compatible",
capabilities: ["tools", "reasoning", "prompt-cache"],
modelsProviderId: "cortecs",
defaultModelId: "kimi-k3",
defaultModelId: "deepseek-v4-flash-0731",
apiKeyEnv: ["CORTECS_API_KEY"],
docsUrl: "https://api.cortecs.ai/v1/models",
defaults: {
@@ -457,7 +457,7 @@ export const GENERATED_PROVIDER_SPECS: readonly BuiltinSpec[] = [
family: "openai-compatible",
capabilities: ["tools", "reasoning", "prompt-cache"],
modelsProviderId: "crof",
defaultModelId: "kimi-k3",
defaultModelId: "deepseek-v4-flash-0731",
apiKeyEnv: ["CROF_API_KEY"],
docsUrl: "https://crof.ai/docs",
defaults: {
@@ -471,7 +471,7 @@ export const GENERATED_PROVIDER_SPECS: readonly BuiltinSpec[] = [
family: "openai-compatible",
capabilities: ["tools", "reasoning", "prompt-cache"],
modelsProviderId: "crossmodel",
defaultModelId: "anthropic/claude-opus-5",
defaultModelId: "qwen/qwen3.8-max",
apiKeyEnv: ["CROSSMODEL_API_KEY"],
docsUrl: "https://www.crossmodel.ai/docs",
defaults: {
@@ -726,9 +726,9 @@ export const GENERATED_PROVIDER_SPECS: readonly BuiltinSpec[] = [
name: "GreenPT",
description: "GreenPT model provider from models.dev",
family: "openai-compatible",
capabilities: ["tools", "reasoning"],
capabilities: ["tools", "reasoning", "prompt-cache"],
modelsProviderId: "greenpt",
defaultModelId: "glm-5.2",
defaultModelId: "deepseek-v4-flash-0731",
apiKeyEnv: ["GREENPT_API_KEY"],
docsUrl: "https://docs.greenpt.ai",
defaults: {
@@ -742,7 +742,7 @@ export const GENERATED_PROVIDER_SPECS: readonly BuiltinSpec[] = [
family: "openai-compatible",
capabilities: ["tools", "reasoning", "prompt-cache"],
modelsProviderId: "groq",
defaultModelId: "openai/gpt-oss-safeguard-20b",
defaultModelId: "qwen/qwen3.6-27b",
apiKeyEnv: ["GROQ_API_KEY"],
docsUrl: "https://console.groq.com/docs/models",
},
@@ -900,6 +900,22 @@ export const GENERATED_PROVIDER_SPECS: readonly BuiltinSpec[] = [
baseUrl: "https://model.inferx.net/endpoints/v1",
},
},
{
id: "infomaniak",
name: "Infomaniak",
description: "Infomaniak model provider from models.dev",
family: "openai-compatible",
capabilities: ["tools", "reasoning"],
modelsProviderId: "infomaniak",
defaultModelId: "swiss-ai/Apertus-v1.5-70B",
apiKeyEnv: ["INFOMANIAK_API_KEY", "INFOMANIAK_PRODUCT_ID"],
docsUrl:
"https://www.infomaniak.com/en/hosting/ai-services/open-source-models",
defaults: {
baseUrl:
"https://api.infomaniak.com/2/ai/${INFOMANIAK_PRODUCT_ID}/openai/v1",
},
},
{
id: "io-net",
name: "IO.NET",
@@ -1384,7 +1400,7 @@ export const GENERATED_PROVIDER_SPECS: readonly BuiltinSpec[] = [
family: "openai-compatible",
capabilities: ["tools", "reasoning", "prompt-cache"],
modelsProviderId: "neuralwatt",
defaultModelId: "glm-5.2",
defaultModelId: "kimi-k3",
apiKeyEnv: ["NEURALWATT_API_KEY"],
docsUrl: "https://portal.neuralwatt.com/docs",
defaults: {
@@ -1662,7 +1678,7 @@ export const GENERATED_PROVIDER_SPECS: readonly BuiltinSpec[] = [
family: "openai-compatible",
capabilities: ["tools", "reasoning", "prompt-cache"],
modelsProviderId: "requesty",
defaultModelId: "openai/gpt-5.4",
defaultModelId: "deepseek-v4-flash-0731",
apiKeyEnv: ["REQUESTY_API_KEY"],
docsUrl: "https://requesty.ai/solution/llm-routing/models",
defaults: {
@@ -1736,6 +1752,20 @@ export const GENERATED_PROVIDER_SPECS: readonly BuiltinSpec[] = [
baseUrl: "https://api.scaleway.ai/v1",
},
},
{
id: "scx",
name: "SCX.ai",
description: "SCX.ai model provider from models.dev",
family: "openai-compatible",
capabilities: ["tools", "reasoning", "prompt-cache"],
modelsProviderId: "scx",
defaultModelId: "MiniMax-M2.7",
apiKeyEnv: ["SCX_API_KEY"],
docsUrl: "https://platform.scx.ai/docs",
defaults: {
baseUrl: "https://api.scx.ai/v1",
},
},
{
id: "siliconflow",
name: "SiliconFlow",
@@ -2003,7 +2033,7 @@ export const GENERATED_PROVIDER_SPECS: readonly BuiltinSpec[] = [
family: "openai-compatible",
capabilities: ["tools", "reasoning", "prompt-cache"],
modelsProviderId: "together",
defaultModelId: "moonshotai/Kimi-K3",
defaultModelId: "deepseek-ai/DeepSeek-V4-Flash-0731",
apiKeyEnv: ["TOGETHER_API_KEY"],
docsUrl: "https://docs.together.ai/docs/serverless-models",
},
@@ -2164,7 +2194,7 @@ export const GENERATED_PROVIDER_SPECS: readonly BuiltinSpec[] = [
family: "openai-compatible",
capabilities: ["tools", "reasoning", "prompt-cache"],
modelsProviderId: "wandb",
defaultModelId: "moonshotai/Kimi-K3",
defaultModelId: "deepseek-ai/DeepSeek-V4-Flash-0731",
apiKeyEnv: ["WANDB_API_KEY"],
docsUrl: "https://docs.wandb.ai/guides/integrations/inference/",
defaults: {
+1 -1
View File
@@ -1,7 +1,7 @@
{
"name": "@cline/sdk",
"description": "Cline SDK - user-facing alias for @cline/core",
"version": "0.0.69",
"version": "0.0.70",
"repository": {
"type": "git",
"url": "https://github.com/cline/cline",
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "@cline/shared",
"version": "0.0.69",
"version": "0.0.70",
"description": "Shared utilities, types, and schemas for Cline packages",
"repository": {
"type": "git",