From ee9ad250698755495c41d29b1504bde9e48a988b Mon Sep 17 00:00:00 2001 From: Nathan Flurry Date: Wed, 11 Feb 2026 20:45:33 -0800 Subject: [PATCH] chore(release): update version to 0.2.1 --- Cargo.toml | 16 ++-- docs/openapi.json | 2 +- .../src/components/chat/ChatMessages.tsx | 89 +++++++++---------- .../src/components/chat/messageUtils.tsx | 13 ++- sdks/acp-http-client/package.json | 2 +- sdks/cli-shared/package.json | 2 +- sdks/cli/package.json | 2 +- sdks/cli/platforms/darwin-arm64/package.json | 2 +- sdks/cli/platforms/darwin-x64/package.json | 2 +- sdks/cli/platforms/linux-arm64/package.json | 2 +- sdks/cli/platforms/linux-x64/package.json | 2 +- sdks/cli/platforms/win32-x64/package.json | 2 +- sdks/gigacode/package.json | 2 +- .../platforms/darwin-arm64/package.json | 2 +- .../platforms/darwin-x64/package.json | 2 +- .../platforms/linux-arm64/package.json | 2 +- .../gigacode/platforms/linux-x64/package.json | 2 +- .../gigacode/platforms/win32-x64/package.json | 2 +- sdks/persist-indexeddb/package.json | 2 +- sdks/persist-postgres/package.json | 2 +- sdks/persist-rivet/package.json | 2 +- sdks/persist-sqlite/package.json | 2 +- sdks/typescript/package.json | 2 +- 23 files changed, 76 insertions(+), 82 deletions(-) diff --git a/Cargo.toml b/Cargo.toml index 505efb0..ebef66d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -3,7 +3,7 @@ resolver = "2" members = ["server/packages/*", "gigacode"] [workspace.package] -version = "0.2.0" +version = "0.2.1" edition = "2021" authors = [ "Rivet Gaming, LLC " ] license = "Apache-2.0" @@ -12,13 +12,13 @@ description = "Universal API for automatic coding agents in sandboxes. Supports [workspace.dependencies] # Internal crates -sandbox-agent = { version = "0.2.0", path = "server/packages/sandbox-agent" } -sandbox-agent-error = { version = "0.2.0", path = "server/packages/error" } -sandbox-agent-agent-management = { version = "0.2.0", path = "server/packages/agent-management" } -sandbox-agent-agent-credentials = { version = "0.2.0", path = "server/packages/agent-credentials" } -sandbox-agent-opencode-adapter = { version = "0.2.0", path = "server/packages/opencode-adapter" } -sandbox-agent-opencode-server-manager = { version = "0.2.0", path = "server/packages/opencode-server-manager" } -acp-http-adapter = { version = "0.2.0", path = "server/packages/acp-http-adapter" } +sandbox-agent = { version = "0.2.1", path = "server/packages/sandbox-agent" } +sandbox-agent-error = { version = "0.2.1", path = "server/packages/error" } +sandbox-agent-agent-management = { version = "0.2.1", path = "server/packages/agent-management" } +sandbox-agent-agent-credentials = { version = "0.2.1", path = "server/packages/agent-credentials" } +sandbox-agent-opencode-adapter = { version = "0.2.1", path = "server/packages/opencode-adapter" } +sandbox-agent-opencode-server-manager = { version = "0.2.1", path = "server/packages/opencode-server-manager" } +acp-http-adapter = { version = "0.2.1", path = "server/packages/acp-http-adapter" } # Serialization serde = { version = "1.0", features = ["derive"] } diff --git a/docs/openapi.json b/docs/openapi.json index 01fd073..c6e35f4 100644 --- a/docs/openapi.json +++ b/docs/openapi.json @@ -10,7 +10,7 @@ "license": { "name": "Apache-2.0" }, - "version": "0.2.0" + "version": "0.2.1" }, "servers": [ { diff --git a/frontend/packages/inspector/src/components/chat/ChatMessages.tsx b/frontend/packages/inspector/src/components/chat/ChatMessages.tsx index 75f1ee1..b57f13c 100644 --- a/frontend/packages/inspector/src/components/chat/ChatMessages.tsx +++ b/frontend/packages/inspector/src/components/chat/ChatMessages.tsx @@ -1,6 +1,5 @@ import { useState } from "react"; import { getAvatarLabel, getMessageClass } from "./messageUtils"; -import renderContentPart from "./renderContentPart"; import type { TimelineEntry } from "./types"; import { AlertTriangle, Settings, ChevronRight, ChevronDown } from "lucide-react"; @@ -34,17 +33,17 @@ const CollapsibleMessage = ({ const ChatMessages = ({ entries, sessionError, - eventError, messagesEndRef }: { entries: TimelineEntry[]; sessionError: string | null; - eventError: string | null; messagesEndRef: React.RefObject; }) => { return (
{entries.map((entry) => { + const messageClass = getMessageClass(entry); + if (entry.kind === "meta") { const isError = entry.meta?.severity === "error"; const title = entry.meta?.title ?? "Status"; @@ -63,7 +62,6 @@ const ChatMessages = ({ ); } - // Other status messages - collapsible return ( 0; - const isInProgress = item.status === "in_progress"; - const isFailed = item.status === "failed"; - const messageClass = getMessageClass(item); - const statusLabel = item.status !== "completed" ? item.status.replace("_", " ") : ""; - const kindLabel = item.kind.replace("_", " "); - const isTool = messageClass === "tool"; + if (entry.kind === "reasoning") { + return ( +
+
{getAvatarLabel("assistant")}
+
+
+ reasoning - {entry.reasoning?.visibility ?? "public"} +
+
{entry.reasoning?.text ?? ""}
+
+
+ ); + } + + if (entry.kind === "tool") { + const isComplete = entry.toolStatus === "completed" || entry.toolStatus === "failed"; + const isFailed = entry.toolStatus === "failed"; + const statusLabel = entry.toolStatus && entry.toolStatus !== "completed" + ? entry.toolStatus.replace("_", " ") + : ""; - // Tool results - collapsible - if (isTool) { return ( T} - label={`${kindLabel}${statusLabel ? ` (${statusLabel})` : ""}`} - className="tool" + label={`tool call - ${entry.toolName ?? "tool"}${statusLabel ? ` (${statusLabel})` : ""}`} + className={`tool${isFailed ? " error" : ""}`} > - {hasParts ? ( - (item.content ?? []).map(renderContentPart) - ) : entry.deltaText ? ( - {entry.deltaText} - ) : ( - No content. + {entry.toolInput &&
{entry.toolInput}
} + {isComplete && entry.toolOutput && ( +
+
result
+
{entry.toolOutput}
+
+ )} + {!isComplete && !entry.toolInput && ( + + + + + )}
); } return ( -
- {!isFailed &&
{getAvatarLabel(messageClass)}
} +
+
{getAvatarLabel(messageClass)}
- {(item.kind !== "message" || item.status !== "completed") && ( -
- {isFailed && } - {kindLabel} - {statusLabel && ( - - {statusLabel} - - )} -
- )} - {hasParts ? ( - (item.content ?? []).map(renderContentPart) - ) : entry.deltaText ? ( - - {entry.deltaText} - {isInProgress && } - - ) : isInProgress ? ( + {entry.text ? ( +
{entry.text}
+ ) : ( - ) : ( - No content yet. )}
); })} {sessionError &&
{sessionError}
} - {eventError &&
{eventError}
}
); diff --git a/frontend/packages/inspector/src/components/chat/messageUtils.tsx b/frontend/packages/inspector/src/components/chat/messageUtils.tsx index fba8962..bdf9f2d 100644 --- a/frontend/packages/inspector/src/components/chat/messageUtils.tsx +++ b/frontend/packages/inspector/src/components/chat/messageUtils.tsx @@ -1,13 +1,12 @@ -import type { UniversalItem } from "sandbox-agent"; +import type { TimelineEntry } from "./types"; import { Settings, AlertTriangle, User } from "lucide-react"; import type { ReactNode } from "react"; -export const getMessageClass = (item: UniversalItem) => { - if (item.kind === "tool_call" || item.kind === "tool_result") return "tool"; - if (item.kind === "system" || item.kind === "status") return "system"; - if (item.role === "user") return "user"; - if (item.role === "tool") return "tool"; - if (item.role === "system") return "system"; +export const getMessageClass = (entry: TimelineEntry) => { + if (entry.kind === "tool") return "tool"; + if (entry.kind === "meta") return entry.meta?.severity === "error" ? "error" : "system"; + if (entry.kind === "reasoning") return "assistant"; + if (entry.role === "user") return "user"; return "assistant"; }; diff --git a/sdks/acp-http-client/package.json b/sdks/acp-http-client/package.json index ad1bc4e..1fd4fb6 100644 --- a/sdks/acp-http-client/package.json +++ b/sdks/acp-http-client/package.json @@ -1,6 +1,6 @@ { "name": "acp-http-client", - "version": "0.2.0", + "version": "0.2.1", "description": "Protocol-faithful ACP JSON-RPC over streamable HTTP client.", "license": "Apache-2.0", "repository": { diff --git a/sdks/cli-shared/package.json b/sdks/cli-shared/package.json index 4317604..d878151 100644 --- a/sdks/cli-shared/package.json +++ b/sdks/cli-shared/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/cli-shared", - "version": "0.2.0", + "version": "0.2.1", "description": "Shared helpers for sandbox-agent CLI and SDK", "license": "Apache-2.0", "repository": { diff --git a/sdks/cli/package.json b/sdks/cli/package.json index 90ad966..e79e1cc 100644 --- a/sdks/cli/package.json +++ b/sdks/cli/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/cli", - "version": "0.2.0", + "version": "0.2.1", "description": "CLI for sandbox-agent - run AI coding agents in sandboxes", "license": "Apache-2.0", "repository": { diff --git a/sdks/cli/platforms/darwin-arm64/package.json b/sdks/cli/platforms/darwin-arm64/package.json index 462abb3..74deca6 100644 --- a/sdks/cli/platforms/darwin-arm64/package.json +++ b/sdks/cli/platforms/darwin-arm64/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/cli-darwin-arm64", - "version": "0.2.0", + "version": "0.2.1", "description": "sandbox-agent CLI binary for macOS ARM64", "license": "Apache-2.0", "repository": { diff --git a/sdks/cli/platforms/darwin-x64/package.json b/sdks/cli/platforms/darwin-x64/package.json index 20b2644..d179804 100644 --- a/sdks/cli/platforms/darwin-x64/package.json +++ b/sdks/cli/platforms/darwin-x64/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/cli-darwin-x64", - "version": "0.2.0", + "version": "0.2.1", "description": "sandbox-agent CLI binary for macOS x64", "license": "Apache-2.0", "repository": { diff --git a/sdks/cli/platforms/linux-arm64/package.json b/sdks/cli/platforms/linux-arm64/package.json index 5f7439f..684a4da 100644 --- a/sdks/cli/platforms/linux-arm64/package.json +++ b/sdks/cli/platforms/linux-arm64/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/cli-linux-arm64", - "version": "0.2.0", + "version": "0.2.1", "description": "sandbox-agent CLI binary for Linux arm64", "license": "Apache-2.0", "repository": { diff --git a/sdks/cli/platforms/linux-x64/package.json b/sdks/cli/platforms/linux-x64/package.json index 15bc1a6..7c004fc 100644 --- a/sdks/cli/platforms/linux-x64/package.json +++ b/sdks/cli/platforms/linux-x64/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/cli-linux-x64", - "version": "0.2.0", + "version": "0.2.1", "description": "sandbox-agent CLI binary for Linux x64", "license": "Apache-2.0", "repository": { diff --git a/sdks/cli/platforms/win32-x64/package.json b/sdks/cli/platforms/win32-x64/package.json index 3890155..9166aee 100644 --- a/sdks/cli/platforms/win32-x64/package.json +++ b/sdks/cli/platforms/win32-x64/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/cli-win32-x64", - "version": "0.2.0", + "version": "0.2.1", "description": "sandbox-agent CLI binary for Windows x64", "license": "Apache-2.0", "repository": { diff --git a/sdks/gigacode/package.json b/sdks/gigacode/package.json index e16e70e..3c9c614 100644 --- a/sdks/gigacode/package.json +++ b/sdks/gigacode/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/gigacode", - "version": "0.2.0", + "version": "0.2.1", "description": "Gigacode CLI (sandbox-agent with OpenCode attach by default)", "license": "Apache-2.0", "repository": { diff --git a/sdks/gigacode/platforms/darwin-arm64/package.json b/sdks/gigacode/platforms/darwin-arm64/package.json index 2324291..ed7aea7 100644 --- a/sdks/gigacode/platforms/darwin-arm64/package.json +++ b/sdks/gigacode/platforms/darwin-arm64/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/gigacode-darwin-arm64", - "version": "0.2.0", + "version": "0.2.1", "description": "gigacode CLI binary for macOS arm64", "license": "Apache-2.0", "repository": { diff --git a/sdks/gigacode/platforms/darwin-x64/package.json b/sdks/gigacode/platforms/darwin-x64/package.json index 6b94c06..2a14864 100644 --- a/sdks/gigacode/platforms/darwin-x64/package.json +++ b/sdks/gigacode/platforms/darwin-x64/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/gigacode-darwin-x64", - "version": "0.2.0", + "version": "0.2.1", "description": "gigacode CLI binary for macOS x64", "license": "Apache-2.0", "repository": { diff --git a/sdks/gigacode/platforms/linux-arm64/package.json b/sdks/gigacode/platforms/linux-arm64/package.json index 9b82cac..a97c711 100644 --- a/sdks/gigacode/platforms/linux-arm64/package.json +++ b/sdks/gigacode/platforms/linux-arm64/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/gigacode-linux-arm64", - "version": "0.2.0", + "version": "0.2.1", "description": "gigacode CLI binary for Linux arm64", "license": "Apache-2.0", "repository": { diff --git a/sdks/gigacode/platforms/linux-x64/package.json b/sdks/gigacode/platforms/linux-x64/package.json index b9ac143..3ba6cd1 100644 --- a/sdks/gigacode/platforms/linux-x64/package.json +++ b/sdks/gigacode/platforms/linux-x64/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/gigacode-linux-x64", - "version": "0.2.0", + "version": "0.2.1", "description": "gigacode CLI binary for Linux x64", "license": "Apache-2.0", "repository": { diff --git a/sdks/gigacode/platforms/win32-x64/package.json b/sdks/gigacode/platforms/win32-x64/package.json index ae287f0..1e48389 100644 --- a/sdks/gigacode/platforms/win32-x64/package.json +++ b/sdks/gigacode/platforms/win32-x64/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/gigacode-win32-x64", - "version": "0.2.0", + "version": "0.2.1", "description": "gigacode CLI binary for Windows x64", "license": "Apache-2.0", "repository": { diff --git a/sdks/persist-indexeddb/package.json b/sdks/persist-indexeddb/package.json index 04eb853..ba6706d 100644 --- a/sdks/persist-indexeddb/package.json +++ b/sdks/persist-indexeddb/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/persist-indexeddb", - "version": "0.2.0", + "version": "0.2.1", "description": "IndexedDB persistence driver for the Sandbox Agent TypeScript SDK", "license": "Apache-2.0", "repository": { diff --git a/sdks/persist-postgres/package.json b/sdks/persist-postgres/package.json index be8afd6..245d820 100644 --- a/sdks/persist-postgres/package.json +++ b/sdks/persist-postgres/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/persist-postgres", - "version": "0.2.0", + "version": "0.2.1", "description": "PostgreSQL persistence driver for the Sandbox Agent TypeScript SDK", "license": "Apache-2.0", "repository": { diff --git a/sdks/persist-rivet/package.json b/sdks/persist-rivet/package.json index da170aa..4eb1791 100644 --- a/sdks/persist-rivet/package.json +++ b/sdks/persist-rivet/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/persist-rivet", - "version": "0.2.0", + "version": "0.2.1", "description": "Rivet Actor persistence driver for the Sandbox Agent TypeScript SDK", "license": "Apache-2.0", "repository": { diff --git a/sdks/persist-sqlite/package.json b/sdks/persist-sqlite/package.json index 512dfe1..80623a1 100644 --- a/sdks/persist-sqlite/package.json +++ b/sdks/persist-sqlite/package.json @@ -1,6 +1,6 @@ { "name": "@sandbox-agent/persist-sqlite", - "version": "0.2.0", + "version": "0.2.1", "description": "SQLite persistence driver for the Sandbox Agent TypeScript SDK", "license": "Apache-2.0", "repository": { diff --git a/sdks/typescript/package.json b/sdks/typescript/package.json index 2df4050..8997de1 100644 --- a/sdks/typescript/package.json +++ b/sdks/typescript/package.json @@ -1,6 +1,6 @@ { "name": "sandbox-agent", - "version": "0.2.0", + "version": "0.2.1", "description": "Universal API for automatic coding agents in sandboxes. Supports Claude Code, Codex, OpenCode, and Amp.", "license": "Apache-2.0", "repository": {