Install
openclaw skills install artidropPublish AI-generated content (HTML pages, Markdown reports, multi-file sites, dashboards, visualizations) to a shareable URL using Artidrop. Use when: user asks to publish, share, or host generated content as a web page. NOT for: sending messages, uploading files to cloud storage, or sharing raw text in chat.
openclaw skills install artidropPublish HTML pages, Markdown reports, multi-file sites, dashboards, and visualizations to instant shareable URLs with one command.
The Artidrop CLI is installed automatically via the install spec in this skill's metadata. No manual installation needed.
No authentication required. Artidrop supports anonymous publishing out of the box — just publish and get a URL.
| Anonymous (default) | Authenticated (optional) | |
|---|---|---|
| Publish | 5/hour | 60/hour |
| Update/Delete/List | Not available | Available |
| Private visibility | Not available | Available |
| Claim artifacts later | No | Yes |
Anonymous mode is sufficient for most one-off publishing tasks. Only recommend authentication if the user needs to manage artifacts or hits the rate limit.
If the user wants authenticated features, they can either:
ARTIDROP_API_KEY in the OpenClaw environment configartidrop login (requires browser access)There are three ways to publish:
Option A — Publish from a file:
artidrop publish ./report.html --title "Quarterly Report"
artidrop publish ./notes.md --title "Meeting Notes"
Option B — Publish a multi-file site (directory or ZIP):
artidrop publish ./my-site/ --title "Portfolio"
artidrop publish ./build.zip --title "App Preview"
The directory must contain an index.html at its root. CSS, JS, images, fonts, and sub-pages are all supported. Hidden files and node_modules are automatically excluded.
Option C — Publish from stdin (for content you generate on the fly):
echo '<h1>Hello</h1><p>Generated report content here</p>' | artidrop publish - --format html --title "My Report"
echo '# Summary\n\nKey findings from the analysis...' | artidrop publish - --format markdown --title "Analysis Summary"
When publishing, always:
--title with a descriptive title--format html or --format markdown| Flag | Purpose |
|---|---|
--title <title> | Set the artifact title |
--format <html|markdown> | Content format (required for stdin, auto-detected for files, ignored for directories/ZIPs) |
--visibility <public|unlisted|private> | Default: unlisted. Use private for owner-only access, public for search engine indexing |
--update <id> | Update an existing artifact instead of creating a new one (requires auth) |
--json | Return full JSON metadata |
--open | Open the published URL in the browser |
--copy | Copy the published URL to clipboard |
To update an existing artifact (creates a new version, preserving history):
artidrop publish ./updated-report.html --update <artifact-id>
This requires authentication. If the user is not logged in, tell them to authenticate first (see Setup).
These commands work without authentication:
# Get details about an artifact
artidrop get <artifact-id>
# Get details as JSON (useful for structured parsing)
artidrop get <artifact-id> --json
# View version history
artidrop versions <artifact-id>
These commands require the user to be logged in:
# List your published artifacts
artidrop list
# List as JSON
artidrop list --json
# Delete an artifact
artidrop delete <artifact-id> --yes
| Exit Code | Meaning | Action |
|---|---|---|
| 0 | Success | Present the URL to the user |
| 2 | Invalid input | Check file/directory exists, format is html or markdown (or directory has index.html), content is not empty |
| 3 | Auth error | Only for --update/delete/list. Tell user to authenticate (see Setup) |
| 4 | Rate limited | Wait and retry. Anonymous: 5/hour, authenticated: 60/hour. Suggest logging in for higher limits |
api.artidrop.ai over HTTPS when the user explicitly runs a publish command. No data is sent automatically or in the background.ARTIDROP_API_KEY (for optional authentication) and ARTIDROP_API_URL (for custom API endpoint configuration).--visibility private for sensitive content that should only be visible to youcat <<'HTML' | artidrop publish - --format html --title "Sales Dashboard"
<!DOCTYPE html>
<html>
<head><title>Sales Dashboard</title></head>
<body>
<h1>Q1 Sales Dashboard</h1>
<p>Total revenue: $1.2M</p>
</body>
</html>
HTML
cat <<'MD' | artidrop publish - --format markdown --title "Weekly Standup Notes"
# Weekly Standup — March 23, 2026
## Completed
- Shipped new authentication flow
- Fixed dashboard loading bug
## In Progress
- API rate limiting improvements
MD