본문으로 건너뛰기
cccskills
무료GitHub에 공개한국어 소개

ui-animation

버튼과 메뉴 등 화면의 애니메이션을 설계·구현·검토해 반응과 움직임을 다듬습니다. 녹화에서 속도 변화와 스프링 움직임을 분석하고 재현 코드와 구현 명세를 정리합니다.

원문원문 설명 보기

Implement, review, and measure UI motion. Reconstruct easing, springs and gestures from a recording using bundled frame extraction, tracking and curve-fitting tools when available.

AI 평가90점/ 100설치 방법 보기

이럴 때 유용합니다

  • 버튼과 메뉴에 움직임 추가
  • 녹화 속 화면 애니메이션 재현
  • 느린 반응과 끊김 원인 조사
  • 동작 줄이기 설정과 연속 조작 확인

한국어 소개

할 수 있는 일

버튼, 메뉴, 대화 상자, 드래그 조작의 움직임을 설계·구현·검토합니다. 움직임을 넣는 목적을 확인한 뒤 지속 시간, 속도 변화를 나타내는 이징, 스프링 움직임의 설정을 선택합니다. 참고 녹화에서 프레임을 추출하고 요소의 이동을 추적해 곡선을 맞춘 다음, 재현 코드와 구현 명세로 정리하는 절차도 제공합니다.

이럴 때 유용합니다

조작 반응이 느리거나 움직임이 어색할 때, 동작 도중 다시 조작하면 부자연스러워지는 문제를 조사할 때 유용합니다. 기존 프로젝트의 기술 구성을 사용하며, 동작 줄이기 설정과 터치 조작, 렌더링 부하도 확인합니다.

사용 예시

  • “이 메뉴를 연속으로 열고 닫아도 자연스럽게 움직이도록 해 주세요.”
  • “이 녹화를 분석해 애니메이션 재현 코드와 구현 명세를 정리해 주세요.”
  • “이 화면에서 움직임을 넣으면 좋을 곳을 제안해 주세요.”

주의 사항

녹화를 정밀하게 측정하려면 ffmpeg, ffprobe와 opencv-python, numpy, scipy를 사용할 수 있는 Python 환경이 필요합니다. 일반적인 움직임 구현에는 필수가 아닙니다. 보고할 때는 눈으로 추정한 값과 실제 측정값을 구분합니다.

이 소개문은 공개된 SKILL.md를 바탕으로 AI(OpenAI Codex)가 작성했습니다. 정확한 사양은 아래 원문을 확인하세요.

객관 평가

AI가 SKILL.md의 내용만을 근거로 4가지 관점에서 판정했습니다. 스타 수나 인기도는 판정에 넣지 않았습니다.

지시의 명확성언제 쓰고 무엇을 하는지 알 수 있는가
A양호화면 움직임의 설계·구현·검토와 녹화 측정을 대상으로 명시합니다.
절차의 구체성절차·입출력·예시가 구체적으로 적혀 있는가
A양호프레임 추출·추적·곡선 맞춤과 코드·구현 명세 출력을 제시합니다.
안전성전송·삭제·명령 실행 등을 명시하고 있는가
A양호구현을 호스트의 제작 단계로 제한하고 허용되지 않은 절차를 추가하지 않도록 명시합니다.
도입의 용이성필요한 도구나 API 키가 적고 적혀 있는가
B일부 부족정밀 측정용 FFmpeg와 Python 의존성은 제시하지만 설치 절차는 없습니다.

총점은 각 항목을 A=25점, B=15점, C=5점으로 더한 값입니다. 2026년 10월 20일 기준으로 AI(OpenAI Codex)가 판정했습니다. 참고용이므로 설치 전에 원문도 확인해 주세요.

평가가 다르다고 생각되면 재검토를 요청하기

어느 항목이 왜 다르다고 생각하는지 적어 주세요. 로그인은 필요 없습니다. SKILL.md와 대조해 평가를 다시 만들고 이곳에 반영합니다.

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

