Tesserae
e‑ink 디스플레이용 무료 오픈소스 대시보드 서버, 브라우저에서 대시보드 구성·프레임 렌더링·MQTT·REST 전송, 자체 호스팅·추적 없음
Beachside는 Daytona·E2B·boxd·Boat·Runloop·Freestyle·Vercel 샌드박스를 위한 타입스크립트 API입니다
Beachside is a typed TypeScript API for Daytona, E2B, boxd, Boat, Runloop, Freestyle and Vercel sandboxes, with a public adapter API for other providers.
개발 도구TypeScript · JavaScriptGitHub @pandemicsyn온라인운영자 미확인
써 보셨어요? 한 번만 눌러 주세요. 로그인은 필요 없어요.
Like OpenRouter but for sandboxes and its just a sdk?
README 전체를 불러오는 중입니다.
README 전문 보기 ↗One SDK. Every sandbox.
A TypeScript API to create, run code in, and tear down sandboxes on providers like boxd, Freestyle, Daytona, E2B, Boat, Runloop, Archil, exe.dev and Vercel (and more). Keep application workflows consistent while configuring each provider explicitly.
Get started → · Run an agent · beachside.run
Each provider is a separately installed adapter, and you can bring your own.
| Provider | Package |
|---|---|
| boxd | @beachside/boxd |
| Freestyle | @beachside/freestyle |
| Daytona | @beachside/daytona |
| E2B | @beachside/e2b |
| Boat (exp) | @beachside/boat |
| Runloop (exp) | @beachside/runloop |
| Archil (exp) | @beachside/archil |
| exe.dev (exp) | @beachside/exe-dev |
| Vercel (exp) | @beachside/vercel |
| Modal (exp) | @beachside/modal |
| Your adapter | @beachside/adapter |
"exp" marks experimental adapters that are less tested. See Provider support for what each one can do.
npm install beachside @beachside/daytona
import { Beachside, Image } from "beachside";
import { daytonaAdapter } from "@beachside/daytona";
const client = await Beachside.connect({
adapter: daytonaAdapter,
credentials: { apiKey: process.env.DAYTONA_API_KEY! },
config: {
target: "us",
environment: Image.prepared("daytona-small"),
network: "daytona-default",
},
});
await client.sandboxes.with({}, async (box) => {
const run = await box.exec(["printf", "ready"]);
console.log(run.stdoutText());
});
await client.close();
Switching providers only changes the adapter, credentials and config you pass to connect. Your create, exec, files and destroy calls stay the same. See Getting started for every provider.
Using a coding agent? npx skills add pandemicsyn/beachside --skill beachside -g teaches it the SDK.
Same sandboxes, straight from your shell. beachside creates, runs in and removes sandboxes on any provider with an adapter. It never prompts for input, every command has a --json form, and exit codes clearly indicate what to do next, so your coding agent can drive it as easily as you can.
npm install -g @beachside/cli
beachside adapter add e2b
export BEACHSIDE_PROVIDER=e2b E2B_API_KEY=...
beachside create --name web
beachside cp ./app.py web:/tmp/app.py
beachside exec web -- python3 /tmp/app.py
beachside ls
beachside rm web
Teach your agent to use it with beachside skill setup, which installs a skill that always matches the installed CLI. See Agent skills for every option. See the Command line docs.
defineAdapter. Implement create and destroy to start, then add exec, files and recovery as your provider supports them. See Writing an adapter.