Skip to content

v0.8.6 feat: /share — generate a read-only web URL for the current session #393

@Hmbown

Description

@Hmbown

Pitch

opencode parity. `/share` exports the current session as a static HTML page:

  • Uploads to a configurable static-file backend (S3 / Cloudflare R2 / GitHub Gist via gh CLI).
  • Returns a public URL the user can paste into Slack / GitHub / Twitter.
  • Default redaction: strips API keys, env vars, file contents above N KB, anything that looks like a secret.
  • Permanent option: keep until explicit `/share revoke `. Default: 7-day TTL.

Why we want this: the strongest case for any coding agent is "look at what it just did". A clickable URL beats a screenshot every time.

Implementation sketch

  • New `crates/tui/src/share.rs`. Renders the session as static HTML using the same transcript renderer (existing wrapping / styling).
  • Backends behind a trait so users can plug in their own.
  • Default backend: GitHub gist via `gh gist create` (we already require gh CLI for the github_* tools).
  • Settings: `[share] backend = "gist"`, `redact = ["api_key", "DEEPSEEK_API_KEY"]`.

Acceptance

  • `/share` produces a clickable URL.
  • Default redaction strips known secret patterns.
  • `/share revoke ` works against the backend.
  • Standard verification gates pass.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or requestv0.8.6Targeting v0.8.6

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions