Commit Graph

4 Commits

Author SHA1 Message Date
Claude Opus 4.7
80539ae60c server: /metrics endpoint + signaling stub for v0.3 WebRTC
- Add Prometheus counters/gauges/histograms: messages_total{source},
  message_bytes_total, active_subscribers, publish_duration_seconds.
- Add /api/signal/<room> mailbox endpoint (POST adds, GET drains).
  Currently scaffolding for WebRTC SDP/ICE exchange — peers do not
  use it yet; client-side WebRTC negotiation is roadmap.

client: structured default label

Use "<GOOS>-sse-<role>" (e.g., windows-sse-listener) instead of the
old "linux-client" fallback. -label still overrides.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-21 00:30:37 -05:00
Claude Opus 4.7
24854e44d6 client: default to https://tether.pecord.io for double-click UX
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-21 00:22:31 -05:00
Claude Opus 4.7
fa52bf2693 client: actually write incoming messages to the OS clipboard
The MVP only printed to stdout. Now the listener calls
clipboard.WriteAll on every received message, except when the message
originated from itself (to avoid clobbering local edits with our own
prior send).

Adds:
- github.com/atotto/clipboard (cross-platform: Win/macOS/Linux)
- -no-clipboard flag for stdout-only mode
- "→ clipboard updated" trace line so the user can confirm the write

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-21 00:19:35 -05:00
Claude Opus 4.7
b8f168df54 v0.1: HTTP+SSE broadcast bus + phone web UI + Linux client
Single Go module with two binaries (server, client) and an embedded
phone UI. MVP transport is HTTP POST → SSE fanout; the roadmap calls
for upgrading to WebRTC P2P with Sign in with Apple for identity, mDNS
for discovery, and OS clipboard hooks.

- server/: Go HTTP server, embedded index.html, broadcast bus with
  short replay history, SSE stream endpoint, single-binary deploy.
- client/: subscribes to SSE feed and prints messages; -send for
  one-shot publish from CLI. No OS clipboard touched yet (v0.5).
- web/index.html: dark phone-first UI, paste-clipboard button (uses
  navigator.clipboard.readText), live feed of incoming messages via
  EventSource.

This commit is intentionally tiny — it proves the end-to-end shape so
the WebRTC/SiwA/mDNS pieces can be added incrementally without
restructuring.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-20 23:53:31 -05:00