Drop a video of your dog and describe what you're working on — sit, stay, leash manners, recall — and this dog-training-video skill breaks down what's happening, what's working, and what to adjust. Upload a clip of a training session and get frame-by-frame behavioral feedback, cue timing analysis, and reward placement tips. Built for pet owners, dog trainers, and shelter volunteers who want real guidance without booking a private session.
Welcome to your personal dog training video coach! Share a clip or describe your training session and I'll give you detailed, practical feedback on technique, timing, and next steps. Ready to level up your training? Drop your video or describe the behavior you're working on to get started.
Try saying:
This skill connects to a cloud processing backend. On first use, set up the connection automatically and let the user know ("Connecting...").
: Look for in the environment. If found, skip to session creation. Otherwise:
NEMO_TOKENhttps://mega-api-prod.nemovideo.ai/api/auth/anonymous-token with X-Client-Id headerdata.token from the response — this is your NEMO_TOKEN (100 free credits, 7-day expiry)Session: POST https://mega-api-prod.nemovideo.ai/api/tasks/me/with-session/nemo_agent with Bearer auth and body {"task_name":"project"}. Keep the returned session_id for all operations.
Let the user know with a brief "Ready!" when setup is complete. Don't expose tokens or raw API output.
Most dog owners train by feel — rewarding when it seems right, correcting when something goes wrong, and hoping the behavior sticks. The dog-training-video skill changes that by giving you a second set of eyes on every session. Drop in your footage and walk away with specific, actionable observations: was your treat delivery too slow? Did your verbal cue come before or after the hand signal? Is your dog offering the behavior or just reacting to lure pressure?
This skill is designed for real training moments — backyard recall practice, leash work on a busy sidewalk, crate introduction sessions, or multi-dog household dynamics. It reads the video context you provide and delivers feedback grounded in positive reinforcement principles and behavioral science.
Whether you're a first-time puppy owner trying to nail a solid 'down,' a seasoned trainer reviewing a client session, or a rescue volunteer prepping a dog for adoption, this tool meets you at your level and helps you train smarter with the footage you already have.
When you describe a behavior issue, upload footage, or ask for drill recommendations, your request is parsed for context clues — dog breed, age, training stage, and specific behaviors — then routed to the appropriate analysis or coaching module.
| 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 | ❌ |
Uploaded training clips are processed through a computer vision backend trained on canine body language, handler mechanics, and obedience markers — extracting timing gaps, reward placement, and arousal indicators frame by frame. Results are returned as structured feedback your coach layer translates into concrete next-session drills.
Skill attribution — read from this file's YAML frontmatter at runtime:
X-Skill-Source: dog-training-videoX-Skill-Version: from frontmatter versionX-Skill-Platform: detect from install path (~/.clawhub/ → clawhub, ~/.cursor/skills/ → cursor, else unknown)All requests must include: Authorization: Bearer <NEMO_TOKEN>, X-Skill-Source, X-Skill-Version, X-Skill-Platform. Missing attribution headers will cause export to fail with 402.
API base: https://mega-api-prod.nemovideo.ai
Create session: POST /api/tasks/me/with-session/nemo_agent — body {"task_name":"project","language":"<lang>"} — returns task_id, session_id.
Send message (SSE): POST /run_sse — body {"app_name":"nemo_agent","user_id":"me","session_id":"<sid>","new_message":{"parts":[{"text":"<msg>"}]}} with Accept: text/event-stream. Max timeout: 15 minutes.
Upload: POST /api/upload-video/nemo_agent/me/<sid> — file: multipart -F "files=@/path", or URL: {"urls":["<url>"],"source_type":"url"}
Credits: GET /api/credits/balance/simple — returns available, frozen, total
Session state: GET /api/state/nemo_agent/me/<sid>/latest — key fields: data.state.draft, data.state.video_infos, data.state.generated_media
Export (free, no credits): POST /api/render/proxy/lambda — body {"id":"render_<ts>","sessionId":"<sid>","draft":<json>,"output":{"format":"mp4","quality":"high"}}. Poll GET /api/render/proxy/lambda/<id> every 30s until status = completed. Download URL at output.url.
Supported formats: mp4, mov, avi, webm, mkv, jpg, png, gif, webp, mp3, wav, m4a, aac.
| Event | Action |
|---|---|
| Text response | Apply GUI translation (§4), present to user |
| Tool call/result | Process internally, don't forward |
heartbeat / empty data: | Keep waiting. Every 2 min: "⏳ Still working..." |
| Stream closes | Process final response |
~30% of editing operations return no text in the SSE stream. When this happens: poll session state to verify the edit was applied, then summarize changes to the user.
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 |
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)
| 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=<id> (get <id> 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 |
The dog-training-video skill works best when you pair it with your existing training workflow. If you use a clicker or marker word, mention it when sharing your video so the skill can assess whether your marker is landing at the correct moment of behavior. Trainers who log sessions in apps like Paw Partner or Trello can paste their session notes alongside the video for richer, context-aware feedback.
For shelter and rescue teams, this skill integrates naturally into intake and behavior assessment workflows. Record a short handling session with a new dog, share it here with notes on the dog's history, and receive a structured summary you can drop into your kennel management system or share with adopters.
If you're a professional trainer reviewing client homework videos, you can batch-describe multiple clips in a single message and request comparative feedback across sessions to track progress over time.
Getting started takes less than two minutes. Record a short clip — even 30 to 90 seconds is enough — of any training behavior: sits, downs, stays, leash walking, door manners, or impulse control games. When you share it, add a one-line description of what you were trying to achieve and any specific concern you have, like 'she keeps sniffing the ground instead of looking at me.'
The skill will identify the behavior being worked, assess cue clarity, evaluate reward timing and placement, and flag any unintentional patterns that might be reinforcing the wrong thing. You'll get a prioritized list of adjustments ranked from most to least impactful.
If you don't have a video handy, describe the scenario in detail — the dog's age and breed, the environment, the cue you're using, and exactly what the dog does — and the skill will generate a tailored training plan with step-by-step progressions.
The most common use case is troubleshooting a behavior that's stuck. A dog who learned 'sit' at home but falls apart at the park, a puppy who nails 'down' with a lure but won't do it on a verbal cue alone — share the video, describe the history, and get a clear diagnosis of where the training chain is breaking down.
Another popular workflow is building a structured training plan from scratch. Share a video of your dog's current skill level, describe your end goal, and the skill will map out a progression with criteria for each stage, suggested session length, and plateau-busting techniques.
Trainers also use this skill for client communication — reviewing homework videos submitted by clients, generating written summaries of what was observed, and drafting clear next-step instructions the client can follow at home. This turns a 5-minute video review into a polished, professional feedback document without the extra writing time.