Claude Code에서 /plugin install github@claude-plugins-official 한 줄을 치면 몇 초 만에 MCP 서버·스킬·서브에이전트·훅이 세션에 붙는다. 편하지만, 실무자라면 곧바로 질문이 생긴다. 그 한 줄 뒤에서 무엇이, 어떤 커밋으로, 누구의 검토를 거쳐 내 디스크에 내려오는가? 오늘(2026-10-17) GitHub Trending 전체 일간 1위에 오른 anthropics/claude-plugins-official은 바로 그 답이 담긴 저장소다. Claude Code가 첫 대화형 실행 때 자동으로 등록하는 공식 마켓플레이스의 실체이자, 315개 항목을 묶은 marketplace.json 한 장과 그것을 지키는 GitHub Actions 공급망 파이프라인이다.

이번 주 Trending에는 이 저장소 말고도 cursor/plugins, android/skills, 에이전트 스킬 라이브러리들이 나란히 올라와 있다. “에이전트 확장을 어떻게 배포·검증할 것인가”가 생태계 전체의 화두라는 뜻이다. 이 글은 플러그인 목록 소개가 아니라 카탈로그의 스키마, 플러그인 해부, sha 고정과 야간 bump, Claude 기반 정책 스캔, 그리고 박스에서 직접 돌린 Claude Code 2.1.302 스모크 결과를 실무 관점에서 해부한다. 수치는 모두 2026-10-17 16:50~16:53(KST)에 main HEAD ea10b21 기준으로 직접 집계한 값이다.
한눈에 보기: 오늘 체크아웃 기준
| 항목 | 값 |
|---|---|
| 저장소 | github.com/anthropics/claude-plugins-official (생성 2025-11-21 KST) |
| 라이선스 | 저장소 Apache-2.0. 단, README는 “각 플러그인의 LICENSE를 보라”고 명시. 내장 plugins/claude-security는 의도적 독점 라이선스(“All rights reserved”) |
| 버전 | GitHub 릴리스 0개 — 롤링 카탈로그. 설치 시 로컬 플러그인의 버전은 마켓플레이스 커밋 해시(ea10b213686c)로 기록 |
| main HEAD | ea10b21 · 2026-10-16 11:40 KST · bump(incident-io) (github-actions[bot]) |
| 카탈로그 규모 | marketplace.json 190,732바이트, 항목 315개, renames 10개 |
| GitHub 지표 | 40,942 stars · 4,423 forks · 열린 이슈 1,163 (API, 2026-10-17 16:53 KST) |
| Trending | 전체 일간 #1, Python 일간 #1, 오늘 +1,552 stars |
| 최대 기여자 | github-actions[bot] — 커밋 대부분이 자동 sha bump |
저장소 구조: 코드보다 ‘정책과 파이프라인’이 본체
트리를 열면 의외로 단순하다. 실제 무게는 루트의 카탈로그 한 장과 .github/ 아래 워크플로·정책 파일에 있다. plugins/와 external_plugins/는 이 저장소 안에 파일째 들어 있는(vendored) 플러그인일 뿐, 카탈로그 항목의 83%는 외부 저장소를 가리킨다.
| 경로 | 역할 |
|---|---|
.claude-plugin/marketplace.json |
단일 카탈로그. $schema, name, owner, renames, plugins[315] |
plugins/ (40개 디렉터리) |
Anthropic 내부 플러그인. 카탈로그에 39개 등록, example-plugin은 레퍼런스용으로 미등록 |
external_plugins/ (14개) |
파트너 플러그인 중 이 저장소에 파일째 들어온 것(github, gitlab, linear, playwright, serena, terraform, telegram, discord 등) |
.github/workflows/ (9개) |
bump·validate·scan·MCP URL·라이선스·frontmatter·외부 PR 통제 |
.github/policy/ |
prompt.md(Claude 보안·프라이버시 리뷰어 프롬프트) + schema.json(판정 JSON 스키마) |
.github/scripts/ |
discover_bumps.py, external-pr-scope.js, validate-frontmatter.ts |
.github/bump-tracking.json |
releases-only 목록(14개) — HEAD가 아니라 릴리스만 따라가는 플러그인 |
카탈로그 스키마: 소스 타입 셋, 고정은 전부 sha
항목마다 name·description·source가 필수이고, 대부분 category·homepage·author를 갖는다. 핵심은 source의 모양이다. 문자열이면 이 저장소 안의 경로, 객체면 외부 저장소다. 직접 집계한 분포는 다음과 같다.
| source 형태 | 개수 | 고정 방식 | 비고 |
|---|---|---|---|
로컬 경로 ("./plugins/x") |
53 | 이 저장소 커밋이 곧 버전 | Anthropic 내부 39 + external_plugins 14 |
git-subdir |
98 | url + path (+ ref 97건) + sha | 모노레포의 하위 폴더만 플러그인으로 노출 (예: adobe/skills의 plugins/creative-cloud/...) |
url |
164 | url + sha | 저장소 전체가 플러그인 |
| 합계 | 315 | 외부 262개 전부 sha 고정, 호스트는 전부 github.com | ref 값: main 86, master 6, ai-plugins-dist 3, 태그 v1.5.5 1 |
ref는 “어느 브랜치를 추적할지”, sha는 “지금 무엇을 설치할지”다. 사용자는 항상 sha로 고정된 바이트를 받고, ref는 야간 bump 작업이 상류 HEAD를 찾을 때만 쓰인다. 이 분리가 이 카탈로그 공급망 설계의 출발점이다.
| category | 항목 수 |
|---|---|
| development | 123 |
| productivity | 69 |
| database | 39 |
| monitoring | 22 |
| security | 18 |
| (카테고리 없음) | 14 |
| deployment | 9 |
| design | 8 |
| automation · learning | 각 3 |
| location · testing · math | 각 2 |
| migration | 1 |
immutable slug, renames, strict:false
README가 가장 강조하는 규칙은 “name은 바꿀 수 없는 slug”라는 점이다. 사용자는 name@claude-plugins-official로 설치하므로, 이름이 바뀌면 다음 동기화에서 plugin-not-found로 깨진다. 표시 이름은 displayName(14개 항목 사용)으로 바꾸고, 정말 불가피하면 최상위 renames 맵에 old → new를 적어 로더가 자동 이전하게 한다. 오늘 기준 10건이 있다(azure-skills → azure, wordpress.com → build-with-wordpress, sonarqube-agent-plugins → sonarqube 등).
strict: false는 “플러그인 쪽에 plugin.json이 없어도 마켓플레이스 항목이 매니페스트 역할을 한다”는 뜻이다. 14개 항목이 쓰며, 12개는 언어 서버(LSP) 플러그인, 2개(amd-skills, learn-with-coursera)는 SKILL.md만 있는 저장소에서 skills 배열로 일부 스킬만 골라 노출하는 skill-bundle이다. 스킬은 <plugin-name>:<skill-name>으로 등록된다.
{
"name": "clangd-lsp",
"version": "1.0.0",
"source": "./plugins/clangd-lsp",
"strict": false,
"lspServers": {
"clangd": {
"command": "clangd",
"args": ["--background-index"],
"extensionToLanguage": { ".c": "c", ".cpp": "cpp", ".hpp": "cpp" }
}
}
}
LSP 플러그인 디렉터리에는 LICENSE와 README.md뿐이다. 실행 정의 전체가 카탈로그에 있고, clangd·typescript-language-server 같은 바이너리는 사용자가 PATH에 직접 설치해야 한다. 플러그인은 “어떤 확장자를 어떤 서버에 붙일지”만 알려 준다.
플러그인 해부: 슬롯 여섯 개와 ‘상시 토큰’

