mirror of
https://github.com/AletheiaVox/signal_bridge_remote.git
synced 2026-10-07 11:28:16 +08:00
- claude.ai connector section now documents the OAuth login flow as the primary path, with the authless single-user fallback as Option C. - Project structure, requirements, and .env docs updated for the OAuth + governor modules; pointer to .env.example for the governor knobs. - Tools table covers the extended output types, the escalate hold contract, and feature_index for multi-motor devices. - Safety Features section documents the governor. - CHANGELOG.md records v1.1 and the v1.0 baseline. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
3.8 KiB
3.8 KiB
Changelog
v1.1 — 2026-07-07
This release brings the remote server up to date with everything that
shipped in the Android edition
since March, plus fixes found while porting. If you run a server from an
older clone, rebuild the Docker image (docker-compose build --no-cache)
and update your relay client — both sides changed.
Added
- OAuth 2.0 support. Full flow for claude.ai custom connectors:
discovery metadata, dynamic client registration, a login page at
/oauth/authorize, and a token endpoint. Each user signs in with their own account — no more sharing one token or relying on the single-phone fallback. The fallback still works for single-user servers and can be disabled withSB_REQUIRE_MCP_AUTH=true. - Safety governor. Server-side heat model (intensity × time) that
forces a cooldown when a session runs hot for too long. Server defaults
via
SB_GOVERNOR_*env vars, per-user overrides viaGET/POST /safety/config, current state surfaced inlist_devicesand piggybacked on heartbeat pings. feature_indexon every output and pattern tool. Multi-motor devices (Lovense Edge, Dolce, …) can now have each motor driven independently. Implemented in both relay clients; a bad index returns a helpful error listing the valid ones.CHANGELOG.md,.env.example,.gitignore,.gitattributes.
Changed
- Neutral engineering terminology in tool schemas and
devices.json, matching the Android edition. Content filters on some LLM platforms refused tools whose schemas contained explicit anatomical language; the reworded schemas work across providers.list_devicesnow also shows what each output channel does. - Duplicate same-model devices get suffixed short names (
lush,lush_2) instead of silently replacing each other. - Relay clients no longer push an unsolicited device list after authenticating; the server requests a scan on connect and the scan response covers it.
Fixed
- MCP protocol compliance: JSON-RPC notifications (e.g.
notifications/initialized) now get the bare202the spec requires instead of a malformed error, andinitializeechoes the client'sprotocolVersionwhen supported. Fixes connection failures with strict clients. - OAuth token endpoint 500'd when a client POSTed the token request
as
multipart/form-data(missingpython-multipartdependency). governor_enablednow round-trips as a real JSON boolean; strict clients (the Android app) previously couldn't re-enable the governor after disabling it.- Patterns with
duration=0silently did nothing. They now run until an explicit stop, matching plain commands. escalatehold contract:hold_seconds≤ 0 holds at peak until stopped, > 0 auto-stops after the hold — and an error mid-ramp can no longer leave the device running at the last intensity it reached.- Pattern collisions: starting a pattern cancels the previous pattern on that device (they used to fight over the actuator), and a direct command now supersedes a running pattern instead of being overwritten by it.
- Stale auto-stops: a
durationauto-stop from an earlier command could fire minutes later and silently kill output a newer command had started. Auto-stops are now tracked per channel and cancelled when something newer takes over. - Pattern timing now uses a monotonic clock; an NTP wall-clock jump could stretch, truncate, or instantly end a pattern.
- Repo hygiene: removed accidentally committed compiled bytecode
(
__pycache__) and a stray deploy tarball.
v1.0 — 2026-03-14
Initial public release: FastAPI relay server (MCP over HTTPS, JWT auth, rate limiting, dead man's switch), Windows/desktop relay client, and the Termux relay for Android.