Skip to content

docs(rfc): propose SDK consumption entrypoints and file transfer#1590

Open
zanetworker wants to merge 1 commit into
NVIDIA:mainfrom
zanetworker:docs/sdk-file-transfer-rfc
Open

docs(rfc): propose SDK consumption entrypoints and file transfer#1590
zanetworker wants to merge 1 commit into
NVIDIA:mainfrom
zanetworker:docs/sdk-file-transfer-rfc

Conversation

@zanetworker
Copy link
Copy Markdown
Contributor

Summary

RFC 0006 proposing official Python and TypeScript SDKs that make OpenShell consumable as programmable infrastructure for agent platforms and frameworks, plus streaming file transfer RPCs.

Why: Agent platforms (Anthropic Managed Agents, OpenAI Agents SDK, OpenClaw, Cloudflare) all need a secure execution layer. OpenShell has the enforcement (Landlock, seccomp, L4/L7 policy, credential injection, OCSF audit) and the API (54 gRPC RPCs). But only 8 RPCs are wrapped in the Python SDK, there's no TypeScript SDK, no file transfer RPC, and no OIDC auth in the SDK. Every integration must shell out to the CLI binary or build a custom gRPC client.

What this RFC proposes:

  • Extend the Python SDK with OIDC auth, provider attach/detach, streaming watch, and file transfer
  • Add streaming UploadFile/DownloadFile gRPC RPCs to the gateway (routed via existing RelayStream infrastructure)
  • Ship an official TypeScript SDK (for OpenClaw and Node.js frameworks)
  • OIDC authentication in both SDKs for cross-namespace K8s deployments

Three sandbox modes covered:

  • Mode 1 (entire agent sandboxed): CLI-driven, no SDK needed
  • Mode 2 (platform-managed): SDK in your worker, brain on the platform (Anthropic, OpenAI Responses API)
  • Mode 3 (framework extension): SDK embedded in the developer's process (OpenAI Agents SDK, OpenClaw)

Five implementation phases with a dependency analysis showing Phase 1 (OIDC + providers) and Phase 2 (file transfer) can run in parallel.

Related Issues

Changes

  • rfc/0006-sdk-and-file-transfer/README.md - Full RFC document
  • rfc/0006-sdk-and-file-transfer/sdk-modes.png - Three sandbox modes architecture diagram
  • rfc/0006-sdk-and-file-transfer/sdk-phase-deps.{mmd,png} - Phase dependency diagram
  • rfc/0006-sdk-and-file-transfer/sdk-file-transfer.png - UploadFile/DownloadFile sequence diagram
  • rfc/0006-sdk-and-file-transfer/sdk-anthropic-worker.png - Anthropic Mode 2 end-to-end sequence

Testing

  • mise run pre-commit passes
  • Markdown lint clean
  • All diagrams render correctly

Checklist

  • Follows Conventional Commits
  • Commits are signed off (DCO)
  • RFC follows the rfc/0000-template structure
  • RFC number (0006) does not conflict with existing or in-flight RFCs

Add RFC 0006 proposing official Python and TypeScript SDKs for
programmatic sandbox consumption by agent platforms and frameworks.

The RFC covers:
- Three sandbox modes and which the SDK serves (Mode 2 and 3)
- Extending the Python SDK with OIDC auth, provider management,
  streaming watch, and file transfer
- Streaming UploadFile/DownloadFile gRPC RPCs for the gateway
- A new TypeScript SDK for OpenClaw and Node.js frameworks
- Five implementation phases with dependency analysis
- Integration examples for Anthropic Managed Agents and OpenAI
  Agents SDK

Includes architecture diagrams for the three modes, file transfer
sequence flow, phase dependencies, and Anthropic worker end-to-end.

Signed-off-by: Adel Zaalouk <azaalouk@redhat.com>
@copy-pr-bot
Copy link
Copy Markdown

copy-pr-bot Bot commented May 27, 2026

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant