Repository navigation
v0.3.8 — hard clips: publish video --clip-only
tinycloud 0.3.8 adds hard clips for published video moments: alongside the existing soft "back to moment" window, you can now share a link (or embed) that plays only the moment — the stream itself is trimmed, so the seek bar is the clip.
✨ New: publish video --clip-only
Add --clip-only to a --clip-start/--clip-end window and data.moment_url gains &clip=hard — the share page plays only [clip-start, clip-end] instead of the full recording with a soft overlay.
tinycloud publish video ./demo.mp4 --clip-start 18 --clip-end 33 --clip-only --json
# → data.moment_url = https://…/share/…?s=18&e=33&clip=hard- Requires both clip flags —
--clip-onlywithout a full window is rejected before anything uploads. - The flag rides the pending → re-run flow, so a share that's still processing returns the hard-clip URL once it's ready.
- The same suffix works hand-built on an existing share: append
&clip=hardto a?s=&e=moment link. - Viewing experience, not access control — the underlying asset is still one request away; use
--visibility privateto actually restrict access.
New capability flag: publish.video.moment.hard.v1 (so agent skills can preflight before passing a flag older binaries reject).
✨ <cg-video> embed v6: clip-only
The site embed gains a matching clip-only attribute, honored alongside a valid clip-start/clip-end pair:
<cg-video share-id="…" clip-start="18" clip-end="33" clip-only></cg-video>The timeline is re-based to the clip (no badge, region strip, or "back to moment" pill — there's nothing to scrub back to). Older embed scripts and share pages ignore clip-only / &clip=hard and degrade gracefully to the soft window, so nothing breaks mid-rollout.
Install / upgrade
npm install -g @cloudglue/tinycloud@latest # or: tinycloud update
# or
curl -fsSL https://app.cloudglue.dev/tinycloud.sh | bashThe launcher downloads and checksum-verifies the matching platform binary on first run (darwin-arm64/x64, linux-x64/arm64).