Token导航 LogoToken导航TokenDH.com
研究检索操作浏览器clawhub未标认证来源可访问clear审计通过

blog-content-publish博客内容发布

Agent Skill

用于辅助文档、README、Markdown、说明文和内容稿件的整理与改写。它适合让 Agent 提炼结构、补齐章节、统一术语、检查链接或把零散材料整理成可读文档。使用时应保留项目已有事实、命令和路径,不要把未确认的信息写成确定结论;涉及对外文案时,还需要控制语气,避免过度营销或夸大能力。

总安装

36,696

周安装

1,499

GitHub Stars

公开资料未说明

下载量

11,872
OpenClaw

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

MIT-0

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:blog-content-publish(博客内容发布)
来源仓库:https://github.com/leeguooooo/blog-content-publish
安装命令:
openclaw skills install blog-content-publish
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 OpenClaw 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

ClawHubOpenClaw
openclaw skills install blog-content-publish

简介

博客内容发布技能用于社论和动态内容的发布,支持热门/新闻/ai_news 的质量控制。

  • 适合需要将存储库技能同步到 ClawHub 并自动分发的场景,简化多平台内容管理流程。
  • 核心功能包括内容审核、格式转换、定时发布及数据统计,支持自定义质量阈值。
  • 使用前需配置发布目标平台、API 密钥及内容模板,避免误发敏感信息。
  • 建议定期检查维护状态,确保第三方服务可用性,防止发布中断。

SKILL.md

name
blog-content-publish
description
Publish editorial and dynamic section content with blog-publish, enforce quality gates for hot/news/ai_news, and sync repository skills to ClawHub via clawhub sync --all.

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.

适合场景

01

OpenClaw 用户查找和安装 Skill 时

02

用户想查找某类 Agent Skill 时

03

需要根据任务场景推荐可安装能力包时

04

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

OpenClaw

84.57%
按下载量换算10,040

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

未展示

权限和风险

操作浏览器

该 Skill 可能涉及浏览器控制能力,使用时可能读取或操作网页内容,需要在受控环境中确认权限边界。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills