Install
openclaw skills install @insistandtry/seewo-courseware-generatorGenerate a multi-page, editable courseware file (.enbx) that opens natively in the Seewo Whiteboard (希沃白板) desktop client, starting only from a topic/outline or free-form description of lesson content. Use whenever a user asks to 生成课件 / 做一份希沃白板课件 / 把内容做成能在希沃白板打开的课件, or provides teaching material and wants a 希沃白板-ready multi-page slideshow. The skill produces a real native .enbx (希沃私有格式, a ZIP of XML plus media), not a PPTX, so the result opens directly in 希沃白板.
openclaw skills install @insistandtry/seewo-courseware-generatorThis skill turns a teaching description (topic, outline, article, or bullet points) into a
native 希沃白板 (Seewo Whiteboard) courseware file with the .enbx extension. The
.enbx format is a ZIP archive of XML descriptors plus media; this skill writes that
package directly so the output opens in the 希沃白板 client without conversion.
The skill ships two scripts:
scripts/generate_enbx.py — builds the .enbx from a JSON spec.scripts/validate_enbx.py — verifies the output against the same structural checks a
real .enbx sample passes (ZIP integrity, XML well-formedness, resource resolution,
Slide↔Board id mapping).Read references/enbx_format.md for the full format specification and the generator's
input schema whenever detail is needed.
Trigger on requests such as:
Do not use this skill for plain PPTX/PDF generation — those are different formats.
(Note: 希沃白板 can also import PPTX, so if a user only needs import compatibility and
not the native .enbx, a PPTX path is an acceptable alternative; but the native .enbx
is the primary goal here.)
Gather the lesson topic and the per-page content. Accept a free-form description, an outline, or pasted text. If the user gave only a topic, propose a sensible outline (title slide + several content slides) and confirm or proceed. Keep it light — one round of clarification is enough; otherwise infer a reasonable structure.
Write a JSON spec file (e.g. /workspace/spec.json) describing the courseware. Use the
schema from references/enbx_format.md. Two authoring modes:
Convenience mode (recommended for most lessons) — let the skill auto-layout the page:
{
"courseware_name": "光合作用 单元复习",
"pages": [
{"layout":"title_slide","background":"#1565C0","background2":"#0D47A1",
"title":"光合作用","subtitle":"初中生物 单元复习"},
{"layout":"content","background":"#FFFFFF","title":"一、概念","subtitle":"...",
"bullets":["场所:叶绿体","条件:光照","原料:CO₂ + H₂O"]},
{"layout":"content","background":"#FFFFFF","title":"二、对比","table":{
"header":true,"rows":[["项目","光反应","暗反应"],["场所","类囊体","基质"]]}}
]
}
Explicit mode — provide elements per page for full control (title/text/bullets/table/
box/picture with exact x/y/w/h). When elements is present, convenience fields are ignored.
Design notes:
background (and optional background2 for a gradient) per page for visual variety.box (colored rectangle) and picture (from an image file path) enable title bars,
highlight boxes, diagrams, and photos.Run the generator with the managed Python (this script uses only the standard library):
/Users/juno/.workbuddy/binaries/python/versions/3.13.12/bin/python3 \
/Users/juno/.workbuddy/skills/seewo-courseware-generator/scripts/generate_enbx.py \
/workspace/spec.json /workspace/课件名.enbx
This emits a single .enbx file. Report the output path to the user.
Always validate the result before delivering:
/Users/juno/.workbuddy/binaries/python/versions/3.13.12/bin/python3 \
/Users/juno/.workbuddy/skills/seewo-courseware-generator/scripts/validate_enbx.py \
/workspace/课件名.enbx
Expect ✅ 校验通过. If errors appear, fix the spec or the generator and regenerate.
Hand the .enbx to the user. Tell them to double-click it (or drag it into 希沃白板) to
open. Mention that the file is the native 希沃 format and is fully editable in the client.
.enbx writer replicates the exact structure of a real 希沃白板 5.1 sample
(UTF-8 BOM on every XML, id:// resource references, Board↔Slide id mapping,
Reference.xml, SaveInfoMetadataFile.xml, thumbnail.png). The validator confirms
the generated file passes the same checks as that real sample..enbx in the 希沃白板 web/desktop client and re-save.For the precise XML schema of each element and the full input spec, read
references/enbx_format.md.