feat: Claude Code 플러그인 — 서버 자동 기동 + 승인 훅 + /maestro:status (플러그인화 2단계) - #33
Conversation
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d62706599f
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| sh "$ROOT/plugin/scripts/ensure-deps.sh" | ||
|
|
||
| exec_target() { | ||
| node "$ROOT/bin/maestro-server.mjs" --port "$PORT" --repo "${CLAUDE_PROJECT_DIR:-$PWD}" 2>&1 |
There was a problem hiding this comment.
Prevent reuse of a server managing another repository
When Claude sessions are open for different projects, every monitor uses the same default port, and maestro-server.mjs reuses any healthy Maestro server on that port without checking whether its /health project path matches this --repo value. The second session therefore posts its branch information to the server still managing the first repository; approving a same-named branch can merge it in the wrong repository. Verify or switch the active repository before reuse, or allocate the server per project.
Useful? React with 👍 / 👎.
Summary
플러그인화 트랙 2단계 — Claude Code 사용자가 두 명령으로 Maestro를 붙입니다. 스펙:
docs/superpowers/specs/2026-07-22-claude-plugin-design.md구성 (저장소 = 마켓플레이스 + 플러그인)
.claude-plugin/marketplace.json+plugin.json— 서버 코드 동봉을 위해 플러그인 source는 저장소 루트, 전용 자산은plugin/로 격리plugin/monitors.json(공식 장수명 프로세스 패턴,when: always) →run-server-quiet.sh가 1단계 CLI(bin/maestro-server.mjs)를${CLAUDE_PROJECT_DIR}대상으로 실행. 중복은reuseExisting이 방지, stdout은 핵심 이벤트(기동/재사용/승인 요청/실패)만 통과시켜 모니터 소음 차단--no-save --ignore-scripts), 어떤 실패에도 exit 0hooks/notify-maestro.sh재사용(git 정보 자동 감지·토큰 지원) — 서버 부재 시에도 exit 0으로 세션 안전/maestro:status스킬: 서버 상태·활성 프로젝트·iPad 연결 안내Test plan
tests/plugin-manifest.test.mjs5 tests: 매니페스트 정합성, 참조 스크립트 존재+실행 비트, ensure-deps 멱등, Stop 훅 서버 부재 안전성, monitor 스크립트 스모크(기동·소음 필터·SIGTERM 정리)/plugin marketplace add ./→ install → 새 세션에서 자동 기동 +/maestro:status+ Stop 훅 노트 도착 (USER_GUIDE 체크리스트)🤖 Generated with Claude Code