transitional-interfaces
Skill1 starsChanged 2 months agoMITView on GitHub
Design structural continuity between two defined interface states when identity, containment, position, or set membership must survive the change. Use for an actual state-transition design problem. Do not use for general navigation architecture, motion curves or animation implementation, isolated visual polish, or static screens whose relationship is already clear.
In this repository39 other files it gives its agents.
- apple-native-motionSkill
- apple-ui-copySkill
- audit-macos-appSkill
- brain-wikiSkill
- catch-me-upSkill
- checkpointSkill
- claude-md-coachSkill
- claudeSkill
- codexSkill
- crash-debuggingSkill
- cut-memorySkill
- explaining-problemsSkill
- file-batch-safetySkill
- handoffSkill
- heads-downSkill
- hopper-mcpSkill
- icon-designSkill
- interface-integritySkill
- ios-defaultsSkill
- kitSkill
- macos-defaultsSkill
- mock-and-pickSkill
- obsess-heroSkill
- obsessSkill
- offline-archiveSkill
- os-workaroundsSkill
- paper-mcpSkill
- predictionSkill
- second-loopSkill
- session-auditSkill
- ship-macosSkill
- show-meSkill
- slice-and-reviewSkill
- slow-modeSkill
- spatial-interfacesSkill
- standupSkill
- synthetic-fixturesSkill
- web-design-defaultsSkill
- window-captureSkill
The file
We split this skill into the rules it gives an agent
9 rules. About 0 are common, 9 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈9
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 12
Start with the truth the connection must carry:
- Distinctive: line 23
If the states have no defensible relationship, motion that fabricates one is worse than a cut: the user spends attention decoding a …
- Distinctive: line 27
Push/navigate: when the destination is a distinct place reachable through other routes.
- Distinctive: line 28
Expand in place: when the detail belongs to the selected item and return to the set is the likely next move.
- Distinctive: line 29
Sheet/popover: when the task concerns the item but its origin should remain visible and cheaply recoverable.
- Distinctive: line 35
Do not gate response on a network round trip.
- Distinctive: line 36
Place optimistic content only where it can remain, or avoid promising placement before the server decides order.
- Distinctive: line 44
Use the project's existing primitives first: platform transitions, layout animation, shared-element APIs, or a measured FLIP implementation.
- Distinctive: line 46
Do not specify milliseconds here.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Transitional interfaces
This skill decides one edge on the map from spatial-interfaces. A transition is not decoration applied after a state change; it is the channel that tells the user how the two states are related. Sometimes deciding the transition changes what the screens themselves must be. This skill does not choose curves, durations, or library syntax.
Name the relationship
Start with the truth the connection must carry:
| Relationship | Structural choice |
| same object, more detail | preserve identity; expand or transform its container |
| container and contents | show entering/leaving that container |
| peers on an ordered axis | carry direction and position among peers |
| member joining/leaving a set | show both membership and the set making/closing room |
| different contexts with no spatial relation | fade through or cut without inventing continuity |
| genuinely unrelated states | a cut may be correct |
If the states have no defensible relationship, motion that fabricates one is worse than a cut: the user spends attention decoding a connection that does not exist. If they are related and identity vanishes in one frame, the connection is underspecified.
Choose the structural form
- Push/navigate when the destination is a distinct place reachable through other routes.
- Expand in place when the detail belongs to the selected item and return to the set is the likely next move.
- Sheet/popover when the task concerns the item but its origin should remain visible and cheaply recoverable.
For insertion, let the set make room and the member occupy it. For removal, let the member leave and then close the gap. These are two events—the set changing shape and the member arriving or leaving. They may overlap, but collapsing them into one simultaneous blur discards the half that explains the other and makes a membership change look like a re-sort.
Preserve truth under real conditions
- Do not gate response on a network round trip. Reconcile optimistic state explicitly; failure should not masquerade as user removal.
- Place optimistic content only where it can remain, or avoid promising placement before the server decides order.
- Match skeleton geometry to the content that replaces it.
- Reduced Motion keeps identity and containment in the resting states, using a calmer transition such as a crossfade.
- Deep links, restoration, missed motion, and time away mean the destination still needs orientation and an exit in a screenshot. Continuity may replace redundant chrome, never necessary chrome.
- Focus, accessibility announcements, and input ownership move with the visual state; continuity that strands keyboard or screen-reader users is not continuity.
Implement after the decision
Use the project's existing primitives first: platform transitions, layout animation, shared-element APIs, or a measured FLIP implementation. Check current support when choosing a web or native API; browser versions and framework capability belong in implementation research, not this stable skill.
Do not specify milliseconds here. Hand curve, spring, and reduced-motion implementation to the platform motion guidance, then verify the rendered interaction can be interrupted and does not delay input.
The current failure mode is not too little animation everywhere; it is motion everywhere, each piece defensible alone and exhausting in aggregate. Ask the functional question: does this transition communicate a true relationship? If not, it is embellishment on the critical path, and a cut is often more honest.
Output
State the two endpoints, their relationship, chosen structural form, identity/containment cue, enter and exit paths, arbitrary-entry fallback, reduced-motion equivalent, focus/accessibility handoff, data-latency behavior, and the implementation evidence still needed.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

