Communitygithub.com

2409324124/yakui-studio

Yakui Studio 로컬 음악 작업대에서 노트와 프래그먼트를 제작, 가져오고 수동으로 트리밍하며, 실제 분리 트랙과 전사 후보를 결합하여 추적 가능한 편곡 참조 또는 프로그래매틱 음악을 완성합니다.

yakui-studio란 무엇인가요?

Yakui Studio는 실제 오디오 분석, 후보 전사, 수동 트리밍 및 편집 가능한 프로젝트를 연결하는 AI 에이전트 스킬입니다. 사용자가 지정한 참조 및 승인된 음악을 활용하여 음악 제작을 지원하며, 게임 수정이나 배포 권한은 부여하지 않습니다. Claude Code, Codex, OpenCode 등 주요 AI 에이전트 플랫폼과 호환되며, `yakui-studio` npm 패키지를 통해 로컬 작업대를 제공합니다. 이 스킬은 Demucs를 사용한 실제 분리 트랙, Basic Pitch 및 pYIN을 사용한 전사, 수동 편집 및 버전 관리(revision) 기능을 통합하여 사용자가 참조 오디오로부터 정확한 편곡을 추적 가능하게 합니다. AI 에이전트는 REST API(`http://127.0.0.1:5240`)를 통해 작업대와 상호작용하여 프로젝트 읽기, 선택 영역 업데이트, 편집 적용, 가져오기/내보내기 등을 수행할 수 있습니다. 수동 편집과 AI 협업을 모두 지원하며, 최종 산출물로 편집 가능한 프로젝트 JSON, MIDI, WAV 등을 제공합니다.

지원 대상✓Claude Code✓Codex CLI~Cursor✓OpenCode
npx skills add https://github.com/2409324124/yakui-studio/tree/HEAD/skills/yakui-studio

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

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

문서

Yakui Studio

실제 오디오 분석, 후보 전사, 수동 트리밍 및 편집 가능한 프로젝트를 연결합니다. 사용자가 지정한 참조 및 승인된 음악을 활용합니다. 음악 제작 자체는 게임 수정이나 배포 패키지를 승인하지 않습니다.

시작 및 리소스

설치된 npm 패키지는 yakui-studio 로컬 작업대를 제공합니다. yakui-studio --no-open은 서비스만 시작합니다. yakui-studio setup --agent codex|claude|opencode|all은 이 스킬과 같은 레벨의 procedural-chiptune을 설치합니다. 기본값은 codex입니다. 대상 디렉터리는 각각 $CODEX_HOME/skills(기본 ~/.codex/skills), ~/.claude/skills, ~/.config/opencode/skills(XDG_CONFIG_HOME 준수)입니다. --skills-dir PATH는 단일 디렉터리를 지정하고, --replace는 기존 버전을 백업한 후 설치합니다. 스킬이 다른 위치로 복사되는 경우 두 폴더는 여전히 인접해 있어야 합니다.

  • yakui-studio music setup --profile basic: 분석/프로그래매틱 합성에 필요한 Python 환경을 설정합니다.
  • yakui-studio music setup --profile transcribe: 필요에 따라 실제 분리 트랙 및 전사 종속성을 설치합니다. 첫 번째 분리 트랙 실행 시 모델 다운로드가 필요할 수 있습니다.
  • music analyze/separate/transcribe/review/init/render: 패키지에 포함된 Python 도구를 호출합니다. music import는 후보를 작업대 프로젝트로 변환합니다. 각 하위 명령어 --help를 실행하여 현재 매개변수(특히 전사 모드, 입출력 경로 및 BPM)를 확인합니다.

스킬만 설치된 경우에도 procedural-chiptune/scripts의 도구를 직접 실행할 수 있습니다. 해당 스킬 디렉터리를 기준으로 스크립트 및 템플릿 경로를 확인합니다. Python 3.10+ 및 NumPy가 기본 합성을 지원하며, 오디오 디코딩 및 MP3에는 FFmpeg가 필요합니다. 모델 종속성은 실제 분리 트랙 및 전사를 참조하세요.

쉘에서 yakui-studio를 찾을 수 없는 경우 npx --yes --package [email protected] yakui-studio --help를 사용하세요. 이후 명령어도 동일한 접두사 뒤에 매개변수를 추가합니다. 스킬을 설치한다고 해서 에이전트 CLI가 설치되거나, 계정에 로그인되거나, 음악 모델이 다운로드되지는 않습니다. Codex 및 OpenCode는 각각 기존 로그인 및 모델 구성을 사용합니다. Claude Code의 내장 후보 인터페이스는 향후 기능을 위해 예약되어 있습니다. 작업대 내에서 후보 모드는 도구를 비활성화하며, 외부 에이전트는 아래 CLI를 통해 프로젝트를 조작합니다.

외부 에이전트가 현재 작업대 조작

먼저 yakui-studio project --help와 yakui-studio project read를 실행하여 현재 프로젝트, 리비전, 트랙 프래그먼트 및 브라우저 선택 영역을 읽습니다. 서비스 기본 주소는 http://127.0.0.1:5240입니다. YAKUI_STUDIO_URL을 사용하여 사용자가 실제로 연 인스턴스를 가리키며, 빈 인스턴스를 새로 만들어 대체하지 않습니다.

  • yakui-studio project selection: 선택 영역을 읽습니다. project selection --file selection.json은 선택 영역을 업데이트합니다.
  • yakui-studio project apply --file operations.json: 편집을 적용합니다. 파일은 방금 읽은 projectId, baseRevision, 새로운 operationId 및 operations를 사용해야 합니다. 작업 유형, 필드 및 전체 예제는 프로젝트 CLI 프로토콜을 참조하세요. 버전 충돌 발생 시 다시 읽고 편집을 재평가해야 하며, 리비전만 바꿔서 강제로 사용자 수정을 덮어쓰면 안 됩니다.
  • yakui-studio project import input.json 또는 input.mid: 가져오기; project export output.json 또는 output.mid: 내보내기. 가져오기 전에 먼저 현재 프로젝트를 내보내 사용자가 승인한 자료를 복원 가능하게 유지합니다.
  • yakui-studio project undo --revision N --project ID 및 redo --revision N --project ID: 동일한 서비스의 실행 취소 기록을 조작합니다.

