Token导航 LogoToken导航

Agent Skill · 研究检索

bili-sunflower-publish(bili 向日葵出版)

bili-sunflower-publish 用于查找、检索和筛选相关信息,适合在 OpenClaw 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

bili-sunflower-publish 是研究检索类 Agent Skill,可用宿主为 OpenClaw,通过ClawHub获取,权限为操作浏览器;许可证为 MIT-0,第三方扫描已通过,按安装量在研究检索类的 73,675 个 Skill 里排第 12,052。

总安装 10,608周安装 442GitHub Stars 1下载 3,536核验 2026-05-01

安装说明

本站只整理中文说明,不托管安装包,也不代用户安装。
GitHub
许可证
MIT-0
版本
1.0.1

安装方式

通过对话安装

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

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

命令行安装

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

ClawHubOpenClaw
openclaw skills install bili-sunflower-publish

这个 Skill 是做什么的

研究检索类 Skill 主要解决「找资料、核对事实、把来源整理清楚」的问题,通常会让助手先检索再总结。

用于查找、检索和筛选发布内容到 Bilibili 的相关信息。适合在 OpenClaw 中根据关键词或任务场景快速定位候选结果。可结合来源仓库和 README 核验具体用法,安装前需确认权限和维护状态。建议检查是否会触发联网、命令执行或文件读写操作。适用于将 HTML 或 Markdown 内容发布到专栏或小站的场景。

上手步骤

4 步
  1. 1

    确认自己的宿主工具

    公开资料标注支持 OpenClaw;先确认自己用的是其中之一,再按对应工具的 Skills 目录放置。

  2. 2

    拿到安装命令

    可以直接复制的命令是 openclaw skills install bili-sunflower-publish;命令里的占位符换成自己的路径或密钥再执行。

  3. 3

    安装后重启宿主

    命令执行完要完全退出宿主工具再打开,让新装的 Skill 被重新扫描到,否则列表里可能看不到。

  4. 4

    按最小权限试用

    它需要操作浏览器,先在测试目录或测试账号里跑,确认没问题再放到正式项目。

常见问题

6 条

bili-sunflower-publish 怎么安装?

在终端执行 openclaw skills install bili-sunflower-publish。装完完全退出宿主工具再打开,让它重新扫描本地 Skill。

bili-sunflower-publish 支持哪些 AI 工具?

公开资料标注支持 OpenClaw。其他工具只要能读取本地 Skill 目录,一般也能手动放进去,但要自己确认触发方式是否一致。

bili-sunflower-publish 需要什么权限?

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

bili-sunflower-publish 是免费的吗?

来源标注的许可证是 MIT-0。本站不代收任何费用,也不托管安装包;能否商用、要不要署名,以许可证原文为准。

bili-sunflower-publish 用的人多吗?

公开数据是累计安装 10,608 次,近一周安装 442 次,下载 3,536 次,GitHub 1 星。这些数字来自第三方目录统计,只能当作热度参考,不代表质量或安全性。

bili-sunflower-publish 安全吗?

第三方扫描结果为通过,但这只覆盖已知的静态检查项,不能替代自己读一遍源码和安装命令。

值得选的地方和要先想清楚的地方

值得选的地方

  • 专注 OpenClaw 一种宿主,触发方式和使用习惯不用来回切换。
  • 许可证明确为 MIT-0,商用和分发边界好判断。
  • 第三方扫描已通过,常见的高风险行为没有命中。

先想清楚的地方

  • 第三方目录整理,版本更新和行为细节以来源仓库为准。

适不适合你

更适合

  • 已经在用 OpenClaw,想直接扩展它能力的人。
  • 需要处理研究检索类任务、又不想每次都手写提示词的人。
  • 需要许可证清楚、并且有第三方扫描结果的团队项目。

不太适合

  • 需要厂商级技术支持和 SLA 的生产系统。

研究检索类 Skill 对比

6 个同类
Skill总安装GitHub 星权限许可证扫描
find-skills

寻找技能 · Codex、Claude

31,199,81316,486操作浏览器MIT有提醒
self-improving-agent

自我改进 Agent · OpenClaw

16,464,0023,396接触敏感数据MIT-0通过
soultrace

灵魂追踪 · Codex、Claude

7,588,94412需要联网未明确有提醒
self-improving

自我完善 · OpenClaw

6,829,2841,046需要联网MIT-0通过
microsoft-foundry

微软代工厂 · Codex、Claude

