2.9 KiB
2.9 KiB
name, description
| name | description |
|---|---|
| hosting | Upload and host static HTML websites, PDFs, images, recipes, and dossiers on public S3 storage (https://hosting.haumdaucher.de). |
Public S3 File & Website Hosting 🌐
Publishes files and standalone static web pages to https://hosting.haumdaucher.de.
When to Use
- Research Dossiers & Websites: After compiling an in-depth research report or summary, build an HTML page (styled with clean CSS) and upload it so the user can view it in their browser or share it with friends.
- Recipes & Cooking Plans: For Koch subagent (
agents/koch.md) when creating shareable recipe cards or dinner menus. - Documents & PDFs: Uploading PDFs, cheat sheets, or notes.
- Images: Sharing generated images, diagrams, or charts via a clean link.
- Link Collections: Hosting curated bookmarks or event overviews.
URL Structure & Conventions
Artifacts are automatically named with the required pattern:
https://hosting.haumdaucher.de/{category}/{YYYYMMDD}-{slug}.{ext}
- Categories:
research,recipes,images,docs,shared. - Date: Auto-generated in
YYYYMMDDformat (e.g.20260916). - Slug: Short, lowercase, alphanumeric hyphenated identifier (e.g.
haumdaucher-agent-framework).
CLI Execution
Run the publisher via uv run:
1. Uploading a Local File
uv run /home/node/mop-skills/mop-skills/skills/hosting/scripts/publish_file.py \
--file /tmp/my-report.html \
--category research \
--slug ai-agent-framework
2. Publishing Inline HTML Content Directly
uv run /home/node/mop-skills/mop-skills/skills/hosting/scripts/publish_file.py \
--content "<!DOCTYPE html><html><head><meta charset='utf-8'><title>Rezept</title></head><body><h1>Pistazien-Eis</h1></body></html>" \
--category recipes \
--slug pistazien-eis \
--ext html
3. Deleting an Artifact
uv run /home/node/mop-skills/mop-skills/skills/hosting/scripts/publish_file.py \
--delete "research/20260916-ai-agent-framework.html"
Mandatory Workflow: QR Code Offer
Whenever you host an artifact and present the public link to the user:
- Present the link clearly in your message:
Hier ist deine veröffentlichte Website / dein Dokument: 🔗 https://hosting.haumdaucher.de/research/20260916-ai-agent-framework.html - Immediately follow up with the
ask_usertool to ask whether a QR code should be generated:{ "question": "Möchtest du für diesen Link einen QR-Code generieren?", "options": ["Ja, QR-Code erstellen", "Nein, danke"] } - If the user selects "Ja, QR-Code erstellen":
Run the
qr-codeskill:And deliver the image usinguv run /home/node/mop-skills/mop-skills/skills/qr-code/scripts/generate_qr.py "https://hosting.haumdaucher.de/research/20260916-ai-agent-framework.html"MEDIA:<path>in your response.