mirror of
https://github.com/harivansh-afk/sandbox-agent.git
synced 2026-04-18 15:03:06 +00:00
Compare commits
9 commits
main
...
v0.1.6-rc.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7ab3226204 | ||
|
|
79a4c4ec16 | ||
|
|
8b718ad28f | ||
|
|
689e13c79b | ||
|
|
f3a8c8235a | ||
|
|
9e748d1bd9 | ||
|
|
2f2c33abc9 | ||
|
|
778c7b3064 | ||
|
|
5233334d11 |
25 changed files with 222 additions and 60 deletions
5
.github/workflows/release.yaml
vendored
5
.github/workflows/release.yaml
vendored
|
|
@ -96,6 +96,11 @@ jobs:
|
||||||
target: x86_64-unknown-linux-musl
|
target: x86_64-unknown-linux-musl
|
||||||
binary_ext: ""
|
binary_ext: ""
|
||||||
arch: x86_64
|
arch: x86_64
|
||||||
|
- platform: linux
|
||||||
|
runner: depot-ubuntu-24.04-arm-8
|
||||||
|
target: aarch64-unknown-linux-musl
|
||||||
|
binary_ext: ""
|
||||||
|
arch: aarch64
|
||||||
- platform: windows
|
- platform: windows
|
||||||
runner: depot-ubuntu-24.04-8
|
runner: depot-ubuntu-24.04-8
|
||||||
target: x86_64-pc-windows-gnu
|
target: x86_64-pc-windows-gnu
|
||||||
|
|
|
||||||
14
Cargo.toml
14
Cargo.toml
|
|
@ -3,7 +3,7 @@ resolver = "2"
|
||||||
members = ["server/packages/*"]
|
members = ["server/packages/*"]
|
||||||
|
|
||||||
[workspace.package]
|
[workspace.package]
|
||||||
version = "0.1.6-rc.1"
|
version = "0.1.6-rc.2"
|
||||||
edition = "2021"
|
edition = "2021"
|
||||||
authors = [ "Rivet Gaming, LLC <developer@rivet.gg>" ]
|
authors = [ "Rivet Gaming, LLC <developer@rivet.gg>" ]
|
||||||
license = "Apache-2.0"
|
license = "Apache-2.0"
|
||||||
|
|
@ -12,12 +12,12 @@ description = "Universal API for automatic coding agents in sandboxes. Supprots
|
||||||
|
|
||||||
[workspace.dependencies]
|
[workspace.dependencies]
|
||||||
# Internal crates
|
# Internal crates
|
||||||
sandbox-agent = { version = "0.1.6-rc.1", path = "server/packages/sandbox-agent" }
|
sandbox-agent = { version = "0.1.6-rc.2", path = "server/packages/sandbox-agent" }
|
||||||
sandbox-agent-error = { version = "0.1.6-rc.1", path = "server/packages/error" }
|
sandbox-agent-error = { version = "0.1.6-rc.2", path = "server/packages/error" }
|
||||||
sandbox-agent-agent-management = { version = "0.1.6-rc.1", path = "server/packages/agent-management" }
|
sandbox-agent-agent-management = { version = "0.1.6-rc.2", path = "server/packages/agent-management" }
|
||||||
sandbox-agent-agent-credentials = { version = "0.1.6-rc.1", path = "server/packages/agent-credentials" }
|
sandbox-agent-agent-credentials = { version = "0.1.6-rc.2", path = "server/packages/agent-credentials" }
|
||||||
sandbox-agent-universal-agent-schema = { version = "0.1.6-rc.1", path = "server/packages/universal-agent-schema" }
|
sandbox-agent-universal-agent-schema = { version = "0.1.6-rc.2", path = "server/packages/universal-agent-schema" }
|
||||||
sandbox-agent-extracted-agent-schemas = { version = "0.1.6-rc.1", path = "server/packages/extracted-agent-schemas" }
|
sandbox-agent-extracted-agent-schemas = { version = "0.1.6-rc.2", path = "server/packages/extracted-agent-schemas" }
|
||||||
|
|
||||||
# Serialization
|
# Serialization
|
||||||
serde = { version = "1.0", features = ["derive"] }
|
serde = { version = "1.0", features = ["derive"] }
|
||||||
|
|
|
||||||
|
|
@ -84,7 +84,7 @@ npm install sandbox-agent
|
||||||
```bash
|
```bash
|
||||||
bun add sandbox-agent
|
bun add sandbox-agent
|
||||||
# Optional: allow Bun to run postinstall scripts for native binaries (required for SandboxAgent.start()).
|
# Optional: allow Bun to run postinstall scripts for native binaries (required for SandboxAgent.start()).
|
||||||
bun pm trust @sandbox-agent/cli-linux-x64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64
|
bun pm trust @sandbox-agent/cli-linux-x64 @sandbox-agent/cli-linux-arm64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64
|
||||||
```
|
```
|
||||||
|
|
||||||
**Setup**
|
**Setup**
|
||||||
|
|
@ -167,7 +167,7 @@ npm install -g @sandbox-agent/cli
|
||||||
```bash
|
```bash
|
||||||
# Allow Bun to run postinstall scripts for native binaries.
|
# Allow Bun to run postinstall scripts for native binaries.
|
||||||
bun add -g @sandbox-agent/cli
|
bun add -g @sandbox-agent/cli
|
||||||
bun pm -g trust @sandbox-agent/cli-linux-x64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64
|
bun pm -g trust @sandbox-agent/cli-linux-x64 @sandbox-agent/cli-linux-arm64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64
|
||||||
```
|
```
|
||||||
|
|
||||||
Create a session and send a message:
|
Create a session and send a message:
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,12 @@ case $TARGET in
|
||||||
TARGET_STAGE="x86_64-builder"
|
TARGET_STAGE="x86_64-builder"
|
||||||
BINARY="sandbox-agent-$TARGET"
|
BINARY="sandbox-agent-$TARGET"
|
||||||
;;
|
;;
|
||||||
|
aarch64-unknown-linux-musl)
|
||||||
|
echo "Building for Linux aarch64 musl"
|
||||||
|
DOCKERFILE="linux-aarch64.Dockerfile"
|
||||||
|
TARGET_STAGE="aarch64-builder"
|
||||||
|
BINARY="sandbox-agent-$TARGET"
|
||||||
|
;;
|
||||||
x86_64-pc-windows-gnu)
|
x86_64-pc-windows-gnu)
|
||||||
echo "Building for Windows x86_64"
|
echo "Building for Windows x86_64"
|
||||||
DOCKERFILE="windows.Dockerfile"
|
DOCKERFILE="windows.Dockerfile"
|
||||||
|
|
|
||||||
103
docker/release/linux-aarch64.Dockerfile
Normal file
103
docker/release/linux-aarch64.Dockerfile
Normal file
|
|
@ -0,0 +1,103 @@
|
||||||
|
# syntax=docker/dockerfile:1.10.0
|
||||||
|
|
||||||
|
# Build inspector frontend
|
||||||
|
FROM node:22-alpine AS inspector-build
|
||||||
|
WORKDIR /app
|
||||||
|
RUN npm install -g pnpm
|
||||||
|
|
||||||
|
# Copy package files for workspaces
|
||||||
|
COPY package.json pnpm-lock.yaml pnpm-workspace.yaml ./
|
||||||
|
COPY frontend/packages/inspector/package.json ./frontend/packages/inspector/
|
||||||
|
COPY sdks/cli-shared/package.json ./sdks/cli-shared/
|
||||||
|
COPY sdks/typescript/package.json ./sdks/typescript/
|
||||||
|
|
||||||
|
# Install dependencies
|
||||||
|
RUN pnpm install --filter @sandbox-agent/inspector...
|
||||||
|
|
||||||
|
# Copy SDK source (with pre-generated types from docs/openapi.json)
|
||||||
|
COPY docs/openapi.json ./docs/
|
||||||
|
COPY sdks/cli-shared ./sdks/cli-shared
|
||||||
|
COPY sdks/typescript ./sdks/typescript
|
||||||
|
|
||||||
|
# Build cli-shared and SDK (just tsup, skip generate since types are pre-generated)
|
||||||
|
RUN cd sdks/cli-shared && pnpm exec tsup
|
||||||
|
RUN cd sdks/typescript && SKIP_OPENAPI_GEN=1 pnpm exec tsup
|
||||||
|
|
||||||
|
# Copy inspector source and build
|
||||||
|
COPY frontend/packages/inspector ./frontend/packages/inspector
|
||||||
|
RUN cd frontend/packages/inspector && pnpm exec vite build
|
||||||
|
|
||||||
|
# Use Alpine-based Rust image which has native musl support
|
||||||
|
FROM rust:1.88.0-alpine AS base
|
||||||
|
|
||||||
|
# Install dependencies for native ARM64 musl build
|
||||||
|
RUN apk add --no-cache \
|
||||||
|
musl-dev \
|
||||||
|
clang \
|
||||||
|
llvm \
|
||||||
|
openssl-dev \
|
||||||
|
openssl-libs-static \
|
||||||
|
pkgconfig \
|
||||||
|
ca-certificates \
|
||||||
|
git \
|
||||||
|
curl \
|
||||||
|
build-base \
|
||||||
|
linux-headers \
|
||||||
|
perl \
|
||||||
|
make
|
||||||
|
|
||||||
|
# Install musl target for Rust (should be native on Alpine)
|
||||||
|
RUN rustup target add aarch64-unknown-linux-musl
|
||||||
|
|
||||||
|
# Set environment variables for native musl build
|
||||||
|
ENV LIBCLANG_PATH=/usr/lib \
|
||||||
|
CC=gcc \
|
||||||
|
CXX=g++ \
|
||||||
|
AR=ar \
|
||||||
|
CARGO_INCREMENTAL=0 \
|
||||||
|
RUSTFLAGS="-C target-feature=+crt-static" \
|
||||||
|
CARGO_NET_GIT_FETCH_WITH_CLI=true
|
||||||
|
|
||||||
|
# Set working directory
|
||||||
|
WORKDIR /build
|
||||||
|
|
||||||
|
# Build for aarch64
|
||||||
|
FROM base AS aarch64-builder
|
||||||
|
|
||||||
|
# Accept version as build arg
|
||||||
|
ARG SANDBOX_AGENT_VERSION
|
||||||
|
ENV SANDBOX_AGENT_VERSION=${SANDBOX_AGENT_VERSION}
|
||||||
|
|
||||||
|
# Build OpenSSL with musl (native on Alpine ARM64)
|
||||||
|
ENV SSL_VER=1.1.1w
|
||||||
|
RUN wget https://www.openssl.org/source/openssl-$SSL_VER.tar.gz \
|
||||||
|
&& tar -xzf openssl-$SSL_VER.tar.gz \
|
||||||
|
&& cd openssl-$SSL_VER \
|
||||||
|
&& ./Configure no-shared no-async --prefix=/musl --openssldir=/musl/ssl linux-aarch64 \
|
||||||
|
&& make -j$(nproc) \
|
||||||
|
&& make install_sw \
|
||||||
|
&& cd .. \
|
||||||
|
&& rm -rf openssl-$SSL_VER*
|
||||||
|
|
||||||
|
# Configure OpenSSL env vars for the build
|
||||||
|
ENV OPENSSL_DIR=/musl \
|
||||||
|
OPENSSL_INCLUDE_DIR=/musl/include \
|
||||||
|
OPENSSL_LIB_DIR=/musl/lib \
|
||||||
|
OPENSSL_STATIC=1
|
||||||
|
|
||||||
|
# Copy the source code
|
||||||
|
COPY . .
|
||||||
|
|
||||||
|
# Copy pre-built inspector frontend
|
||||||
|
COPY --from=inspector-build /app/frontend/packages/inspector/dist ./frontend/packages/inspector/dist
|
||||||
|
|
||||||
|
# Build for Linux with musl (static binary) - aarch64
|
||||||
|
RUN --mount=type=cache,target=/usr/local/cargo/registry \
|
||||||
|
--mount=type=cache,target=/usr/local/cargo/git \
|
||||||
|
--mount=type=cache,target=/build/target \
|
||||||
|
cargo build -p sandbox-agent --release --target aarch64-unknown-linux-musl && \
|
||||||
|
mkdir -p /artifacts && \
|
||||||
|
cp target/aarch64-unknown-linux-musl/release/sandbox-agent /artifacts/sandbox-agent-aarch64-unknown-linux-musl
|
||||||
|
|
||||||
|
# Default command to show help
|
||||||
|
CMD ["ls", "-la", "/artifacts"]
|
||||||
|
|
@ -75,9 +75,21 @@ await client.createSession("my-session", {
|
||||||
|
|
||||||
To build a static binary for use in minimal containers:
|
To build a static binary for use in minimal containers:
|
||||||
|
|
||||||
```bash
|
<Tabs>
|
||||||
docker build -f docker/release/linux-x86_64.Dockerfile -t sandbox-agent-build .
|
<Tab title="x86_64">
|
||||||
docker run --rm -v "$PWD/artifacts:/artifacts" sandbox-agent-build
|
```bash
|
||||||
```
|
docker build -f docker/release/linux-x86_64.Dockerfile -t sandbox-agent-build .
|
||||||
|
docker run --rm -v "$PWD/artifacts:/artifacts" sandbox-agent-build
|
||||||
|
```
|
||||||
|
|
||||||
The binary will be at `./artifacts/sandbox-agent-x86_64-unknown-linux-musl`.
|
The binary will be at `./artifacts/sandbox-agent-x86_64-unknown-linux-musl`.
|
||||||
|
</Tab>
|
||||||
|
<Tab title="ARM64 (aarch64)">
|
||||||
|
```bash
|
||||||
|
docker build -f docker/release/linux-aarch64.Dockerfile -t sandbox-agent-build .
|
||||||
|
docker run --rm -v "$PWD/artifacts:/artifacts" sandbox-agent-build
|
||||||
|
```
|
||||||
|
|
||||||
|
The binary will be at `./artifacts/sandbox-agent-aarch64-unknown-linux-musl`.
|
||||||
|
</Tab>
|
||||||
|
</Tabs>
|
||||||
|
|
|
||||||
|
|
@ -10,7 +10,7 @@
|
||||||
"license": {
|
"license": {
|
||||||
"name": "Apache-2.0"
|
"name": "Apache-2.0"
|
||||||
},
|
},
|
||||||
"version": "0.1.6-rc.1"
|
"version": "0.1.6-rc.2"
|
||||||
},
|
},
|
||||||
"servers": [
|
"servers": [
|
||||||
{
|
{
|
||||||
|
|
|
||||||
|
|
@ -120,7 +120,7 @@ icon: "rocket"
|
||||||
```bash
|
```bash
|
||||||
bun add -g @sandbox-agent/cli
|
bun add -g @sandbox-agent/cli
|
||||||
# Allow Bun to run postinstall scripts for native binaries (required for SandboxAgent.start()).
|
# Allow Bun to run postinstall scripts for native binaries (required for SandboxAgent.start()).
|
||||||
bun pm -g trust @sandbox-agent/cli-linux-x64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64
|
bun pm -g trust @sandbox-agent/cli-linux-x64 @sandbox-agent/cli-linux-arm64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64
|
||||||
sandbox-agent server --no-token --host 0.0.0.0 --port 2468
|
sandbox-agent server --no-token --host 0.0.0.0 --port 2468
|
||||||
```
|
```
|
||||||
|
|
||||||
|
|
@ -146,7 +146,7 @@ icon: "rocket"
|
||||||
```bash
|
```bash
|
||||||
bun add sandbox-agent
|
bun add sandbox-agent
|
||||||
# Allow Bun to run postinstall scripts for native binaries (required for SandboxAgent.start()).
|
# Allow Bun to run postinstall scripts for native binaries (required for SandboxAgent.start()).
|
||||||
bun pm trust @sandbox-agent/cli-linux-x64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64
|
bun pm trust @sandbox-agent/cli-linux-x64 @sandbox-agent/cli-linux-arm64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64
|
||||||
```
|
```
|
||||||
|
|
||||||
```typescript
|
```typescript
|
||||||
|
|
|
||||||
|
|
@ -19,7 +19,7 @@ client for sessions, events, and agent operations.
|
||||||
```bash
|
```bash
|
||||||
bun add sandbox-agent
|
bun add sandbox-agent
|
||||||
# Allow Bun to run postinstall scripts for native binaries (required for SandboxAgent.start()).
|
# Allow Bun to run postinstall scripts for native binaries (required for SandboxAgent.start()).
|
||||||
bun pm trust @sandbox-agent/cli-linux-x64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64
|
bun pm trust @sandbox-agent/cli-linux-x64 @sandbox-agent/cli-linux-arm64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64
|
||||||
```
|
```
|
||||||
</Tab>
|
</Tab>
|
||||||
</Tabs>
|
</Tabs>
|
||||||
|
|
|
||||||
1
justfile
1
justfile
|
|
@ -17,6 +17,7 @@ release-build target="x86_64-unknown-linux-musl":
|
||||||
[group('release')]
|
[group('release')]
|
||||||
release-build-all:
|
release-build-all:
|
||||||
./docker/release/build.sh x86_64-unknown-linux-musl
|
./docker/release/build.sh x86_64-unknown-linux-musl
|
||||||
|
./docker/release/build.sh aarch64-unknown-linux-musl
|
||||||
./docker/release/build.sh x86_64-pc-windows-gnu
|
./docker/release/build.sh x86_64-pc-windows-gnu
|
||||||
./docker/release/build.sh x86_64-apple-darwin
|
./docker/release/build.sh x86_64-apple-darwin
|
||||||
./docker/release/build.sh aarch64-apple-darwin
|
./docker/release/build.sh aarch64-apple-darwin
|
||||||
|
|
|
||||||
|
|
@ -12,5 +12,11 @@
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"turbo": "^2.4.0",
|
"turbo": "^2.4.0",
|
||||||
"vitest": "^3.0.0"
|
"vitest": "^3.0.0"
|
||||||
|
},
|
||||||
|
"pnpm": {
|
||||||
|
"overrides": {
|
||||||
|
"@types/react": "^18.3.3",
|
||||||
|
"@types/react-dom": "^18.3.0"
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
55
pnpm-lock.yaml
generated
55
pnpm-lock.yaml
generated
|
|
@ -4,6 +4,10 @@ settings:
|
||||||
autoInstallPeers: true
|
autoInstallPeers: true
|
||||||
excludeLinksFromLockfile: false
|
excludeLinksFromLockfile: false
|
||||||
|
|
||||||
|
overrides:
|
||||||
|
'@types/react': ^18.3.3
|
||||||
|
'@types/react-dom': ^18.3.0
|
||||||
|
|
||||||
importers:
|
importers:
|
||||||
|
|
||||||
.:
|
.:
|
||||||
|
|
@ -37,11 +41,11 @@ importers:
|
||||||
specifier: latest
|
specifier: latest
|
||||||
version: 25.2.0
|
version: 25.2.0
|
||||||
'@types/react':
|
'@types/react':
|
||||||
specifier: ^19.1.0
|
specifier: ^18.3.3
|
||||||
version: 19.2.10
|
version: 18.3.27
|
||||||
'@types/react-dom':
|
'@types/react-dom':
|
||||||
specifier: ^19.1.0
|
specifier: ^18.3.0
|
||||||
version: 19.2.3(@types/react@19.2.10)
|
version: 18.3.7(@types/react@18.3.27)
|
||||||
'@vitejs/plugin-react':
|
'@vitejs/plugin-react':
|
||||||
specifier: ^4.5.0
|
specifier: ^4.5.0
|
||||||
version: 4.7.0(vite@6.4.1(@types/node@25.2.0)(jiti@1.21.7)(tsx@4.21.0)(yaml@2.8.2))
|
version: 4.7.0(vite@6.4.1(@types/node@25.2.0)(jiti@1.21.7)(tsx@4.21.0)(yaml@2.8.2))
|
||||||
|
|
@ -200,7 +204,7 @@ importers:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@astrojs/react':
|
'@astrojs/react':
|
||||||
specifier: ^4.2.0
|
specifier: ^4.2.0
|
||||||
version: 4.4.2(@types/node@25.2.0)(@types/react-dom@19.2.3(@types/react@19.2.10))(@types/react@19.2.10)(jiti@1.21.7)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(tsx@4.21.0)(yaml@2.8.2)
|
version: 4.4.2(@types/node@25.2.0)(@types/react-dom@18.3.7(@types/react@18.3.27))(@types/react@18.3.27)(jiti@1.21.7)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(tsx@4.21.0)(yaml@2.8.2)
|
||||||
'@astrojs/tailwind':
|
'@astrojs/tailwind':
|
||||||
specifier: ^6.0.0
|
specifier: ^6.0.0
|
||||||
version: 6.0.2(astro@5.16.15(@types/node@25.2.0)(jiti@1.21.7)(rollup@4.56.0)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2))(tailwindcss@3.4.19(tsx@4.21.0)(yaml@2.8.2))
|
version: 6.0.2(astro@5.16.15(@types/node@25.2.0)(jiti@1.21.7)(rollup@4.56.0)(tsx@4.21.0)(typescript@5.9.3)(yaml@2.8.2))(tailwindcss@3.4.19(tsx@4.21.0)(yaml@2.8.2))
|
||||||
|
|
@ -224,11 +228,11 @@ importers:
|
||||||
version: 3.4.19(tsx@4.21.0)(yaml@2.8.2)
|
version: 3.4.19(tsx@4.21.0)(yaml@2.8.2)
|
||||||
devDependencies:
|
devDependencies:
|
||||||
'@types/react':
|
'@types/react':
|
||||||
specifier: ^19.0.0
|
specifier: ^18.3.3
|
||||||
version: 19.2.10
|
version: 18.3.27
|
||||||
'@types/react-dom':
|
'@types/react-dom':
|
||||||
specifier: ^19.0.0
|
specifier: ^18.3.0
|
||||||
version: 19.2.3(@types/react@19.2.10)
|
version: 18.3.7(@types/react@18.3.27)
|
||||||
typescript:
|
typescript:
|
||||||
specifier: ^5.7.0
|
specifier: ^5.7.0
|
||||||
version: 5.9.3
|
version: 5.9.3
|
||||||
|
|
@ -342,6 +346,9 @@ importers:
|
||||||
'@sandbox-agent/cli-darwin-x64':
|
'@sandbox-agent/cli-darwin-x64':
|
||||||
specifier: workspace:*
|
specifier: workspace:*
|
||||||
version: link:platforms/darwin-x64
|
version: link:platforms/darwin-x64
|
||||||
|
'@sandbox-agent/cli-linux-arm64':
|
||||||
|
specifier: workspace:*
|
||||||
|
version: link:platforms/linux-arm64
|
||||||
'@sandbox-agent/cli-linux-x64':
|
'@sandbox-agent/cli-linux-x64':
|
||||||
specifier: workspace:*
|
specifier: workspace:*
|
||||||
version: link:platforms/linux-x64
|
version: link:platforms/linux-x64
|
||||||
|
|
@ -369,6 +376,8 @@ importers:
|
||||||
|
|
||||||
sdks/cli/platforms/darwin-x64: {}
|
sdks/cli/platforms/darwin-x64: {}
|
||||||
|
|
||||||
|
sdks/cli/platforms/linux-arm64: {}
|
||||||
|
|
||||||
sdks/cli/platforms/linux-x64: {}
|
sdks/cli/platforms/linux-x64: {}
|
||||||
|
|
||||||
sdks/cli/platforms/win32-x64: {}
|
sdks/cli/platforms/win32-x64: {}
|
||||||
|
|
@ -423,8 +432,8 @@ packages:
|
||||||
resolution: {integrity: sha512-1tl95bpGfuaDMDn8O3x/5Dxii1HPvzjvpL2YTuqOOrQehs60I2DKiDgh1jrKc7G8lv+LQT5H15V6QONQ+9waeQ==}
|
resolution: {integrity: sha512-1tl95bpGfuaDMDn8O3x/5Dxii1HPvzjvpL2YTuqOOrQehs60I2DKiDgh1jrKc7G8lv+LQT5H15V6QONQ+9waeQ==}
|
||||||
engines: {node: 18.20.8 || ^20.3.0 || >=22.0.0}
|
engines: {node: 18.20.8 || ^20.3.0 || >=22.0.0}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@types/react': ^17.0.50 || ^18.0.21 || ^19.0.0
|
'@types/react': ^18.3.3
|
||||||
'@types/react-dom': ^17.0.17 || ^18.0.6 || ^19.0.0
|
'@types/react-dom': ^18.3.0
|
||||||
react: ^17.0.2 || ^18.0.0 || ^19.0.0
|
react: ^17.0.2 || ^18.0.0 || ^19.0.0
|
||||||
react-dom: ^17.0.2 || ^18.0.0 || ^19.0.0
|
react-dom: ^17.0.2 || ^18.0.0 || ^19.0.0
|
||||||
|
|
||||||
|
|
@ -2203,19 +2212,11 @@ packages:
|
||||||
'@types/react-dom@18.3.7':
|
'@types/react-dom@18.3.7':
|
||||||
resolution: {integrity: sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==}
|
resolution: {integrity: sha512-MEe3UeoENYVFXzoXEWsvcpg6ZvlrFNlOQ7EOsvhI3CfAXwzPfO8Qwuxd40nepsYKqyyVQnTdEfv68q91yLcKrQ==}
|
||||||
peerDependencies:
|
peerDependencies:
|
||||||
'@types/react': ^18.0.0
|
'@types/react': ^18.3.3
|
||||||
|
|
||||||
'@types/react-dom@19.2.3':
|
|
||||||
resolution: {integrity: sha512-jp2L/eY6fn+KgVVQAOqYItbF0VY/YApe5Mz2F0aykSO8gx31bYCZyvSeYxCHKvzHG5eZjc+zyaS5BrBWya2+kQ==}
|
|
||||||
peerDependencies:
|
|
||||||
'@types/react': ^19.2.0
|
|
||||||
|
|
||||||
'@types/react@18.3.27':
|
'@types/react@18.3.27':
|
||||||
resolution: {integrity: sha512-cisd7gxkzjBKU2GgdYrTdtQx1SORymWyaAFhaxQPK9bYO9ot3Y5OikQRvY0VYQtvwjeQnizCINJAenh/V7MK2w==}
|
resolution: {integrity: sha512-cisd7gxkzjBKU2GgdYrTdtQx1SORymWyaAFhaxQPK9bYO9ot3Y5OikQRvY0VYQtvwjeQnizCINJAenh/V7MK2w==}
|
||||||
|
|
||||||
'@types/react@19.2.10':
|
|
||||||
resolution: {integrity: sha512-WPigyYuGhgZ/cTPRXB2EwUw+XvsRA3GqHlsP4qteqrnnjDrApbS7MxcGr/hke5iUoeB7E/gQtrs9I37zAJ0Vjw==}
|
|
||||||
|
|
||||||
'@types/semver@7.7.1':
|
'@types/semver@7.7.1':
|
||||||
resolution: {integrity: sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA==}
|
resolution: {integrity: sha512-FmgJfu+MOcQ370SD0ev7EI8TlCAfKYU+B4m5T3yXc1CiRN94g/SZPtsCkk506aUDtlMnFZvasDwHHUcZUEaYuA==}
|
||||||
|
|
||||||
|
|
@ -4556,10 +4557,10 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
prismjs: 1.30.0
|
prismjs: 1.30.0
|
||||||
|
|
||||||
'@astrojs/react@4.4.2(@types/node@25.2.0)(@types/react-dom@19.2.3(@types/react@19.2.10))(@types/react@19.2.10)(jiti@1.21.7)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(tsx@4.21.0)(yaml@2.8.2)':
|
'@astrojs/react@4.4.2(@types/node@25.2.0)(@types/react-dom@18.3.7(@types/react@18.3.27))(@types/react@18.3.27)(jiti@1.21.7)(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(tsx@4.21.0)(yaml@2.8.2)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/react': 19.2.10
|
'@types/react': 18.3.27
|
||||||
'@types/react-dom': 19.2.3(@types/react@19.2.10)
|
'@types/react-dom': 18.3.7(@types/react@18.3.27)
|
||||||
'@vitejs/plugin-react': 4.7.0(vite@6.4.1(@types/node@25.2.0)(jiti@1.21.7)(tsx@4.21.0)(yaml@2.8.2))
|
'@vitejs/plugin-react': 4.7.0(vite@6.4.1(@types/node@25.2.0)(jiti@1.21.7)(tsx@4.21.0)(yaml@2.8.2))
|
||||||
react: 19.2.4
|
react: 19.2.4
|
||||||
react-dom: 19.2.4(react@19.2.4)
|
react-dom: 19.2.4(react@19.2.4)
|
||||||
|
|
@ -6475,19 +6476,11 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/react': 18.3.27
|
'@types/react': 18.3.27
|
||||||
|
|
||||||
'@types/react-dom@19.2.3(@types/react@19.2.10)':
|
|
||||||
dependencies:
|
|
||||||
'@types/react': 19.2.10
|
|
||||||
|
|
||||||
'@types/react@18.3.27':
|
'@types/react@18.3.27':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/prop-types': 15.7.15
|
'@types/prop-types': 15.7.15
|
||||||
csstype: 3.2.3
|
csstype: 3.2.3
|
||||||
|
|
||||||
'@types/react@19.2.10':
|
|
||||||
dependencies:
|
|
||||||
csstype: 3.2.3
|
|
||||||
|
|
||||||
'@types/semver@7.7.1': {}
|
'@types/semver@7.7.1': {}
|
||||||
|
|
||||||
'@types/ssh2@1.15.5':
|
'@types/ssh2@1.15.5':
|
||||||
|
|
|
||||||
|
|
@ -18,6 +18,7 @@ const CRATES = [
|
||||||
const CLI_PACKAGES = [
|
const CLI_PACKAGES = [
|
||||||
"@sandbox-agent/cli",
|
"@sandbox-agent/cli",
|
||||||
"@sandbox-agent/cli-linux-x64",
|
"@sandbox-agent/cli-linux-x64",
|
||||||
|
"@sandbox-agent/cli-linux-arm64",
|
||||||
"@sandbox-agent/cli-win32-x64",
|
"@sandbox-agent/cli-win32-x64",
|
||||||
"@sandbox-agent/cli-darwin-x64",
|
"@sandbox-agent/cli-darwin-x64",
|
||||||
"@sandbox-agent/cli-darwin-arm64",
|
"@sandbox-agent/cli-darwin-arm64",
|
||||||
|
|
@ -26,6 +27,7 @@ const CLI_PACKAGES = [
|
||||||
// Mapping from npm package name to Rust target and binary extension
|
// Mapping from npm package name to Rust target and binary extension
|
||||||
const CLI_PLATFORM_MAP: Record<string, { target: string; binaryExt: string }> = {
|
const CLI_PLATFORM_MAP: Record<string, { target: string; binaryExt: string }> = {
|
||||||
"@sandbox-agent/cli-linux-x64": { target: "x86_64-unknown-linux-musl", binaryExt: "" },
|
"@sandbox-agent/cli-linux-x64": { target: "x86_64-unknown-linux-musl", binaryExt: "" },
|
||||||
|
"@sandbox-agent/cli-linux-arm64": { target: "aarch64-unknown-linux-musl", binaryExt: "" },
|
||||||
"@sandbox-agent/cli-win32-x64": { target: "x86_64-pc-windows-gnu", binaryExt: ".exe" },
|
"@sandbox-agent/cli-win32-x64": { target: "x86_64-pc-windows-gnu", binaryExt: ".exe" },
|
||||||
"@sandbox-agent/cli-darwin-x64": { target: "x86_64-apple-darwin", binaryExt: "" },
|
"@sandbox-agent/cli-darwin-x64": { target: "x86_64-apple-darwin", binaryExt: "" },
|
||||||
"@sandbox-agent/cli-darwin-arm64": { target: "aarch64-apple-darwin", binaryExt: "" },
|
"@sandbox-agent/cli-darwin-arm64": { target: "aarch64-apple-darwin", binaryExt: "" },
|
||||||
|
|
|
||||||
|
|
@ -30,9 +30,16 @@ if [ "$(printf '%s' "$UNAME" | cut -c 1-6)" = "Darwin" ]; then
|
||||||
fi
|
fi
|
||||||
elif [ "$(printf '%s' "$UNAME" | cut -c 1-5)" = "Linux" ]; then
|
elif [ "$(printf '%s' "$UNAME" | cut -c 1-5)" = "Linux" ]; then
|
||||||
echo
|
echo
|
||||||
echo "> Detected Linux ($(getconf LONG_BIT) bit)"
|
echo "> Detected Linux ($ARCH)"
|
||||||
|
|
||||||
|
if [ "$ARCH" = "x86_64" ]; then
|
||||||
FILE_NAME="sandbox-agent-x86_64-unknown-linux-musl"
|
FILE_NAME="sandbox-agent-x86_64-unknown-linux-musl"
|
||||||
|
elif [ "$ARCH" = "aarch64" ] || [ "$ARCH" = "arm64" ]; then
|
||||||
|
FILE_NAME="sandbox-agent-aarch64-unknown-linux-musl"
|
||||||
|
else
|
||||||
|
echo "Unknown arch $ARCH" 1>&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
else
|
else
|
||||||
echo "Unable to determine platform" 1>&2
|
echo "Unable to determine platform" 1>&2
|
||||||
exit 1
|
exit 1
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@sandbox-agent/cli-shared",
|
"name": "@sandbox-agent/cli-shared",
|
||||||
"version": "0.1.6-rc.1",
|
"version": "0.1.6-rc.2",
|
||||||
"description": "Shared helpers for sandbox-agent CLI and SDK",
|
"description": "Shared helpers for sandbox-agent CLI and SDK",
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,7 @@ const fs = require("fs");
|
||||||
const path = require("path");
|
const path = require("path");
|
||||||
|
|
||||||
const TRUST_PACKAGES =
|
const TRUST_PACKAGES =
|
||||||
"@sandbox-agent/cli-linux-x64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64";
|
"@sandbox-agent/cli-linux-x64 @sandbox-agent/cli-linux-arm64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64";
|
||||||
|
|
||||||
function formatHint(binPath) {
|
function formatHint(binPath) {
|
||||||
return formatNonExecutableBinaryMessage({
|
return formatNonExecutableBinaryMessage({
|
||||||
|
|
@ -37,6 +37,7 @@ const PLATFORMS = {
|
||||||
"darwin-arm64": "@sandbox-agent/cli-darwin-arm64",
|
"darwin-arm64": "@sandbox-agent/cli-darwin-arm64",
|
||||||
"darwin-x64": "@sandbox-agent/cli-darwin-x64",
|
"darwin-x64": "@sandbox-agent/cli-darwin-x64",
|
||||||
"linux-x64": "@sandbox-agent/cli-linux-x64",
|
"linux-x64": "@sandbox-agent/cli-linux-x64",
|
||||||
|
"linux-arm64": "@sandbox-agent/cli-linux-arm64",
|
||||||
"win32-x64": "@sandbox-agent/cli-win32-x64",
|
"win32-x64": "@sandbox-agent/cli-win32-x64",
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@sandbox-agent/cli",
|
"name": "@sandbox-agent/cli",
|
||||||
"version": "0.1.6-rc.1",
|
"version": "0.1.6-rc.2",
|
||||||
"description": "CLI for sandbox-agent - run AI coding agents in sandboxes",
|
"description": "CLI for sandbox-agent - run AI coding agents in sandboxes",
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
@ -23,6 +23,7 @@
|
||||||
"@sandbox-agent/cli-darwin-arm64": "workspace:*",
|
"@sandbox-agent/cli-darwin-arm64": "workspace:*",
|
||||||
"@sandbox-agent/cli-darwin-x64": "workspace:*",
|
"@sandbox-agent/cli-darwin-x64": "workspace:*",
|
||||||
"@sandbox-agent/cli-linux-x64": "workspace:*",
|
"@sandbox-agent/cli-linux-x64": "workspace:*",
|
||||||
|
"@sandbox-agent/cli-linux-arm64": "workspace:*",
|
||||||
"@sandbox-agent/cli-win32-x64": "workspace:*"
|
"@sandbox-agent/cli-win32-x64": "workspace:*"
|
||||||
},
|
},
|
||||||
"files": [
|
"files": [
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@sandbox-agent/cli-darwin-arm64",
|
"name": "@sandbox-agent/cli-darwin-arm64",
|
||||||
"version": "0.1.6-rc.1",
|
"version": "0.1.6-rc.2",
|
||||||
"description": "sandbox-agent CLI binary for macOS ARM64",
|
"description": "sandbox-agent CLI binary for macOS ARM64",
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@sandbox-agent/cli-darwin-x64",
|
"name": "@sandbox-agent/cli-darwin-x64",
|
||||||
"version": "0.1.6-rc.1",
|
"version": "0.1.6-rc.2",
|
||||||
"description": "sandbox-agent CLI binary for macOS x64",
|
"description": "sandbox-agent CLI binary for macOS x64",
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
|
||||||
22
sdks/cli/platforms/linux-arm64/package.json
Normal file
22
sdks/cli/platforms/linux-arm64/package.json
Normal file
|
|
@ -0,0 +1,22 @@
|
||||||
|
{
|
||||||
|
"name": "@sandbox-agent/cli-linux-arm64",
|
||||||
|
"version": "0.1.6-rc.2",
|
||||||
|
"description": "sandbox-agent CLI binary for Linux arm64",
|
||||||
|
"license": "Apache-2.0",
|
||||||
|
"repository": {
|
||||||
|
"type": "git",
|
||||||
|
"url": "https://github.com/rivet-dev/sandbox-agent"
|
||||||
|
},
|
||||||
|
"os": [
|
||||||
|
"linux"
|
||||||
|
],
|
||||||
|
"cpu": [
|
||||||
|
"arm64"
|
||||||
|
],
|
||||||
|
"scripts": {
|
||||||
|
"postinstall": "chmod +x bin/sandbox-agent || true"
|
||||||
|
},
|
||||||
|
"files": [
|
||||||
|
"bin"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@sandbox-agent/cli-linux-x64",
|
"name": "@sandbox-agent/cli-linux-x64",
|
||||||
"version": "0.1.6-rc.1",
|
"version": "0.1.6-rc.2",
|
||||||
"description": "sandbox-agent CLI binary for Linux x64",
|
"description": "sandbox-agent CLI binary for Linux x64",
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@sandbox-agent/cli-win32-x64",
|
"name": "@sandbox-agent/cli-win32-x64",
|
||||||
"version": "0.1.6-rc.1",
|
"version": "0.1.6-rc.2",
|
||||||
"description": "sandbox-agent CLI binary for Windows x64",
|
"description": "sandbox-agent CLI binary for Windows x64",
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
|
||||||
|
|
@ -38,6 +38,7 @@ describe("CLI Launcher", () => {
|
||||||
"darwin-arm64": "@sandbox-agent/cli-darwin-arm64",
|
"darwin-arm64": "@sandbox-agent/cli-darwin-arm64",
|
||||||
"darwin-x64": "@sandbox-agent/cli-darwin-x64",
|
"darwin-x64": "@sandbox-agent/cli-darwin-x64",
|
||||||
"linux-x64": "@sandbox-agent/cli-linux-x64",
|
"linux-x64": "@sandbox-agent/cli-linux-x64",
|
||||||
|
"linux-arm64": "@sandbox-agent/cli-linux-arm64",
|
||||||
"win32-x64": "@sandbox-agent/cli-win32-x64",
|
"win32-x64": "@sandbox-agent/cli-win32-x64",
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -45,6 +46,7 @@ describe("CLI Launcher", () => {
|
||||||
expect(PLATFORMS["darwin-arm64"]).toBe("@sandbox-agent/cli-darwin-arm64");
|
expect(PLATFORMS["darwin-arm64"]).toBe("@sandbox-agent/cli-darwin-arm64");
|
||||||
expect(PLATFORMS["darwin-x64"]).toBe("@sandbox-agent/cli-darwin-x64");
|
expect(PLATFORMS["darwin-x64"]).toBe("@sandbox-agent/cli-darwin-x64");
|
||||||
expect(PLATFORMS["linux-x64"]).toBe("@sandbox-agent/cli-linux-x64");
|
expect(PLATFORMS["linux-x64"]).toBe("@sandbox-agent/cli-linux-x64");
|
||||||
|
expect(PLATFORMS["linux-arm64"]).toBe("@sandbox-agent/cli-linux-arm64");
|
||||||
expect(PLATFORMS["win32-x64"]).toBe("@sandbox-agent/cli-win32-x64");
|
expect(PLATFORMS["win32-x64"]).toBe("@sandbox-agent/cli-win32-x64");
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "sandbox-agent",
|
"name": "sandbox-agent",
|
||||||
"version": "0.1.6-rc.1",
|
"version": "0.1.6-rc.2",
|
||||||
"description": "Universal API for automatic coding agents in sandboxes. Supprots Claude Code, Codex, OpenCode, and Amp.",
|
"description": "Universal API for automatic coding agents in sandboxes. Supprots Claude Code, Codex, OpenCode, and Amp.",
|
||||||
"license": "Apache-2.0",
|
"license": "Apache-2.0",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
|
||||||
|
|
@ -29,11 +29,12 @@ const PLATFORM_PACKAGES: Record<string, string> = {
|
||||||
"darwin-arm64": "@sandbox-agent/cli-darwin-arm64",
|
"darwin-arm64": "@sandbox-agent/cli-darwin-arm64",
|
||||||
"darwin-x64": "@sandbox-agent/cli-darwin-x64",
|
"darwin-x64": "@sandbox-agent/cli-darwin-x64",
|
||||||
"linux-x64": "@sandbox-agent/cli-linux-x64",
|
"linux-x64": "@sandbox-agent/cli-linux-x64",
|
||||||
|
"linux-arm64": "@sandbox-agent/cli-linux-arm64",
|
||||||
"win32-x64": "@sandbox-agent/cli-win32-x64",
|
"win32-x64": "@sandbox-agent/cli-win32-x64",
|
||||||
};
|
};
|
||||||
|
|
||||||
const TRUST_PACKAGES =
|
const TRUST_PACKAGES =
|
||||||
"@sandbox-agent/cli-linux-x64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64";
|
"@sandbox-agent/cli-linux-x64 @sandbox-agent/cli-linux-arm64 @sandbox-agent/cli-darwin-arm64 @sandbox-agent/cli-darwin-x64 @sandbox-agent/cli-win32-x64";
|
||||||
|
|
||||||
export function isNodeRuntime(): boolean {
|
export function isNodeRuntime(): boolean {
|
||||||
return typeof process !== "undefined" && !!process.versions?.node;
|
return typeof process !== "undefined" && !!process.versions?.node;
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue