← Back to Skills Marketplace
vcarolxhberger

Lesson Editor

by vcarolxhberger · GitHub ↗ · v1.0.0 · MIT-0
cross-platform ⚠ suspicious
120
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install lesson-editor
Description
edit raw lesson footage into polished lesson videos with this skill. Works with MP4, MOV, AVI, WebM files up to 500MB. educators and course creators use it f...
README (SKILL.md)

Getting Started

Share your raw lesson footage and I'll get started on AI lesson editing. Or just tell me what you're thinking.

Try saying:

  • "edit my raw lesson footage"
  • "export 1080p MP4"
  • "cut the pauses, add chapter titles,"

Automatic Setup

On first interaction, connect to the processing API before doing anything else. Show a brief status like "Setting things up...".

Token: If NEMO_TOKEN environment variable is already set, use it and skip to Session below.

Free token: Generate a UUID as client identifier, then POST to https://mega-api-prod.nemovideo.ai/api/auth/anonymous-token with header X-Client-Id: \x3Cuuid>. The response field data.token becomes your NEMO_TOKEN (100 credits, 7-day expiry).

Session: POST to https://mega-api-prod.nemovideo.ai/api/tasks/me/with-session/nemo_agent with Bearer auth and body {"task_name":"project"}. Save session_id from the response.

Confirm to the user you're connected and ready. Don't print tokens or raw JSON.

Lesson Editor — Edit and Export Lesson Videos

This tool takes your raw lesson footage and runs AI lesson editing through a cloud rendering pipeline. You upload, describe what you want, and download the result.

Say you have a 12-minute screen recording of a coding tutorial and want to cut the pauses, add chapter titles, and export a clean lesson video — the backend processes it in about 1-2 minutes and hands you a 1080p MP4.

Tip: splitting a long lesson into chapters before uploading speeds up processing significantly.

Matching Input to Actions

User prompts referencing lesson editor, aspect ratio, text overlays, or audio tracks get routed to the corresponding action via keyword and intent classification.

User says... Action Skip SSE?
"export" / "导出" / "download" / "send me the video" → §3.5 Export
"credits" / "积分" / "balance" / "余额" → §3.3 Credits
"status" / "状态" / "show tracks" → §3.4 State
"upload" / "上传" / user sends file → §3.2 Upload
Everything else (generate, edit, add BGM…) → §3.1 SSE

Cloud Render Pipeline Details

Each export job queues on a cloud GPU node that composites video layers, applies platform-spec compression (H.264, up to 1080x1920), and returns a download URL within 30-90 seconds. The session token carries render job IDs, so closing the tab before completion orphans the job.

All calls go to https://mega-api-prod.nemovideo.ai. The main endpoints:

  1. SessionPOST /api/tasks/me/with-session/nemo_agent with {"task_name":"project","language":"\x3Clang>"}. Gives you a session_id.
  2. Chat (SSE)POST /run_sse with session_id and your message in new_message.parts[0].text. Set Accept: text/event-stream. Up to 15 min.
  3. UploadPOST /api/upload-video/nemo_agent/me/\x3Csid> — multipart file or JSON with URLs.
  4. CreditsGET /api/credits/balance/simple — returns available, frozen, total.
  5. StateGET /api/state/nemo_agent/me/\x3Csid>/latest — current draft and media info.
  6. ExportPOST /api/render/proxy/lambda with render ID and draft JSON. Poll GET /api/render/proxy/lambda/\x3Cid> every 30s for completed status and download URL.

Formats: mp4, mov, avi, webm, mkv, jpg, png, gif, webp, mp3, wav, m4a, aac.

Three attribution headers are required on every request and must match this file's frontmatter:

Header Value
X-Skill-Source lesson-editor
X-Skill-Version frontmatter version
X-Skill-Platform auto-detect: clawhub / cursor / unknown from install path

Every API call needs Authorization: Bearer \x3CNEMO_TOKEN> plus the three attribution headers above. If any header is missing, exports return 402.

Draft field mapping: t=tracks, tt=track type (0=video, 1=audio, 7=text), sg=segments, d=duration(ms), m=metadata.

Timeline (3 tracks): 1. Video: city timelapse (0-10s) 2. BGM: Lo-fi (0-10s, 35%) 3. Title: "Urban Dreams" (0-3s)

Backend Response Translation

The backend assumes a GUI exists. Translate these into API actions:

Backend says You do
"click [button]" / "点击" Execute via API
"open [panel]" / "打开" Query session state
"drag/drop" / "拖拽" Send edit via SSE
"preview in timeline" Show track summary
"Export button" / "导出" Execute export workflow

Reading the SSE Stream

Text events go straight to the user (after GUI translation). Tool calls stay internal. Heartbeats and empty data: lines mean the backend is still working — show "⏳ Still working..." every 2 minutes.

About 30% of edit operations close the stream without any text. When that happens, poll /api/state to confirm the timeline changed, then tell the user what was updated.

Error Handling

Code Meaning Action
0 Success Continue
1001 Bad/expired token Re-auth via anonymous-token (tokens expire after 7 days)
1002 Session not found New session §3.0
2001 No credits Anonymous: show registration URL with ?bind=\x3Cid> (get \x3Cid> from create-session or state response when needed). Registered: "Top up credits in your account"
4001 Unsupported file Show supported formats
4002 File too large Suggest compress/trim
400 Missing X-Client-Id Generate Client-Id and retry (see §1)
402 Free plan export blocked Subscription tier issue, NOT credits. "Register or upgrade your plan to unlock export."
429 Rate limit (1 token/client/7 days) Retry in 30s once

Common Workflows

Quick edit: Upload → "cut the pauses, add chapter titles, and export a clean lesson video" → Download MP4. Takes 1-2 minutes for a 30-second clip.

Batch style: Upload multiple files in one session. Process them one by one with different instructions. Each gets its own render.

Iterative: Start with a rough cut, preview the result, then refine. The session keeps your timeline state so you can keep tweaking.

Tips and Tricks

The backend processes faster when you're specific. Instead of "make it look better", try "cut the pauses, add chapter titles, and export a clean lesson video" — concrete instructions get better results.

Max file size is 500MB. Stick to MP4, MOV, AVI, WebM for the smoothest experience.

Export as MP4 for widest compatibility across LMS platforms like Teachable and Udemy.

Usage Guidance
This skill appears to implement a cloud video-editing workflow that uploads your footage to mega-api-prod.nemovideo.ai and requires an API token (NEMO_TOKEN). Before installing, consider: 1) Verify the provider: the skill has no homepage/source listed — ask the publisher for the service's privacy/data-retention policy and confirm you trust nemovideo.ai. 2) Token scope: only provide a token scoped to this service (don’t reuse high-privilege credentials). The skill can also generate an anonymous token via the API — you may prefer that flow. 3) Files and PII: videos will be uploaded to an external service; avoid sending sensitive personal data unless you accept that external storage/processing. 4) Config path mismatch: the SKILL.md references ~/.config/nemovideo/ but the registry metadata did not — ask whether the skill will read/write that directory and what it stores there (tokens, session IDs, logs). 5) Headers/fingerprinting: the skill requires custom attribution headers; these will reveal usage of this skill to the backend. If you need stricter guarantees, request source code or a homepage, or test with non-sensitive sample footage and a throwaway token first.
Capability Analysis
Type: OpenClaw Skill Name: lesson-editor Version: 1.0.0 The lesson-editor skill is a functional integration for the NemoVideo AI service, designed to facilitate video editing and exporting via a cloud-based API (mega-api-prod.nemovideo.ai). The SKILL.md provides clear instructions for the agent to handle authentication (via NEMO_TOKEN or anonymous UUID-based tokens), manage sessions, and process video files. The requested permissions (environment variables and a specific config path) and the use of attribution headers are consistent with the stated purpose of the tool, with no evidence of malicious intent, data exfiltration, or unauthorized execution.
Capability Assessment
Purpose & Capability
Name/description (AI lesson video editing) lines up with required credential NEMO_TOKEN and calls to nemovideo.ai, which is consistent with a cloud video-editing backend. However, the SKILL.md frontmatter includes a config path (~/.config/nemovideo/) while the registry metadata reported 'Required config paths: none' — this mismatch is unexplained.
Instruction Scope
The SKILL.md instructs the agent to: read NEMO_TOKEN env var (if present), or generate an anonymous token via a POST to the vendor API; create/persist a session_id; upload user video files; and poll for render status. Those actions are within the expected scope for a cloud editor. It does not ask the agent to read unrelated system files or extra credentials, but it does require the agent to include custom attribution headers and to persist session state (the instructions say 'Save session_id'), and the frontmatter indicates an application config path which could imply writing/reading ~/.config/nemovideo/ — the instructions do not make clear what is stored there.
Install Mechanism
No install spec and no code files — instruction-only skill. This is the lowest install risk; nothing is downloaded or written by an installer step according to the registry.
Credentials
The only declared required environment variable is NEMO_TOKEN (primary credential), which is proportional for a cloud service. Concern arises because SKILL.md frontmatter references a config path (~/.config/nemovideo/) that may be used to store tokens or session state; the registry metadata earlier listed no config paths — this discrepancy is unexplained and could mean the skill expects filesystem access beyond what was declared.
Persistence & Privilege
always:false (normal). The skill instructs saving session_id and may persist tokens/session data for later calls; frontmatter hints at a config directory. There is no explicit instruction to modify other skills or global agent settings. Autonomous invocation is allowed (default) but not, by itself, a red flag.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install lesson-editor
  3. After installation, invoke the skill by name or use /lesson-editor
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.0
Initial release of Lesson Editor — an AI-powered tool for editing and exporting lesson videos: - Upload raw lesson footage (MP4, MOV, AVI, WebM up to 500MB) for fast, cloud-based editing into polished 1080p MP4s. - Supports workflow commands: cut pauses, add chapter titles, manage audio/text overlays. - Easy onboarding with automatic connection, instant free token, and session setup. - Provides clear status messages and user feedback during processing and errors. - Exports processed lesson videos in 1–2 minutes using secure, session-based cloud pipeline. - Built-in balance check, export, upload, and state management actions.
Metadata
Slug lesson-editor
Version 1.0.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is Lesson Editor?

edit raw lesson footage into polished lesson videos with this skill. Works with MP4, MOV, AVI, WebM files up to 500MB. educators and course creators use it f... It is an AI Agent Skill for Claude Code / OpenClaw, with 120 downloads so far.

How do I install Lesson Editor?

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

Is Lesson Editor free?

Yes, Lesson Editor is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Lesson Editor support?

Lesson Editor is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Lesson Editor?

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

💬 Comments