| 슬롯 | 내용 | 실무 포인트 |
|---|---|---|
.claude-plugin/plugin.json |
이름·설명·저자·버전 메타데이터 | 없으면 strict:false 항목이어야 함 |
commands/*.md |
슬래시 명령 | frontmatter 검증 워크플로 대상 |
agents/*.md |
서브에이전트 정의 | 설명이 상시 컨텍스트에 들어감 |
skills/*/SKILL.md |
Agent Skills 표준 스킬 | 이름·설명만 상시, 본문은 호출 시 |
hooks/hooks.json |
SessionStart·PreToolUse·PostToolUse·Stop 등 이벤트 훅 | 하네스에서 실행 — 모델 토큰은 0이지만 로컬 명령 실행 |
.mcp.json |
MCP 서버(stdio 또는 http) | 스키마는 런타임에 해석 |
lspServers |
언어 서버 연결 | 바이너리는 별도 설치 |
내장 플러그인 53개(로컬 경로)를 직접 세 보면 commands 33개, agents 36개, skills 33개, hooks.json 보유 7개, .mcp.json 보유 14개다. 특히 external_plugins/의 14개 중 13개가 MCP 서버를 싣는데, 연결 방식은 http 원격(context7, github, gitlab, linear)과 로컬 stdio(npx playwright·firebase, bun telegram·discord·imessage·fakechat, uvx serena, docker terraform, php laravel-boost)로 갈린다. stdio는 곧 내 PC에서 프로세스를 띄운다는 뜻이다.
Claude Code가 계산해 주는 토큰 비용
2.1.302의 claude plugin details는 컴포넌트 목록과 함께 “매 세션 상시 추가되는 토큰”과 “호출 시 토큰”을 추정해 준다. 박스에서 설치해 본 8개의 결과다.
| 플러그인 | 컴포넌트 | 상시 토큰(추정) | 비고 |
|---|---|---|---|
| code-review | skills 1 | ~13 | 호출 시 ~1.8k |
| context7 | MCP 1 (http) | ~0 | 도구 스키마는 런타임 해석이라 미집계 |
| feature-dev | skills 1 · agents 3 | ~194 | code-explorer·code-architect·code-reviewer |
| hookify | skills 5 · agents 1 · hooks 4 | ~218 | 훅은 하네스 전용(토큰 0) |
| security-guidance | hooks 4 | ~0 | SessionStart·UserPromptSubmit·PostToolUse·Stop |
| claude-security | skills 1 · agents 9 · hooks 4 | ~608 | 독점 라이선스 |
| plugin-dev | skills 8 · agents 3 | ~1,704 | 플러그인 제작용 — 상시 켜 둘 대상은 아님 |
| adobe-for-creativity | skills 15 · MCP 1 | ~2,809 | git-subdir, 버전 3.2.0 |
claude plugin details로 상시 비용을 확인한 뒤 남기자.훅을 쓰는 내장 플러그인 7개
| 플러그인 | 이벤트 | 하는 일 |
|---|---|---|
| hookify | PreToolUse · PostToolUse · Stop · UserPromptSubmit | .claude/hookify.*.local.md 규칙(정규식 + block/warn)을 매 이벤트에 평가 |
| security-guidance | SessionStart · UserPromptSubmit · PostToolUse · Stop | 편집 시 패턴 경고, git commit/push 후 비동기 LLM 리뷰(asyncRewake). SessionStart에서 ~/.claude/security/agent-sdk-venv에 Agent SDK 설치(타임아웃 180s) |
| claude-security | UserPromptExpansion · PostToolUse · PostToolUseFailure · PermissionRequest | 에이전트 9개로 스캔→검증→패치 생성 |
| code-modernization | UserPromptSubmit · Stop · SessionStart · PostToolUseFailure · StopFailure | 레거시 현대화 워크플로 상태 관리 |
| ralph-loop | Stop | 종료를 가로채 같은 프롬프트로 다시 돌리는 ‘Ralph 루프’ |
| explanatory-/learning-output-style | SessionStart | 출력 스타일 지시 주입 |
여기서 눈여겨볼 점은 UserPromptSubmit·PreToolUse 같은 넓은 범위의 훅이다. 매 프롬프트·매 도구 호출마다 로컬 스크립트가 돈다. 정책 스캔 스키마가 has_broad_scope_hooks를 별도 필드로 두는 이유이기도 하다(아래).
공급망: 야간 bump → 검증 → Claude 정책 스캔 → 사람 승인

