
Claude Code 플러그인이 Cursor, Codex, OpenCode 및 기타 19개 환경에서도 네이티브로 작동하도록 컴파일러 구축
요약
Soubi는 Claude Code용으로 작성된 플러그인을 Cursor, Codex, Copilot 등 22개의 다양한 AI 코딩 환경에 맞춰 네이티브 아티팩트로 컴파일해주는 도구입니다. 각 환경마다 다른 플러그인 형식과 훅 이벤트를 단일 디렉토리 구조로 통합하여 관리할 수 있게 해줍니다.
핵심 포인트
- 단일 플러그인 작성으로 22개 이상의 AI 코딩 환경 지원
- 환경별 상이한 훅 이벤트 및 설정 구조를 자동 매핑
- 지원되지 않는 기능에 대해 명시적인 폴백(fallback) 및 오류 처리 제공
- Next.js와 유사한 표준화된 디렉토리 구조 사용
https://preview.redd.it/hv940qeyuigh1.png?width=1200&format=png&auto=webp&s=fed3dff1f169bb53866861b4fee795cf9e83753c 저는 Claude Code 플러그인의 스킬 (skills), 훅 (hooks), 서브에이전트 (subagents), 커맨드 (commands)를 작성하면서 항상 동일한 벽에 부딪혔습니다. Codex, Cursor, OpenCode, Gemini CLI, Copilot, Windsurf 등 모든 환경 (harness)은 각자 고유한 플러그인 형식, 고유한 훅 이벤트 이름 (hook event names), 고유한 서브에이전트 설정 구조 (subagent config shape)를 가지고 있습니다. Claude Code를 위해 작성된 플러그인은 대상 환경마다 수동으로 다시 작성하지 않으면 다른 어디에서도 실행되지 않습니다.
Soubi는 기본적으로 에이전트 플러그인을 위한 Next.js입니다. 여러분은 일반적인 디렉토리 형태로 플러그인을 한 번만 작성하면 됩니다:
my-plugin/
├── AGENTS.md
├── plugin.config.ts
├── skills/
│ └── review/SKILL.md
├── commands/
├── agents/
├── hooks/
└── tools.ts
soubi build는 이를 각 환경이 실제로 기대하는 네이티브 아티팩트 (native artifact)로 컴파일합니다. Claude Code는 스킬/에이전트/커맨드/훅/MCP가 포함된 실제 플러그인 매니페스트 (plugin manifest)를 받게 되고, Codex는 Agent Skills + TOML 에이전트 + 프롬프트 (prompts)를 받으며, Cursor는 마켓플레이스 매니페스트 (marketplace manifest) + 규칙 (rules) + MCP 설정을 받는 식입니다. 이렇게 총 22개의 환경을 지원합니다.
제가 가장 많은 시간을 할애한 부분은 깔끔하게 매핑되지 않는 부분들입니다. Claude Code는 약 30개의 훅 이벤트 (hook events)를 가지고 있지만, 다른 환경들은 소수의 이벤트만 지원하거나, 전혀 지원하지 않거나, 특정 핸들러 타입만 지원합니다. 지원되지 않는 기능을 조용히 누락시키거나 불완전한 플러그인을 배포하는 대신, Soubi는 각 기능별로 명시적인 폴백 (fallback)을 선언합니다. 경고와 함께 기능을 제외하거나, 최선의 노력을 다한 유사 기능으로 성능을 낮추거나(degrade), 해당 기능이 핵심적인 경우 빌드에서 해당 환경을 아예 제외합니다. 예를 들어, 플러그인이 서브에이전트 위임 (subagent delegation)을 중심으로 구축되었는데 서브에이전트 개념이 없는 환경이라면, 껍데기뿐인 플러그인을 배포하는 대신 명확하게 오류를 발생시킵니다.
npx soubi@latest init my-plugin
npm run check
npm run build
Docs: https://soubi.vercel.app
GitHub: https://github.com/tarkaworks/soubi
저는 제작자로서, 특히 Claude Code 어댑터 (adapter)에 대한 진솔한 피드백을 기다리고 있습니다.
매니페스트 형태 (Manifest shape), 훅 커버리지 (hook coverage), 또는 여러분이 직접 작성하는 방식과 일치하지 않는 모든 부분에 대해 의견을 부탁드립니다. 이곳의 대부분의 사람들이 실제로 매일 사용하는 하네스 (harness)이기 때문입니다. /u/dank_clover 제출 [link] [comments]
AI 자동 생성 콘텐츠
본 콘텐츠는 r/ClaudeAI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기