Files
owoandCursor c2c0db7597 feat: remote-control live DSH Web sessions from Telegram
Attach via /sessions picker instead of creating parallel agents; mirror the same session trajectory to phone and Web (Codex-style remote).

Co-authored-by: Cursor <cursoragent@cursor.com>
2026-08-14 17:11:13 +08:00

1.0 KiB

Design: Telegram remote control for live DSH sessions

Date: 2026-08-14
Status: Approved (ship MVP)

Goal

Phone Telegram remote-controls live DeepSeek Harness agents in the same dsh web process (Codex-style). Web session is source of truth; Telegram attaches — does not create parallel agents.

MVP

  • Auth allowlist + long poll
  • /sessions lists ctx.agents.list() / roots() with inline keyboard
  • Bind chat → live Agent; plain text → agent.followup
  • Mirror session/event (turn/start, assistant/message) to all Telegram chats bound to that session id
  • /unbind clears binding only (never dispose host agent)
  • Empty live list → prompt to open a Web conversation first

Non-goals (later)

  • Disk resume / history search
  • Auto-create parallel agents
  • Streaming edit-in-place, media, webhook

Binding rules

  • One Telegram chat → at most one bound agent; re-select replaces
  • Multiple chats may bind the same live agent (all receive mirrors)
  • On stop(): clear bindings only; do not dispose live agents