Copilot SDK v1.0.0-beta.9: Multi-Tenant Mode & Tool Hooks

Copilot SDK beta.9 adds multi-tenant isolation mode, tool failure hooks, and per-message agent mode control across all six SDKs. Rust users: breaking error type changes ahead.

Copilot SDK v1.0.0-beta.9: Multi-Tenant Mode & Tool Hooks

TL;DR

  • CopilotClientMode.Empty isolates tenant state — no cross-tenant leaks of plugins or custom agents
  • postToolUseFailure hook lets you observe and respond to failed tool executions
  • agentMode on MessageOptions now lets you request plan/autopilot mode from the SDK
  • Rust SDK error types refactored to struct-with-kind() pattern — breaking change for error matching

New

  • CopilotClientMode.Empty — hardened client mode for multi-tenant apps that starts with no built-in tools, disabled host integration, sanitized system prompt, and explicit storage. Prevents user-specific state from leaking across tenants.
  • postToolUseFailure hook — observe failed tool executions and inject follow-up guidance. Available in Node, Python, Go, .NET, and Rust alongside the existing postToolUse success hook.
  • agentMode on MessageOptions — set per-message UI mode (interactive, plan, autopilot, shell) directly from the SDK. Previously no correct way to request plan/autopilot from code.

Fixed

  • [C#] JSON-RPC error.data now preserved in .NET client transport.
  • [Java] Fixed repackaging issue in monorepo updates.

Breaking Changes

  • [Rust] Error types refactored from flat enum to struct-with-kind() pattern. Update match arms to call .kind() instead of matching on variants directly.

Update: npm install @github/copilot-sdk@1.0.0-beta.9 or check the release page for language-specific instructions.

Source: Copilot SDK