diff --git a/packages/cli/package.json b/packages/cli/package.json
index 790305e4..1614aac5 100644
--- a/packages/cli/package.json
+++ b/packages/cli/package.json
@@ -1,6 +1,6 @@
{
"name": "@abox-dev/cli",
- "version": "0.1.5",
+ "version": "0.1.6",
"description": "CLI for AgentBox sandboxes and templates",
"homepage": "https://docs.agentbox.ru/en/cli/",
"license": "MIT",
diff --git a/packages/code-interpreter-js/package.json b/packages/code-interpreter-js/package.json
index ffa3f29b..93e72d64 100644
--- a/packages/code-interpreter-js/package.json
+++ b/packages/code-interpreter-js/package.json
@@ -1,6 +1,6 @@
{
"name": "@abox-dev/code-interpreter",
- "version": "0.1.5",
+ "version": "0.1.6",
"packageManager": "pnpm@10.34.5",
"description": "AgentBox Code Interpreter - Stateful code execution",
"homepage": "https://docs.agentbox.ru/en/sdk/code-interpreter/",
diff --git a/packages/code-interpreter-python/package.json b/packages/code-interpreter-python/package.json
index a9f2b717..8b0bf526 100644
--- a/packages/code-interpreter-python/package.json
+++ b/packages/code-interpreter-python/package.json
@@ -1,7 +1,7 @@
{
"name": "@abox-dev/code-interpreter-python",
"private": true,
- "version": "0.1.5",
+ "version": "0.1.6",
"scripts": {
"test": "uv run pytest -n 2 --verbose -x tests/test_sandbox_url.py",
"test:integration": "uv run pytest -n 2 --verbose -x",
diff --git a/packages/code-interpreter-python/pyproject.toml b/packages/code-interpreter-python/pyproject.toml
index f27ca9f7..795faeb1 100644
--- a/packages/code-interpreter-python/pyproject.toml
+++ b/packages/code-interpreter-python/pyproject.toml
@@ -1,6 +1,6 @@
[project]
name = "abox-code-interpreter"
-version = "0.1.5"
+version = "0.1.6"
description = "AgentBox Code Interpreter - Stateful code execution"
authors = [{ name = "RetailDriver LLC" }]
license = "MIT"
diff --git a/packages/code-interpreter-python/uv.lock b/packages/code-interpreter-python/uv.lock
index f3501d7c..79cc89ce 100644
--- a/packages/code-interpreter-python/uv.lock
+++ b/packages/code-interpreter-python/uv.lock
@@ -16,7 +16,7 @@ members = [
[[package]]
name = "abox-code-interpreter"
-version = "0.1.5"
+version = "0.1.6"
source = { editable = "." }
dependencies = [
{ name = "abox-sdk" },
@@ -58,7 +58,7 @@ dev = [
[[package]]
name = "abox-sdk"
-version = "0.1.5"
+version = "0.1.6"
source = { editable = "../python-sdk" }
dependencies = [
{ name = "attrs" },
diff --git a/packages/go-sdk/README.md b/packages/go-sdk/README.md
index 2b9a648b..0658dd59 100644
--- a/packages/go-sdk/README.md
+++ b/packages/go-sdk/README.md
@@ -44,8 +44,8 @@ func main() {
Code Interpreter is available from
`github.com/abox-dev/sdk/packages/go-sdk/codeinterpreter`.
-API reference for this release: [core SDK on pkg.go.dev](https://pkg.go.dev/github.com/abox-dev/sdk/packages/go-sdk@v0.1.5) and
-[Code Interpreter on pkg.go.dev](https://pkg.go.dev/github.com/abox-dev/sdk/packages/go-sdk/codeinterpreter@v0.1.5).
+API reference for this release: [core SDK on pkg.go.dev](https://pkg.go.dev/github.com/abox-dev/sdk/packages/go-sdk@v0.1.6) and
+[Code Interpreter on pkg.go.dev](https://pkg.go.dev/github.com/abox-dev/sdk/packages/go-sdk/codeinterpreter@v0.1.6).
Documentation: [core SDK](https://docs.agentbox.ru/en/sdk/),
[sandboxes](https://docs.agentbox.ru/en/sdk/sandboxes/),
diff --git a/packages/go-sdk/version.go b/packages/go-sdk/version.go
index c5983de5..1213401f 100644
--- a/packages/go-sdk/version.go
+++ b/packages/go-sdk/version.go
@@ -1,4 +1,4 @@
package agentbox
// Version is the AgentBox SDK release version.
-const Version = "0.1.5"
+const Version = "0.1.6"
diff --git a/packages/js-sdk/package.json b/packages/js-sdk/package.json
index b3f5fd45..fea96e22 100644
--- a/packages/js-sdk/package.json
+++ b/packages/js-sdk/package.json
@@ -1,6 +1,6 @@
{
"name": "@abox-dev/sdk",
- "version": "0.1.5",
+ "version": "0.1.6",
"description": "AgentBox SDK for secure cloud sandboxes",
"homepage": "https://docs.agentbox.ru/en/sdk/",
"license": "MIT",
diff --git a/packages/js-sdk/src/connectionConfig.ts b/packages/js-sdk/src/connectionConfig.ts
index 949ede01..7da55dc5 100644
--- a/packages/js-sdk/src/connectionConfig.ts
+++ b/packages/js-sdk/src/connectionConfig.ts
@@ -506,7 +506,11 @@ export class ConnectionConfig {
if (this.sandboxUrl) {
const proxyUrl = this.parseSandboxUrl()
const proxyPort = proxyUrl.port ? `:${proxyUrl.port}` : ''
- return `${port}-${sandboxId}.${proxyUrl.hostname}${proxyPort}`
+ const host =
+ proxyUrl.hostname === `sandbox.${sandboxDomain}`
+ ? sandboxDomain
+ : proxyUrl.hostname
+ return `${port}-${sandboxId}.${host}${proxyPort}`
}
if (this.debug) {
diff --git a/packages/js-sdk/tests/connectionConfig.test.ts b/packages/js-sdk/tests/connectionConfig.test.ts
index 9fbb8791..b0315082 100644
--- a/packages/js-sdk/tests/connectionConfig.test.ts
+++ b/packages/js-sdk/tests/connectionConfig.test.ts
@@ -191,6 +191,31 @@ test('sandbox URL routing preserves the configured protocol', () => {
)
})
+test('shared sandbox URL derives direct hosts from the runtime domain', () => {
+ const config = new ConnectionConfig({
+ sandboxUrl: 'https://sandbox.agentbox-runtime.ru',
+ })
+
+ assert.equal(
+ config.getSandboxUrl('sbx-test', {
+ sandboxDomain: 'agentbox-runtime.ru',
+ envdPort: 49983,
+ }),
+ 'https://sandbox.agentbox-runtime.ru'
+ )
+ assert.equal(
+ config.getHost('sbx-test', 8080, 'agentbox-runtime.ru'),
+ '8080-sbx-test.agentbox-runtime.ru'
+ )
+ assert.equal(
+ config.getSandboxDirectUrl('sbx-test', {
+ sandboxDomain: 'agentbox-runtime.ru',
+ envdPort: 49983,
+ }),
+ 'https://49983-sbx-test.agentbox-runtime.ru'
+ )
+})
+
test('sandbox URL routing rejects an invalid URL', () => {
const config = new ConnectionConfig({
debug: false,
diff --git a/packages/python-sdk/package.json b/packages/python-sdk/package.json
index 0ca08e10..e92c08ff 100644
--- a/packages/python-sdk/package.json
+++ b/packages/python-sdk/package.json
@@ -1,7 +1,7 @@
{
"name": "@abox-dev/python-sdk",
"private": true,
- "version": "0.1.5",
+ "version": "0.1.6",
"scripts": {
"test": "uv run pytest -n 4 --verbose -x tests/test_*.py tests/shared",
"test:integration": "uv run pytest -n 4 --verbose -x tests/sync tests/async",
diff --git a/packages/python-sdk/pyproject.toml b/packages/python-sdk/pyproject.toml
index 02ea6825..93c95931 100644
--- a/packages/python-sdk/pyproject.toml
+++ b/packages/python-sdk/pyproject.toml
@@ -1,6 +1,6 @@
[project]
name = "abox-sdk"
-version = "0.1.5"
+version = "0.1.6"
description = "AgentBox SDK for secure cloud sandboxes"
authors = [{ name = "RetailDriver LLC" }]
license = "MIT"
diff --git a/packages/python-sdk/uv.lock b/packages/python-sdk/uv.lock
index 3d49ed27..4b0ce643 100644
--- a/packages/python-sdk/uv.lock
+++ b/packages/python-sdk/uv.lock
@@ -8,7 +8,7 @@ resolution-markers = [
[[package]]
name = "abox-sdk"
-version = "0.1.5"
+version = "0.1.6"
source = { editable = "." }
dependencies = [
{ name = "attrs" },
diff --git a/reference/manifest.json b/reference/manifest.json
index f3672bda..b96b703e 100644
--- a/reference/manifest.json
+++ b/reference/manifest.json
@@ -45,7 +45,7 @@
"sdk/cli/sandbox.md": "16b64c5a4e932eca2452e400e0faf154eba1d3c7373513aa7cd9744e02908313",
"sdk/cli/template.md": "f270b22b9ee10a9b954a14f24e04c5449b4d5823bb28002ffde3ed682594cfc5",
"sdk/go/code-interpreter.md": "9c56333b8181878d656baa27a4b56b768a0cb01c9d764f7ac8d52d32d8faa70c",
- "sdk/go/core.md": "bfef1b73c0df94691e918838117ef2892baed56ffb2d1f12171898133265f09a",
+ "sdk/go/core.md": "4753f87bfb08f0462964d72780feb338a147be5de5a0bd97a32121ac87916d2b",
"sdk/javascript/code-interpreter/README.md": "a787206eb86f81fc306b373ce20bc6c91464b0ab3c3ec7650eccbb6be5f676c5",
"sdk/javascript/code-interpreter/classes/Sandbox.md": "19d9f1f1e8847606a54d93c5a6e5d4c89f936a745866e8d6a2aa06758b605e60",
"sdk/javascript/code-interpreter/enumerations/ChartType.md": "cf1ba00cd3258cc88814b7215e101b0d775ceb15dd833636d58ae538d8107ec1",
@@ -184,12 +184,12 @@
},
"monoRevision": "a7d59d50e3dd84faee59aca08df1b5bb175266e6",
"packages": {
- "@abox-dev/cli": "0.1.5",
- "@abox-dev/code-interpreter": "0.1.5",
- "@abox-dev/sdk": "0.1.5",
- "abox-code-interpreter": "0.1.5",
- "abox-sdk": "0.1.5",
- "github.com/abox-dev/sdk/packages/go-sdk": "0.1.5"
+ "@abox-dev/cli": "0.1.6",
+ "@abox-dev/code-interpreter": "0.1.6",
+ "@abox-dev/sdk": "0.1.6",
+ "abox-code-interpreter": "0.1.6",
+ "abox-sdk": "0.1.6",
+ "github.com/abox-dev/sdk/packages/go-sdk": "0.1.6"
},
"schemaVersion": 1
}
diff --git a/reference/sdk/go/core.md b/reference/sdk/go/core.md
index fe0fef2e..f1e3804c 100644
--- a/reference/sdk/go/core.md
+++ b/reference/sdk/go/core.md
@@ -261,7 +261,7 @@ Create a client, start a sandbox, and run a command:
Version is the AgentBox SDK release version.
- const Version = "0.1.5"
+ const Version = "0.1.6"
## func IAMTokenPlaceholder