Install
$ agentstack add skill-wu-haotian34-2dimg2motion-img2mo-learn ✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.
Security review
✓ PassedNo issues found. Passed automated security review. · v0.1.0 How review works →
- ✓ Prompt-injection patterns
- ✓ Secret / credential exfiltration
- ✓ Dangerous shell & filesystem operations
- ✓ Untrusted network calls
- ✓ Known-malicious package signatures
What it can access
- ✓ Network access No
- ✓ Filesystem access No
- ✓ Shell / process execution No
- ✓ Environment & secrets No
- ✓ Dynamic code execution No
From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.
Verified badge
Passed review? Show it. Paste this badge into your README, it links to the public security report.
Reliability & compatibility
Declared compatibility
Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.
We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.
How agent discovery & health will work →About
Img2mo-learn
Overview
Use this skill when the user invokes:
/img2mo-learn
img2mo-learn
The goal is to turn finished or reference motion assets into reusable project knowledge. Store learned knowledge in the project-level img2mo-knowledge/ folder, never in the installed Codex skill directory during normal work.
Input Resolution
Resolve the argument after img2mo-learn as follows:
- If it is an existing relative or absolute path, use it directly.
- If it is a bare name, first try
sample\, thenoutput\, thenmotion\. - If it is a folder, inspect likely assets in this order:
manifest.json,preview.gif,contact-sheet.*,spritesheet.*,fullframe/,frames/, Spine.json/.atlas/.skel, then videos. - If no matching resource exists, report the missing path and ask for the correct path.
Supported resources:
- video files such as
.mp4,.mov,.webm; - PNG frame folders, spritesheets, contact sheets, or GIF previews;
- project outputs from this skill such as
output//; - Spine-style assets such as
.json,.atlas,.skel, texture folders; - local reference-library folders under
motion/.
Knowledge Location
Create this structure if missing:
img2mo-knowledge/
|-- index.md
|-- learnings.jsonl
|-- action-patterns.md
|-- style-patterns.md
|-- prompt-patterns.md
`-- failures.md
Append one JSON object per learning session to img2mo-knowledge/learnings.jsonl. Keep Markdown files concise and curated; do not paste huge logs, full prompts, or complete frame listings.
Learning Workflow
- Identify the resource type.
- For video: read frame size, fps, duration, and frame count with
ffprobewhen available. - For frame sequences: count frames, inspect canvas sizes, alpha/background, and contact sheet if present.
- For spritesheets: infer grid/cell count when possible; otherwise describe visible beats.
- For Spine assets: inspect animation names, bone/slot names, skins, attachments, timeline names, and texture organization without assuming rendered motion if frames are not available.
- Create review surfaces if useful.
- For video or frame folders, create temporary or output-side contact sheets and preview GIFs if they do not exist.
- Do not alter the source resource.
- Do not store bulky extracted frames in
img2mo-knowledge/; store outputs underoutput/ortmp/and reference their paths in JSON.
- Summarize motion timing.
- Identify action type: attack, walk, idle, block, suffer, death, born, skill/cast, or other.
- Record frame count, fps, loop behavior, and major beats.
- For attacks, prefer beat labels such as
guard,anticipation,acceleration,contact,contact hold,follow-through,recovery. - Record which frame ranges are most useful as key poses.
- Summarize pose and topology lessons.
- Record active limb/feature, weapon or prop owner, anchor limb/surface, facing direction, and stable baseline behavior.
- Note silhouette expansion, squash/stretch, center drift, foot/bottom baseline, and whether motion needs extra canvas margin.
- Summarize style lessons.
- Record line weight, palette, shading, material treatment, outline softness, shape language, effects style, and background/keying considerations.
- Distinguish character style from detached effects.
- Summarize prompt lessons.
- Write reusable prompt clauses that could improve later generation.
- Keep prompt clauses short and parameterized; avoid overfitting to one character name unless the lesson is character-specific.
- Summarize failures and constraints.
- Record what should be rejected: hand swaps, scale popping, bad alpha, cut weapons, over-crowded sheets, text/watermark contamination, or mismatched style.
- Write project knowledge.
- Append structured session data to
learnings.jsonl. - Update the relevant Markdown files with durable, reusable lessons.
- If the learning is only useful for one output, also write
output//retro.md.
JSONL Schema
Each line in img2mo-knowledge/learnings.jsonl should be a compact JSON object:
{
"id": "learn-YYYYMMDD-HHMMSS-short-name",
"date": "YYYY-MM-DD",
"source": "relative/or/absolute/path",
"resource_type": "video|frame_sequence|spritesheet|spine|output|reference_folder",
"action_type": "attack|walk|idle|block|suffer|death|born|skill|unknown",
"fps": 24,
"frame_count": 14,
"loop": true,
"beats": [
{"name": "anticipation", "frames": "02-04", "notes": "body compresses before strike"}
],
"key_pose_guidance": ["frame 05 should be the clearest contact silhouette"],
"topology": {
"active": "screen-left sword hand",
"anchor": "screen-right hand",
"weapon_owner": "screen-left hand"
},
"style": ["thick dark outline", "warm orange shadow shapes"],
"prompt_clauses": ["same foot/bottom baseline in every cell"],
"failure_lessons": ["reject sheets where the weapon hand swaps"],
"artifacts": ["output/.../contact-sheet.jpg"]
}
Use null for unknown scalar fields and [] for empty lists. Keep one line per session.
Markdown Update Rules
index.md: list recent learning sessions and high-level tags.action-patterns.md: update durable motion timing rules by action type.style-patterns.md: update durable visual style observations.prompt-patterns.md: update short reusable prompt clauses and anti-clauses.failures.md: update rejection checks and known failure modes.
When adding Markdown entries, include the source path and date. Keep entries short enough that /img2motion can read them quickly.
Use During Generation
Later /img2motion work must read img2mo-knowledge/index.md first when it exists. Then read only the relevant knowledge files for the requested action/style:
- action timing:
action-patterns.md; - visual style:
style-patterns.md; - prompt wording:
prompt-patterns.md; - known pitfalls:
failures.md; - detailed recent examples: search
learnings.jsonlfor matchingaction_type, source tags, or character style.
Do not let learned knowledge override the current user's explicit request or the current baseline image identity. Treat project knowledge as guidance, not ground truth.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: WU-HAOTIAN34
- Source: WU-HAOTIAN34/2dimg2motion
- License: MIT
Install and usage instructions live in the source repository linked above.
Reviews
No reviews yet, be the first.
Write a review
Versions
- v0.1.0 Imported from the upstream source.