Install
$ agentstack add skill-onewave-ai-open-agent-stack-motion-system ✓ 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
Motion System
Scattered motion is the loudest AI tell there is. Every element gets its own hover transition, every duration is a different number, half the page animates on scroll and the other half does not. The fix is not less motion -- it is fewer decisions, reused everywhere.
Do this before writing any animation code. It takes ten minutes and every later animation becomes a lookup instead of a judgment call.
Workflow
- Pick the temperature. One choice that governs everything after: is this app calm (slower, softer easing, motion recedes -- dashboards, tools, finance), crisp (fast, tight, near-instant feedback -- productivity, developer tools), or expressive (larger movement, overshoot, motion is part of the brand -- marketing, portfolio, launch pages). Write the choice down. Mixing temperatures is what makes an app feel like three people built it.
- Define the tokens. Three durations and three easings, no more. Put them where the rest of the design tokens live -- CSS custom properties or the Tailwind theme -- so no component ever writes a raw
300msagain. Defaults per temperature are inreferences/motion-tokens.md; adjust, do not expand. - Name the moves. A short vocabulary the whole app reuses:
- enter -- how new content arrives (one treatment, applied consistently: usually a small rise plus fade, 8-16px, never more)
- exit -- how it leaves (faster than enter; nobody wants to wait for a goodbye)
- emphasis -- how something says "look here" (scale or color shift, never both plus a rotate)
- feedback -- press, hover, focus (fastest tier, under 150ms; this one must feel instant)
- transition -- moving between views or states
- Set the reduced-motion policy now. Decide per move what happens under
prefers-reduced-motion: reduce-- usually: opacity survives, movement and scale do not, scrub-driven scroll effects become static. Write it as one global rule, not a per-component afterthought. - Build one reference component. Implement the moves once on a real component and use it as the pattern for everything after. Then delete any existing animation that does not draw from the system.
Rules
- Three durations, three easings. A fourth means the system failed, not that the case is special.
- Never animate
top,left,width,height, ormargin.transformandopacityonly -- everything else costs layout on the main thread. Seemotion-perf. - Motion communicates hierarchy and causality: why something moved, and where it came from. Motion applied because a library is installed is decoration, and decoration ages badly.
- Fast in, slow out for entrances; the reverse reads as sluggish. Nothing on the interaction path exceeds 300ms.
- Stagger lists, do not animate every item independently -- 40-60ms between items, capped so a long list does not take two seconds to appear.
- The system is per-app, not universal. A trading dashboard and a launch page should not share durations.
Source & license
This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.
- Author: OneWave-AI
- Source: OneWave-AI/open-agent-stack
- License: MIT
- Homepage: https://www.onewave-ai.com
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.