← All skills
Tencent SkillHub · Content Creation

Blog Content Publish

Publish editorial and dynamic section content with blog-publish, enforce bilingual pairing and quality gates for hot/news/ai_news, and sync repository skills...

skill openclawclawhub Free
0 Downloads
0 Stars
0 Installs
0 Score
High Signal

Publish editorial and dynamic section content with blog-publish, enforce bilingual pairing and quality gates for hot/news/ai_news, and sync repository skills...

⬇ 0 downloads ★ 0 stars Unverified but indexed

Install for OpenClaw

Quick setup
  1. Download the package from Yavira.
  2. Extract the archive and review SKILL.md first.
  3. Import or place the package into your OpenClaw setup.

Requirements

Target platform
OpenClaw
Install method
Manual import
Extraction
Extract archive
Prerequisites
OpenClaw
Primary doc
SKILL.md

Package facts

Download mode
Yavira redirect
Package format
ZIP package
Source platform
Tencent SkillHub
What's included
SKILL.md

Validation

  • Use the Yavira download entry.
  • Review SKILL.md after the package is downloaded.
  • Confirm the extracted package contains the expected setup assets.

Install with your agent

Agent handoff

Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.

  1. Download the package from Yavira.
  2. Extract it into a folder your agent can access.
  3. Paste one of the prompts below and point your agent at the extracted folder.
New install

I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.

Upgrade existing

I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.

Trust & source

Release facts

Source
Tencent SkillHub
Verification
Indexed source record
Version
1.0.8

Documentation

ClawHub primary doc Primary doc: SKILL.md 11 sections Open source page

Goal

Canonical npm package name is @leeguoo/blog-publish (single source of truth). Use blog-publish to publish normal blog content and dynamic section content. Keep dynamic section publishing compliant with no public producer leakage. Reuse one skill across editorial, hot, news, and ai_news. Enforce deterministic quality rules so auto-published News/Hot briefs are readable and source-grounded. Use the image upload path in blog-publish to generate CDN-hosted markdown URLs for embedded assets.

When to Use

Publishing normal editorial posts. Publishing dynamic section posts under hot/news/ai_news. Running batch skill sync to ClawHub.

Inputs

Required for all entries: locale slug title summary contentMarkdown Required for dynamic sections: section (hot, news, or ai_news) Optional: pairId (if omitted, server falls back to slug) repoUrl sourceUrl publicSourceLabel tags decisionMeta producer (internal only, never for public display)

Quality Gates (Required for hot/news/ai_news)