외부 항목 262개가 전부 sha로 고정돼 있다면, 누군가는 매일 그 sha를 올려야 한다. 이 저장소의 커밋 대부분이 bump(incident-io): 6af50e2e → 00f7d1dc 같은 봇 커밋인 이유다. 워크플로 9개의 역할을 정리하면 다음과 같다.
| 워크플로 | 트리거 | 역할 |
|---|---|---|
| bump-plugin-shas | 매일 07:23 UTC(16:23 KST) | 상류 HEAD가 고정 sha를 지났는지 확인 → 새 sha에서 claude plugin validate → 플러그인별 PR(bump/<slug>). 하루 최대 60건(2026-09에 30→60 상향) |
| validate-plugins | PR · main push | 매니페스트·컴포넌트 검증(필수 체크 validate) |
| scan-plugins | 모든 PR · 수동 | 변경된 외부 항목을 Claude로 정책 리뷰(필수 체크 scan), 판정 캐시 |
| check-mcp-urls | PR · 매일 06:00 UTC | 로컬 플러그인의 http/sse MCP URL 생존 확인. 401/403/405/5xx는 통과, 404/410·DNS·TLS 실패만 탈락 |
| revert-failed-bumps | scan 실패 시 | bump PR에서 실패 항목만 빼고 재스캔 — 한 상류가 나머지를 막지 않게 |
| validate-licenses | plugins/** 변경 | 내장 플러그인마다 Apache 2.0 LICENSE 필수(claude-security만 예외) |
| validate-frontmatter | agents·skills·commands md 변경 | bun으로 frontmatter 검사, 포크 PR은 아예 건너뜀 |
| close-external-prs | pull_request_target | 비멤버 PR 자동 종료 — 단, 이미 등록된 저장소의 항목만 추가하는 PR은 예외 |
| external-pr-scope-guard | 비멤버 PR | 범위 밖 변경이면 실패(신호용 체크) |
Claude가 Claude 플러그인을 심사한다: 정책 스캔의 내부
.github/policy/prompt.md는 리뷰어 모델에게 기준을 “악성이 아닌가”가 아니라 “사용자 데이터를 책임 있게 다루는가”로 잡으라고 지시한다. 로드되는 표면(SKILL.md, agents, hooks)만이 아니라 .claude/, scripts/, tests/ 같은 숨은 디렉터리까지 git 소스로 클론되는 전체 페이로드를 읽으라고 요구하고, 특히 자격 증명을 원래 서비스가 아닌 곳으로 보내는 cross-service 홉(예: ANTHROPIC_* 토큰을 제3자 게이트웨이로 전송)을 명시적으로 위반으로 규정한다. 판정은 아래 JSON 스키마로 강제된다.
| 필드 | 타입 | 의미 |
|---|---|---|
| passes | boolean | 아래 조건을 모두 만족할 때만 true |
| may_make_external_network_calls | boolean | 외부 네트워크 호출 가능성 |
| may_download_additional_software | boolean | 추가 소프트웨어 다운로드 가능성 |
| hooks | string[] | EVENT:path — gated|ungated — network:yes(host)|no 형식으로 훅마다 한 줄 |
| has_broad_scope_hooks | boolean | 프로젝트 관련성 게이트 없는 UserPromptSubmit/PreToolUse/PostToolUse 훅 |
| has_undisclosed_telemetry | boolean | 공개·옵트아웃 없는 비MCP 외부 호출 |
| description_matches_behavior | boolean | plugin.json 설명만 읽은 사용자가 놀랄 동작이 있는가 |
| summary · violations | string | 실패 시 파일·훅과 “사용자가 듣지 못한 것”을 인용 |
비용 설계도 흥미롭다. 판정 캐시 키는 <plugin>@<sha>다. sha는 불변이므로 같은 정책에서 같은 커밋은 한 번만 심사하고, 캐시 전체는 .github/policy/**의 해시에 묶여 프롬프트가 바뀌면 일괄 무효화된다(TTL 30일). 워크플로 주석에 따르면 항목당 스캔은 약 90초의 Claude 시간을 쓴다. 인증은 API 키 시크릿이 아니라 Workload Identity Federation이다.
외부 기여 통제도 “사람”이 아니라 “저장소”를 신뢰한다. external-pr-scope.js의 주석대로, 비멤버 PR은 이미 살아 있는 항목을 뒷받침하는 저장소를 가리키고 그 저장소의 실제 커밋으로 고정된 항목을 추가만 할 때 열린 채 남는다. 그래도 병합에는 CI와 메인테이너 승인이 필요하다. 신규 파트너 등록은 별도 제출 폼 경로다.
설치·운영 명령 치트시트
# Claude Code 세션 안에서
/plugin # Discover 탭에서 검색·설치
/plugin install github@claude-plugins-official
/plugin marketplace add anthropics/claude-plugins-official # 자동 등록이 막혔을 때
# 터미널 CLI (2.1.302 기준)
claude plugin marketplace add anthropics/claude-plugins-official
claude plugin install code-review@claude-plugins-official
claude plugin details code-review@claude-plugins-official # 컴포넌트 + 상시 토큰
claude plugin list --json
claude plugin validate ./my-marketplace # 카탈로그 검증
claude plugin validate --strict ./my-marketplace # 경고도 실패로(CI용)
claude plugin uninstall code-review@claude-plugins-official
| 명령/설정 | 하는 일 | 메모 |
|---|---|---|
claude plugin validate <path> |
plugin.json 또는 marketplace.json 및 skills/agents/commands 검증 | --json, --strict |
claude plugin details <id> |
컴포넌트 인벤토리·토큰 추정 | 도입 전 비용 점검 |
claude plugin eval [target] |
플러그인 eval 케이스 실행(no-plugin 기준선 비교) | 신뢰하는 플러그인만 — 도움말 스스로 ‘보안 심사가 아니다’라고 명시 |
claude plugin tag |
{name}--v{version} 태그 생성, plugin.json과 카탈로그 일치 확인 |
자체 마켓플레이스 릴리스용 |
claude plugin prune |
더 이상 필요 없는 자동 설치 의존성 제거 | 정리 |
CLAUDE_CODE_DISABLE_OFFICIAL_MARKETPLACE_AUTOINSTALL |
공식 마켓플레이스 자동 등록 차단(문서 기준) | 사내 관리형 배포 |
박스 스모크: 직접 돌려 본 결과

박스(x86_64 Linux, Node 20.19.2)에 @anthropic-ai/claude-code@2.1.302를 로컬 prefix로 설치하고, 격리된 HOME에서 로그인 없이 플러그인 CLI만 돌렸다. 모델 호출은 하지 않았다.
| 실험 | 결과 | 판정 |
|---|---|---|
claude plugin validate ./src (카탈로그) |
통과 + 경고 29건(주로 version·author 누락) + README 설치 줄 권고, 0.46s | OK |
validate --strict |
exit 1 — 경고가 실패로 승격 | CI에 그대로 쓰면 깨짐 |
| 로컬 디렉터리 54개 개별 validate | 39 통과 · 15 실패 | 아래 표 참고 |
marketplace add ./src(로컬 경로) |
거부: claude-plugins-official은 anthropics 조직의 GitHub 소스에만 허용되는 예약 이름 |
사칭 방지 확인 |
marketplace add anthropics/claude-plugins-official |
1.1s 성공 (로그인 불필요) | OK |
install code-review |
0.43s, 버전 = 마켓 커밋 ea10b213686c |
로컬 소스 |
install adobe-for-creativity |
1.8s, 버전 3.2.0, gitCommitSha 0f487c9b… = 카탈로그 sha와 일치 |
git-subdir 고정 확인 |
hookify PreToolUse(rm -rf build/) |
permissionDecision: deny + 경고 메시지, 52ms |
규칙 1개 |
hookify PreToolUse(ls -la) |
{}(통과), 34ms |
OK |
| 실패 대상 | 에러 | 해석 |
|---|---|---|
| LSP 플러그인 12개 | No manifest found |
strict:false라 plugin.json이 없음 — 카탈로그 단위로 검증해야 통과 |
| claude-code-setup · claude-md-management · claude-security | Plugin name ... is reserved |
claude- 접두사는 서드파티 금지. Anthropic 자체 플러그인은 카탈로그를 통해서만 유효 |
이 두 실패는 버그가 아니라 설계다. 신뢰의 단위가 개별 플러그인 폴더가 아니라 ‘이름이 예약된 마켓플레이스’라는 점이 검증기 동작에서 그대로 드러난다. 같은 이유로 포크해서 이름만 그대로 로컬에 띄우는 사칭 마켓플레이스는 add 단계에서 막힌다. 반대로 사내 미러를 만들려면 다른 이름의 마켓플레이스로 재구성해야 한다.
$ echo '{"tool_name":"Bash","tool_input":{"command":"rm -rf build/"}}' \
| CLAUDE_PLUGIN_ROOT=.../plugins/hookify python3 hooks/pretooluse.py
{"hookSpecificOutput": {"hookEventName": "PreToolUse", "permissionDecision": "deny"},
"systemMessage": "**[block-dangerous-rm]**\n⚠️ **Dangerous rm command detected!** ..."}
비교: 어디서 에이전트 확장을 받을 것인가
| 경로 | 누가 고르나 | 업데이트 | 공급망 통제 | 성격 |
|---|---|---|---|---|
| claude-plugins-official | Anthropic 큐레이션(포함은 재량) | 자동 등록·기본 자동 업데이트 | 외부 전부 sha 고정 + Claude 정책 스캔 + 승인 | Claude Code 전용 형식 |
| claude-plugins-community | 자동 검증·안전 스크리닝 통과 서드파티 | 수동 add | sha 고정(문서 기준) | 인앱 제출 폼은 여기로 들어감 |
| anthropics/claude-code (demo) | 데모 플러그인 | 수동 add | — | 학습용 |
| 자체 마켓플레이스 | 내가 정함 | 내가 정함(서드파티는 기본 자동 업데이트 꺼짐) | 직접 구축 — 이 저장소 워크플로가 좋은 템플릿 | 사내 배포·감사에 유리 |
vercel-labs/skills (npx skills) |
작성자 저장소 직접 | CLI로 설치 | 락 파일 | 여러 에이전트 런타임에 SKILL.md 배포(훅·MCP 범위 밖) |
| cursor/plugins | Cursor 공식 | Cursor 내 | — | Cursor 플러그인 규격(오늘 Trending #9) |
트레이드오프와 주의점
| 이슈 | 내용 | 대응 |
|---|---|---|
| ‘공식’ ≠ ‘Anthropic이 작성·보증’ | README 첫 경고: MCP 서버·파일·소프트웨어를 Anthropic이 통제하지 않고 동작·불변을 보증하지 않음. 315개 중 Anthropic 내부는 39개 | 설치 전 homepage와 상류 저장소 확인 |
| 자동 업데이트 | 공식 마켓은 기본 자동 업데이트 — 야간 bump가 병합되면 다음 동기화에 새 sha | 고위험 환경은 자체 마켓으로 고정 버전 미러 |
| sha 고정의 범위 | 고정되는 건 플러그인 코드뿐. npx/uvx/bunx stdio MCP가 런타임에 받는 패키지, 원격 http MCP 서버의 동작은 별개 |
MCP 서버 버전도 고정하거나 원격 엔드포인트 신뢰 판단 |
| 훅 = 로컬 코드 실행 | UserPromptSubmit/PreToolUse 훅은 매 이벤트 실행. security-guidance는 SessionStart에 venv를 만들고 SDK를 설치 | 훅 보유 플러그인은 hooks.json을 먼저 읽기 |
| AI 심사의 한계 | 정책 스캔은 LLM 판정 + 캐시. 프롬프트 인젝션을 탐지 항목으로 두지만 완전한 보증은 아님 | 사내 정책은 별도 리뷰 단계 유지 |
| 라이선스 혼재 | 저장소 Apache-2.0, 플러그인별 라이선스 상이, claude-security는 독점. Claude Code CLI 자체도 오픈소스 라이선스가 아님 | 재배포·포크 전 플러그인별 LICENSE 확인 |
| 컨텍스트 세금 | 스킬 많은 번들은 상시 수천 토큰 | details로 측정 후 프로젝트 스코프 |
| 이름 고정 | slug 변경 시 기존 설치 파손 — renames로만 이전 | 자체 마켓도 같은 규칙 채택 |
bump-plugin-shas·scan-plugins·check-mcp-urls 구조를 참고해 사내 CI 구성 ④ 훅·stdio MCP 보유 플러그인은 사람 리뷰 필수 ⑤ claude plugin details 상시 토큰을 예산표로 관리.누가 이 저장소를 깊게 봐야 하나
| 대상 | 얻을 것 | 우선순위 |
|---|---|---|
| Claude Code를 팀 단위로 쓰는 개발 리드 | 무엇이 자동으로 깔리고 업데이트되는지, 어떤 플러그인이 훅·로컬 프로세스를 갖는지 파악 | 높음 |
| 플러그인/MCP 서버를 배포하는 벤더 | immutable slug, renames, git-subdir+sha, README 설치 줄 권고, 정책 스캔 기준(설명과 동작 일치) | 높음 |
| 사내 에이전트 플랫폼·보안팀 | sha 고정 + 야간 bump + LLM 정책 스캔 + 캐시 키 설계를 그대로 차용 가능 | 높음 |
| 개인 사용자 | Discover에서 고르되 details로 비용 확인, 훅 보유 플러그인은 신중히 | 중간 |
| 다른 에이전트 런타임만 쓰는 팀 | 형식은 Claude Code 전용 — 설계 패턴만 차용 | 낮음~중간 |
정리
claude-plugins-official의 진짜 가치는 315개라는 숫자보다 카탈로그를 공급망으로 다루는 방식에 있다. 외부 코드는 전부 sha로 고정하고, 매일 밤 봇이 상류를 따라가며 검증·Claude 정책 스캔·MCP 생존 확인을 거친 뒤에만 사람 승인으로 병합한다. 이름은 바꿀 수 없고, 예약된 이름은 사칭할 수 없다. 다만 고정되는 것은 플러그인 코드까지이고, 런타임에 내려받는 MCP 패키지와 원격 서버, 그리고 매 이벤트 돌아가는 훅은 여전히 사용자의 판단 영역이다. 한 줄 설치의 편리함을 누리되, 그 뒤의 이 파이프라인을 한 번은 읽어 두기를 권한다.