AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

Micro Motion

skill-kyanitelabs-tastecheck-micro-motion · by KyaniteLabs

>-

No reviews yet
0 installs
22 views
0.0% view→install

Install

$ agentstack add skill-kyanitelabs-tastecheck-micro-motion

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No 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.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-kyanitelabs-tastecheck-micro-motion)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

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 →
Are you the author of Micro Motion? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

Micro-Motion

Motion confirms a change, its origin, or what to notice next. If it answers none of those, cut it.

Non-negotiables (the rules that keep motion feeling good)

  • Prefer compositor-safe properties. Start with transform and opacity. Color,

filter, SVG, or measured layout transitions are valid when the purpose requires them and a performance trace shows the target device can sustain the interaction.

  • Ease by direction. Ease-out enters, ease-in exits, ease-in-out moves; linear is

for a purposeful continuous loop only.

  • Design reduced motion as an equivalent state. Keep labels, choices, focus, and

final content; remove spatial movement.

  • **Let JavaScript opt individual elements into waiting states only after the observer

is ready.** Static CSS must not leave content hidden when JavaScript fails, initializes late, or restores from the back-forward cache.

  • Make looping motion controllable and never scroll-jack.

Easing & duration tokens

Use semantic duration/easing tokens: acknowledgement 120–160ms, insertion/menu 160–220ms, confirmation/route 220–320ms. Treat these as starting bands and test on the target device. Motion never delays committed state, focus, or the next keyboard action.

Settle before styling

Define the usable end state and interruption policy before choosing an entrance. A superseded save, route, insertion, or dismissal must converge on the newest state without a stale overlay, announcement, focus jump, or success message. Motion reflects state ownership; it does not decide it. If ownership or focus recovery is unknown, hand off to component-states before choreographing.

The reduced-motion contract

Define the project-level reduced-motion policy once, then let components reference it. For progressive reveals, content starts visible. After the observer is attached, JavaScript marks only offscreen pending elements; never hide an element already intersecting the viewport. It removes the marker on reveal and on page restoration. Gate spatial movement behind no-preference:

/* JavaScript marks only non-intersecting elements after the observer is ready. */
.reveal[data-reveal="pending"] { opacity: 0; }
.reveal:not([data-reveal="pending"]) { opacity: 1; }
@media (prefers-reduced-motion: no-preference) {
  .reveal[data-reveal="pending"] { transform: translateY(12px); }
  .reveal { transition: opacity var(--dur-base) var(--ease-out),
                        transform var(--dur-base) var(--ease-out); }
  .reveal:not([data-reveal="pending"]) { transform: none; }
}

For a legacy retrofit only, the emergency global kill switch in references/principles.md is permitted after documenting why the primary pattern cannot be used; it removes useful transitions, so it is not the default.

Decision order

  1. Name the user-facing purpose: acknowledgement, continuity, spatial origin, or attention.
  2. Name trigger, settled state, focus timing, and what wins when interrupted.
  3. Choose the smallest property, duration, and easing that communicate that purpose.
  4. Define reduced-motion and no-JS/restoration equivalents.
  5. Replay rapid repeat, cancellation, navigation, and stale async completion.

For async feedback, tag each request and let only the current owner update status or its live announcement. For routes and overlays, cancel superseded animation and make the destination DOM and focus authoritative. For list changes, preserve readable DOM order even when visual movement is interrupted.

How to deliver

Deliver a compact choreography table: interaction, purpose, trigger, duration/easing, settled state, interruption rule, and reduced equivalent. Add one global safety row for JS-disabled and restoration behavior. Default to CSS; use a library when gestures, springs, or layout coordination justify its runtime and ownership complexity.

Self-check

  • [ ] Properties are compositor-safe, or an intentional alternative has a target-device trace
  • [ ] Durations/easings are tokens (--dur-*/--ease-*); entrances ~200–300ms ease-out (custom curve, not linear)
  • [ ] prefers-reduced-motion path tested (motion off or cross-fade) — content never depends on it
  • [ ] Page reads complete with JS disabled, delayed initialization, and bfcache restore;

pending markers are added only to offscreen elements after observer ownership and cleared on pageshow

  • [ ] Rapid repeat, cancellation, stale completion, and navigation converge on the

current usable state without stale focus, status, or layers

  • [ ] No scroll-jacking or uncontrolled loops; flashing stays below the safety threshold
  • [ ] Evidence names the tokens, settled state, reduced equivalent, and replay result

Contract (generated)

Canonical detail: [contract.json](contract.json).

  • Route: An interface needs purposeful transition, feedback, choreography, or reduced-motion behavior.; avoid: The request is only static visual styling or decorative animation without an interaction purpose.
  • Exclude: Do not add motion without a user-facing purpose. (+2 in contract.json)
  • Stop / handoff: Stop when no purpose or interruption policy exists. (+1 in contract.json); receives [component-states, design-system-interview, deslop-ui, tasteroll] -> sends [a11y-pass, tastecheck-pass]
  • Output: purposeful motion choreography and token plan
  • Evidence: table_with_evidence with status, reason, remediation, evidence, provenance.

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.