Community이미지github.com

OpenScaleOrg/aseprite-live

사용자가 열어놓은 Aseprite 창에서 Claude가 그림을 그리거나 편집할 수 있도록 하며, Aseprite에 변화가 없을 때, 라이브 모드, 열린 파일, 저장되지 않은 탭, 또는 Claude가 Aseprite에서 한 작업을 취소하는 경우에 사용합니다.

aseprite-live란 무엇인가요?

이 스킬은 Aseprite MCP 서버의 라이브 모드 기능을 활용하여 AI 에이전트(Claude)가 사용자가 이미 열어놓은 Aseprite 창에서 직접 실시간으로 그림을 그리고 편집할 수 있게 해줍니다. 배치 모드와 달리 라이브 모드는 Aseprite MCP Live 확장 프로그램을 통해 연결된 창의 활성 스프라이트에서 직접 작업하며, 각 도구 호출 결과가 즉시 캔버스에 반영됩니다. 세션 시작 시 `live_status` 명령으로 연결 상태와 활성 탭 파일을 확인하고, 항상 사용자가 열어놓은 파일만을 대상으로 작업합니다. 캔버스 크기 조정, 프레임 추가, 레이어 작업 등이 모두 동일한 파일 내에서 이루어지며, 각 도구 호출은 하나의 실행 취소 단계로 기록되어 사용자가 Ctrl+Z로 되돌릴 수 있습니다. 사용자의 작업을 덮어쓰지 않도록 주의하고, 작은 단위로 순차적으로 호출하여 사용자가 그림이 완성되는 과정을 지켜볼 수 있도록 설계되었습니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/OpenScaleOrg/Aseprite-Plugin/tree/HEAD/plugins/aseprite/skills/aseprite-live

Installed? Explore more 이미지 skills: steipete/songsee, affaan-m/frontend-design, mattpocock/improve-codebase-architecture · View all 6 →

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

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

문서

사용자의 Aseprite 창에서 라이브 작업하기

aseprite MCP 서버에는 두 가지 모드가 있으며, 호출 시마다 선택합니다.

  • 라이브: Aseprite MCP Live 확장 프로그램이 설치된 Aseprite가 실행 중이며, 서버에 연결됩니다. 모든 도구가 해당 창 안의 열린 스프라이트에서 스크립트를 실행하고, 캔버스가 즉시 다시 그려집니다.
  • 배치: 연결된 창이 없습니다. 각 도구가 숨겨진 Aseprite를 시작하고, 디스크의 파일을 편집한 후 종료합니다. 열린 창은 파일을 다시 열기 전까지 변경 사항을 표시하지 않습니다.

모든 세션은 live_status로 시작하세요

결과수행할 작업
connected; active tab: <path> + saved모든 도구에 대해 해당 경로를 filename으로 사용합니다.
... UNSAVED저장 위치를 물어본 후, save_active_sprite("<dir>/<name>.aseprite")를 호출하고 해당 경로를 사용합니다.
connected; no sprite is opencreate_canvas가 창에 새 탭을 엽니다.
Aseprite is not connected ...사용자에게 알립니다. 사용자가 동의하는 경우에만 배치 모드로 작업합니다.

항상 사용자가 열어놓은 파일에 그리기 (엄격)

모든 그림은 live_status가 보고하는 활성 스프라이트, 즉 사용자가 열어놓은 탭에 들어갑니다. 작업을 별도의 파일에 넣지 마세요.

  • 두 번째 스프라이트를 절대 만들지 마세요. 사용자가 탭을 열어놓은 동안에는 create_canvas를 호출하거나 run_lua_script에서 Sprite(w, h)를 호출하지 마세요. live_status에 스프라이트가 열려 있지 않다고 표시될 때만 create_canvas를 사용하세요. Lua에서는 app.activeSprite를 편집하세요.
  • 캔버스가 너무 작으면 같은 파일의 크기를 조정하세요. 예를 들어, 열린 탭이 64×64이고 장면에 160×112가 필요하다면, 해당 파일에 대해 resize_canvas(<open file>, 160, 112)를 호출한 다음 그리세요. 프레임 수의 경우도 마찬가지로 add_frames로 해당 파일에 프레임을 추가하세요.
  • 이미 그림이 있는 캔버스는 먼저 물어보세요. resize_canvas는 기존 픽셀을 크기 조정하므로, 빈 탭에서는 그냥 크기를 조정하면 됩니다. 탭에 이미 그림이 있는 경우에는 사용자에게 먼저 물어보세요.
  • 탭이 저장되지 않은 경우, save_active_sprite로 저장하고(저장 위치 물어보기), 계속해서 그 파일에서 작업하세요. 저장했다고 해서 다른 파일을 시작하는 이유가 되지는 않습니다.
  • 라이브 모드가 연결되지 않은 경우, 작업을 중단하고 사용자에게 알리세요. 사용자가 명시적으로 동의하지 않는 한 디스크의 새 파일로 대체하지 마세요.

