Spaces:
Running on Zero
Running on Zero
| title: SCRYPT | |
| emoji: π―οΈ | |
| colorFrom: green | |
| colorTo: gray | |
| sdk: docker | |
| app_port: 7860 | |
| pinned: false | |
| # SCRYPT | |
| A deck-builder escape room played in a terminal, against an LLM that owns | |
| the machine. The Warden sacrifices your shell commands, remembers every | |
| run, and threatens your files (sandboxed copies β nothing real is touched). | |
| ## The web layer | |
| This Space is a **custom Osaka-Jade frontend on top of `gradio.Server`** β | |
| Gradio is the engine room, not the face. The app *is* a `gradio.Server` | |
| (a FastAPI app), driven by uvicorn so our own routes stay authoritative: | |
| - `GET /` β a hand-built CRT landing page (`space/static/`), where the | |
| Warden mutters at you before you enter. | |
| - `GET /api/whisper` β the backend that feeds those mutterings, in voice. | |
| - `GET /play` + `WS /pty` β an xterm.js terminal bridged to a private | |
| `python -m scrypt.app` process per visitor: their own sandbox, their own | |
| Warden, streamed byte for byte. | |
| Run locally: `python space/app.py` (needs `gradio>=6`), then open | |
| `http://localhost:7860`. | |
| ## Secrets | |
| `SCRYPT_API_KEY` β an OpenRouter or NVIDIA NIM key for | |
| `nvidia/nemotron-3-nano-30b-a3b`. Without it the Warden falls back to | |
| scripted lines: playable, but quieter. Sandboxes here are always | |
| fabricated, never mirrored from a real machine. | |