|
|
||
|---|---|---|
| cloud | ||
| deploy | ||
| .gitignore | ||
| .infra.yaml | ||
| app.manifest.yaml | ||
| CLAUDE.md | ||
| README.md | ||
@redroid — the shared redroid Android box
A headless Android-on-DigitalOcean droplet (lilith-store-redroid, 45.55.191.82)
that runs the apps the lilith screening tools drive — Mr. Number and WhatsApp —
on one device. This repo owns the box-side services; the screening apps
(@mr-number, @whatsapp) drive it over adb and reuse its
services without deploying it.
The split
@redroid (this repo) ── the box ──────────────────────────────────────────────
cloud/adb-keyboard/ adb-keyboard console server :8001 (loopback/SSH)
cloud/ocr-service/ mrnumber-ocr (tesseract OCR) :8003 (app-agnostic)
cloud/terraform/ IaC reference (read-only; owned by uvlava)
ws-scrcpy (on box) browser console :8000 (sign-in/calibration)
deploy/deploy-droplet.sh push + (re)start the box services
@lilith/redroid-client (PyPI) ── shared client *code* ─────────────────────────
RedroidDevice (adb base), vision extraction, screening recorder
@lilith/redroid-mcp (Verdaccio) ── shared MCP *code* ──────────────────────────
createRedroidServer / runRedroidMcp factory
@mr-number / @whatsapp ── the screening apps ──────────────────────────────────
client/*_lookup.py (subclass RedroidDevice) + mcp/index.ts (factory call)
per-app plum console-tray LaunchAgent (redroid-{mrnumber,whatsapp}-console)
Each screening app is a consumer of this box and of the two packages. The box runs
both target apps off one /data volume.
Deploy the box services
deploy/deploy-droplet.sh # scp adb-keyboard + ocr-service, (re)start, status
The droplet itself is provisioned by the uvlava infranet IaC — not from here.
cloud/terraform/android-redroid.tf.reference is read-only context.
The WhatsApp constraint
WhatsApp allows one registration per number; the box uses a dedicated Quinn-controlled number for WhatsApp (registering her primary would log her phone out). Mr. Number has no such constraint.
Verify
bash -n deploy/deploy-droplet.sh
python3 -m py_compile cloud/ocr-service/server.py cloud/adb-keyboard/server.py
ssh -i ~/.ssh/id_ed25519_1984 root@45.55.191.82 'adb devices'
Repo on cocotte-forge: ssh://git@134.199.243.61:2222/platform/redroid.git.