Communitygithub.com

Conz-Wilts/ai-editor

Higgsfield로 새 푸티지를 생성하여 편집 타임라인에 추가합니다. 각 생성 전에 가격을 먼저 책정하고 사용자에게 달러 금액(및 자체 푸티지의 경우 Higgsfield에 업로드 가능 여부)을 묻고, 제출, 대기, 다운로드 후 타임라인의 Generated 트랙에 결과를 추가합니다. 사용자가 'b-roll 생성', 'AI b-roll', 'motion transfer' 등을 요청할 때 사용합니다.

ai-editor란 무엇인가요?

이 스킬은 AI 비디오 생성 플랫폼인 Higgsfield의 API를 활용하여 편집 프로젝트 내에서 직접 새로운 푸티지를 생성하고 타임라인에 배치합니다. Motion transfer(사용자 동작을 캐릭터에 적용), 텍스트-투-비디오(b-roll 생성), 이미지-투-비디오(정지 이미지 애니메이션), 텍스트-투-이미지(카드용 스틸 이미지) 등 네 가지 생성 방식을 지원합니다. 각 생성 요청은 먼저 비용을 추정하고 사용자에게 달러 금액을 명확히 알린 후 승인을 받아야 하며, 사용자의 원본 푸티지가 Higgsfield 서버에 업로드된다는 사실도 동시에 고지해야 합니다. 예산 초과, API 키 누락, NSFW 결과 등 다양한 오류 상황에 대한 처리 로직이 포함되어 있으며, CLI 도구(`gen.py`)를 통해 모든 작업이 이루어집니다. Claude Code 에이전트에서 작동하며, 사용자의 자연어 요청(예: 'b-roll 생성해 줘', '이 부분을 AI로 재스타일링해 줘')을 해석하여 적절한 모델과 프롬프트를 선택하고, 생성이 완료되면 결과물을 프로젝트의 `generated/` 폴더에 다운로드하고 타임라인에 적용합니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/Conz-Wilts/ai-editor/tree/HEAD/.claude/skills/generate

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

생성

경로: ${CLAUDE_SKILL_DIR}은 이 SKILL.md가 포함된 폴더, ${CLAUDE_SKILL_DIR}/../..은 편집기 폴더 (이 저장소의 .claude/)로, 두 단계 위에 있습니다.

모든 사용자 질문은 질문 상자에 입력하세요: AskUserQuestion 도구를 호출하세요 (2-4개 옵션, 권장 옵션을 먼저). 해당 도구가 없는 에이전트에서는 번호가 매겨진 질문을 텍스트로 하세요.

G="${CLAUDE_SKILL_DIR}/../../lib/ai_editor/gen/gen.py". python3 (Windows에서는 py)으로 실행하세요. 모든 모델, 입력 및 제한 사항은 gen.py models에 있습니다 (lib/ai_editor/gen/models.json에서 가져옴); 모델 ID나 매개변수를 절대 추측하지 마세요. API 사실 및 확인되지 않은 내용: references/higgsfield-api.md.

규칙

  • 비용은 해당 가격에 대한 승인 후에만 지출됩니다. 항상 먼저 estimate를 실행하고, 출력된 달러 금액 (ASK: 줄)을 질문하고, 사용자가 '예'라고 선택한 후에만 submit --confirm <estimate id>를 실행하세요. 새 가격 (추정이 30분을 초과했거나 submit에서 가격이 변경되었다고 표시하는 경우)은 새 질문입니다.
  • 사용자의 푸티지는 동의 없이 컴퓨터를 떠나지 않습니다. 사용자 비디오의 클립이나 프레임은 submit 시 Higgsfield에 업로드됩니다. 가격과 동일한 질문에 이 사실을 명시하세요.
  • 채팅에서 키를 묻지 마세요. 키가 없는 경우: 사용자 자신의 터미널에서 python3 "$G" setkey를 실행하라고 지시하세요(콘솔.higgsfield.ai의 키 ID와 비밀번호를 id:secret 형식으로 입력하도록 요청하며, 입력 내용을 숨깁니다).
  • profile.json의 gen_budget_usd는 월별 지출 상한선입니다. submit은 이를 초과하면 거부합니다. 남은 금액을 알리고 중단하세요.
  • 실패 및 nsfw 결과는 청구되지 않습니다. 실패 시 이를 알리고 프롬프트 변경을 제안하세요.

단계

  1. 무엇과 어디에. 사용자의 말과 편집 (edits/<name>/)에서: 종류 (motion transfer, 단어 기반 b-roll, 정지 이미지 생생하게, 카드용 스틸 이미지), 적용되는 시점 (타임라인의 초, words.json의 대본에서), 그리고 motion transfer의 경우 사용자 비디오 구간 (4초 이상; 모델은 최대 30초 유지). python3 "$G" models --kind <kind>로 모델을 선택하세요.
  2. 프롬프트. 언급된 내용에서 직접 작성: 주제, 배경, 카메라, 조명, 40단어 미만. B-roll은 비디오 형식과 일치해야 합니다 (세로 편집은 세로 느낌의 샷). Motion transfer는 1-8개의 참조 이미지 (--image, 파일 또는 URL)를 사용합니다: 움직임을 적용할 대상.
  3. 가격 책정.
    python3 "$G" estimate edits/<name> --model <id> --prompt "<prompt>" [--video raw.mp4 --from 12.0 --to 18.0] \
      [--image ref.png] [--param duration=5] --at <timeline seconds>
    
    클립을 자르고 (무음, H.264) generated/inputs/에 넣으며, 아무것도 업로드하지 않고 요청 가격을 책정하고 estimate id, usd, credits, over_budget 및 ASK: 줄을 출력합니다.
  4. 질문. 하나의 질문 상자: ASK: 줄을 질문으로 (가격, 모델 및 업로드되는 항목), 옵션 "예, 생성하세요 (권장)" / "프롬프트 변경" / "아니요". 예산 초과 시: 대신 알리고 중단하세요.
  5. '예'인 경우에만 제출: python3 "$G" submit edits/<name> --confirm <estimate id>. 입력을 업로드하고, 재가격 책정 후 job id를 출력합니다.
  6. 백그라운드 대기 (생성은 몇 분 소요): python3 "$G" wait edits/<name> <job>. 백오프로 폴링하고, 결과를 edits/<name>/generated/로 다운로드하고, 분석 후 --at 위치의 타임라인 Generated 트랙에 Claude의 변경 사항으로 추가합니다 (project.py apply를 통해; 프로젝트 문서가 아직 없으면 generated/<job>.ops.json을 쓰고 출력합니다). status / list는 진행 상황을 보여줍니다. cancel은 아직 대기열에 있을 때만 작동합니다.
  7. 인계. 추가된 내용, 위치 및 비용을 알려주세요. 사용자는 일반 클립처럼 타임라인에서 이동, 자르기 또는 삭제할 수 있습니다. 생성물의 외관에 대한 수정은 taste로 이동합니다.

