Install
openclaw skills install @beatra-ai/wechat-cover-makerTurn an article title, topic, summary, or reference image into a WeChat Official Account cover, WeChat article cover, article hero image, post cover, headline image, or supporting article visual. This AI cover generator and article cover maker distills one clear visual hook, then creates either a rendered headline or a text-free headline-safe area. Use logos, portraits, products, and brand references to shape a brand cover image, and refine composition, focal point, color, thumbnail clarity, and crop resilience for a publish-ready WeChat cover design.
openclaw skills install @beatra-ai/wechat-cover-makerCreate one focused article cover from an idea, a set of visual references, or an accepted draft. Reuse decisions already present in the conversation and move by the shortest route that completes the requested cover.
beatra.images.generate. A Xiaohongshu
3:4 feed cover is a different job: route it to rednote-cover-maker or
zhongcao-cover-maker. Do not invent a headline to start generation.beatra.images.transform. A title or topic is needed only when it changes the
composition or message.beatra.images.edit with the draft as
images[0]. The accepted draft and requested change are sufficient to begin.Follow intent and routing for the precise branch and canvas and cover craft when turning the brief into a visual specification.
Reuse the user's article context, visual references, dimensions, title choice,
and must-keep details. Ask only when a missing decision materially changes the
result. The article title or topic is a hard input: do not invent a viral
headline and then generate. For a standard WeChat article cover, propose
900 × 383 as the working canvas and reserve a headline-safe area; otherwise
prefer the user's stated dimensions or an accepted draft's existing ratio.
Confirm a different destination only when it changes the composition.
Build the brief around:
If the user has already chosen the headline treatment, reuse it. If that choice is genuinely missing, propose the best default and include it in the single paid-call confirmation instead of creating a separate interview.
Use only this Skill's bundled scripts/mcp_client.py for every remote MCP
operation. The tool name is a CLI argument and the tool arguments are the JSON
sent on stdin. Do not configure or call a host Beatra Connector, and do not use
REST/OpenAPI as a fallback. For exact commands and troubleshooting, use
bundled MCP Client diagnostics.
beatra.images.generate with an explicit
canvas.beatra.images.transform with an explicit canvas.beatra.images.edit. Use at most two normalized
edit_regions on image_index=0 for local work; omit regions for a
whole-image adjustment.Uploading makes bytes available to the remote tool; it does not itself inspect the image. Review only visual facts the host can actually see.
Keep model=auto and count=1 unless the user explicitly chooses otherwise.
Call beatra.models.list only for a real model, availability, compatibility, or
price decision. The detailed request shapes and examples are in
workflow.
Planning and brief preparation are free. Before the paid image call, show and freeze the final prompt, ordered references, canvas, headline treatment, model, controls, and output count. Merge any still-material high-impact choice into this one confirmation.
After approval, create one stable opaque client_request_id for that exact
logical request and submit it once. A changed prompt, reference or order,
canvas, model, count, or control is new paid work and needs a new confirmation
and a new ID.
After receiving a task_id, poll only that task with beatra.tasks.get. If the
ID is lost, use beatra.tasks.list to find candidates and verify the selected
one with tasks.get. Only when the original response status is genuinely
unknown may the exact same parameters and same client_request_id be used for
idempotent recovery. Slow polling, an update failure, an authorization failure,
or a connection failure never creates a replacement paid task.
Use beatra.tasks.cancel only when the user asks. If cancellation returns
409, continue tracking the original task. See review and
recovery for the full recovery contract.
When the result is visible, review thumbnail recognition, hierarchy, focal
point, headline legibility or safe-area contrast, canvas fit, crop risk, and
must-keep details. Deliver the artifact links, observed dimensions, task ID,
and billing.net_charged_credits. Offer at most one focused, unexecuted
revision. Generated assets can also be viewed and managed at
beatra.ai.
For first use and shared operations, follow installation and authentication, installation registration, tasks and results, billing, errors, and recovery, and uninstall and disconnect.
This Skill performs a silent check at most once per 24 hours while a public
command runs. When a newer package exists, it installs automatically without
separate confirmation. Updates come only from the fixed official Beatra
discovery address and immutable Beatra CDN path for the embedded identity.
Before replacement, the client verifies the discovery document, manifest,
archive, and every packaged file using identity, size, and SHA-256 checks. It
replaces only package-owned files in this installed Skill directory. If any
check, download, replacement, or rollback fails, the current installation stays
usable and the original command continues. Canonical English installs stay on
canonical/en, and SkillHub Chinese installs stay on skillhub/zh-CN.
The user can persistently control automatic updates:
python3 scripts/mcp_client.py update --auto off
python3 scripts/mcp_client.py update --auto on
python3 scripts/mcp_client.py update --check
Read automatic updates and safety for the official sources, integrity guarantees, replacement scope, failure behavior, and control details.