bennu: Skill for Claude Code

.claude/skills/motion/SKILL.md

motion is a skill for Claude Code from Lengros/bennu. It costs 227 tokens per session (4,486 once invoked), scanned A, original, MIT.

A craft guide for deciding how interface elements should move, including whether they should animate and how their timing and movement should feel.

In plain words
What is it for?
Use it when building or polishing modals, drawers, toasts, dropdowns, and other web interactions with animation.
Why use it?
It helps avoid generic or awkward motion, such as unsuitable easing, duration, origin, or movement that cannot be interrupted cleanly.

Skill for Claude Code

Written for Claude Code: installed under .claude/.

This is Lengros/bennu's own configuration. It tells Claude Code how to work on bennu itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything bennu configures →

Reuse

Borrowing it

Nothing to install: this file belongs to Lengros/bennu. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/Lengros/bennu/main/.claude/skills/motion/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/Lengros/bennu

Made for: Claude Code.

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

agentmods badge for motion

README.md
[![agentmods](https://agentmods.dev/badge/skills/lengros/bennu/motion/github.svg)](https://agentmods.dev/skills/lengros/bennu/motion)
Your own site
<a href="https://agentmods.dev/skills/lengros/bennu/motion"><img src="https://agentmods.dev/badge/skills/lengros/bennu/motion/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for motion

Your own site · 80×15
<a href="https://agentmods.dev/skills/lengros/bennu/motion"><img src="https://agentmods.dev/badge/skills/lengros/bennu/motion.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 227 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 4,486 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00227 $0.04486
Opus 5.5 $0.00091 $0.01794
Sonnet 5.5 $0.00045 $0.00897
Haiku 4.5 $0.00023 $0.00449

Measured 2mo ago against content hash 545652263baf, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

motion 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 2mo 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.

.claude/skills/motion/SKILL.md · 387 lines

How it starts

The opening of the file, as written. The whole thing — 387 lines — stays where its author put it; the contents beside it link to each section on GitHub.

/motion — how UI should move

This skill owns the layer none of the other design skills cover: how an element should move once it's on screen. /design commits a static look, /prototype wires a clickable flow, /diagram draws structure — none of them tell you whether a dropdown should use ease-out or a custom curve, how long a drawer should take, or why an entrance from scale(0) looks broken. That motion-craft gap is what this fills.

Core principle: Good motion is mostly subtraction and exact values, not flourish. The agent's default failure isn't "too little animation" — it's animating the wrong things, with weak built-in easings, wrong durations, and wrong origins. The aggregate of small invisible correctness (right easing, right timing, right origin, interruptible, GPU-only) is what makes an interface feel expensive. The catalog below is that aggregate.

Attribution. Adapted from Emil Kowalski's design-engineering philosophy (animations.dev) — ex-Vercel/Linear, author of Sonner and Vaul. Ported into Bennu 2026-06-20.

Scope in Bennu — which advice applies where:

  • /prototype (vanilla, no framework): the CSS sections apply directly — custom easing variables, transition vs @keyframes, @starting-style, clip-path, WAAPI, transforms.
  • Production web (a React app): also use the React / Framer Motion (Motion) and Radix/Base-UI sections — useSpring, hardware-acceleration caveat, prefers-reduced-motion hooks.
  • Pairs with /review-motion: this skill is the knowledge; /review-motion is the binding reviewer that checks code against it.

Core philosophy

Taste is trained, not innate

Good taste is a trained instinct: the ability to see what elevates and recognize what cheapens. When building UI, don't just make it work — study why the best interfaces feel the way they do. Reverse-engineer animations, inspect interactions, be curious.

Unseen details compound

Most details users never consciously notice — that is the point. When something functions exactly as assumed, they proceed without a second thought. Every rule below exists because the aggregate of invisible correctness creates interfaces people love without knowing why.

Read the full file on GitHub · 387 lines

Changes

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.

  1. 2mo ago First seen · 387 lines · 0 tokens per session scan A 545652263baf

Subscribe to this mod's changes

motion is a skill published in the GitHub repository Lengros/bennu (2 stars, last pushed 3mo ago), licensed MIT. It adds 227 tokens to every session and 4,486 once invoked, about $0.0009 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.