mirror of
https://github.com/kvcache-ai/AgentENV.git
synced 2026-11-05 01:17:36 +00:00
[GH-ISSUE #257] Official E2B SDK cannot mount or access AgentENV volumes #72
Labels
No labels
bug
documentation
enhancement
enhancement
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
kvcache-ai/AgentENV#72
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @LSX-s-Software on GitHub (Sep 7, 2026).
Original GitHub issue: https://github.com/kvcache-ai/AgentENV/issues/257
Affected component
API server / proxy
AgentENV version
0d9027e3c4Host environment
e2b@2.38.0Operation and configuration
Steps to reproduce
npm install e2b@2.38.0.Volume.create.Volume.tokenandVolume.domain.volume.list("/").volumeMounts.Expected behavior
The official E2B SDK should be able to use AgentENV's E2B-compatible volume API:
Volume.createandVolume.connectshould return a usable volume object.authentication.
Sandbox.createshould accept the mount representation emitted by the SDK.Actual behavior
Volume control-plane CRUD succeeds, but
POST /volumesandGET /volumes/{volumeID}return AgentENV'sVolumemodel without thetokenand
domainexpected by the SDK'sVolumeAndTokenmodel.The SDK silently constructs:
Consequences:
Authorizationheader.401 Unauthorized.apiUrloverride, the SDK defaults tohttps://api.e2b.appinstead of the AgentENV deployment.Sandbox creation fails because the SDK sends the E2B array representation:
AgentENV expects a path-to-volume map and returns:
Volume.list()also sendsGET /volumeswithout pagination parameters anddoes not consume
X-Next-Token. AgentENV's paginated endpoint can thereforesilently hide volumes after the first page.
Logs and diagnostics
Reproduction frequency
Always
Regression information
Additional context
The current E2B OpenAPI contract defines:
volumeMountsasSandboxVolumeMount[]NewVolumewith onlynameVolumewithvolumeIDandnameVolumeAndTokenwithvolumeID,name,token, and optionaldomainGET /volumesAgentENV-specific internal fields such as size, mode, status, backing layers, and reservation state can remain internal. The API boundary should use the E2B wire representation.
The fix must not return an empty or placeholder token. If the volume-content data plane remains unsupported, token/domain behavior should be explicitly scoped rather than claiming complete SDK compatibility.
Pre-submission checklist