Kibotos

Defaults and limits

This page lists the defaults and limits a caller meets, with the page that explains each one. In the tables, Fixed means a deployment cannot change the value, and Deployer means the deployer can.

Workspace defaults

The defaults depend on how you create the Workspace:

SettingkiboGo SDK and native APIE2B SDK
CPU1 CPURequired1 CPU, set by the deployer
Memory256 MiBRequired1 GiB, set by the deployer
Writable layerSet by the node's storage configurationSet by the node's storage configuration5 GiB, set by the deployer
VolumeNew Volume at /data, deleted with the WorkspaceNew Volume at /data, deleted with the WorkspaceSame as the others, unless you pass volumeMounts
NetworkNo accessNo accessPublic internet, unless you pass allowInternetAccess: false
ExpirationNoneNone5 minutes in the JS SDK, then deleted. A request with no timeout gets 1 hour, set by the deployer. See Expiration

See Creating a Workspace and Resources.

Workspace resources

LimitValueSet byDetails
MemoryWhole MiB, at least 128 MiBFixedTemplate and resources
Largest CPU and memoryWhatever a node can placeDeployerNodes
Writable layerWhole MiB. 1 MiB is reserved for the next startFixedTemplate and resources
Guest resets on the Firecracker backend3 within 10 minutes. The next one moves the Workspace to FAILEDFixedReboot from inside the guest

Files

LimitValueSet byDetails
One upload1 GiBFixedSize and time limits
One download response1 GiB. kibo, the Go SDK, and the E2B gateway read larger files in partsFixedTransferring file content
Transfer speed64 MiB/s per transferFixedSize and time limits
Transfer with no data movingEnds after 1 minute in kibo and the Go SDK. WithStallTimeout changes it in the Go SDKCallerWhat a session offers
Caller that stops sending or reading on /v1/filesThe node aborts the request after 5 secondsFixedTransferring file content
ListDirDepth 64, and 10,000 entries in one listingFixedDirectories and metadata
Watch streams64 per WorkspaceFixedTracking a directory
Watch events1000 per second per streamFixedTracking a directory

Processes

LimitValueSet byDetails
Output kept for each channel of a processThe latest 1 MiBFixedLost output
Output kept in the guest16 MiB or 1/16 of guest memory, whichever is smaller, and at least 1 MiBFixedLost output
Reconnection attempts by kibo and the E2B gateway30 secondsFixedReconnection

Network

LimitValueSet byDetails
allow and deny entries256 across both listsFixedNetwork policy
Resolvers in a policy1FixedReferencing a Resolver in the policy
One DNS query through a Resolver4 secondsFixedDNS

Services and public URLs

LimitValueSet byDetails
Open service connections128 per Workspace and 1024 per nodeFixedServices and ports
Connections through kibo port forwarding32 at the same timeFixedLocal port forwarding
One service connection message32 KiBFixedProtocol
Public URL lifetimeRequired when you create one, 24 hours at mostFixedPublic URLs
Idle connection on an E2B application portClosed after 15 minutesFixedApplication ports

Credentials

LimitValueSet byDetails
Session credential5 minutes by default, 15 minutes at mostFixedCredential lifetime
Credential bound to an execution1 hour at most, and never past the Workspace's expiration timeFixedCredential lifetime
Operator certificate30 days, renewed in the last 10FixedConnect to ctrl
Enrollment keySingle use, 1 hour by default, between 1 minute and 24 hoursCaller, within the rangekibo enrollment create

API requests

LimitValueSet byDetails
Request message4 MiB. 16 MiB for ArtifactPublicationService, 64 KiB for EnrollmentServiceFixedProtocol
Command ID1 to 128 bytes. kibo checks it before it sends the request; in the Go SDK, call kibotos.ValidateCommandIDFixedCommand IDs
Wait of a stop or delete1 minute, then a retryable UNAVAILABLE. The command keeps runningFixedWhen a command returns
Wait of a network change on a running Workspace1 minute, then a retryable error, and the Workspace is UNKNOWN until the node reports againFixedWhen a command returns
List page size100FixedPages

Labels and annotations

LimitValueSet byDetails
Label name, and label value63 characters each. A label prefix can have 253FixedLabels and annotations
All labels on a resource65536 bytesFixedMetadata and option size
All annotations on a resource262144 bytesFixedMetadata and option size

Export and restore

LimitValueSet byDetails
Archive size1 GiB by defaultDeployerExport, import, and restore
Archive retention24 hours by defaultDeployerArchive retention

Desktop

LimitValueSet byDetails
Actions in one PerformActions request64FixedWith the API
Typed text across one request4096 bytesFixedWith the API
Wait actions2 seconds each and 10 seconds in one requestFixedWith the API
One typed-text action1024 bytesFixedKeyboard and text input
One clipboard write64 KiBFixedKeyboard and text input

E2B gateway

LimitValueSet byDetails
Create request body1 MiBFixedCreating a sandbox
Wait for a sandbox to run90 seconds, then 502. The start may still finishFixedCreating a sandbox
Idempotency-Key256 bytesFixedRetries with Idempotency-Key
Longest timeout in one requestNone by default. KIBOTOS_E2B_MAX_TIMEOUT sets oneDeployerTimeout values
Standalone Volumes in one sandbox1FixedVolumes

Next steps

On this page