← Back to Skills Marketplace
jeong-wooseok

Webnovel Serial Pipeline

by jeong-wooseok · GitHub ↗ · v0.1.4
cross-platform ⚠ suspicious
1200
Downloads
0
Stars
0
Active Installs
5
Versions
Install in OpenClaw
/install webnovel-serial-pipeline
Description
Build and publish a Quartz-hosted Korean web-novel serial (draft→cover→webp→episode md→lint→publish). Uses Nano Banana Pro + ffmpeg.
Usage Guidance
This package is mostly coherent with its stated purpose (local authoring → lint → copy → index update → image conversion). Before installing, check these things: (1) update/confirm metadata: python3 and ffmpeg are required and WEBNOVEL_QUARTZ_ROOT is mandatory — the registry should list them; (2) inspect scripts yourself (they are small and readable) to confirm they will only operate on the directories you point at; (3) if you plan to use cover-generation, confirm how NANO_BANANA_KEY is used and only provide that key if you trust the Nano Banana Pro service; (4) run python3 scripts/prepublish_check.py in the skill folder to verify nothing unexpected is present; (5) run publish_workflow on a test copy of your Quartz vault to confirm behavior (the default is to copy, not delete drafts). The main risks here are metadata/documentation mismatches (surprising requirements) and possible AV false positives from the prepublish_check signatures — not evidence of remote exfiltration. If you want higher assurance, ask the publisher to correct the registry fields or provide a signed release.
Capability Analysis
Type: OpenClaw Skill Name: webnovel-serial-pipeline Version: 0.1.4 The skill bundle is benign. All scripts (Python and Bash) perform local file operations, content linting, dependency checks, and image conversions, which are directly aligned with its stated purpose of building and publishing web novels. Notably, the `SKILL.md` explicitly addresses potential antivirus false positives and clarifies that `prepublish_check.py` contains regex patterns (e.g., for `curl`, `wget`, `webhook.site`, private keys) to *detect* malicious code, not to execute it. This `prepublish_check.py` script acts as a security feature, actively scanning for common exfiltration and remote execution markers within the skill's own files, demonstrating a proactive security posture rather than malicious intent.
Capability Assessment
Purpose & Capability
The scripts and SKILL.md align with the described goal (build/publish a Quartz-hosted web-novel using local files and ffmpeg). However the registry metadata claims 'no required binaries' and 'no required env vars' while SKILL.md and scripts require python3, ffmpeg (checked by scripts/check_deps.sh) and the environment variable WEBNOVEL_QUARTZ_ROOT (required at runtime). This mismatch is a coherence issue in metadata vs actual behavior.
Instruction Scope
Runtime instructions and scripts operate on local files, run a linter, check for embedded assets, convert images using ffmpeg, and update a local Quartz vault. The SKILL.md explicitly requires human confirmation before publishing and the scripts do not perform network calls or read system-wide config files. The prepublish_check scans files in the skill directory to DETECT suspicious strings (not to fetch them); this behavior is documented in the README.
Install Mechanism
There is no automatic install spec (instruction-only install), so nothing is downloaded or written by an installer. The included scripts are placed with the skill package; they rely on existing system binaries (python3, ffmpeg). No external archives or remote installs are performed.
Credentials
The skill declares no required env vars in registry metadata but SKILL.md requires WEBNOVEL_QUARTZ_ROOT and optionally NANO_BANANA_KEY / WEBNOVEL_DRAFT_ROOT. The optional NANO_BANANA_KEY would be a credential used only for cover generation, which is reasonable if used, but it should be declared in metadata. The mismatch between declared and actual environment/credentials is disproportionate and should be corrected.
Persistence & Privilege
The skill does not request always:true, does not modify other skills or global agent config, and only writes into user-specified Quartz directories. Publishing defaults to copying (not deleting) drafts unless --move is explicitly used. No elevated privileges or persistent presence are requested.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install webnovel-serial-pipeline
  3. After installation, invoke the skill by name or use /webnovel-serial-pipeline
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.1.4
Security: Added notice for VirusTotal false positives (shell scripts, prepublish_check regex patterns are DETECTION tools, not malware)
v0.1.3
Security hardening: Remove all .env refs, use env vars only, block exfil patterns
v0.1.2
Docs: add Quick Start (copy/paste) + clarify Quartz-hosted scope
v0.1.1
Security hardening: avoid sourcing .env (safe parse), add prepublish_check + deps check; docs updated to use portable paths
v0.1.0
Initial release: design+requirements kickoff, 1K→webp workflow, lint, publish+index sync
Metadata
Slug webnovel-serial-pipeline
Version 0.1.4
License
All-time Installs 0
Active Installs 0
Total Versions 5
Frequently Asked Questions

What is Webnovel Serial Pipeline?

Build and publish a Quartz-hosted Korean web-novel serial (draft→cover→webp→episode md→lint→publish). Uses Nano Banana Pro + ffmpeg. It is an AI Agent Skill for Claude Code / OpenClaw, with 1200 downloads so far.

How do I install Webnovel Serial Pipeline?

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

Is Webnovel Serial Pipeline free?

Yes, Webnovel Serial Pipeline is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Webnovel Serial Pipeline support?

Webnovel Serial Pipeline is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Webnovel Serial Pipeline?

It is built and maintained by jeong-wooseok (@jeong-wooseok); the current version is v0.1.4.

💬 Comments