● runtime: ALIVElocal onlybring your own agentv0.1 — early access
docs / security

Security

Rume is local by design. It binds to loopback, is sandboxed to your project root, and never reads your secrets.

Guarantees

  • Loopback — binds to 127.0.0.1, never your network
  • Token-gated — every request carries a per-session token; the proxy 8788 and the panel 8787 require it. No token → 403.
  • Sandboxed — writes can't escape your project root (path sandbox)
  • No secrets — .env and keys are never read or sent; a sensitive-file denylist is enforced
  • Session token rotation — tokens rotate; the active project's token is written to .rume/session
  • Your deploy — Rume edits source; you ship it however you already do

What gets stripped at the proxy

The proxy forwards your app's responses and removes only X-Frame-Options and the frame-ancestors CSP — so the app can render inside the panel. It does not alter your source other than the injected runtime script.

Deploy hygiene

.env*, .rume/, and internal docs are gitignored, so a Publish never ships your keys. Clean checkouts carry no secrets.

Uninstall & what Rume touches

Rume keeps its footprint small and removable, and it never touches a Babel setup you already have.

  • Dev-only Babel config — when a project has no babel.config.js, Rume adds one that is dev-gated and carries the marker RUME DEV INJECTION. It never overwrites an app's own Babel config. To disable Rume, delete that generated file.
  • .rume/ — per-project state (session tokens, task files). Gitignored; safe to delete.
  • Nothing committed — the injected runtime and data-rume-loc markers exist only in the dev responses the proxy serves; they are not written to your source and never ship.
  • Your edits — the only source changes that persist are the ones you confirm (Save locally or Publish). There is no background modification.