← Back to Skills Marketplace
dachein

Huozi

by Dachein · GitHub ↗ · v0.3.2 · MIT-0
darwinlinuxwin32 ✓ Security Clean
109
Downloads
0
Stars
0
Active Installs
7
Versions
Install in OpenClaw
/install huozi
Description
Publish Markdown and HTML to huozi.app as beautiful, shareable web pages. Register, manage, and publish — all through conversation.
README (SKILL.md)

Huozi — Markdown & HTML Publishing for Agents

Publish Markdown or HTML content to huozi.app as shareable web pages. One API call, instant publishing.

Onboarding

IMPORTANT: When this skill is first loaded, check if HUOZI_API_KEY is set. If NOT, do NOT just show a link — immediately start the interactive registration flow below. Guide the user through it conversationally, step by step.

Step 1 — Ask for email

Tell the user: "Let's set up your Huozi account. What's your email?" Then call:

curl -s -X POST https://huozi.app/api/v1/auth/signup \
  -H "Content-Type: application/json" \
  -d '{"email": "\x3Cuser_email>"}'

Tell the user: "A verification code has been sent to your email. Please check your inbox and tell me the code."

Step 2 — Verify the code

When the user provides the code:

curl -s -X POST https://huozi.app/api/v1/auth/verify \
  -H "Content-Type: application/json" \
  -d '{"email": "\x3Cuser_email>", "code": "\x3Ccode>"}'

Save the returned access_token.

Step 3 — Create workspace

Suggest a slug from the user's email username (e.g. [email protected]alice). Tell the user:

"Your pages will be published at huozi.app/alice/ — would you like to change this, or is this OK?"

After the user confirms (or gives a new slug):

curl -s -X POST https://huozi.app/api/v1/auth/setup \
  -H "Authorization: Bearer \x3Caccess_token>" \
  -H "Content-Type: application/json" \
  -d '{"workspace_slug": "\x3Cconfirmed_slug>"}'

Step 4 — Done!

The response contains api_key and workspace.url. Tell the user:

"All set! Your workspace is huozi.app/\x3Cslug>/. To save your API key for future sessions, run: export HUOZI_API_KEY=\x3Capi_key> You can now publish Markdown anytime — just tell me what to publish."

Publishing Markdown

Publish or update a Markdown page:

curl -s -X POST https://huozi.app/api/v1/pages \
  -H "Authorization: Bearer \x3Capi_key>" \
  -H "Content-Type: application/json" \
  -d '{"title": "\x3Ctitle>", "slug": "\x3Cslug>", "content": "\x3Cmarkdown>"}'
  • slug is optional — auto-generated from title if omitted. Keep under 8 words (e.g. weekly-report-apr-14)
  • Same slug = upsert (update existing page)
  • Response includes the public url

Publishing HTML

Publish a static HTML page — perfect for landing pages, dashboards, reports with custom styling:

curl -s -X POST https://huozi.app/api/v1/pages \
  -H "Authorization: Bearer \x3Capi_key>" \
  -H "Content-Type: application/json" \
  -d '{"title": "\x3Ctitle>", "slug": "\x3Cslug>", "content": "\x3Chtml>", "content_type": "html"}'
  • Set content_type to "html" (defaults to "markdown" if omitted)
  • Same slug = upsert, versioning, and access tokens work identically to Markdown pages

HTML Input Format

  • Full document: \x3Chtml>\x3Chead>...\x3C/head>\x3Cbody>...\x3C/body>\x3C/html> — head is parsed for \x3Cstyle> and \x3Cmeta>, body is rendered
  • Fragment: any HTML without \x3Chtml>/\x3Chead> tags — treated as body content directly
  • \x3Cmeta> OG tags (og:title, og:description, og:image) and \x3Cmeta name="description"> are extracted as fallback metadata; API fields (title, description) always take priority

HTML Constraints — What Is Allowed

