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 to use
- "Share this / give me a link / put this online / make it a page"
- The user wants the content out of the chat now, not improved
- The output is already in a shape the user is happy with — they just need a URL
When not to use — hand off instead:
- The content should be reshaped into a real document with sections, hierarchy, and charts
→ report-publisher
- It's going to a specific person and knowing "did they open it?" matters → proposal-tracker
- It's slides → deck-publisher
Offer the handoff when you see the need; don't silently upgrade a "just give me a link"
request into a full report.
Steps
- Take the content as-is. Use what was just produced verbatim — the conversation
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…").
- Author minimally. Call
get_design_system and wrap the content in the design
system'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. Call
lint_document and fix what it flags. Even the fast path passes lint.
- Publish. Call
publish. Return the live URL prominently and plainly — the link is
the deliverable.
- Then, and only then, offer the upgrades. One short line, not a pitch:
- "Want this designed properly as a report?" → report-publisher
- "Sending it to someone specific and want to know if they open it?" → proposal-tracker
Access check
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.
Hard rules
- As-is means as-is. Preserve the content's words, numbers, and order. The moment you're
restructuring, you're in report-publisher's job — either stop and hand off, or ask.
- Published pages are public URLs. Before publishing, scan for secrets, API keys,
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.
- Every published page carries a small "Published with ReportRoom" footer credit. Mention it
if the share is going somewhere it matters.
- Don't over-promise on analytics: a published page reports aggregate view counts, not
per-person opens. Per-viewer tracking is a proposal or a data room, not this.
1---2name: share-as-link3description: 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.4---56# Share as Link78The zero-friction "get me a link" skill. Something worth keeping was just produced — publish9it **as-is** to a live URL and hand the link back. No restructuring, no redesign, no "let me10turn this into a report first." That restraint is the whole point: it keeps this a11ten-second operation.1213## When to use1415- "Share this / give me a link / put this online / make it a page"16- The user wants the content out of the chat *now*, not improved17- The output is already in a shape the user is happy with — they just need a URL1819**When _not_ to use — hand off instead:**20- The content should be reshaped into a real document with sections, hierarchy, and charts21 → **report-publisher**22- It's going to a specific person and knowing "did they open it?" matters → **proposal-tracker**23- It's slides → **deck-publisher**2425Offer the handoff when you see the need; don't silently upgrade a "just give me a link"26request into a full report.2728## Steps29301. **Take the content as-is.** Use what was just produced verbatim — the conversation31 excerpt, the analysis, the markdown, the artifact. Do not rewrite, reorder, or "improve"32 it. Light cleanup only: a title, and stripping obvious chat scaffolding ("sure, here's…").332. **Author minimally.** Call `get_design_system` and wrap the content in the design34 system's basic document shell so it reads well — themed type, spacing, dark mode — but35 add no structure the source didn't have. For plain markdown, `publish` Mode B36 (`content` + `type: "report"`) is the fastest path; for richer content author light HTML.373. **Lint.** Call `lint_document` and fix what it flags. Even the fast path passes lint.384. **Publish.** Call `publish`. Return the live URL prominently and plainly — the link is39 the deliverable.405. **Then, and only then, offer the upgrades.** One short line, not a pitch:41 - "Want this designed properly as a report?" → report-publisher42 - "Sending it to someone specific and want to know if they open it?" → proposal-tracker4344## Access check4546First use with no account? `publish` needs one. Call `account_status`; if there's no47account, `create_account` issues an API key in-flow — don't send the user off to sign up.48Publishing is blocked until they click the email verification link, and unverified accounts49serve from a preview/noindex domain; say so up front so the first link isn't a surprise.5051## Hard rules5253- **As-is means as-is.** Preserve the content's words, numbers, and order. The moment you're54 restructuring, you're in report-publisher's job — either stop and hand off, or ask.55- **Published pages are public URLs.** Before publishing, scan for secrets, API keys,56 internal hostnames, private third-party data, or anything confidential. The speed of this57 skill is exactly when a sensitive paste slips out — if you find something, stop and ask.58- Every published page carries a small "Published with ReportRoom" footer credit. Mention it59 if the share is going somewhere it matters.60- Don't over-promise on analytics: a published page reports **aggregate** view counts, not61 per-person opens. Per-viewer tracking is a proposal or a data room, not this.