확장 프로그램은 서버가 처음 시작될 때 Aseprite에 자동으로 설치됩니다. 그런 다음 Aseprite를 한 번 다시 시작해야 하며, 처음 사용 시 Aseprite에서 스크립트가 네트워크에 연결하거나 파일을 쓸 수 있는지 허용할지 묻습니다. 사용자는 Aseprite에서 이를 허용해야 합니다. 이러한 프롬프트를 사용자 대신 클릭하지 마세요.

라이브로 그리는 동안

  • 하나의 도구 호출은 하나의 실행 취소 단계입니다. 사용자는 Ctrl+Z를 눌러 정확히 한 단계를 되돌릴 수 있으므로, 필요할 때 사용자에게 알려주세요.
  • 눈에 보이는 단계로 작업하세요 (실루엣, 밑색, 음영, 디테일, 애니메이션). 사용자가 그림이 완성되는 과정을 볼 수 있도록 하고, 각 단계가 무엇을 하는지 설명하세요.
  • 호출당 하나의 작은 작업만 하세요. 창은 호출이 반환될 때만 다시 그려지므로, 전체 장면을 그리는 스크립트는 한꺼번에 나타납니다. 각 호출은 하나의 오브젝트, 하나의 레이어, 하나의 음영 작업 또는 하나의 프레임을 추가해야 합니다. 스크립트를 작성하고, 실행하고, 그 다음 스크립트를 작성하세요. 모든 스크립트를 먼저 작성하고 마지막에 실행하지 마세요.
    • 전용 도구(draw_rows, draw_rectangle_at, draw_ellipse_at, fill_area_at 등)를 선호하세요. 이 모든 도구는 각각 하나의 보이는 단계입니다.
    • 라이브 모드에서 run_lua_script는 40줄 이상의 스크립트를 거부합니다. 모든 스크립트는 자체적으로 함수를 재정의해야 하므로 도우미 함수를 짧게 유지하세요.
    • 64×64 장면은 일반적으로 10~25번의 호출이 필요합니다. 이는 정상입니다. 사용자가 그림이 만들어지는 과정을 지켜보고 있는 것입니다.
  • 모든 단계는 파일에 저장되므로 view_sprite와 내보내기 도구의 동기화가 유지됩니다. 이 도구들은 계속해서 숨겨진 Aseprite를 통해 저장된 파일을 읽습니다.
  • 사용자도 편집할 수 있습니다. 영역을 다시 그리기 전에 view_sprite나 read_rows로 확인하고, 사용자의 변경 사항을 묻지 않고 덮어쓰지 마세요.
  • 사용자의 보기를 변경하지 마세요. 작업에 필요한 경우가 아니라면 창에서 탭, 프레임 또는 레이어를 전환하지 마세요.

문제 해결

  • "대화 상자가 열려 있을 수 있습니다"와 함께 도구가 시간 초과됩니다. Aseprite가 권한 요청과 같은 프롬프트를 기다리고 있습니다. 사용자에게 응답하도록 요청하세요.
  • 변경 사항이 창에 나타나지 않습니다. live_status를 실행하세요. 각 호출은 먼저 다른 Claude 세션에서 보유하고 있는 라이브 링크를 가져오므로, 여전히 연결되지 않았다고 표시되면 Aseprite가 확장 프로그램 설치 전에 열린 것이므로 다시 시작해야 합니다. 작업을 중단하고 사용자에게 알리세요. 디스크의 파일에 계속 그리지 마세요.
  • 직접 Aseprite를 실행하지 마세요. 셸 명령으로 파일을 새 창에서 열지 마세요. 같은 파일에 대해 두 개의 창이 열리면 동기화가 깨지고, 스크립트는 마지막으로 연결된 창으로만 전달됩니다. 열린 탭이 오래된 경우 사용자에게 파일 → 되돌리기를 사용하라고 요청하세요.
  • 스프라이트와 같은 이름의 탭이 나타났다가 닫힙니다. 이는 정상입니다. 일부 분석 도구는 임시 복사본에서 작업한 후 닫습니다.

Individual skills in this repo

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

관련 스킬