명령어 중단 시

메시지수행할 작업
No Higgsfield key사용자 자신의 터미널에서 python3 "$G" setkey를 실행하도록 요청한 후 계속하세요
needs at least 4 s--from/--to를 넓히거나 텍스트 또는 이미지 모델을 선택하세요
over this month's generation budget남은 금액을 알려주세요. 사용자는 gen_budget_usd를 올릴 수 있습니다
the price is $X, not $Y새 가격으로 다시 질문한 후 새 id로 submit --confirm을 실행하세요
Maximum number of concurrent requests클라이언트가 이미 재시도했습니다. 실행 중인 작업을 기다린 후 제출하세요
ended failed / ended nsfw청구되지 않습니다. 변경된 프롬프트로 새 추정 및 질문을 제안하세요

파일

  • lib/ai_editor/gen/gen.py: 위의 명령어, demo 자체 점검 (가짜 Higgsfield, 네트워크 없음).
  • lib/ai_editor/gen/higgsfield.py: API 클라이언트. base.py: 제공자 인터페이스 및 카탈로그.
  • lib/ai_editor/gen/jobs.py: edits/<name>/generated/jobs.json 및 월별 지출.
  • references/higgsfield-api.md: 문서화된 API 및 출처.

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

Conz-Wilts/ai-editor

Turns one long video or podcast (a local file or a YouTube link) into the best 3-5 short vertical clips, each cut and styled in the user's profile style. Transcribes once, splits the talk into candidate clips at sentence boundaries inside the chosen length, scores every candidate in code (speech rate, loudness, laughter, numbers and names said), shows the shortlist on one page with a preview of each, then trims, cuts and style-edits each pick as its own edit. Use when the user says "clip this video", "make shorts from my podcast", "find the best clips", "cut this into TikToks", "turn this YouTube video into reels", "repurpose this long video", or drops a long video (over about 3 minutes) or a YouTube link and wants short clips. Not for editing one short take (that is start or cut), and not for measuring someone else's style (that is creator-teardown).

Conz-Wilts/ai-editor

Reverse-engineers a short-form creator's video format from their real numbers. Pulls a TikTok or YouTube Shorts profile (or pasted links, Instagram reels too) with view, like and save counts, transcribes the top videos word for word, measures pace, pauses and fillers, maps each video into timed beats, and writes a teardown.md someone can film from, a teardown.html page of their graphics, motion and sound, and the style.json the style-edit skill edits from (on its own it can write an edit plan as a table and .srt). Use when the user wants to analyse, break down or study a creator ("analyse @handle", "tear down @handle", "teardown of @handle", "break down this creator", "what makes this creator's videos work"), pastes TikTok, YouTube or Instagram links and asks what the pattern is, or asks to set up creator-teardown. Not for editing the user's own video like a creator (that is start), not for researching a topic, and not for cutting raw footage.

Conz-Wilts/ai-editor

Cuts raw talking-head footage into a clean jump cut. Takes one take or several joined (mp4 or mov, any aspect, 4K phone footage is fine), transcribes it word by word, removes retakes, false starts, fillers and dead pauses, and renders cut.mp4 at the source resolution plus words.json timed to the cut. The user approves the cut on a page with the whole transcript and every removed word struck through. Use when the user says "cut my video", "just cut it", "remove my mistakes", "cut out the retakes", "remove the pauses", "clean up this take", "jump cut this", "tighten this clip", or asks only for the cut of a raw take; start calls it for a full edit. Runs before style-edit. Not for a general request to edit a video or to make it look like a creator (that is start), not for adding captions, zooms or cards (style-edit), and not for analysing someone else's videos (creator-teardown).

Conz-Wilts/ai-editor

For the editor's maintainers. Turns what users corrected into lasting fixes in this repo, for every user, enforced by code and tests rather than notes. Reads the suggestions users marked "would help everyone" (~/.ai-video-editor/suggestions.jsonl), taste rules said twice (taste.py report), preview corrections (edits/*/corrections.jsonl), review-page notes (*/review.json) and open GitHub issues labelled feedback; groups repeats; for each item the maintainer accepts, writes the general rule into PRINCIPLES.md and the skill that owns it, adds or tightens the check that enforces it, adds a test that fails before and passes after, and runs the full test set. Use when the maintainer says "improve the editor", "turn feedback into fixes", "process suggestions", "what are users complaining about", "go through the feedback issues". Not for one user's own preferences (that is taste), and not for editing a video.

관련 스킬