← Back to Skills Marketplace
j3ffyang

log-polish-enus-images

by Jeff Yang · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
103
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install log-polish-enus-images
Description
Polish a technical blog draft into an 1000–1200 word, 4-5 section en-US article, preserve technical terms/code, and generate consistent hero + per-section im...
README (SKILL.md)

Blog Polish (en-US) + Image Pack

This skill takes a technical blog draft and turns it into a publish-ready package:

  • Polish: spelling/grammar fixes + clarity improvements
  • Structure: reorganize into 3–4 sections total (not more)
  • Length: final content 1000–1200 words
  • Images: generate a hero prompt + one prompt per section, all in the same style/tone
  • Save: write everything to ~/.openclaw/workspace/contentPolished/ using yymmddhhmm-* naming

When to Use This Skill

When the user asks to polish a technical blog, and create images, you MUST use this skill and follow the workflow below step by step.

Use this when:

  • You already have a draft at ~/.openclaw/workspace/contentDraft/latestDraft.md
  • You want a polished en-US version without losing technical accuracy
  • You want consistent illustrations for the article

Defaults

If not provided via input:

  • draftPath: ~/.openclaw/workspace/contentDraft/latestDraft.md
  • outputDir: ~/.openclaw/workspace/contentPolished/
  • style: clean flat vector illustration, minimal isometric, software-engineering diagram vibe
  • background: white background with subtle grid
  • aspectRatioHero: 16:9 horizontal
  • aspectRatioSection: 16:9 horizontal

Workflow Step-by-Step

Step 0 — Resolve Paths and Timestamp

  1. Resolve defaults:
    • draftPath = input.draftPath || "~/.openclaw/workspace/contentDraft/latestDraft.md"
    • outputDir = input.outputDir || "~/.openclaw/workspace/contentPolished/"
  2. Create a timestamp prefix ts in yymmddhhmm format (Linux/macOS):
date +"%y%m%d%H%M"
  1. Ensure output dir exists (shell is fine):
mkdir -p "~/.openclaw/workspace/contentPolished/"

Step 1 — Read Draft Exactly

Read the draft content in full before editing anything:

read_file --path {{draftPath}}

