Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx agentmods add skills/devinilabs/pro-skill/build-threejs-scroll-worldsnpx skills add devinilabs/pro-skill --skill build-threejs-scroll-worldsgit clone --depth 1 https://github.com/devinilabs/pro-skillWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/devinilabs/pro-skill/build-threejs-scroll-worlds)<a href="https://agentmods.dev/skills/devinilabs/pro-skill/build-threejs-scroll-worlds"><img src="https://agentmods.dev/badge/skills/devinilabs/pro-skill/build-threejs-scroll-worlds.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00105 | $0.03925 |
| Opus 5 | $0.00053 | $0.01962 |
| Sonnet 5 | $0.00021 | $0.00785 |
| Haiku 4.5 | $0.00011 | $0.00392 |
Grade A, and why
build-threejs-scroll-worlds scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 6d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
100% identical to build-threejs-scroll-worlds — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 310 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Build Three.js Scroll Worlds
Build one detailed real-time world and use native document scroll as its deterministic conductor. Keep the renderer, scene graph, and spatial continuity alive while camera composition, light, fog, animation, copy, and interaction focus move through authored chapters.
The mechanism is one persistent Three.js world + one normalized reversible scroll state. If removing either makes the experience collapse into stacked sections, this skill applies.
The exact Kage demo proves the quality bar; it is staging, not a mandatory subject or layout. Use its detailed anatomy only when the requested direction benefits from it: references/kage-anatomy.md.
Route the request correctly
- Use
threejsfor a single interactive scene with no scroll-authored journey. - Use
scroll-world-storytellingwhen deciding between real-time 3D, pre-rendered video, and DOM-first storytelling. - Use
scroll-scrubbed-visual-sequencefor a video or image sequence whose time is scrubbed by scroll. - Use
cinematic-scroll-storytellingfor DOM-first GSAP/Lenis choreography. - Use this skill when objects must remain truly spatial and interactive while scroll moves through several compositions in one live WebGL world.
Do not disguise a video as Three.js. The public oso95/scroll-world project, reviewed at commit 71cc36d, is a strong reference for intake, scene ledgers, budget gates, mobile-specific composition, config-driven playback, and seam QA, but its renderer is a pre-generated video chain. This skill adopts those structural strengths while retaining real geometry, materials, lighting, raycasting, and camera control.
Read the build references
Before implementing a new world, read:
- references/world-bible.md for intake, art direction, scene, material, texture, and interaction ledgers;
- references/realtime-architecture.md for the scene graph, conductor, camera, loading, interaction, and lifecycle patterns;
- references/quality-and-qa.md before optimization and final verification.
What ships with it
25 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- agents/openai.yaml 294 B
- demo/index.html 233 KB
- demo/preview.jpg 141 KB
- demo/PROMPT.md 4.1 KB
- demo/secret-pathways-assets/fonts.css 97 KB
- demo/secret-pathways-assets/foreground/png/basalt-stones.webp 164 KB
- demo/secret-pathways-assets/foreground/png/garden-bush.webp 280 KB
- demo/secret-pathways-assets/foreground/png/hill.webp 82 KB
- demo/secret-pathways-assets/foreground/png/maple-leaves.webp 174 KB
- demo/secret-pathways-assets/foreground/png/pine-tree.webp 191 KB
- demo/secret-pathways-assets/foreground/png/sakura-branch.webp 247 KB
- demo/secret-pathways-assets/foreground/png/shrine-ruins.webp 142 KB
- demo/secret-pathways-assets/foreground/png/stone-lantern.webp 147 KB
- demo/secret-pathways-assets/foreground/png/tall-grass.webp 343 KB
- demo/secret-pathways-assets/foreground/png/temple-wall.webp 84 KB
- demo/secret-pathways-assets/generated/kage-approach.webp 176 KB
- demo/secret-pathways-assets/generated/kage-lantern-court.webp 193 KB
- demo/secret-pathways-assets/generated/kage-moonwater.webp 100 KB
- demo/secret-pathways-assets/generated/kage-sanmon-preview.webp 182 KB
- demo/secret-pathways-assets/three.min.js 594 KB runs code
- references/kage-anatomy.md 7.6 KB
- references/quality-and-qa.md 11 KB
- references/realtime-architecture.md 15 KB
- references/scroll-conductor.js 7.5 KB runs code
- references/world-bible.md 12 KB
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 6d ago First seen · 310 lines · 105 tokens per session scan A bb36c79ff435
build-threejs-scroll-worlds is a skill published in the GitHub repository devinilabs/pro-skill (23 stars, last pushed 23d ago), licensed MIT. It adds 105 tokens to every session and 3,925 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it A with 0 findings. It is 100% identical to build-threejs-scroll-worlds, differing in 0 lines, and is treated as a copy.
Other skills, from other repositories
debug-optimize-lcp
Guides debugging and optimizing Largest Contentful Paint (LCP) using Chrome DevTools MCP tools. Use this skill whenever the user asks about LCP performance, slow page loads, Core Web Vitals optimization, or wants to understand why their page's main content takes too long to appear. Also use when the user mentions…
repro-admin
Reproduce an EmDash admin UI bug. Attach a container, start the demo dev server, drive the admin with agent-browser using the dev-bypass session, and capture the reproduction as screenshots plus a replayable transcript.
create-site
Creates a new Power Pages code site (SPA) using React, Angular, Vue, or Astro. Guides through the full process from initial concept to deployed site: requirements discovery, scaffolding, component planning, design, implementation, validation, and deployment. Use when the user wants to create, build, or scaffold a new…
prototype-web
可点击的功能性 Web 原型, 含导航、英雄区、特性区、CTA.
menu-transitions-rtl
Animate react-horizontal-scrolling-menu scrolling and build right-to-left menus: noPolyfill defaults to true since v8, so transitionDuration (default 500), a custom-easing-function transitionBehavior, and per-call ScrollOptions { duration, boundary } on scrollToItem/scrollNext/scrollPrev are silently ignored unless…
vite
Vite build tool configuration, plugin API, SSR, and Vite 8 Rolldown migration. Use when working with Vite projects, vite.config.ts, Vite plugins, or building libraries/SSR apps with Vite.