Prepare for tinycloud 0.3.14: opt-in Open Graph link previews (skill floor → 0.3.14) - #21
Merged
Conversation
…floor → 0.3.14) 0.3.14 adds opt-in Open Graph link previews so a pasted Cloudglue link unfurls as a real card in Slack, iMessage, Notion, and friends. Binary contract (feature `publish.link.preview.v1`, features 33→34; verbs stay 16): - `publish` and `publish video` gain `--link-preview none|full` - site publish also gains `--preview-title` / `--preview-image` The two visibilities work differently, and the skill docs now teach both: - PUBLIC sites need no flags — their HTML reaches the unfurl bot verbatim, so the card IS whatever `og:*` tags the generated page carries. The skill now tells generators to emit them on every public publish, since regenerating a page without them silently reverts the card to a bare link. - PRIVATE sites and shares are redirected to sign-in before a bot sees anything, so they need `--link-preview full` to opt into a metadata-only stub. Flipping it on an existing site is a settings PATCH with no re-upload (the new `settings-only` action). Every mention carries the privacy caveat: opting in makes the card title, description, and image readable by anyone who fetches the link, so the skill says to ask the user first. Site content, video, tokens, and cookies never leak, and playback stays sign-in gated. Because the skill teaches the new flags, the floor rises to 0.3.14 (`min_version`, `supported_range`, preflight `MIN_VERSION`, and `publish.link.preview.v1` in both required-feature lists — kept in sync, CI diffs them). Following the 0.3.12 floor-raise pattern, this PR should merge only after the CDN's `channels.stable` is 0.3.14. Also bumps the package/plugin/marketplace/skill versions to 0.3.14 and the maintainer command examples in CLAUDE.md; the live-CDN state stays 0.3.13 until the release publishes. Verified: npm test 42/42, shellcheck clean, `claude plugin validate .` passes, and the two required-feature lists are byte-identical.
Contributor
Author
|
@coderabbitai full review |
amyxst
approved these changes
Jul 19, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
0.3.14 adds opt-in Open Graph link previews, so a pasted Cloudglue link unfurls as a real card in Slack, iMessage, Notion, and friends instead of a bare URL or a generic "Sign in" card.
Binary contract (built from the private source repo) — new feature id
publish.link.preview.v1, features 33 → 34, verbs stay 16:publishandpublish videogain--link-preview none|full--preview-title/--preview-imageWhat the skill now teaches
The two visibilities work completely differently, and that distinction is the substance of the doc change:
og:*tags the generated page carries. The skill now tells generators to emitog:title/og:description/og:image(absolute url)/og:url/twitter:cardon every public publish — a regenerated page without them silently reverts the card to a bare link. Bots don't run JS, so the tags must be in the static HTML; nevertwitter:player/og:video.--link-preview fullto opt into a metadata-only stub. On a site that also takes--preview-titleand--preview-image(must be publicly fetchable — site assets sit behind the same gate the bot can't pass). Flipping it on an existing site is a settings PATCH with no re-upload, reported as the newsettings-onlyaction.Every mention carries the privacy caveat, and the skill says to ask the user first: opting in makes the card title, description, and image readable by anyone who fetches the link. Site content, video, tokens, and cookies never leak, and playback stays sign-in gated. Platforms cache per exact URL and rehost images, so turning it back off does not retract already-posted cards.
Touched:
skills/tinycloud/reference/verbs.md(both publish sections),glossary.md(new "Link preview" entry),skills/tinycloud/SKILL.md, and the release-state paragraph inCLAUDE.md.Because the skill teaches the new flags,
min_version,supported_range, preflightMIN_VERSION, andpublish.link.preview.v1in both required-feature lists all move to 0.3.14. Following the 0.3.12 floor-raise pattern, this PR should merge only after the CDN'schannels.stableis 0.3.14 — otherwise preflight fails for anyone on the current stable build.Version bumps: package, plugin, marketplace, skill_version, and the maintainer command examples in
CLAUDE.md. The live-CDN state paragraph deliberately stays 0.3.13 until the release publishes.Test plan
npm test— 42/42 (unit + offline fixture-CDN e2e)shellcheck install.sh scripts/smoke-test.sh skills/tinycloud/scripts/preflight.shcleanclaude plugin validate .passestinycloud-skill.jsonrequired_featuresand preflight'sREQUIRED_FEATURESare byte-identical (25 features) — the check CI diffsnoindex), non-opted-in private cases return no metadata and no site content.The live-CDN CI legs (
Install + smoke, npx-against-CDN) don't run on PRs and will stay red-by-absence until 0.3.14 is on the CDN — expected for a floor-raise PR.Note
Medium Risk
Raising
min_versionto 0.3.14 breaks the skill for anyone on older stable until the CDN ships 0.3.14; doc changes also guide agents on privacy-sensitive--link-preview fullbehavior.Overview
Prepares the public dist repo for tinycloud 0.3.14: bumps versions in
package.json, plugin metadata, README/CLAUDE examples, and documents opt-in Open Graph link previews (publish.link.preview.v1) for agents.Skill compatibility moves the floor from 0.3.12 → 0.3.14:
tinycloud-skill.jsonandpreflight.shnow requirepublish.link.preview.v1and reject binaries below 0.3.14. Merge after CDNchannels.stableis 0.3.14, or preflight fails on current stable.Agent-facing docs teach
--link-preview none|fullonpublishandpublish video, plus--preview-title/--preview-imagefor private sites; public publishes should emit staticog:*tags in generated HTML, while private resources need explicit opt-in with a ask the user first privacy caveat. Updates land inSKILL.md,reference/verbs.md,glossary.md, and the 0.3.14 release notes inCLAUDE.md.Reviewed by Cursor Bugbot for commit f30ed21. Bugbot is set up for automated code reviews on this repo. Configure here.