Turn whatever the agent just produced — a conversation, an analysis, an artifact, a markdown file — into a live shareable URL in seconds, published as-is via ReportRoom. Use when the user says "share this", "give me a link", "put this online", "make this a page", "send this to someone". This is the fast, verbatim path — for a restructured, designed report use report-publisher; for a view-tracked proposal use proposal-tracker.
npx skills add https://github.com/dashaworks/share-as-link-skill --skill share-as-link
The zero-friction "get me a link" skill. Something worth keeping was just produced — publish
it as-is to a live URL and hand the link back. No restructuring, no redesign, no "let me
turn this into a report first." That restraint is the whole point: it keeps this a
ten-second operation.
When _not_ to use — hand off instead:
→ report-publisher
Offer the handoff when you see the need; don't silently upgrade a "just give me a link"
request into a full report.
excerpt, the analysis, the markdown, the artifact. Do not rewrite, reorder, or "improve"
it. Light cleanup only: a title, and stripping obvious chat scaffolding ("sure, here's…").
get_design_system and wrap the content in the designsystem's basic document shell so it reads well — themed type, spacing, dark mode — but
add no structure the source didn't have. For plain markdown, publish Mode B
(content + type: "report") is the fastest path; for richer content author light HTML.
lint_document and fix what it flags. Even the fast path passes lint.publish. Return the live URL prominently and plainly — the link isthe deliverable.
First use with no account? publish needs one. Call account_status; if there's no
account, create_account issues an API key in-flow — don't send the user off to sign up.
Publishing is blocked until they click the email verification link, and unverified accounts
serve from a preview/noindex domain; say so up front so the first link isn't a surprise.
restructuring, you're in report-publisher's job — either stop and hand off, or ask.
internal hostnames, private third-party data, or anything confidential. The speed of this
skill is exactly when a sensitive paste slips out — if you find something, stop and ask.
if the share is going somewhere it matters.
per-person opens. Per-viewer tracking is a proposal or a data room, not this.
Take dashaworks/share-as-link from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.