FabricFabricHarness
Ecosystem

Runtime and deployment targets

Every sandbox backend and deployment target Fabric Harness supports, with its adapter, runnable example, credential-free path, and validation.

This page lists every runtime/sandbox and deployment target Fabric Harness supports. Each row names the adapter or driver that implements the target, a runnable example where one exists, the credential-free path, and the validation behind the row.

Sandbox backends

A sandbox is where shell commands and tool file operations execute. It is chosen at init({ sandbox }) and is independent of the deployment target. Backends that take a provider SDK object keep credentials inside the provider client; they are never serialized into session history.

BackendAdapterExampleCredential-free pathValidation
virtual (default)Built into @fabric-harness/sdkexamples/hello-world/Fully local: in-memory filesystem and bash subset, no credentials.SDK contract suites.
emptyBuilt into @fabric-harness/sdkFully local: no filesystem or shell, model and tool calls only.SDK contract suites.
localBuilt into @fabric-harness/nodeexamples/with-local-shell/pnpm --dir examples/with-local-shell run run uses the mock model and the host shell.Node runtime contract suites.
dockerinit({ sandbox: { backend: 'docker', image } }) via @fabric-harness/nodeexamples/with-docker/pnpm --dir examples/with-docker run build; a run additionally needs a local Docker daemon.Container contract suites.
E2Be2bSandbox() from @fabric-harness/connectors
Provider SDK: @e2b/code-interpreter >=2.6.1 <3
examples/with-e2b/pnpm --dir examples/with-e2b run run uses the mock provider.Shared sandbox contract suites; set FABRIC_E2B_TEST=1 for the credentialed smoke.
DaytonadaytonaSandbox() from @fabric-harness/connectors
Provider SDK: @daytona/sdk >=0.195.0 <1
examples/with-daytona/pnpm --dir examples/with-daytona run run uses the mock provider.Shared sandbox contract suites; set FABRIC_DAYTONA_TEST=1 for the credentialed smoke.
ModalmodalSdkSandbox() from @fabric-harness/connectors/modal
Provider SDK: modal >=0.9.0 <1
examples/with-modal/pnpm --dir examples/with-modal run run uses the mock provider.Shared sandbox contract suites; FABRIC_MODAL_TEST=1 plus Modal tokens for the credentialed smoke.
Vercel SandboxvercelSandbox() from @fabric-harness/connectors/vercel
Provider SDK: @vercel/sandbox >=1.10.1 <2
examples/with-vercel-sandbox/pnpm --dir examples/with-vercel-sandbox run run uses the mock provider.Contract suites; run a provider smoke before production.
KuberneteskubernetesSandbox() from @fabric-harness/connectors/k8s
Provider SDK: @kubernetes/client-node >=0.21.0 <0.22
examples/with-kubernetes/pnpm --dir examples/with-kubernetes run run uses the mock provider.Contract suites; cluster-gated validation.
Cloudflare SandboxcreateCloudflareSandboxEnv() from @fabric-harness/cloudflare
Provider SDK: @cloudflare/sandbox >=0.9.2 <1
examples/with-cloudflare-sandbox/pnpm --dir examples/with-cloudflare-sandbox run build:cloudflare; Miniflare/workerd runs locally.workerd and Wrangler contract tests; account gate for deployment.
Cloudflare Shell Workspace@fabric-harness/cloudflare/computer
Provider SDK: @cloudflare/shell >=0.3.7 <0.4
examples/with-cloudflare-shell-workspace/pnpm --dir examples/with-cloudflare-shell-workspace run build:cloudflare.Early preview on the Worker Loader beta; Wrangler/account gate.
Databricks SQLdatabricksSqlSandbox() from @fabric-harness/databricks/sql-sandboxexamples/with-databricks-compute/Mock HTTP contract suites run without a workspace.Workspace, SQL Warehouse, and Unity Catalog gate.
AKSaksSandbox() from @fabric-harness/azureStructural client tests.Cluster and identity gate.
azure-container-appsNo first-party adapter; connect a project-owned client with remoteSandbox().Validate a project-owned adapter with validateSandboxAdapter().
azure-container-instancesNo first-party adapter; connect a project-owned client with remoteSandbox().Validate a project-owned adapter with validateSandboxAdapter().
firecrackerNo first-party adapter; connect a project-owned client with remoteSandbox().Validate a project-owned adapter with validateSandboxAdapter().
boxdCommunity blueprint — no shipped adapterUntested integration guide; fh add boxd scaffolds a project-owned adapter that you implement and validate.
exe.devCommunity blueprint — no shipped adapterUntested integration guide; fh add exedev scaffolds a project-owned adapter that you implement and validate.
isloCommunity blueprint — no shipped adapterUntested integration guide; fh add islo scaffolds a project-owned adapter that you implement and validate.
MirageCommunity blueprint — no shipped adapterUntested integration guide; fh add mirage scaffolds a project-owned adapter that you implement and validate.
smolvmCommunity blueprint — no shipped adapterUntested integration guide; fh add smolvm scaffolds a project-owned adapter that you implement and validate.

Rows marked Community blueprint are untested integration guides: Fabric Harness does not ship or certify an adapter for those providers, and the fh add recipe scaffolds a project-owned adapter that you implement and validate yourself. Backends with no first-party adapter (azure-container-apps, azure-container-instances, firecracker) are reserved names in the SandboxBackend union; connect a project-owned provider client with remoteSandbox() and validate it with validateSandboxAdapter().

Deployment targets

fh build --target <target> produces the deployable artifact offline for every target, and fh deploy --preview prints the deployment commands without executing them. Deploying itself requires the target's credentials and account configuration.

TargetDeploy driverExampleValidation
nodeNodeDriver in @fabric-harness/cliexamples/hello-world/Source, artifact, and clean-install contract tests.
temporal-workerTemporalWorkerDriver in @fabric-harness/cliexamples/with-temporal/Local Temporal and replay parity contracts.
dockerDockerDriver in @fabric-harness/cliexamples/with-docker/Container contract tests.
foundry-hosted-agentFoundryHostedAgentDriver in @fabric-harness/cliexamples/support-agent-foundry/Client and build contracts; subscription, identity, and region gate.
cloudflareCloudflareDriver in @fabric-harness/cliexamples/with-cloudflare-sandbox/workerd/Miniflare and Wrangler tests; account gate.
aksAksDriver in @fabric-harness/cliStructural client tests; cluster, identity, and network-policy gate.
acaAcaDriver in @fabric-harness/cliStructural client tests; subscription and managed-identity gate.
aciAciDriver in @fabric-harness/cliStructural client tests; subscription and managed-identity gate.
k8sK8sDriver in @fabric-harness/cliexamples/with-kubernetes/Manifest generation and structural tests; cluster gate.
renderRenderDriver in @fabric-harness/cliBuild contracts; Render account gate.
databricks-appDatabricksAppDriver in @fabric-harness/cliexamples/with-databricks-app-resources/Tier R certification with retained candidate, app, and restart digests.
databricks-servingDatabricksServingDriver in @fabric-harness/cliexamples/with-databricks/Tier R certification with retained candidate, app, and restart digests.

DatabricksAppDriver and DatabricksServingDriver activate the optional @fabric-harness/databricks peer at deploy time.

See also