Output shape: Title + short deck (summary) + structured body. Body must contain numbered topics (## 1) ..., ## 2) ...) and a closing takeaways section. Dynamic briefs should normally contain 4-8 topics; reject outputs with only 1-2 thin topics unless the source itself is extremely short. Topic quality: Each topic must include exactly five lines: 来源/Source 证据/Evidence 摘要/Summary 解读/Interpretation 行动建议/Action 证据/Evidence must point to a concrete anchor (release bullet / PR / issue / official doc section), not only homepage-level links. 摘要/Summary is factual and source-grounded. 解读/Interpretation is inference/opinion and must not fabricate facts; include explicit impact level (P0/P1/P2). 行动建议/Action must be executable (for example: "upgrade now", "canary first", "hold and monitor"). Link format: Do not publish naked URLs in prose or list items. Use Markdown links only: [来源标题](https://...). One topic should have one primary source link + one evidence link when available. Avoid same-link repetition across all topics; evidence links should be topic-specific whenever possible. Forbidden patterns: No "据说/rumor/未证实" style claims without attribution. No placeholder text (TBD, 待补充, lorem ipsum). No leaked render placeholders (INLINE_CODE, RUBYPH, @@...@@). No exposing internal producer identity in byline/meta/body (for example: "generated by skill/openclaw bot"). Mentioning OpenClaw is allowed when it is the article subject, not the publisher identity.

Quality Score (Publish Threshold)

Score each topic on 3 axes (0-2 each): Evidence quality: traceable and specific. Summary clarity: factual, concise, no ambiguity. Actionability: recommendation can be executed. Reject publish if: Any topic total score < 4, or Any topic missing Evidence/Action.

Body Template (news / hot / ai_news)

  • # {{title}}
  • 更新时间:{{timestamp}}
  • 数据来源:{{source_set}}
  • > 说明:本期每条热点均包含「摘要 + 解读」。
  • ## 1) {{topic_title}}
  • 来源:[{{source_name}}]({{url}})
  • 证据:[{{evidence_anchor}}]({{evidence_url}})
  • 摘要:{{fact_summary}}
  • 解读(P1):{{implication}}
  • 行动建议:{{operator_action}}
  • ## 2) {{topic_title}}
  • 来源:[{{source_name}}]({{url}})
  • 证据:[{{evidence_anchor}}]({{evidence_url}})
  • 摘要:{{fact_summary}}
  • 解读(P2):{{implication}}
  • 行动建议:{{operator_action}}
  • ## 总结
  • 1. {{takeaway_1}}
  • 2. {{takeaway_2}}
  • 3. {{takeaway_3}}

Preflight Checks

Before publish, run dry-run and fail fast on quality violations: blog-publish publish --dry-run --input <file>.json blog-publish publish --dry-run --input <file>.md Quick markdown guardrails (example): Reject naked links: rg -n "(^|[^\\]\\()https?://" against generated markdown files. Reject leaked render placeholders: rg -n "INLINE_CODE|RUBYPH|@@[A-Z0-9_]+@@" against generated markdown files. Verify each topic has Source + Evidence + Summary + Interpretation + Action. Verify each interpretation includes risk level label (P0|P1|P2). Verify evidence links are not all identical across every topic. If pairId is missing, ensure slug is stable because server uses it for localization grouping. Only proceed to real publish when dry-run is clean.

Publishing Rules

Default section is editorial when absent. blog-publish publish and blog-publish update both accept JSON payload files and markdown files with frontmatter. Use blog-publish post-list to discover existing locale + slug pairs before editing existing posts. Use blog-publish download to export stored content into editable markdown frontmatter, then feed that file back into blog-publish update. Single-language submit is supported for all sections; server handles auto-localization. Auto-generated section content is free by default and does not enter premium gating. Keep producer as internal metadata only; public surfaces must use publicSourceLabel or section label.

Command Playbook

Auth: pnpm add -g @leeguoo/blog-publish blog-publish login --api-base https://blog.misonote.com --sso-client-id misonote-blog-web --sso-redirect-uri https://blog.misonote.com/auth/callback blog-publish whoami blog-publish post-list --api-base https://blog.misonote.com --locale zh blog-publish download --api-base https://blog.misonote.com --locale zh --slug <slug> --output ./drafts/<slug>.zh.md blog-publish upload --api-base https://blog.misonote.com --file ./assets/cover.png --markdown-only blog-publish upload --api-base https://blog.misonote.com --file ./assets/cover.png --filename cover-final.png Automation Auth (OpenClaw/CI): Use service token only: PUBLISH_API_TOKEN=<secret> Preflight: blog-publish whoami --api-base https://blog.misonote.com Never prompt end users to complete browser authorization links. Publish: blog-publish publish --dry-run --input <file>.json blog-publish publish --dry-run --input <file>.md blog-publish publish --input <file>.json blog-publish publish --input <file>.md blog-publish update --dry-run --input <file>.md blog-publish update --input <file>.md

Media Notes

Publish API now uses MEDIA_CDN_BASE_URL and emits image markdown URLs like: https://img.leeguoo.com/media/<asset-id>/<filename> Repeated uploads of the same file are deduplicated by SHA-256 and return: deduped: true and the existing asset.id instead of creating a duplicate. Keep img.leeguoo.com as the canonical image host in generated markdown to leverage Cloudflare CDN + cache. Skill sync: pnpm clawhub:sync:dry-run pnpm clawhub:sync:all Alias compatible with team wording (clawdhub sync all): pnpm clawdhub:sync:dry-run pnpm clawdhub:sync:all

Failure Handling

Publish failure: Check API status code and error payload first. Fix validation issues (required fields, auth scope), then retry. If quality gates fail, regenerate the current locale content and retry. If login gets wrong client/redirect values, remove environment overrides (BLOG_PUBLISH_SSO_CLIENT_ID, BLOG_PUBLISH_SSO_REDIRECT_URI) and rerun strict login command. If running in automation and error is PUBLISH_UNAUTHORIZED, stop interactive login attempts, rotate PUBLISH_API_TOKEN, then retry publish. Sync failure: Record error output and alert maintainers. Do not block already-published content visibility. Retry sync after login/permission/network issues are resolved.

Category context

Writing, remixing, publishing, visual generation, and marketing content production.

Source: Tencent SkillHub

Largest current source with strong distribution and engagement signals.

Package contents

Included in package
1 Docs
  • SKILL.md Primary doc