Native Shell
Native Shell은 모든 플랫폼의 앱 안에서 만들어지는 AI UI입니다
기존 Kubernetes에 Firecracker 샌드박스를 배포, 유휴 시 스냅샷을 S3에 저장하고 여유 노드에서 깨워 실행
Firecracker sandboxes on the Kubernetes you already run. Idle sandboxes sleep as snapshots in your S3 bucket and wake on whichever node has room.
개발 도구Go · TypeScriptGitHub @arugula-salad온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기Firecracker sandboxes on Kubernetes. Idle sandboxes sleep as snapshots in S3 and wake on any node. E2B-compatible API.
저장소 README에서 가져옴
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Sandboxes on Kubernetes, with an E2B-compatible API.
loam runs each sandbox as a Firecracker microVM, and keeps each one as a record in Postgres. A
sandbox runs on a long-lived worker pod (a nodelet, one per KVM node) only while it is in use.
When it goes idle, loam snapshots its memory and disk to S3-compatible storage and frees the
node, and the next request wakes it on whichever node has room, with its processes as they were.
You drive it through a native HTTP API, the loam CLI, Go and TypeScript clients, or the
official E2B SDKs, unmodified.
Project page and docs: https://loam.agentsh.it
E2B has a good API for agent sandboxes. Its own self-hosted setup runs on Nomad, Consul and Terraform. The Kubernetes projects that speak E2B's API run each sandbox as a pod, which ties every wake to the scheduler and keeps idle sandboxes holding memory. loam is for running Firecracker sandboxes on the Kubernetes cluster you already have, where a sleeping sandbox is a snapshot in object storage and costs nothing on any node.
Measured on the reference deployment, a three-node home k3s cluster on x86 bare metal with Garage as the snapshot store, using the base template (2 vCPUs, 2 GiB).
| What | Result |
|---|---|
| Resume a paused sandbox on the same node | 29 ms |
| Wake on another node, memory loaded lazily | 0.42 s |
| Fork from a memory checkpoint | 28 ms |
| Pause, memory and disk | 320 ms |
| Drain a node with two awake sandboxes | 13 s |
| Official E2B SDKs, Python and JS | 26 of 26 conformance steps |
The methodology is in the repo's test write-ups. docs/PLAN.md has the results
of each phase, docs/PHASE2-TEST.md and
docs/PHASE3-TEST.md are the multi-node and network boundary runs, and
docs/E2B.md describes the SDK conformance suite in e2e/e2b.
With a loam deployment that serves the E2B adapter, point the E2B SDK at it and use a loam project key as the E2B key.
pip install e2b
export E2B_DOMAIN=e2b.loam.example.com
export E2B_API_KEY=loam_...
from e2b import Sandbox
sbx = Sandbox.create()
print(sbx.commands.run("uname -a").stdout)
sbx.pause() # a snapshot in the store, the VM gone from its node
sbx.connect() # wakes it, on any node, with its processes
sbx.kill()
The native CLI does the same and more (exec sessions, port URLs, checkpoints, forks, egress rules, brokered secrets).
go install github.com/arugula-salad/loam/cmd/loam@latest
export LOAM_API_URL=https://api.loam.example.com LOAM_TOKEN=loam_...
loam create scratch
loam run scratch -- uname -a
loam pause scratch
loam run scratch -- uptime # wakes it first
To run loam yourself, start with docs/INSTALL.md. You need x86_64 nodes with KVM, Postgres, an S3-compatible bucket, an XFS data directory with reflinks on each node, and wildcard DNS and TLS for the sandboxes' URLs. To try it on one machine without a cluster, see "Locally" in docs/E2B.md.
loam is young. It was built in October 2026 and runs one deployment in production so far.
--memory./dev/userfaultfd.loam was written mostly by AI coding agents (Claude Code), working from Jake Gaylor's design and under his review. It replaced his earlier single-host Firecracker sandbox system and runs his own workloads in production, including browser games, hosted dev boxes, CI and an E2B endpoint.
See CONTRIBUTING.md. Report vulnerabilities privately as described in SECURITY.md.
Apache License 2.0, in LICENSE. The snapshot store is derived from e2b-dev/infra, also Apache-2.0. See NOTICE.