포함된 파일(24)

  • SKILL.md23.9 KB
  • LICENSE1.0 KB
  • references/choreography.md2.5 KB
  • references/clip-path-techniques.md2.9 KB
  • references/code-output.md4.2 KB
  • references/component-patterns.md9.0 KB
  • references/contextual-animations.md5.6 KB
  • references/curve-fitting.md4.6 KB
  • references/debugging-symptoms.md7.4 KB
  • references/decision-framework.md6.7 KB
  • references/gesture-drag.md11.6 KB
  • references/interface-sfx.md2.0 KB
  • references/measurement-guide.md4.1 KB
  • references/performance-deep-dive.md8.5 KB
  • references/review-format.md9.3 KB
  • references/scroll-animations.md7.1 KB
  • references/spring-animations.md6.7 KB
  • references/svg-animation.md5.4 KB
  • references/transition-recipes.md25.7 KB
  • references/vocabulary.md12.4 KB
  • scripts/extract_frames.py4.3 KB
  • scripts/fit_curves.py7.6 KB
  • scripts/track_motion.py7.6 KB
  • SOURCES.md867 B

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

UI Animation

Open Design execution context

Use this as a functional helper on the user's current interface or accepted brief. Keep the host's task route, current stage, tool availability, and output contract. Planning describes the motion; implementation happens only in the host's authoring stage. Do not add an extra review, recording, rendering, or approval phase when the host disallows it. Reuse the project's existing stack and motion tokens. Companion skills are optional: use them only if installed; otherwise apply the relevant guidance here without inventing a tool invocation. Report measurements only when actually observed; mark visual estimates and checks that could not be performed explicitly.

  • IS: designing, implementing, reviewing, debugging UI motion (springs, gestures, drag, easing, CSS transitions, keyframes, Motion), sweeping an interface for the moments that would genuinely benefit from motion, measuring motion from a recording (extract frames, track, fit curves) to emit code plus a handoff spec, naming a described motion effect (reverse-lookup vocabulary), and gating sparse interface sound.
  • IS NOT: choosing overall visual direction, palettes, or typography (use ui-design Direction mode), auditing a whole page's UI quality (use ui-design Audit mode), or named text-effect specs (use the external animate-text skill where installed).

Reference files

FileRead when
references/decision-framework.mdDefault: deciding whether/why to animate, picking easing character; also the Discovery sweep ("where should this animate")
references/spring-animations.mdSpring physics, Motion useSpring, configuring spring params, Apple damping/response values, asymmetric open/close character, interruption mechanics
references/component-patterns.mdButtons, toasts, crossfades, list stagger and removal, hover, step forms, Motion layout morphs and auto height, 3D
references/clip-path-techniques.mdclip-path for reveals, tabs, hold-to-delete, comparison sliders
references/gesture-drag.mdDrag, swipe-to-dismiss, momentum, pointer capture, velocity handoff, momentum projection, rotary/knob drag, detents, carousel touch-action
references/scroll-animations.mdScroll-triggered reveals, scrubbed/scroll-driven animation (animation-timeline, useScroll), parallax, sticky scrollytelling, and when a scroll animation shouldn't exist
references/performance-deep-dive.mdJank, CSS vs JS, WAAPI, CSS variables trap, Framer Motion caveats
references/debugging-symptoms.mdAn animation feels off and the cause isn't named: symptom-indexed tables for sluggish, robotic, cheap, jumpy, and misfiring motion
references/svg-animation.mdAnimating vector art: line drawing (stroke-dashoffset), SVG transform-origin traps, path morphing, shakes, ambient life
references/review-format.mdReviewing animation code: ten standards (each with flag-on-sight triggers), Before/After/Why table, Block/Approve verdict
references/contextual-animations.mdContextual icon swaps, word-level stagger entrances, peripheral de-emphasis, fixed-offset exits
references/transition-recipes.mdInstalling a CSS transition: container morph, card resize, badge, dropdown and tooltip (with library origin variables), modal (with @starting-style entry), panel and drawer, page slide, icon swap, number pop-in, odometer roll, text swap, success, avatar hover, error shake
references/measurement-guide.mdReverse-engineer: what to measure, eye vs script, reading metrics.json, choosing an ROI
references/curve-fitting.mdReverse-engineer: reading fit_curves.py output, spring vs bezier, judging fit error, asymmetric open/close
references/code-output.mdReverse-engineer: emitting code for CSS, Motion/Framer Motion, SwiftUI, React Native, UIKit
references/choreography.mdReverse-engineer: multi-element/multi-phase motion: staggers, blur-before-move, per-edge settling
references/vocabulary.mdNaming a motion effect the user describes vaguely ("what's it called when...")
references/interface-sfx.mdClick sounds, interface audio, UI SFX, haptic-plus-sound, or "why is the web afraid of sound"

Core rules

  • Animate for feedback, orientation, continuity, or deliberate delight. If it's just "it looks cool" and the user sees it often, don't.
  • Keep keyboard focus and repeated navigation immediate. A state transition may animate if focus and task completion do not wait for it.
  • Prefer CSS transitions for interruptible UI: keyframes restart from zero on interruption, transitions retarget. Use keyframes only for predetermined sequences.
  • Implementation priority: CSS transitions > WAAPI > CSS keyframes > JS (requestAnimationFrame); under load CSS stays smooth while JS drops frames.
  • Asymmetric timing: occasional interactions can enter slightly slower, exit fast. High-frequency ephemeral UI (hover highlights, popovers, panel toggles) inverts this: enter instantly (0ms), exit with a brief fade (100-150ms) so the action feels immediate.
  • Tappable controls press on :active at 0ms and set touch-action: manipulation.
  • Use @starting-style for DOM entry; fall back to a data-mounted attribute where unsupported.
  • A small filter: blur(2px) hides rough crossfades between swapped content.

Motion design principles

  • Continuity over teleportation. Elements visible in both states transition in place; expand from where elements sit rather than fading in a new instance. Never duplicate a persistent element or hard-cut between views that share components; hard cuts lose spatial context.
  • Directional motion matches position. Tab and carousel transitions animate in the direction matching spatial layout (left-to-right forward, right-to-left back).
  • Emerge from the trigger. Overlays, trays, and panels animate outward from the element that opened them; generic centre-screen entrances break spatial orientation. Better still where the shapes allow: let the trigger become the surface (see the container-morph recipe).
  • Confirm in place, not in a corner. An action's result belongs on the control that caused it: the button becomes "Copied", holds, and reverts. A toast in the far corner makes the user's eye leave the thing they just touched to find out whether it worked. Reserve corner toasts for results with no on-screen origin (a background job finishing, an incoming message).
  • Animate paired states together. If open animates, close animates. If hover has motion, focus and pressed states get equivalent feedback. Do not polish only one half of a repeated interaction.
  • Delight scales inversely with frequency. Rarer interactions get more personality; high-frequency actions must be invisible.
  • Motion enhances perceived speed. Smooth transitions feel faster than hard cuts, even at identical load times.

What to animate

  • Movement: transform and opacity only; they skip layout and paint.
  • State feedback: color, background-color, and opacity are acceptable.
  • Never animate layout properties (width, height, top, left); they trigger layout recalc every frame. (Exception: a deliberate container tween, see the card-resize and container-morph recipes.)
  • Never use transition: all; it animates unintended properties and silently adopts future ones. List them explicitly.
  • Avoid filter animation for core interactions; if unavoidable keep blur ≤ 20px (heavy blur is expensive, especially in Safari).
  • SVG: apply transforms on a <g> wrapper with transform-box: fill-box; transform-origin: center; without it they rotate/scale around the canvas origin. Line drawing, path morphing, and the Motion SVG origin override live in references/svg-animation.md.
  • transform: scale() also scales children (icons, text, borders scale proportionally), unlike width/height: a feature for press feedback, but account for it when an inner element must stay fixed-size.
  • Disable transitions during theme switches ([data-theme-switching] * { transition: none !important }), or every themed property animates at once. Force a reflow (void document.body.offsetHeight) after the flip and remove the override on the next frame, or use next-themes disableTransitionOnChange.

Easing defaults

ElementDurationEasing
Button press feedback100-160mscubic-bezier(0.22, 1, 0.36, 1)
Tooltips, small popovers125-200msease-out or enter curve
Dropdowns, selects150-250mscubic-bezier(0.22, 1, 0.36, 1)
Modals, drawers200-350mscubic-bezier(0.22, 1, 0.36, 1)
Move/slide on screen200-300mscubic-bezier(0.25, 1, 0.5, 1)
Page transitions250-400msenter or move curve
Hover (colour/opacity), one control200msease
Hover (transform/scale)100-150msenter curve
Illustrative/marketingUp to 1000msSpring or custom

Keep routine UI under 300ms; scale duration with distance (a full-screen slide can exceed 300ms, a 6px tooltip shift stays under 150ms).

Named curves

  • Enter: cubic-bezier(0.22, 1, 0.36, 1) for entrances and transform-based hover
  • Move: cubic-bezier(0.25, 1, 0.5, 1) for slides, drawers, panels
  • Drawer (iOS-like): cubic-bezier(0.32, 0.72, 0, 1) (extremely steep start; the reason its 500ms doesn't read as slow)
  • Expo out: cubic-bezier(0.19, 1, 0.22, 1) for dramatic reveals, card hovers, text reveals
  • Press: cubic-bezier(0.25, 0.46, 0.45, 0.94) for button press feedback
  • On-screen move: cubic-bezier(0.645, 0.045, 0.355, 1) for back-and-forth movement that stays on screen

Avoid ease-in for UI: it starts slow, so the element lags the user's action and feels sluggish. Prefer custom curves from easing.dev over built-in ease/ease-out, whose gentle acceleration reads soft, not decisive.

Transition decision rules

Match the UI element first, then pick the recipe from references/transition-recipes.md:

UI patternRecipe
Trigger + floating dot/countNotification badge
Trigger grows into the surface it opensContainer morph
Trigger + anchored surfaceMenu dropdown
Centred surface on top of pageModal dialog
Panel sliding into existing containerPanel reveal
List ↔ detail or wizard stepsPage side-by-side slides
Element dimension changesCard resize
Text updating in placeText state swap
Two icons in same slotIcon swap
Number arriving on its ownNumber pop-in
Number the user is drivingOdometer digit roll
Confirmation / success momentSuccess celebration
Hovering item in horizontal stackAvatar group hover
Form validation errorError state shake

Prefer lower-overhead transitions (CSS-only) unless the design requires JS orchestration.

Spatial and sequencing

  • Popover transform-origin at the trigger (modals stay center), dialog/menu entrances from scale(0.9-0.96) not scale(0) (small popovers at the low end, full dialogs at the high end: a large surface already travels far in absolute pixels), and 30-50ms staggers (total under 300ms, most important element leading). Full rules and code in references/transition-recipes.md and references/contextual-animations.md.
  • Paired elements rule: elements that animate together (modal + overlay, tooltip + arrow, FAB + label) must share easing and duration. Mismatched timing is the usual cause of "something feels off".

Accessibility

  • Gate hover (motion and paint) behind @media (hover: hover) and (pointer: fine), or touch devices replay hover on tap. Inspect the generated CSS before adding a gate; Tailwind v4 already wraps hover: in @media (hover: hover).
  • During direct manipulation, keep the element locked to the pointer with no easing; add easing only after release.
  • Optional interface SFX: sparse, gesture-unlocked, additive confirmation only. See references/interface-sfx.md.

Performance

  • Pause looping animations off-screen with IntersectionObserver; they burn GPU even when invisible.
  • Toggle will-change only during heavy motion and only for transform/opacity; remove it after. Each promotion costs compositor memory; permanent promotion across many elements is worse than none.
  • Do not animate drag via CSS variables on a container; every update recalculates styles for all children. Set transform directly on the moving element.
  • Motion x/y values are the default for axis movement and drag (they bypass React re-renders). Use a full transform string when one owner must combine multiple transform functions, interop with non-Motion code, or survive a busy main thread: the shorthands run on requestAnimationFrame and drop frames when motion coincides with navigation, data loading, or hydration; CSS/WAAPI stay smooth there.
  • Motion that janks only sometimes (on open, during navigation, while data lands) is usually a long task sharing the tick, not a costly animation. Don't start an animation and expensive work in the same tick: start the motion, let a frame land, then do the work, or defer it to transitionend.
  • See references/performance-deep-dive.md for WAAPI, compositing layers, long tasks during animation, and the CSS vs JS comparison table.

Anti-patterns

High-signal failures not covered above:

  • Animating on mount without a user trigger: unexpected motion disorients; the user did nothing to cause it.
  • Hard stops on drag boundaries feel broken; apply friction/damping so movement diminishes past it (see gesture-drag reference).
  • Animating both a container and staggering its children: pick one entrance per container. If the panel slides in, its content should already be visible on arrival.
  • Tooltip animation after the first is open: subsequent tooltips in the group open instantly, or the toolbar feels laggy.
  • Scroll-revealing product UI, above-the-fold content, or every section of a page: scroll reveals belong to a few chosen moments on marketing surfaces, run once, and never re-animate on scroll-up (see references/scroll-animations.md).
  • Easing or duration on scrubbed (scroll-driven) motion: scroll position is the clock, so any curve or duration makes it lag the scrollbar. linear and no duration is correct there, and only there.
  • Reduced motion handled only in CSS: Motion's JS-driven animations ignore a @media (prefers-reduced-motion) block, so the CSS gate passes review while spatial travel still plays. Wrap the app in <MotionConfig reducedMotion="user"> or branch on useReducedMotion(). The opposite overcorrection, a global * { transition: none !important } under reduce, also strips the opacity and colour feedback that reduced motion keeps.
  • Installing framer-motion for new work: the package is now motion and React imports come from motion/react. The old package still resolves, so a mixed codebase compiles while shipping two copies of the library.

Workflow

Copy and track:

Animation progress:
- [ ] Step 1: Decide whether the interaction should animate
- [ ] Step 2: Choose purpose, easing, and duration
- [ ] Step 3: Pick the implementation style
- [ ] Step 4: Load the relevant component or technique reference
- [ ] Step 5: Validate timing, interruption, and device behavior
  1. Answer the four questions in references/decision-framework.md: animate? purpose? easing? speed?
  2. Pick duration from the easing defaults table above. If the value is contested, dial it live in the DevTools bezier editor (Chrome or Firefox; Safari has none) against the real component, then paste the literal into source beside the other timing constants: a DevTools edit dies on navigation.
  3. Choose implementation: CSS transition > WAAPI > spring > keyframe > JS.
  4. Load the reference for your component or technique.
  5. When reviewing, apply the strict posture in references/review-format.md: measure against the ten standards, output the Before/After/Why table, then a tiered verdict ending in a Block/Approve decision.

Validation

Produce evidence for each check (DevTools observations, not "looks fine"):

  • Grep the diff for layout property transitions (width, height, top, left) and transition: all.
  • Retoggle components rapidly; confirm transitions retarget instead of restarting from zero.
  • Slow to 10% in the DevTools Animations panel to catch timing and transform-origin issues invisible at full speed.
  • Confirm will-change is toggled around animations, not permanently set, and looping animations pause off-screen.
  • Test touch interactions on real devices; simulators under-report gesture and hover-on-tap issues.
  • Honor prefers-reduced-motion: replace spatial travel with immediate state changes or restrained fades. Pause looping decorations with animation-play-state: paused (do not yank them with display: none). Keep explicit user-triggered feedback. Exercise the same task in that mode.

Discovery workflow

For "where should this animate", run the Discovery sweep in references/decision-framework.md. Report opportunities supported by purpose and usage frequency, plus the rejected ones. Implement a suggestion only when implementation is in scope.

Reverse-engineer workflow

Use this branch to measure an existing animation from a screen recording, then emit code and a handoff spec that reproduce it. The scripts under scripts/ are the canonical, deterministic path; run them rather than reconstructing their logic.

Resolve every scripts/ command below relative to the installed skill directory, not the application working directory.

Dependencies: Check for ffmpeg / ffprobe and a Python environment with opencv-python, numpy, and scipy before running the measurement scripts. Do not assume these are installed by Open Design. Reuse an available isolated Python environment; any dependency setup must respect the host's authorization. If only ffmpeg is available, extract frames and label the analysis as a visual estimate. If media inspection is unavailable, state the missing capability; never claim measured timing, fitted curves, or a recording comparison. Use a fresh task-local output directory for each extraction so old frames cannot contaminate the contact sheet. The scripts below are optional measurement tools, not a requirement for ordinary interface-animation implementation.

Reverse-engineer progress:
- [ ] Step 1: Extract frames + contact sheet (per direction if open differs from close)
- [ ] Step 2: Vision pass: identify element, effects, phases
- [ ] Step 3: Decide precision (eye-only vs scripted)
- [ ] Step 4: Track motion and fit curves (if escalating)
- [ ] Step 5: Annotate choreography (delays, asymmetry)
- [ ] Step 6: Emit code for the target(s)
- [ ] Step 7: Validate against the recording
  1. Extract. Run python3 scripts/extract_frames.py <video> <outdir>. Trim to just the transition with --start/--duration; if the interaction has both an open and a close, trim two windows and run the pipeline once per direction (they are almost never mirror images). Match --fps to the source (probe with ffprobe), never sampling above the source rate. Open contact_sheet.png first.
  2. Vision pass. Name the element(s) that move, every effect (translate, scale often anisotropic, opacity, blur, corner radius, shadow, color), and the phases, noting which property leads and lags. Use the checklist in references/measurement-guide.md.
  3. Decide precision. Simple fade or linear slide: read timing off the contact sheet, skip to step 5. Elastic, springy, or multi-property motion: escalate to step 4 (eyeballing a spring is unreliable).
  4. Track and fit. Run python3 scripts/track_motion.py <outdir> for metrics.json (pass --bbox X,Y,W,H to isolate one element), then python3 scripts/fit_curves.py <outdir>/metrics.json for spring params, cubic-bezier, and per-property fit error. Pass the same --fps you extracted with. Read references/curve-fitting.md to pick the model; high error on both means multi-phase motion (split and fit each segment).
  5. Annotate. Load references/choreography.md. Build the timing-offset table (when each property starts and settles); lead/lag gaps and over-stretch carry more feel than any single curve.
  6. Emit. Substitute fitted parameters into the templates in references/code-output.md for the target. Keep movement on transform/opacity. Emit two transitions when open and close differ, plus the consolidated handoff spec so it can be implemented without the video.
  7. Validate. Re-derive: play the emitted animation, screen-record it, run it back through extract_frames.py, and compare contact sheets side by side. Slow to 0.1x to confirm phase order and over-stretch survive. Confirm the code only animates transform, opacity, and filter.

Reverse-engineer gotchas:

  • fit_curves.py defaults to --fps 30: extract at 60 but fit at the default and every duration_ms doubles while fitted stiffness drops to a quarter. Always pass the extraction fps to the fit.
  • Sampling above the source rate duplicates frames: a 24 fps GIF extracted at 60 inflates fit error with plateaued runs in metrics.json. Probe and match the source rate.
  • Screen recordings drop frames and iOS/QuickTime captures are variable-frame-rate; consecutive identical rows are duplicated frames, not a pause. Re-record at a steadier rate if plateaus dominate.
  • Measure open and close as separate clips and report two curves; never fit one and reuse it reversed (see references/choreography.md). Treat a fit error above 0.08 as suspect.

Related skills

  • product-design: which states exist, what an action affects, and whether it is reversible. Route here first when a gesture replaces a control, since swipe-to-delete and hold-to-confirm change what the user can do before they change how it moves.
  • ui-design Direction mode: visual direction, palettes, typography; settle the visual system before tuning motion.
  • ui-design Audit mode: page/feature-level UI quality audit. Motion craft and fixes belong here.
  • Optional external animate-text skill where installed: curated named text effects (typewriter, line reveal, stagger builds) with exact JSON specs.

Upstream evaluation fixtures are not part of this runtime bundle. Source and adaptation details are recorded in SOURCES.md.

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

8-bit-orbit-video-template

무료요약 있음AI 평가 90점

복고풍 픽셀 스타일의 세 장면 영상을 Hyperframes용 HTML로 만듭니다. 제목과 색상을 바꾸고 장면 전환과 움직임을 갖춘 구성으로 완성합니다.

  • 픽셀 스타일의 소개 영상을 만들 때
  • 세 장면 영상의 내용을 교체할 때
  • HTML에서 장면 전환을 확인할 때
nexu-io/open-design10.3만2026년 10월 20일 업데이트

ad-creative

무료요약 있음AI 평가 80점

소셜 미디어 광고와 검색 광고의 제목, 설명, 본문을 작성하고 표현을 반복해서 수정합니다. 광고 문구 후보를 준비하고 개선안을 검토할 때 활용합니다.

  • 소셜 미디어 광고 제목을 작성합니다
  • 검색 광고 설명을 준비합니다
  • 광고 본문 표현을 검토합니다
nexu-io/open-design10.3만2026년 10월 20일 업데이트

after-hours-editorial-template

무료요약 있음AI 평가 80점

어두운 배경과 세리프 글꼴로 패션 잡지 같은 세 페이지 동적 연출을 만듭니다. 글자 단계 표시와 장면 전환을 포함한 단일 HTML 파일로 출력합니다.

  • 패션 잡지 분위기의 움직이는 소개 제작
  • 짧은 이야기를 세 페이지로 표현
  • 기존 브랜드 표현을 어두운 지면에 적용
nexu-io/open-design10.3만2026년 10월 20일 업데이트

agent-browser

무료요약 있음AI 평가 100점

브라우저에서 페이지를 살펴보고 클릭, 입력, 화면 캡처, 정보 추출을 수행합니다. OpenDesign의 로컬 미리보기를 중심으로 웹 앱의 동작과 품질을 확인합니다.

  • OpenDesign 미리보기를 확인합니다
  • 웹 앱의 클릭과 입력을 테스트합니다
  • 페이지나 요소의 화면을 캡처합니다
nexu-io/open-design10.3만2026년 10월 20일 업데이트

ai-music-album

무료요약 있음AI 평가 80점

AI 음악 앨범의 콘셉트 구상부터 가사 초안, 곡 순서 검토, 내보내기까지 다룹니다. 독립 제작 실험과 브랜드 음악 기획에 활용합니다.

  • 독립 제작 앨범 기획
  • 앨범 주제에 맞는 가사 초안 작성
  • 수록곡 순서 검토
nexu-io/open-design10.3만2026년 10월 20일 업데이트

algorithmic-art

무료요약 있음AI 평가 80점

p5.js에서 계산 규칙과 난수로 생성 예술을 만듭니다. 난수의 초깃값을 고정해 같은 그림을 재현하며, 포스터와 동적인 느낌의 정지 이미지, 구도 시안 제작에 활용합니다.

  • 규칙을 바탕으로 포스터를 제작합니다
  • 움직임이 느껴지는 정지 이미지를 만듭니다
  • 예술 작품의 구도를 시험합니다
nexu-io/open-design10.3만2026년 10월 20일 업데이트

nexu-io의 스킬 모두 보기

이 스킬의 문제 신고