Tags: tyxben/roboot
Tags
v0.4.0 — Telegram voice, LAN auth, self-upgrade, memory
First release since the repo went public, and the first with a
verifiable signature. Verify with:
git verify-tag v0.4.0
Highlights:
- Telegram voice I/O (mlx-whisper STT + parallel Edge TTS → OGG/Opus)
- Pluggable STT backends (mlx_whisper / google / none)
- Per-user Telegram voice preferences (/voice, switch_tts_voice tool)
- One-command installer (scripts/setup.sh, prefers uv)
- LAN API bearer-token auth (/api/* + /ws)
- In-process self-upgrade loop (opt-in; supports signed-tag gate)
- Conversation memory: resume_session_id replay + soul.md distillation
- Self-review distillation every 20 turns
- Proactive session-waiting notifier (type:"notify" frames, rendered on
web console + mobile pair-page)
- GitHub Actions CI + user-facing docs pass
Full notes: CHANGELOG.md
v0.3.0 — authenticated relay handshake Closes the v0.2.0 SECURITY.md gaps around anonymous ECDH MITM and self-declared client_id. - Long-term ed25519 identity per daemon (.identity/daemon.ed25519.key) - Fingerprint in pairing URL fragment (#fp=...) — never sent to relay - Handshake reply signed by daemon identity; browser verifies both fingerprint match and signature before deriving a session key - client_id = SHA256(client_ephemeral_pub)[:16].hex — bound to pubkey - 41 pytest tests (9 new) Wire-protocol breaking: daemon + Cloudflare Worker redeploy together. Requires browser WebCrypto Ed25519 (Chrome 113+, Safari 17+, Firefox 129+).
v0.2.0 — open-source release Highlights since v0.1.0: - Unified chat handler (server.py + relay_client.py share one streaming loop) - SQLite chat history persistence (.chat_history.db, 30-day retention) - Soul writes auto-snapshot to .soul/history/ with date-stamped appends - Relay token auto-rotation bug fix (no longer invalidates pair URL on reconnect) - Remote chat send button no longer stuck disabled after tab switches - Durable Objects pinned to APAC for lower latency - 32 pytest smoke tests (chat_store + chat_handler + relay crypto) - LICENSE (MIT), README rewrite, SECURITY.md threat model, config.example.yaml - docs/TESTING.md manual checklist for releases Known limitations: relay handshake is anonymous ECDH (MITM possible if CF compromised); local LAN TLS is trust-on-first-use. See SECURITY.md.
v0.1.0 — first tagged baseline Highlights: - Relay architecture (Cloudflare Worker DO) with E2EE (ECDH P-256 + AES-GCM) - Token rotation + revoke-all + WebSocket heartbeat - iTerm2 bridge via Python API, incremental terminal-history fetch - Lazy-load session list + Claude Code confirm bar on remote pair page - Face recognition, Edge TTS (spoken vs displayed split), soul.md identity - Telegram bot adapter Next: unified chat handler (merge server.py ws + relay_client.py _on_chat), chat history persistence (SQLite), soul.md restructure.