6,614,144764调用外部服务未明确有提醒
bili-sunflower-publish

bili 向日葵出版 · 本页

10,6081操作浏览器MIT-0通过

按安装量取同分类前几名;数字来自第三方目录统计,只作热度参考,不代表质量结论。

SKILL.md 原文

name
bili-sunflower-publish
description
Publish HTML or Markdown content to Bilibili — supports both 专栏 (article) and 小站 (tribee) targets. Handles login check, title input, content injection via editor API, and direct publish. Trigger when user asks to publish to B站专栏/小站, or mentions 发布文章到B站/上传专栏/发B站文章/发小站帖子/tribee发帖.

bili-sunflower-publish

Unified publish pipeline for Bilibili: HTML/Markdown file → editor → publish. Uses window.editor API directly — no system clipboard dependency.

Supports two targets:

  • 专栏 (Article): long-form articles on member.bilibili.com
  • 小站 (Tribee): community posts on bilibili.com/bubble

Prerequisites

  • Browser tool with openclaw profile (Playwright-managed browser)

Input

  • Content file path (article body) — supports .html and .md / .markdown files
  • Target type: article (专栏) or tribee (小站) — infer from user intent
  • Title (optional — see Phase 2)
  • For tribee: tribee name or ID (required)
  • For tribee: 分区 (category, optional — user can specify or choose during publish)

Phase 1: Navigate & Login Check

Article mode

Navigate to https://member.bilibili.com/york/read-editor and take a snapshot.

  • Logged in: editor loads with title textbox "请输入标题(建议30字以内)"
  • Not logged in: redirects to login page

Tribee mode

Publish URL: https://www.bilibili.com/bubble/publish?tribee_id={id}&tribee_name={name}

Both tribee_id and tribee_name are required for the publish URL. Resolve missing params:

User providesResolution
id + nameDirect → publish URL
id onlyNavigate to https://www.bilibili.com/bubble/home/{id}, extract tribee name from the page, then → publish URL
name onlySearch https://search.bilibili.com/all?keyword={name}, find the card linking to bilibili.com/bubble/home/{id}, extract {id}, then → publish URL

After navigating to the publish URL:

  • Logged in + member: editor loads with title and body area
  • Not logged in: redirects to login page
  • Not a member: may show join prompt — tell user to join the tribee first

If not logged in, stop and tell the user to log in manually in the openclaw browser profile, then retry.


Phase 2: Preprocess & Title Handling

Run the preprocess script matching the file type. The script handles H1 extraction, heading promotion, image inlining, and (for HTML) whitespace cleanup.

2a. For .html files

python3 {SKILL_DIR}/scripts/preprocess_html.py <input.html> [output-dir]

Output (stdout, 3 lines):

title=<extracted title>
path=<processed html file path>
bytes=<html byte size>

Parse title and path from the output. The processed HTML at path is ready for injection in Phase 3.

2b. For .md / .markdown files

python3 {SKILL_DIR}/scripts/preprocess_md.py <input.md> [output-dir]

Output (stdout, 3 lines):

title=<extracted title>
path=<processed md file path>
bytes=<md byte size>

Parse title and path from the output. The processed Markdown at path is ready for injection in Phase 3.

2c. Title validation

If the user provided a title explicitly, use it instead of the script-extracted one.

After resolving, validate:

  • Title > 50 characters: present 2-3 shortened alternatives, let user choose
  • Title looks meaningless (e.g. output, untitled, temp, or clearly unrelated to the content): read the first few hundred chars of body, generate 2-3 title suggestions, let user choose

Do NOT silently use a bad title. Wait for user selection before proceeding.

Enter the title: click the title textbox and type.


Phase 3: Insert Article Body

Both editors share the same rich-text editor component (window.editor).

Use the preprocessed content from Phase 2 and inject it into the editor.

IMPORTANT — JS string escaping:

Content (HTML or Markdown) often contains characters that break JS syntax (backticks, quotes, newlines, backslashes, etc.). You must use the method below to safely construct the JS code. Do NOT paste raw content directly into a JS variable assignment.

How to construct the evaluate JS code

Follow these steps exactly for both HTML and Markdown injection:

  1. Get the processed file path from Phase 2 output (path=...)
  2. Run the following command to produce a JSON-escaped string of the file content:
python3 -c "import json,sys; print(json.dumps(open(sys.argv[1]).read()))" <processed-file-path>