편집 후 project read를 다시 실행하여 실제 리비전과 노트를 확인하고, 변경된 트랙/프래그먼트를 사용자에게 알립니다. 작업대는 동일한 프로젝트의 수정 사항을 즉시 볼 수 있습니다. 디스크에 JSON만 기록한다고 해서 열려 있는 프로젝트가 자동으로 변경되지는 않습니다.

참조에서 프로젝트까지

  1. 실제 디코딩 가능한 오디오를 얻은 후 참조 분석에 따라 여러 프레이즈의 템포, 하프 타임/더블 타임 및 비트 포인트를 확인합니다. 곡명이나 링크만 있을 때는 이미 들었거나 트랜스크립션했다고 주장할 수 없습니다.
  2. 실제 분리 트랙이 필요한 경우 Demucs를 사용하고 모델의 실제 소스를 유지합니다. drums/bass/other/vocals는 멜로디/응답을 보장하지 않습니다. 분리된 다성 악기에는 Basic Pitch ONNX를, 명확한 단성 프래그먼트에는 pYIN을 대조하여 사용합니다. 짧은 선택 영역을 먼저 검증한 후 전체 곡으로 확장합니다.
  3. 원시 후보, 출처, 초 시간, 신뢰도/활성화 값, 피치 벤드 및 수동 이유를 저장합니다. music review 또는 review_notes.py를 사용하여 역할 창과 명시적 편집을 적용하고 이전 상태를 유지합니다. 충돌하는 역할은 여전히 unassigned이며, 양자화 필드는 파생 데이터입니다.
  4. music import를 사용하여 작업대 프로젝트로 변환한 후 인터페이스에서 JSON을 엽니다. 원시 후보 파일을 유지하며, 가져오기는 노트를 편집 가능한 비트 단위로 매핑합니다. 대상 형식이 피치 벤드 등의 정보를 담을 수 없는 경우 제한 사항을 설명해야 하며, 프로젝트 내보내기를 모든 원시 증거로 간주해서는 안 됩니다.
  5. 트랙 편곡에서 프래그먼트를 선택하고 피아노 롤에 들어가서 옥타브, 시작 비트, 길이, 동일 음 반복, 장식음 및 동시 성부를 확인합니다. 솔로, 프래그먼트 루프 및 값 속성을 사용하여 프래그먼트별로 트리밍합니다. 계속 편집할 수 있는 결과물로 프로젝트 JSON을 저장합니다.

수동 및 AI 협업

프래그먼트의 시작점은 전체 곡의 비트 수이며, 노트의 시작점은 프래그먼트를 기준으로 합니다. 시간 단위는 모두 4분음표 비트입니다. 프래그먼트 경계와 크로스-프래그먼트 서스테인에 주의하세요. 프로젝트 편집, 실행 취소 및 재실행은 리비전을 변경합니다.

AI 수정은 명시적인 노트/시간 선택 영역을 사용하고, 먼저 후보를 생성한 후 대조 청취한 다음 적용하거나 폐기합니다. 프로젝트 변경 후에는 만료된 후보를 다시 생성합니다. AI 편곡 제안은 참조 오디오의 정확한 전사 증거를 구성하지 않습니다. 사용 가능한 에이전트가 없어도 수동 편집, 청취 및 내보내기가 가능합니다. 사용 불가 또는 인증 실패 시 반드시如实 보고해야 합니다.

독창적인 프로그래매틱 음악은 procedural-chiptune의 init/render 경로를 따릅니다. 템플릿 동기를 변경하고 단순히 BPM만 바꾸지 않아야 합니다. 이벤트 스코어 형식은 score-format을 참조하세요. 브라우저 합성과 Python 렌더링은 샘플 단위로 동일한 마스터링이 아닙니다.

전달 기준

"후보 추출됨", "수동으로 일부 프레이즈 교정됨", "참조에 따라 전체 범위 검증됨"을 각각 명시합니다. 모델 출력, 가져오기 성공, AI 수정 성공만으로는 정확한 트랜스크립션이라고 할 수 없습니다. 확인된 범위, 할당되지 않은 성부 및 불확실한 노트를 명시합니다. 독창적인 응답은 명확하게 표시합니다.

편집 가능한 프로젝트, 필요한 원시 후보 및 교정 기록, 재생 가능한 미리듣기를 전달합니다. 프로젝트 JSON은 트랙과 프래그먼트를 유지하고, 이벤트 스코어는 프로그래매틱 렌더링에, MIDI는 외부 편집에, WAV는 미리듣기에 사용됩니다. 참조 녹음은 합성 트랙이나 npm 패키지에 자동으로 혼합되지 않습니다. 실제 청음 능력을 사용할 수 없는 경우如实 설명하고 오디오를 제공하여 사용자가 미리 들을 수 있도록 합니다.

Individual skills in this repo

This repo contains 1 individual skill — each has its own dedicated page.

관련 스킬