Communitygithub.com

DevineCheung/suge-video-skills

「苏格拉没有底」视频工坊:两种已验证风格:【漫画口播】(混知式彩色漫画 + 用户自录口播逐字对齐,竖屏 1080×1920)与【像素卡点】(像素暖光故事、无口播、文字对白,画面卡在配乐乐句上,4:3 1440×1080)。做本账号任何视频时加载,先按 §1 选风格,再读对应 STYLE.md。

suge-video-skills 是什么?

suge-video-skills is a Claude Code agent skill that 「苏格拉没有底」视频工坊:两种已验证风格:【漫画口播】(混知式彩色漫画 + 用户自录口播逐字对齐,竖屏 1080×1920)与【像素卡点】(像素暖光故事、无口播、文字对白,画面卡在配乐乐句上,4:3 1440×1080)。做本账号任何视频时加载,先按 §1 选风格,再读对应 STYLE.md。.

兼容平台✓Claude Code~Codex CLI~Cursor
npx skills add DevineCheung/suge-video-skills

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

Socrates Didn't Have a Bottom · Video Workshop (Combined Skill)

1. Select a Style

Comic ExplainerPixel Beat Story
Directorystyles/comic-explainer/styles/pixel-beat-story/
Best For"Explain one thing clearly" – social sciences, current events, history: news investigations, institutions, conceptual analysis"Tell one person's story" – social pain points: autism, Alzheimer's, left-behind children, solitary living…
DriverUser-recorded voiceover, word-level timeline (faster-whisper + difflib)Music – beat/phrase grid (beats.py)
Aspect RatioVertical 1080×1920 / 30fpsLandscape 4:3 1440×1080 / 30fps (adjustable)
DurationFollows the recording (~10 min sample, 7 chapters)3–4.5 minutes
VisualsWarm rice-paper background, Q-style color comic characters (green-screen generated, cutout), chapter cards, seals, programmatic iconsPixel house night scene, sprite characters, talking objects, HUD counters, typewriter dialogue
AudioOriginal voiceover (uncut) + programmatic piano music + sound effects + duckingMusic (extend/breakpoint/return) + programmatic rain/thunder ambience; music stops at the most painful point
Enginenode 22 + @napi-rs/canvas (render_example.js DSL)Remotion (weilanx-claude-videos project, Ep54-example.tsx)
Sample"Why Establish a State-Owned Enterprise Despite All This Data?""He Doesn't Say" / "He Isn't from the Stars"

If unsure, ask the user: "This episode: Comic Explainer, or Pixel Beat Story?"

Once selected, read the full STYLE.md in the corresponding directory and follow its workflow.

2. Shared Channel Guidelines (Mandatory)

  1. Cover as First Frame: Every video must have a custom cover embedded as the very first frame (Comic Explainer: first 0.4s; Pixel Beat Story: frame 0). Also deliver a separate cover image.
  2. Watermark Integrated, No Corner Logo: "Socrates Didn't Have a Bottom" is written into signage, nameplates, app headers, window titles, end credits, etc.; the user explicitly refuses a corner logo.
  3. Sample Before Full Video: Comic Explainer – produce the opening through Chapter 1 (~80s); Pixel Beat Story – produce Act 1 (60–70s). Only proceed to full production after user confirms the style.
  4. Script Pre-Approval: The user writes the script/records audio; the agent is responsible for fact-checking (web_fetch original reports/research articles), flagging polyphonic characters, logical leaps, sensitive wording, and only then beginning production.
  5. Audio Baseline: The user's original audio must not be cut, rearranged, or replaced with TTS; music and sound effects must be original, programmatic, or properly licensed; placeholder tracks must be flagged for replacement with each delivery. All concatenated audio must use numpy-based equal-power crossfade (ffmpeg acrossfade on the same input will truncate).
  6. Loudness: Entire video at -15 LUFS, using two-pass loudnorm (shared/loudnorm.sh), with a fade-out at the end.
  7. Characters Must Look Good: Clean, friendly, and appealing; the user rejects ugly characters. Side characters must also be pleasant. Maintain consistent prompt skeletons for recurring characters; generate on green/solid backgrounds and then cut out (Comic Explainer: key.py, Pixel Beat Story: cutout.py).
  8. Self-Check with Contact Sheet Before Rendering: Generate a contact sheet and read it to check – text doesn't extend beyond the image, doesn't overlap faces, first frame is the cover, watermarks are present, key lines/keywords match the audio.
  9. Rendering: Use 2-core sandbox with parallel segments (concurrency per segment = 1). Write to /tmp first, then copy to workspace (faststart writing to network drive causes IO errors). Re-audio without re-rendering the video; minor changes only re-render affected frame segments, then overlay.
  10. Content Ethics (especially Pixel Beat Story): Do not claim AI can cure any disease. Do not romanticize or otherize vulnerable groups. Mark stories as fictional; do not use real children's private data. Cite sources and years for data in the end credits.

3. Directory Structure

SKILL.md                         ← This file (style selection + shared guidelines)
shared/loudnorm.sh               Two-pass loudnorm
styles/comic-explainer/        【Comic Explainer】
  STYLE.md                       Style specs, layout coordinates, animation DSL, alignment and mixing workflow
  templates/ lib.js render_example.js audio.py wh.py align2.py key.py mux.sh
  examples/                      Cover/frame sample, character examples, script format (# heading / # chapter markers)
styles/pixel-beat-story/       【Pixel Beat Story】
  STYLE.md                       Style, script formula, beat-sync rules, music shaping, layout, QA
  references/ story.md layout.md
  scripts/ beats.py music_tools.py sfx.sh cutout.py contact.sh stills.mjs render.sh mux.sh
  template/ Ep54-example.tsx ep54-music-ops.json ep54-script-example.md assets/

4. Environment

  • General: ffmpeg ≥6, python3 + numpy scipy pillow; Chinese fonts.
  • Comic Explainer: node 22 + @napi-rs/canvas; faster-whisper (feed numpy arrays, not file paths); font LXGW WenKai → fonts/wk.ttf. lib.js also requires assets/, map/, and heads.json (head crop table {name:[cx,cy,size]}) in the project directory – create these for new projects.
  • Pixel Beat Story: Remotion project (weilanx-claude-videos, MIT; Remotion free for individuals/teams ≤ 3 people); Noto Sans/Serif SC. In the sandbox, prefix every node command with export NODE_OPTIONS=--max-old-space-size=4096 and use ./node_modules/.bin/remotion (not npx).

5. Delivery Script

Communicate in a single message: video duration, two or three highlights (Comic Explainer: chapters and key visuals; Pixel Beat Story: beat-sync design details), whether music is placeholder, and ask what adjustments are desired. Attach the final mp4 + cover image.

相关技能