This outputs a double-quoted JSON string with all special characters escaped (newlines, quotes, backslashes, etc.), e.g. "line1\ line2\"quoted\"".

  1. Capture the stdout output as ESCAPED_JSON_STRING
  2. Build the full JS code by embedding ESCAPED_JSON_STRING into the template (see 3a-HTML / 3a-MD below). It already includes its own surrounding double quotes, so place it directly after JSON.parse( with no additional quotes.

3a-HTML. Processed HTML → ClipboardEvent dispatch

(function () {
  const html = JSON.parse(ESCAPED_JSON_STRING);
  const clipboardData = new DataTransfer();
  clipboardData.setData('text/html', html);
  clipboardData.setData('text/plain', '');

  const pasteEvent = new ClipboardEvent('paste', {
    bubbles: true,
    cancelable: true,
    clipboardData,
  });

  window.editor.view.dom.dispatchEvent(pasteEvent);
})();

Note: If the HTML content is large (>50KB), split it into chunks and paste sequentially.

3a-MD. Processed Markdown → editor importMarkdown command

(function () {
  const markdown = JSON.parse(ESCAPED_JSON_STRING);
  window.editor.commands.importMarkdown({
    content: markdown,
    replaceContent: true,
  });
})();

3b. Verify content

Evaluate JS to confirm content was inserted:

(function () {
  const e = window.editor.view.dom;
  return { chars: e.textContent.length, first80: e.textContent.substring(0, 80) };
})();

Expected: chars > 100 and first80 matches the article opening.


Phase 4: Publish

Article mode

Editor bottom has a "发布设置" panel (usually already visible) with defaults that work out of the box:

  • 可见范围: 所有人可见 (default)
  • 封面: auto-generated from body text (default)
  • 评论: enabled (default)

If the user has specific publishing preferences, adjust before publishing:

设置操作说明
可见范围选 radio: "所有人可见" / "仅自己可见"仅自己可见不支持分享和商业推广
自定义封面勾选 checkbox → 上传图片不设则自动抓正文开头文字
评论开关勾选/取消 checkbox关闭后无法评论
精选评论勾选 checkbox开启后需手动筛选评论才展示
定时发布勾选 checkbox → 选择时间范围: 当前+2h ~ 7天内,北京时间
创作声明-原创勾选 checkbox声明原创,禁止转载
创作声明-AI勾选 checkbox标识使用 AI 合成技术
话题点击"添加话题"按钮可选
文集点击"选择文集"按钮可选

Steps:

  1. Scroll down to confirm the "发布设置" panel is visible; if collapsed, click "发布设置" button to expand
  2. Apply any user-requested settings from the table above
  3. Click "发布" button (next to "保存为草稿", at the bottom right)
  4. If a confirmation dialog appears, confirm
  5. Verify publish succeeded (URL changes or success toast)

Tribee mode

Bottom bar appears after content is entered, with defaults that work out of the box:

  • 分区: 未选择 (some tribees may require)
  • 同步至动态: enabled (default)

If the user has specific preferences, adjust before publishing:

设置操作说明
分区点击"选择分区"下拉 → 选择分区部分小站可能必选
同步至动态取消勾选 checkbox默认开启,取消后不同步到动态
分区自动选择(Tribee only)

When the user did not specify a 分区:

  1. Click "选择分区" dropdown to reveal available options
  2. Read the list of 分区 names from the dropdown (snapshot)
  3. Based on the article title + first ~200 chars of body content, pick the most relevant 分区:

- Match by keyword/topic similarity (e.g. tutorial content → "经验分享", questions → "提问求助") - If no option is a clear fit, pick the most general/catch-all option - If the tribee only has 1-2 generic options, just pick the best one without overthinking

  1. Click the chosen 分区
  2. Do not ask the user to confirm — just pick and proceed (they can always re-publish if wrong)

If the user did specify a 分区, use it directly (skip auto-selection).

Steps:

  1. Handle 分区 (user-specified or auto-selected per above)
  2. Apply any other user-requested settings
  3. Click "发布" button (blue, bottom right)
  4. Verify publish succeeded

Execution

Default: execute Phase 1 → 4 directly in the main session (supports user interaction for login/title).

Only delegate to subagent if the user explicitly requests it.

平台分布

OpenClaw

97.8%
按下载量换算3,458

安全审计

VirusTotal

通过

ClawScan

通过

Static analysis

通过

权限和风险

操作浏览器

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

安装前确认

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

继续浏览同类 Skills