Skip to content

Promote Telegram to a standalone production chat cockpit #289

Description

@gongahkia

Decision

Retain Telegram as a production-supported, owner-only, standalone chat cockpit. It is a quick, text-first alternative to the full PWA—not a feature that requires, augments, or synchronizes with the PWA.

Product boundary

onibi up --transport=telegram must be usable by itself with an Onibi-managed local session:

  • Telegram has independent one-time owner-chat enrollment and local credential storage.
  • It does not require QR/PWA pairing, owner browser cookies, Web Push, a running Cockpit page, or a PWA-mediated decision.
  • Web/PWA transports do not start, configure, display, or depend on Telegram; Telegram transport does not expose a PWA cross-surface dependency.
  • The common local daemon/session/approval queue remains the host-side source of truth, but no mobile workflow requires using both surfaces.

Required chat-cockpit capability

  • Create/select the active managed session through scoped Telegram commands.
  • Write ordinary text plus Enter to the selected PTY and return bounded, redacted output/status.
  • Receive and decide approvals with approve, deny, and validated edit actions.
  • Interrupt, escape, enter, kill, show/hide/end controls as supported by the managed session model.
  • Owner binding, non-owner rejection, idempotent callbacks, reconnect/recovery, rate limits, minimal payload-hash audit, and actionable health diagnostics.

Explicit non-goals

  • Telegram is not a live xterm terminal and does not provide resize, soft-key fidelity, terminal graphics, files, recordings, sharing, team roles, or unbounded transcript export.
  • Telegram output is not treated as end-to-end encrypted: disclose that Telegram Bot API infrastructure receives the bounded/redacted messages.

Certification gate

Replace the experimental/deferred status only after versioned capability reporting, provider-shaped tests, a secret-gated live verification path, and a documented real Telegram pairing/text/approval/reconnect result. Do not claim full PWA-terminal parity.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions