Superset 사용 현황을 살펴보고 아직 쓰지 않는 기능 중 업무 방식에 맞는 항목을 제안합니다. 각 기능을 설명하고, 사용자가 고른 예약 실행 에이전트나 병렬 작업 공간, 공유 작업 등을 설정합니다.
- 사용하지 않는 Superset 기능 찾기
- 에이전트 예약 실행 설정
- 여러 작업 공간에서 병렬 작업
실제 모바일 앱 화면 녹화를 무음 데모 영상으로 편집합니다. 스마트폰 프레임, 제목 카드, 데스크톱 장면, 엔드 카드를 넣을 수 있으며 세로형·가로형·정사각형 형식으로 기능 소개나 앱 출시용 짧은 영상을 만들 수 있습니다.
Turn mobile screen recordings into a configurable demo video with phone footage, title cards, cutaways, and an end card. Use when asked to edit a mobile feature demo or launch clip. Use mobile-demo-record to capture real app footage first.
실행 점수 미검증
설치 방법 보기실제 모바일 앱 화면 녹화를 바탕으로 기능 소개용 무음 영상을 만듭니다. 스마트폰 프레임 안의 영상, 설명용 제목 카드, 데스크톱 화면 전환, 엔드 카드를 조합할 수 있습니다. JSON 구성 파일에서 자를 구간, 재생 속도, 배경색, 페이드 효과, 출력 크기를 지정합니다. 세로형, 가로형, 정사각형 형식을 지원하며 검토용 프레임 모음 이미지도 만들 수 있습니다.
앱 조작과 결과를 짧게 보여주거나 새 기능 공개에 맞춰 소개 영상을 준비할 때 적합합니다. 기다리는 구간을 줄이면서 조작 과정과 문구를 읽기 편하고 자연스러운 속도로 정리할 수 있습니다.
Python 3.10 이상, Pillow 10.1 이상, ffprobe와 libx264가 포함된 ffmpeg가 필요합니다. 영상에서 음성이 제거되므로 내레이션이나 앱 소리가 필요하면 다른 편집 절차를 사용해야 합니다. mobile-demo-record로 녹화하려면 macOS가 필요하지만 기존 영상 편집에는 필요하지 않습니다. 기존 출력 파일은 덮어씁니다.
이 소개문은 공개된 SKILL.md를 바탕으로 AI(OpenAI Codex)가 작성했습니다. 정확한 사양은 아래 원문을 확인하세요.
AI가 SKILL.md의 내용에서 주의가 필요한 작업과 도입 전제를 확인했습니다. 점수는 실제로 실행한 결과(실행 검증)만으로 매깁니다.
점수에는 넣지 않았습니다. 2026년 10월 29일 기준으로 AI(OpenAI Codex)가 판정했습니다. 참고용이므로 설치 전에 원문도 확인해 주세요.
설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.
Use this skill to edit a new demo from real app recordings. The bundled renderer produces silent video with configurable dimensions, frame rate, framing, and fades. Defaults are 1080x1920 at 30fps, with a phone frame on a warm paper backdrop. A useful default is one feature in 20 to 40 seconds; adapt the story and pacing to the request.
Use Python 3.10+, Pillow 10.1+, and ffmpeg (including ffprobe and libx264). Recording with
mobile-demo-record needs macOS; editing existing footage does not. Font discovery tries
macOS system fonts, then Linux DejaVu fonts, then Pillow’s fallback. Specify font files for
consistent typography across machines. Install Pillow in a scratch virtual environment:
python3 -m venv <scratch>/film-venv
<scratch>/film-venv/bin/pip install "Pillow>=10.1"
Use that environment's Python for the commands below. Commands assume the repo root as working directory. Output directories are created automatically. Existing outputs are overwritten; source assets and the composition spec cannot be used as the film output.
mobile-demo-record. Use demo data and a separate take
for each beat. If the story needs an agent doing work, use a working host and agent.
Capture desktop cutaways with cdp-verification when needed.python3 .agents/skills/mobile-demo-film/scripts/film.py normalize raw/01.mov cfr/01.mp4.
Choose start/end timestamps from this constant-rate copy. Add --fps 24 for a 24fps
project (the default is 30).python3 .agents/skills/mobile-demo-film/scripts/film.py compose <scratch>/film.json.python3 .agents/skills/mobile-demo-film/scripts/film.py sheet <scratch>/film.mp4 <scratch>/sheet.jpg.
Add --frames 12 --height 480 to customize sampling and thumbnail height.
By default, the sheet samples eight frames; inspect transitions and typing in playback too. Check
for clipped text, unreadable UI, private information, spinners, and unintended clock changes.Keep typing and reading at a natural pace. Trim or speed up waiting, and make time jumps clear. Use title cards to explain missing context rather than implying an unrecorded action happened in the app. Framing, masks, and the simulated Dynamic Island are presentation layers; do not fabricate app state inside the recording.
This example combines phone footage, a desktop cutaway, a result, and an end card. Replace its paths, cut points, and text for the feature being demonstrated.
{
"output": "film.mp4",
"backdrop": "#F2F0EB",
"segments": [
{ "type": "phone", "src": "cfr/01.mp4", "start": 1, "end": 7, "label": "Start on your phone" },
{ "type": "card", "eyebrow": "Meanwhile", "title": "The agent works on your Mac.",
"image": "shots/desktop.png", "duration": 4 },
{ "type": "phone", "src": "cfr/02.mp4", "start": 0, "end": 10 },
{ "type": "end", "wordmark": "Paradev", "caption": "Review the result anywhere", "duration": 2.2 }
]
}
Media, output, and optional titleFont/sansFont paths resolve relative to the spec file;
absolute paths also work. Top-level backdrop, bezel, ink, and muted accept #RRGGBB.
Add a render object to the spec. Existing specs without it keep the portrait defaults.
For a landscape demo:
"render": {
"width": 1920,
"height": 1080,
"fps": 24,
"crf": 18,
"fade": 0.2,
"phone_width": 0.45,
"phone_height": 0.8,
"bezel_width": 0.012,
"corner_radius": 0.1
}
For a square clip, use "width": 1080, "height": 1080. Cards and typography scale with the
canvas; the centered phone fits both width and height limits while preserving source aspect
ratio. Use raw for unframed desktop footage.
| Render option | Meaning and default |
|---|---|
width, height | Canvas pixels; even integers at least 64. Defaults: 1080, 1920 |
fps | Integer 1–120; default 30 |
crf | Final H.264 quality, 0–51; lower means higher quality/larger files. Default 18 |
fade | Fade duration in seconds; 0 disables fades. Default 0.35; capped at half each framed/still segment’s duration; raw clips have no fade |
phone_width, phone_height | Maximum screen width/height as fractions of canvas dimensions, greater than 0 and at most 0.95. Defaults: 0.615, 0.82 |
bezel_width | Border thickness as a fraction of the smaller canvas dimension, 0–0.25. Default 0.015 |
corner_radius | Screen corner radius as a fraction of screen width, 0–0.25. Default 0.137 |
| Segment | Fields |
|---|---|
phone | src, optional start/end in seconds, speed (default 1), label, island (false disables the overlay) |
raw | src, optional start/end, speed; unframed footage fitted to the output canvas with black padding |
card | title, optional eyebrow, caption, image, footer, duration (default 4 seconds) |
end | wordmark or transparent PNG logo, optional caption, duration (default 2.2 seconds) |
Keep cut points within the source duration and speed positive. Every segment must last at least one output frame. The renderer validates all segments and source paths before encoding. Card titles wrap; captions, labels, and footers should be short. The renderer removes audio, so use another editing workflow if narration or app audio is needed.
Store raw takes, specs, and finished films in a scratch directory. Share the inputs and spec when teammates need to re-edit a particular demo; they are not required to create a new one.
Run film.py --help or a subcommand with --help for CLI options. The Python module can
also be imported: normalize(src, dst, fps=30), compose(spec_path) (returns the output
Path), and sheet(src, dst, frames=8, height=900) work without invoking the CLI.
RenderSettings holds layout calculations without mutable global canvas settings.
After editing the renderer, run its focused tests (requires ffmpeg and Pillow):
python3 -B -m unittest discover -s .agents/skills/mobile-demo-film/scripts -p 'test_*.py'
These render small portrait, landscape, and square compositions, check output dimensions, frame rate and duration, and exercise invalid specs. Also inspect a contact sheet at the intended delivery size; automated checks do not judge readability or composition.
아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.
로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.
아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.
Superset 사용 현황을 살펴보고 아직 쓰지 않는 기능 중 업무 방식에 맞는 항목을 제안합니다. 각 기능을 설명하고, 사용자가 고른 예약 실행 에이전트나 병렬 작업 공간, 공유 작업 등을 설정합니다.
반복 작업을 Superset 자동화로 설정합니다. 에이전트 지침, 일정 또는 이벤트 조건, 실행 작업 공간을 정리하고 명시적인 확인을 받은 뒤 자동화를 만듭니다. 저장된 조건과 첫 실행 결과를 살펴 지침을 조정합니다.
Superset 작업 공간의 브라우저에서 페이지를 열고 클릭하거나 입력하며, 화면과 콘솔 정보를 확인합니다. 개발 중인 웹 앱 미리 보기, 폼 동작 및 화면 이동 점검에 활용할 수 있습니다.
Stripe 공식 문서와 API 매개변수 정의를 확인해 결제, 구독, 청구서, 웹훅 연동을 구현합니다. 적절한 제품 선택부터 샌드박스 테스트와 웹훅 처리까지 다루며, 결제와 구독 상태를 웹훅 이벤트로 판단합니다.
Chrome DevTools Protocol로 실행 중인 Electron 데스크톱 앱을 조작해 UI 변경을 확인하고 문제를 재현합니다. 실제 사용 흐름을 따라 화면 전환을 검증하고, 스크린샷과 경로·스크롤 위치·포커스·저장 상태를 기록해 비교합니다.
GitHub Actions 실패 로그에서 최초 오류를 찾아 코드 결함, 환경 문제, 간헐적 실패, 기존 장애로 구분합니다. 기준 브랜치와 PR 변경 사항을 비교해 관련성을 설명하고 다음 조치를 정리합니다.