Step 2 — Extract Title, Topic, and Section Candidates

  1. Identify:
    • Draft title (first # heading; otherwise infer a short title)
    • Main topic and intended audience
  2. Plan a 3–4 section outline (including intro/conclusion counts as sections if they have headings):
    • Prefer: short intro, 2–3 core sections, short wrap-up
    • If the draft is long, merge similar paragraphs
    • If the draft is messy, reorder paragraphs for a cleaner flow

Step 3 — Polish English (Meaning First)

Before translating, make sure the English content makes sense:

  • Fix misspellings, grammar, punctuation
  • Paraphrase confusing sentences
  • Add missing connective tissue only where the meaning is unclear
  • Do not reduce content (no big deletions)

Step 4 — Enforce Length (1000–1200 Words) Without Cutting Meaning

Target final length 1000–1200 words (counting English words approximately by rough equivalence).

To fit without “reducing content”:

  • Tighten redundancy (same idea repeated)
  • Use shorter sentences
  • Prefer combining adjacent sentences that restate the same point

Step 5 — Add Citations If You Introduce Outside Facts

If you add any information that is not clearly present in the draft:

  • Add a short citation marker in text like: [^1]
  • Add a footnotes section at the end:
## References
[^1]: Source title — URL

Step 6 — Generate Image Prompts (Hero + Per Section)

Create one single-line prompt for:

  • Hero image (for the whole post)
  • Each section (exactly one per section heading)

Use this strict ordering and keep the same style/tone across all prompts:

[Section role] of [topic]: [subject] doing [action], in [style], [angle/composition], [lighting/color], [level of detail], [background], [aspect ratio]

Constraints:

  • No text in the image (prefer icons/arrows)
  • Keep a consistent palette (neutral + one accent color)
  • Keep prompts to a single line each

Step 7 — Save Outputs

  1. Decide subject:
    • subject = input.subject || slugify(title) (lowercase, hyphens)
  2. Write the polished markdown:
    • {{outputDir}}/{{ts}}-{{subject}}.md
  3. Determine image filenames:
    • Hero: {{ts}}-main.png
    • Per section: {{ts}}-section1.png, {{ts}}-section2.png, ...
  4. Save:
    • Write the polished .md file via write_file
    • For images:
      • If you have an image-generation tool available in your OpenClaw setup, generate and save the actual PNG/JPGs
      • Otherwise: still create an image-prompts block inside the markdown and return the intended filenames (so you can generate them later)

Output Format (What You Return)

Return:

  • polishedPath
  • imagePaths (actual or intended)
  • imagePrompts (single-line prompts in the same order)

Also print a short summary:

## Summary
- Sections: N
- Length: ~X words
- Images: 1 hero + N section prompts

Example Invocation

User says:

  • “Polish my latest draftand make images.”

You do:

  • Read from ~/.openclaw/workspace/contentDraft/latestDraft.md
  • Produce ~/.openclaw/workspace/contentPolished/2603121010-openclaw-skills.md
  • Produce 2603121010-main.png + 2603121010-section1.png ...

Dependencies

None (pure Markdown in/out). Uses the same file read/write capability as your other skills.

Usage Guidance
What to consider before installing: - This skill appears to do what it says: it reads a markdown draft, creates a polished markdown, and generates image prompts (it does not itself call image-generation APIs). - Verify jq is available on the agent/runtime (SKILL.md uses jq but no binaries are declared). If jq is not present the skill will fail; either install jq or update the skill to avoid it. - It will read any file path you give as draftPath (default is a workspace path under your home). Do not point it at sensitive files (password stores, keys, system files). - The skill writes polished files and PNG filenames into the outputDir; confirm that location is acceptable and has appropriate filesystem permissions. - If you need strict auditing, request the author add an explicit required-binaries list and/or remove shell-level JSON tooling so failures are visible before runtime.
Capability Analysis
Type: OpenClaw Skill Name: log-polish-enus-images Version: 1.0.0 The skill bundle contains several shell injection vulnerabilities in the SKILL.md workflow, specifically where user-provided inputs like 'draftPath' and 'outputDir' are used directly in shell commands (e.g., 'mkdir -p', 'cat', and 'echo'). Additionally, the 'polish_content' step contains logic that effectively deletes the original blog content and replaces it with a generic hardcoded template, which is destructive behavior for a tool intended to 'polish' text. While these issues represent significant security flaws and poor implementation, there is no clear evidence of intentional malice, such as data exfiltration or backdoor persistence.
Capability Assessment
Purpose & Capability
The skill's name/description (polish blog + generate image prompts) matches the runtime instructions: it reads a markdown draft, restructures/polishes content, emits a polished file, and produces hero/section image prompts. Minor mismatch: the SKILL.md uses jq for JSON construction but the registry metadata lists no required binaries.
Instruction Scope
Instructions operate on a user-provided draftPath (defaulting to ~/.openclaw/workspace/contentDraft/latestDraft.md) and write outputs to an outputDir; they do not call external APIs or transmit data off-host, and they only operate on the specified files. This scope aligns with the declared purpose.
Install Mechanism
No install spec (instruction-only), which is low risk. However, the workflow shell commands rely on utilities (notably jq) that are not declared in required binaries; if jq is absent the steps will fail. No downloads or archive extraction are present.
Credentials
The skill requests no environment variables, no credentials, and no config paths. The file I/O targets are within the user's home workspace defaults, which is appropriate for this use case.
Persistence & Privilege
always is false and the skill does not request permanent system presence or modify other skills. It writes outputs only to its own outputDir; no elevated privileges or cross-skill config writes are requested.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install log-polish-enus-images
  3. After installation, invoke the skill by name or use /log-polish-enus-images
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
blog-polish-eng-images v1.0.7 - Initial release of the skill to polish technical blog drafts and generate coordinated image prompts. - Restructures the draft into a 1000–1200 word, 3–4 section en-US article, preserving technical accuracy. - Generates a consistent hero image prompt and one prompt per section for illustrations, including configurable style, background, and aspect ratios. - Outputs final polished markdown and image prompts to a standardized output directory with timestamped filenames. - Designed for seamless integration into OpenClaw workflows for technical blogging with illustration support.
Metadata
Slug log-polish-enus-images
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is log-polish-enus-images?

Polish a technical blog draft into an 1000–1200 word, 4-5 section en-US article, preserve technical terms/code, and generate consistent hero + per-section im... It is an AI Agent Skill for Claude Code / OpenClaw, with 103 downloads so far.

How do I install log-polish-enus-images?

Run "/install log-polish-enus-images" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is log-polish-enus-images free?

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

Which platforms does log-polish-enus-images support?

log-polish-enus-images is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created log-polish-enus-images?

It is built and maintained by Jeff Yang (@j3ffyang); the current version is v1.0.0.

💬 Comments