Scrypt / space /README.md
IMJONEZZ's picture
SCRYPT: initial commit β€” game, sandbox, Warden, Space web layer
9fca766
|
Raw
History Blame Contribute Delete
1.3 kB
---
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.