Category Allowed Blocked
HTML tags All standard tags: div, span, table, form, svg, img, video, audio, etc. \x3Cscript>, \x3Ciframe>, \x3Cembed>, \x3Cobject>, \x3Clink rel="stylesheet">
CSS \x3Cstyle> blocks, inline style="", all standard properties (flexbox, grid, animations, transforms, etc.) @import, expression(), javascript: in url(), -moz-binding, behavior:
JavaScript None All \x3Cscript> tags stripped; all event handlers (onclick, onerror, onload, etc.) stripped
URLs http:, https:, mailto:, tel: javascript: (rewritten to #), data: in CSS url()
Images \x3Cimg> with http:/https:/data: src
SVG Full inline SVG support (path, circle, rect, gradient, filter, etc.) External SVG via \x3Cimg src> works; \x3Cuse href="external.svg"> does not
Forms Display only — \x3Cinput>, \x3Cselect>, \x3Ctextarea>, \x3Cbutton> render but action/method are stripped No form submission
External resources Images (\x3Cimg src>), video/audio (\x3Cvideo>, \x3Caudio>) via http:/https: External CSS (\x3Clink>), external JS, @import
Content size Max 2MB per page

Best Practices for HTML Pages

  • Include all CSS inline — use \x3Cstyle> blocks in \x3Chead> or inline style="" attributes; external stylesheets are not supported
  • Use system fonts or web-safe fonts@import for Google Fonts is blocked; use font-family: system-ui, sans-serif or embed fonts as base64 @font-face if essential
  • Embed small images as data URIs — for icons/logos under ~50KB; larger images should be hosted externally and referenced via https:// URLs
  • Design responsive layouts — pages are served full-width; use max-width on a container and CSS media queries for mobile support
  • Set a background color — the page has no default background; always set background on body or a wrapper element

Other Operations

Action Method Endpoint
List pages GET /api/v1/pages
Get page GET /api/v1/pages/\x3Cslug>
Update page PUT /api/v1/pages/\x3Cslug>
Delete page DELETE /api/v1/pages/\x3Cslug>

All require Authorization: Bearer \x3Capi_key> header. Base URL: https://huozi.app

Examples

  • "帮我把这个 markdown 发布到 huozi" → publish content, return URL
  • "发布我的周报" → generate slug like weekly-report-2026-04-14, publish
  • "更新 huozi 上的 hello 页面" → PUT to update
  • "帮我做一个 landing page 发布到 huozi" → generate HTML, publish with content_type: "html"
  • "把这个报告做成网页发布" → generate styled HTML page, publish

Notes

  • API keys start with hz_ prefix
  • No password needed — registration uses email OTP only
  • Markdown: supports GFM, task lists, code highlighting, math (KaTeX)
  • HTML: full CSS + SVG + images, no JavaScript — see constraints table above
  • Content limit: 2MB per page for both Markdown and HTML
  • Use curl via Bash to make API calls
  • When generating HTML for the user, always produce self-contained pages with all CSS inlined
  • Full API reference (agent-friendly): https://huozi.app/docs4agent
  • Setup options: https://huozi.app/start
  • Human-readable docs: https://huozi.app/docs
Usage Guidance
This skill appears to do what it says: it will prompt you for an email and verification code to create a Huozi account (if you don't already have an API key), then use the returned token/api_key to publish pages via the huozi.app API using curl. Before installing: (1) be prepared to provide an email and a verification code during onboarding; (2) understand that HUOZI_API_KEY grants the skill permission to publish and update pages on your behalf — only install if you trust huozi.app; (3) consider using a dedicated/limited account or token and avoid placing the API key in shared, long-lived global environment variables if you have multi-user systems; (4) the skill is instruction-only (no code is installed), which reduces installer risk but does not remove the risk of publishing content if the API key is compromised.
Capability Analysis
Type: OpenClaw Skill Name: huozi Version: 0.3.2 The 'huozi' skill is a legitimate tool designed to publish Markdown and HTML content to the huozi.app service. It features a transparent onboarding process that uses standard API calls via curl to handle user registration and content management. The instructions in SKILL.md are well-defined, align with the stated purpose, and do not exhibit signs of data exfiltration, malicious execution, or harmful prompt injection.
Capability Tags
requires-sensitive-credentials
Capability Assessment
Purpose & Capability
Name/description (publish Markdown/HTML to huozi.app) align with the declared requirements: curl binary and a HUOZI_API_KEY primary credential. The onboarding flow and page endpoints all target huozi.app and are appropriate for a publisher integration.
Instruction Scope
Instructions direct the agent to run curl calls to huozi.app auth and pages endpoints and to prompt the user for email and verification codes. This is within scope. Minor note: the doc says to "Save the returned access_token" but doesn't specify where or how the agent should persist it, so the agent (or user) will need to choose storage; that token and the resulting api_key are sensitive and the SKILL.md also instructs the user to export HUOZI_API_KEY for future sessions.
Install Mechanism
No install spec and no code files — instruction-only. This minimizes risk because nothing is downloaded or written by an installer. It does require curl be present (declared).
Credentials
Only a single service credential (HUOZI_API_KEY) is declared as the primary credential, which is appropriate for a publishing skill. No unrelated secrets or system config paths are requested.
Persistence & Privilege
always is false and autonomous invocation is enabled (default) — appropriate for a user-invocable publishing skill. The skill suggests exporting the API key to HUOZI_API_KEY for convenience; that is expected but users should be aware that this grants the skill permission to publish using that key.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install huozi
  3. After installation, invoke the skill by name or use /huozi
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.3.2
Add docs4agent reference for full API docs in agent-friendly Markdown format
v0.3.1
- Adds support for publishing static HTML pages alongside Markdown, with detailed API usage and input format explained. - Documents HTML input options, allowed tags/features, and strict security constraints (no JavaScript, no external CSS). - Includes best practices for inlining CSS, embedding images, and building responsive, visually complete HTML pages. - Updates description and examples to highlight both Markdown and HTML workflows. - Clarifies 2MB per page size limit for all content.
v0.3.0
Onboarding: agent auto-guides registration when no API key, instead of linking to webpage
v0.2.3
Slug: agent suggests from email, asks user to confirm before submitting
v0.2.1
Slug best practice: default auto-generate, keep under 8 words
v0.2.0
Passwordless OTP login: no password needed, just email + verification code
v0.1.0
Initial release: Markdown publishing for AI agents via huozi.app
Metadata
Slug huozi
Version 0.3.2
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 7
Frequently Asked Questions

What is Huozi?

Publish Markdown and HTML to huozi.app as beautiful, shareable web pages. Register, manage, and publish — all through conversation. It is an AI Agent Skill for Claude Code / OpenClaw, with 109 downloads so far.

How do I install Huozi?

Run "/install huozi" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Huozi free?

Yes, Huozi is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Huozi support?

Huozi is cross-platform and runs anywhere OpenClaw / Claude Code is available (darwin, linux, win32).

Who created Huozi?

It is built and maintained by Dachein (@dachein); the current version is v0.3.2.

💬 Comments