KsADK

Upgrade to 0.8.6

Python 3.12, Native Studio defaults, bounded history reads, and companion Web compatibility.

This release includes the Native Harness, A2A/Kernel recovery, tool receipts, bounded history reads, and Studio/Web fixes merged since 0.8.5. See the CHANGELOG for the complete release list.

Install and roll back

Python 3.12 or newer is required. Install into a separate environment and keep the previous environment and runtime image until application validation passes. Upgrading the SDK does not rebuild existing Agents or update deployments.

uv venv --python 3.12 .venv-086
uv pip install --python .venv-086/bin/python "ksadk==0.8.6"
.venv-086/bin/agentengine --help

On Windows, use .venv-086\Scripts\python.exe and .venv-086\Scripts\agentengine.exe. Select extras for additional capabilities such as Codex, DeepAgents, or Skill Sandbox. Use ksadk[all] when the full set, including development dependencies, is needed. The alias package agentengine-sdk-python==0.8.6 independently ships the same SDK implementation and keeps the ksadk import name. Install one distribution name per environment to avoid overwriting shared files.

For local wheel validation, replace the installation target:

uv pip install --python .venv-086/bin/python ./ksadk-0.8.6-py3-none-any.whl

The wheel contains Python sources and compiled Web/Studio pages. It excludes the test tree, frontend source tree, node_modules, and Python dependency packages. Embedded pages do not provide a fully offline dependency environment: prepare a wheelhouse for offline installation, and provision model access, cloud resources, Node/Codex/DSH toolchains, and plugins separately.

To roll back, stop the new process and switch to the retained environment/image. Validate important Studio workspaces on a copy and back up session data first. Never run old and new writers against the same workspace. Installing an older wheel does not undo persisted sessions, plugin configuration, or external effects.

Native Studio defaults

Ordinary local Studio selects Native Harness and a durable SQLite execution ledger. Native owns the model/tool loop, context planning, task verification, child Agents, and recovery. Providers retain their framework execution semantics. Explicit Agent selection and injected hosts retain their compatibility settings.

Startup configurationBehavior
Ordinary Studio without Native configurationNative with a durable ledger
KSADK_STUDIO_NATIVE_DEFAULT=0Disable the Native default; use Managed unless specific Native Agents remain selected
KSADK_STUDIO_NATIVE_AGENT_IDSSelect exact local Agents; disables the ordinary default when DEFAULT is unset
KSADK_STUDIO_NATIVE_DURABLE=0In-memory Native ledger; no cross-process recovery guarantee

These are startup host policies, not model-controlled parameters. Native cloud activation, shared storage, model takeover, browser reobservation, Hooks, and child recovery require explicit host declarations, authorization, and validation in the target environment. Package installation does not switch existing cloud Agents or grant plugins additional execution permissions.

To use the compatibility path for all local Agents, also clear KSADK_STUDIO_NATIVE_AGENT_IDS; DEFAULT=0 does not revoke an exact Native selection.

Entrypoints that still use Managed Harness

The Studio default does not switch every entrypoint named harness:

EntrypointCurrent default engine
Harness Agents in ordinary local StudioNative Harness
Studio compatibility mode without selected Native AgentsManaged Harness
SDK create_harness_session() / HarnessSessionManaged Harness
Default non-Studio Runtime Registry with runtime_type=harnessManaged Harness unless the host explicitly injects a different factory
Agents created in the cloud consoleDetermined by the resulting Framework, deployed image, and host composition; conversational authoring alone does not select an engine

The server accepts Framework=harness with ManagedRuntime deployment. Images using the default SDK Registry still execute through Managed Harness. Codex, ADK, and LangGraph Agents use their respective Providers. The adapter name ManagedHarnessRuntimeAdapter and the deployment type ManagedRuntime describe different layers. Base SDK dependencies retain LangGraph and SQLite checkpoint for compatibility entrypoints; Native independence means it does not import those frameworks while executing, not that the base package never installs them.

Tool hard denies remain effective. An unknown receipt requires inspection and explicit reconciliation before another business action is attempted. Durable claims prevent concurrent duplicate execution; they do not guarantee exactly-once coordination between an external effect and a database commit.

History and database budgets

Web 0.3.13 retains live turns, drafts, and original input order during pagination. New runtimes can advertise history source, epoch, and snapshot boundaries; older runtimes retain their cursor behavior. Failed reads preserve visible history. Timeouts are not treated as empty sessions or successful run completion.

Database budgets are read at process startup and use seconds:

SettingDefaultPurpose
KSADK_DB_CONNECT_SECONDS0.5Connect
KSADK_DB_READ_ACQUIRE_SECONDS0.3Acquire for ordinary reads
KSADK_DB_READ_SQL_SECONDS1Each ordinary read SQL command
KSADK_DB_WRITE_ACQUIRE_SECONDS0.5Acquire for writes
KSADK_DB_WRITE_SQL_SECONDS3Each write SQL command
KSADK_DB_WRITE_OPERATION_SECONDS5Complete write and commit verification
KSADK_DB_REPLAY_SQL_SECONDS3Each complete-replay read
KSADK_DB_REPLAY_OPERATION_SECONDS30Complete replay
KSADK_DB_LOCK_SECONDS0.5Lock wait
KSADK_DB_CLEANUP_SECONDS1Shared cancellation, rollback, and release budget

KSADK_HISTORY_INITIAL_EVENTS defaults to 256 (range 32–256). KSADK_HISTORY_READ_CONCURRENCY defaults to 4 per process (range 1–32). Tune for actual remote database latency. These budgets do not limit the Agent's whole turn, and a longer replay budget does not extend an ordinary history HTTP request. Unknown commits fence unsafe cache fallbacks until durable facts are verified, preventing incorrect replay or duplicate side effects.

LangGraph uses an explicit graph recursion_limit, then KSADK_LANGGRAPH_RECURSION_LIMIT, then the default 50. Recursion and stream errors produce sanitized terminal failures with invocation identity preserved.

Companion Web and deployment

The companion is @kingsoftcloud/ksadk-web@0.3.13. Python artifacts pin and embed compiled pages at build time; React hosts should pin the same reviewed version. Production Hosted UI still requires its host's separate build and deployment. Publishing Python/npm does not update existing runtime images or desktop apps.

Local Native tests, browser fixtures, and installation smoke tests establish their specific local scenarios. Real models, MCP/Skill/Sandbox services, cloud auth, multi-replica recovery, and historical Agent interoperability require evidence from the target environment.

On this page