플러그인 개발자 포털
5분 만에 등록까지: 플러그인 작성, 릴리스 태그, 로컬 검증, 레지스트리 PR 열기.
검토 SLA: 3영업일 이내에 통과 또는 변경 요청을 드립니다. 등록 후에는 릴리스에 태그를 다는 것만으로 자동 업데이트됩니다 — 새 PR이 필요 없어요.
1. 템플릿으로 시작하기
plugin-template에서 저장소를 생성하고(저장소당 플러그인 하나) manifest.json과 main.js를 작성하세요 — 등록 후에는 id를 바꿀 수 없어요.
2. 로컬에서 실행하기
데스크톱 앱에서 URL/로컬 설치로 확인하고, 오류 없이 노드가 나타나는지 확인하세요. 테마 플러그인은 8개 파일 제한을 지켜야 합니다.
3. 릴리스에 태그 달기
v* 태그(예: v0.1.0)를 푸시하면 릴리스 워크플로가 실행됩니다: <id>-<version>.zip, <id>.zip 별칭, 안정적인 manifest.json 에셋.
4. 로컬에서 검증하기
node scripts/validate-plugin-submit.mjs --manifest ./manifest.json --repo you/repo 명령을 실행하세요 — PR을 열기 전에 모두 통과해야 합니다(CI와 동일한 규칙).
5. 레지스트리 PR 열기
poly-creator/plugins의 plugins.json에 항목 하나(id/repo/name/author/description)를 추가하세요. CI가 통과하면 등록이 완료됩니다. 이후 릴리스에는 태그만 있으면 돼요.
검토 기준(각 항목이 반려 사유에 해당합니다)
- 저장소당 플러그인 하나. 릴리스는 안정판이어야 합니다(초안/프리릴리스는 latest에 반영되지 않아요).
- 세 가지 에셋이 모두 있어야 합니다: 버전별 zip, 버전 없는 별칭 zip, 무결성이 주입된 manifest.json.
- 유효한 매니페스트: safe-id, semver, main 또는 theme.files 필수, 허용 목록 내 권한.
- zip 안의 매니페스트가 레지스트리 항목과 일치해야 합니다(id/version/에셋 이름). 고정한 항목은 tag + sha256이 함께 필요합니다.
- trusted(nodeEntry 포함)는 더 엄격한 수동 검토를 거칩니다. 메인 프로세스 권한은 최소한으로 선언하세요. 기본값은 안전합니다.
- 등록 해제는 항목 삭제와 같습니다. zip은 30MiB 이하, 내부에 ../ 나 절대 경로가 없어야 합니다.