From motion-archaeologist
Use this skill when the user asks how a website's animation, motion, or scroll effect is built — for any URL or site name. Triggers on phrases like "how does X animate", "what's the motion stack on Y", "reverse-engineer the scroll effect at Z", "teardown the animation on example.com", "rip the Lottie from this page", "how did they build the hero on lovefrom.com". The skill lifts the underlying animation assets to disk and reports the technique.
How this skill is triggered — by the user, by Claude, or both
Slash command
/motion-archaeologist:motion-archaeologistThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
You analyze how a target website's animation or motion is built, lift the
You analyze how a target website's animation or motion is built, lift the underlying keyframe / shape / asset data to disk, and produce a report that fuses technique prose with lifted assets.
This is a craft-study tool. The output lets the user understand a motion system well enough to author their own in the same shape — not copy-paste a deployment.
Every report MUST include BOTH halves:
out/<name>.lottie.json (or escape-hatch report if the engine is
procedural)Technique-without-asset is a failed run. Asset-without-technique is also a failed run. Refuse to stop until both halves exist.
This is the workflow proven on lovefrom.com that produced
~/Code/lovefrom-teardown/REPLICATION.md. Apply verbatim to any URL.
firecrawl_scrape with formats: ["rawHtml", "branding"].
The branding format auto-extracts colors / fonts / spacing / components
for free.curl with a real desktop User-Agent.<script type="module">, <link rel="modulepreload|stylesheet| manifest|icon">, inline <style>, inline @font-face.__vite__mapDeps
array — it lists every preloadable dep by hashed filename.<script src=...> manually.import("./...), fetch(,
new Worker(./assets/, /fonts/,
/images/, plus any custom paths.Helper: scripts/replicate.sh <url> automates 1–3.
Run scripts/probe-engine.sh <workspace> — first hit wins from 9
engine signatures (Lottie raw, Lottie inlined, GSAP, Framer Motion, Web
Animations API, Anime.js, Three.js, CSS @keyframes, custom procedural).
Full probe table + per-engine corner cases:
references/engine-detection.md — load only if a probe fails or returns
unexpected results.
out/<name>.lottie.json@keyframes → extract rule blockspython3 -m http.server PORT (find a free port if 8000 is taken — see
scripts/replicate.sh for the port-discovery one-liner)Write out/REPORT.md with both halves:
Technique prose:
Lifted assets:
out/<name>.lottie.json (or escape-hatch report)# 1+2+3: Fetch + parse + download
bash $CLAUDE_PLUGIN_ROOT/skills/motion-archaeologist/scripts/replicate.sh https://example.com
# 4: Probe for animation framework
bash $CLAUDE_PLUGIN_ROOT/skills/motion-archaeologist/scripts/probe-engine.sh ./workspace
# Loader-graph diagnostic only
bash $CLAUDE_PLUGIN_ROOT/skills/motion-archaeologist/scripts/probe-loader.sh ./workspace/assets/<entry>.js
The canonical worked example is ~/Code/lovefrom-teardown/:
REPLICATION.md documents Path C (fork the working deployment)out/REPORT.md documents the procedural-engine escape hatchWhen debugging this skill, read those files for what a complete run looks like end-to-end.
First-run user setup:
export FIRECRAWL_API_KEY=fc-xxxxThe Firecrawl branding format consumes 1 credit per scrape; the rest are
free / curl.
Searches MemPalace before answering questions about past work, people, projects, or prior decisions. Returns verbatim stored content instead of guessing from model memory.
Guides Payload CMS config (payload.config.ts), collections, fields, hooks, access control, APIs. Debugs validation errors, security, relationships, queries, transactions, hook behavior.
Implements vector databases with Pinecone, Weaviate, Qdrant, Milvus, pgvector for semantic search, RAG, recommendations, and similarity systems. Optimizes embeddings, indexing, and hybrid search.
npx claudepluginhub pauldabrowski85/enact-plugins --plugin motion-archaeologist