플러그인 비용과 사용량 측정
기준일: 2026-10-23
공식 기준: Measure plugin cost and usage
개요
플러그인이 활성화된 모든 세션에는 그 플러그인의 skill, agent, command의 이름과 설명이 Claude의 컨텍스트에 들어가며, 플러그인이 쓰이든 말든 그 토큰은 사용자의 사용량에 잡힙니다. 이 페이지는 플러그인의 그 수치를 보는 법, 유지보수자가 줄이는 법, 사용 기록이 어디에 나타나는지를 다룹니다. 플러그인 작성자와 유지보수자용이며, 조직의 Claude Code 관리자는 조직 전체 측정에서 모든 기기에 대해 같은 질문을 다룹니다.
- 플러그인이 Claude의 행동을 얼마나 안정적으로 바꾸는지 테스트: Test plugins with evals
- 내 세션의 컨텍스트 줄이기: Manage installed plugins와 context window
핵심 개념
| 개념 | 설명 |
|---|---|
| Always-on | skill·agent·command의 이름과 description, when_to_use frontmatter가 활성 세션마다 더하는 토큰 |
| On-invoke | 그 구성요소가 실행될 때만 로드되는 본문의 비용 |
claude plugin details |
플러그인의 구성요소 목록과 예상 토큰 비용을 출력하는 셸 명령 |
| Not used recently | 14일, 10세션 이상 미사용인 플러그인이 /plugin Installed 탭에서 옮겨지는 머리글 |
OTEL_LOG_TOOL_DETAILS=1 |
비공식 플러그인 이름 redaction을 푸는 환경 변수 |
상세
플러그인 비용 측정
플러그인이 Claude의 컨텍스트에 더하는 양은 플러그인 이름과 함께 claude plugin details를 실행해 봅니다. 실행 중인 Claude Code 세션의 프롬프트가 아니라 셸에서 실행합니다. 플러그인이 로드되어 있어야 합니다: 설치됐거나, skills 디렉터리에 있거나, 같은 명령에 claude --plugin-dir ./formatter plugin details formatter처럼 --plugin-dir로 전달. skill 둘, command, agent, hook, MCP 서버 하나씩을 가진 설치된 formatter 플러그인 예:
claude plugin details formatter
formatter 1.0.0
Description: Formats and lints code on save
Source: formatter@my-marketplace
Component inventory
Skills (3) format-all, format-code, lint-fix
Agents (1) style-reviewer
Hooks (1) PostToolUse (harness-only — no model context cost)
MCP servers (1) formatter-tools (tool schemas resolved at runtime; not counted)
LSP servers (0)
Projected token cost
Always-on: ~146 tok added to every session
Per-component (rounded)
component always-on on-invoke
format-code ~40 ~30
lint-fix ~50 ~30
style-reviewer ~40 ~40
format-all < 20 ~30
On-invoke cost is paid each time a skill or agent fires.
Token counts are estimates and may differ from actual usage.
- Component inventory: Claude Code가 플러그인에서 찾은 것. command는 skill과 함께 세므로
format-all이Skills아래 나옴. hook과 MCP 서버는 비용 추정이나 구성요소별 행이 없음. 플러그인 MCP 도구가 더하는 양은 플러그인이 켜진 세션에서/context를 실행해MCP tools범주를 읽음 - Always-on: 플러그인이 활성화된 모든 세션에서 아무것도 실행되지 않아도 skill·agent·command의 이름과 설명이 더하는 토큰. 모든 사용자가 지는 수치이며 줄일 대상
- Per-component: 각 행이 skill·agent·command 하나를 always-on 몫과 on-invoke 비용(그 구성요소가 실행될 때만 로드되는 본문)으로 나눔. always-on 열로 가장 많이 기여하는 구성요소를 찾음
always-on 수치 줄이기
플러그인을 유지한다면 다음 변경이 모든 세션에 더하는 양을 줄입니다. 사용만 한다면 비활성화하거나 제거하는 것이 선택지입니다 (Manage installed plugins). always-on 수치는 각 구성요소의 이름과 description, when_to_use frontmatter를 셉니다.
- skill과 agent 설명을 줄임
- 큰 플러그인을 나눠 사용자가 필요한 구성요소만 설치하게 함
skill 설명은 Claude가 요청과 맞추는 기준이기도 하므로 더 짧으면 skill이 발동하지 않을 수 있습니다. 설명을 줄인 뒤에는 eval suite의 tool_used: Skill grader로 발동을 확인하세요. 구성요소 종류별 기여는 plugin components.
설치 전에 사용자에게 보이는 비용
공식 마켓의 플러그인은 설치 전에 비용을 사용자에게 보여 줍니다. /plugin에서 사용자가 마켓의 플러그인 목록을 둘러보다 플러그인을 선택하면 상세 pane에 Every turn: 줄과 When invoked: 줄이 있는 Context cost 섹션이 나옵니다. always-on 수치가 2,000 토큰 이상이면 Every turn: 줄이 강조됩니다. 자체 마켓의 플러그인에는 Context cost 섹션이 없습니다.
플러그인 사용 여부 확인
Claude Code는 플러그인 사용량을 작성자에게 보고하지 않습니다. 사용은 플러그인을 설치한 각 사람의 기기에 기록되므로 알 수 있는 것은 그들과의 관계에 달려 있습니다.
- 그 조직의 Claude Code 관리자: OpenTelemetry 이벤트와 Analytics API가 모든 기기에서 설치와 skill 활성화를 셈. 조직 전체 측정
- 물어볼 수 있는 팀원: 각 사용자의 Claude Code가 플러그인을 아직 쓰는지 네 곳에서 보여 줌:
/plugin패널,/skill-doctor,/doctor,/usage. 모두 사용자가 자기 기기 세션의 Claude Code 프롬프트에서 실행하는 명령 - 둘 다 아님: 그 플러그인에 대한 Claude Code의 사용 신호가 없음
Anthropic 디렉터리에 등록된 플러그인의 사용량은 claude.com의 Track published plugin usage.
/plugin의 Not used recently
/plugin의 Installed 탭에서 마켓에서 설치한 플러그인이 14일 이상, 10세션 이상 쓰이지 않으면 Not used recently 머리글 아래로 옮겨집니다. 플러그인 상세에는 Last used: 줄도 나옵니다. 머리글과 줄로 사용자가 할 일은 Find plugins you no longer use. Not used recently 머리글이 나타나지 않는 경우:
--plugin-dir로 로드했거나 skills 디렉터리의 플러그인- managed settings로 활성화했거나 seed 디렉터리에서 마운트한 플러그인
- 테마, output style, monitor, workflow를 포함한 플러그인 (추적되는 호출 없이 쓰이므로)
플러그인의 language server는 진단을 전달하거나 코드 탐색 요청에 답하면 사용된 것으로 치므로, 서버가 세션에서 활성인 LSP 플러그인은 미사용으로 나열되지 않습니다. 사용자의 조직이 strictKnownMarketplaces를 설정하면 머리글도 Last used: 줄도 나타나지 않습니다.
실행되지 않는 skill 찾기
/skill-doctor를 실행하면 각 skill의 비용과 사용 빈도를 봅니다. Claude의 skill 목록에 있지만 한 번도 호출되지 않은 skill을 플러그인 것 포함해 표시합니다. 인터랙티브 세션에서는 리포트가 /plugin 관리자의 Stats 탭에 열립니다. 리포트 범위와 이용 가능한 곳은 Find unused skills.
/doctor의 미사용 플러그인
/doctor 점검이 사용자가 설치한 각 skill, MCP 서버, 플러그인을 나열하고 쓰이지 않은 것의 비활성화를 권장합니다. commands reference의 /doctor.
/usage의 사용 비중
Pro, Max, Team, Enterprise 플랜에서 /usage 분석은 최근 사용량을 skill, subagent, 플러그인, MCP 서버별 전체 대비 비중으로 귀속합니다. Using the /usage command.
조직 전체 측정
조직의 Claude Code 관리자는 두 소스로 모든 기기의 플러그인 비용과 사용량을 측정할 수 있습니다.
- OpenTelemetry 이벤트: exporter를 구성하면 Claude Code가 자체 백엔드로 내보냄. OpenTelemetry 이벤트
- Analytics API: Anthropic의 기록으로 제공, exporter 불필요. Analytics API 조회
플러그인 설치와 사용의 OpenTelemetry 이벤트
| 질문 | OpenTelemetry 이벤트 또는 attribute |
|---|---|
| 어떤 플러그인이 어디서 설치되나 | claude_code.plugin_installed, 설치마다 하나 |
| 몇 세션에서 어떤 플러그인이 활성인가 | claude_code.plugin_loaded, 세션 시작 때 활성 플러그인마다 하나 |
| 어떤 skill이 활성화되고 어느 플러그인 소유인가 | claude_code.skill_activated, 플러그인 skill에 plugin.name, marketplace.name |
| 플러그인 hook이 보고하는 것 | claude_code.hook_plugin_metrics, 공식 마켓 플러그인의 hook에서만 발생 |
| 플러그인이 API 비용으로 얼마인가 | cost counter의 plugin.name, marketplace.name. 활성 skill이나 subagent가 플러그인 소속일 때 설정 |
백엔드의 redaction된 플러그인 이름
공식 마켓 플러그인은 플러그인 이름과 마켓 이름을 백엔드에 그대로 보고합니다. 조직 자체 마켓의 플러그인을 포함한 그 외 모든 플러그인의 이름은 기본적으로 redaction되거나 생략됩니다. 어느 쪽인지는 플러그인의 trust tier가 정합니다. 일부 이벤트에서 실제 이름을 얻으려면 텔레메트리를 내보내는 기기에서 OTEL_LOG_TOOL_DETAILS 환경 변수를 1로 설정하세요 (예: exporter를 구성하는 같은 managed settings의 env 블록).
| 이벤트 | 기본 | OTEL_LOG_TOOL_DETAILS=1 |
|---|---|---|
plugin_loaded |
plugin.name과 marketplace.name이 리터럴 문자열 third-party |
실제 이름 |
plugin_installed, skill_activated |
plugin.name, marketplace.name 생략. skill_activated의 skill.name은 custom_skill |
실제 이름 |
| Cost counter | plugin.name은 third-party, marketplace.name 없음 |
실제 plugin.name, marketplace.name은 여전히 없음 |
plugin_loaded에서는 plugin_id_hash가 기본으로 각 플러그인을 식별하므로 서로 다른 서드파티 플러그인 수를 셀 수 있습니다.
Analytics API 조회
Enterprise 플랜에서 Analytics API가 exporter 없이 Anthropic 기록으로 "조직이 어떤 플러그인을 설치하고 호출하나"에 답합니다. GET /v1/organizations/analytics/plugins는 Claude Code와 Cowork 전반의 플러그인별·일별 설치·호출 수를 반환하며 사용자, RBAC 그룹, 제품별로 묶을 수 있습니다. 플러그인 이름 없이 Anthropic에 도달한 활동은 third-party 집계 행 하나로 나옵니다. Claude Code가 이름으로 보고하는 플러그인은 Find plugins in telemetry. 요청은 read:analytics scope가 있는 API 키로 인증하며 Primary Owner가 Access data programmatically에 설명된 대로 만듭니다. 파라미터와 응답 필드는 endpoint reference.
체크리스트
- 셸에서
claude plugin details <name>으로 always-on과 on-invoke 확인 - 설명을 줄인 뒤
tool_used: Skillgrader로 발동 확인 - 사용 여부는
/plugin,/skill-doctor,/doctor,/usage - 조직 측정은 OpenTelemetry 이벤트 또는 Analytics API
- 서드파티 이름이 필요하면
OTEL_LOG_TOOL_DETAILS=1
함께 보기
기준일
- 문서 작성·동기화 기준일: 2026-10-23 (v2.1.309 반영)
- 원문: https://code.claude.com/docs/en/plugins/measure