the universal sandbox runtime for agents and humans. pocketenv.io
sandbox openclaw agent claude-code vercel-sandbox deno-sandbox cloudflare-sandbox atproto sprites daytona
7
fork

Configure Feed

Select the types of activity you want to include in your feed.

Prefix tigrisfs with nohup and ignore failures

Add nohup (and || true) to tigrisfs invocations in multiple sandbox
providers to run them detached and avoid failing the host process.
Also replace sandbox.exec with sandbox.startProcess in the Cloudflare
provider.

+5 -5
+1 -1
apps/cf-sandbox/src/providers/cloudflare/index.ts
··· 97 97 ? `${env.VOLUME_BUCKET}:${prefix}` 98 98 : env.VOLUME_BUCKET; 99 99 100 - await this.sandbox.exec( 100 + await this.sandbox.startProcess( 101 101 `tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path}`, 102 102 { 103 103 env: {
+1 -1
apps/sandbox/src/providers/daytona/mod.ts
··· 107 107 : env.VOLUME_BUCKET; 108 108 109 109 await this.sandbox.process.executeCommand( 110 - `tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path} || sudo tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path}`, 110 + `nohup tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path} || sudo nohup tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path} || true`, 111 111 undefined, 112 112 { 113 113 AWS_ACCESS_KEY_ID: env.R2_ACCESS_KEY_ID!,
+1 -1
apps/sandbox/src/providers/deno/mod.ts
··· 120 120 await this.sandbox.spawn("sh", { 121 121 args: [ 122 122 "-c", 123 - `tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path} || sudo tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path}`, 123 + `noup tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path} || sudo nohup tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path} || true`, 124 124 ], 125 125 stdin: "null", 126 126 stdout: "piped",
+1 -1
apps/sandbox/src/providers/sprites/mod.ts
··· 148 148 "bash", 149 149 [ 150 150 "-c", 151 - `tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path} || sudo tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path}`, 151 + `nohup tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path} || sudo nohup tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path} || true`, 152 152 ], 153 153 { 154 154 env: {
+1 -1
apps/sandbox/src/providers/vercel/mod.ts
··· 100 100 cmd: "sh", 101 101 args: [ 102 102 "-c", 103 - `tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path} || sudo tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path}`, 103 + `nohup tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path} || sudo nohup tigrisfs --endpoint "https://${env.ACCOUNT_ID}.r2.cloudflarestorage.com" ${bucketPath} ${path} || true`, 104 104 ], 105 105 env: { 106 106 AWS_ACCESS_KEY_ID: env.R2_ACCESS_KEY_ID!,