CLI 또는 SDK를 유지 관리하고 공식 Anthropic 마켓플레이스에 플러그인이 있다면, 도구가 Claude Code 사용자에게 해당 플러그인을 설치하도록 권유할 수 있습니다. CLI는 Claude Code 내부에서 실행 중임을 감지할 때 stderr에 한 줄 마커를 작성합니다. Claude Code는 마커를 읽고 출력에서 제거한 후 사용자에게 일회성 설치 프롬프트를 표시합니다. Claude Code는 힌트 줄을 명령 출력에서 제거한 후 모델로 전송하므로 마커는 대화에 나타나지 않으며 토큰 사용량에 계산되지 않습니다. 이 프로토콜은 추가 명령이 필요하지 않으며 Claude Code 외부에서 CLI를 실행하는 사용자에게 출력되는 내용을 변경하지 않습니다. 이 페이지는 CLI 및 SDK 유지 관리자를 위한 것입니다. 플러그인 설치를 찾고 있다면 플러그인 발견 및 설치를 참조하세요.Documentation Index
Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt
Use this file to discover all available pages before exploring further.
작동 방식
Claude Code는 Bash 및 PowerShell 도구를 통해 실행하는 모든 명령에 대해CLAUDECODE 환경 변수를 1로 설정합니다. CLI가 해당 변수를 감지하면 자체 종료 <claude-code-hint /> 태그를 stderr에 작성합니다.
Claude Code가 명령 출력을 받으면 다음을 수행합니다:
- 힌트 줄을 스캔하고 출력이 모델에 도달하기 전에 제거합니다
- 힌트가 공식 Anthropic 마켓플레이스의 플러그인을 대상으로 하는지 확인합니다
- 플러그인이 이미 설치되지 않았으며 이전에 프롬프트되지 않았는지 확인합니다
- 힌트를 내보낸 명령의 이름을 지정하는 설치 프롬프트를 사용자에게 표시합니다
힌트 내보내기
CLAUDECODE 환경 변수에서 내보내기를 제어하여 마커가 일반 사용자의 터미널에 나타나지 않도록 합니다. 그런 다음 태그를 stderr에 자체 줄로 작성합니다.
다음 예제는 공식 마켓플레이스에서 example-cli라는 플러그인에 대한 힌트를 내보냅니다:
example-cli를 바꿉니다.
내보낼 위치 선택
힌트를 내보낼 코드 경로를 제어합니다. Claude Code는 플러그인별로 중복 제거하므로 모든 호출에서 내보내는 것은 단점이 없습니다. 잘 작동하는 접점은 다음과 같습니다:| 배치 | 작동하는 이유 |
|---|---|
--help 출력 | Claude는 종종 익숙하지 않은 CLI를 탐색할 때 도움말을 실행합니다 |
| 알 수 없는 하위 명령 오류 | Claude가 인터페이스에 대해 혼동하는 순간에 도달합니다 |
| 로그인 또는 인증 성공 | 사용자가 이미 설정 마음가짐에 있습니다 |
| 첫 실행 환영 메시지 | 자연스러운 온보딩 순간입니다 |
사용자가 보는 것
힌트가 모든 검사를 통과하면 Claude Code는 다음과 같은 프롬프트를 표시합니다:- 플러그인당 한 번: 프롬프트가 표시된 후 Claude Code는 플러그인을 기록하고 사용자의 답변에 관계없이 다시 프롬프트하지 않습니다.
- 세션당 한 번: 머신의 모든 CLI에서 Claude Code 세션당 최대 하나의 힌트 프롬프트가 나타납니다.
힌트 형식
힌트는 세 개의 필수 속성이 있는 자체 종료 태그입니다.| 속성 | 필수 | 설명 |
|---|---|---|
v | 예 | 프로토콜 버전. 1은 유일하게 지원되는 값입니다 |
type | 예 | 힌트 종류. plugin은 유일하게 지원되는 값입니다 |
value | 예 | name@marketplace 형식의 플러그인 식별자 |
요구 사항
Claude Code는 힌트에 대해 조치를 취하기 전에 두 가지 조건을 적용합니다. 두 검사 중 하나라도 실패한 힌트는 삭제됩니다:- 자체 줄: 태그는 자체 줄을 차지해야 합니다. 예를 들어 로그 문 내부에 줄 중간에 포함된 태그는 무시됩니다. 줄의 선행 및 후행 공백은 허용됩니다.
- 공식 마켓플레이스:
value는claude-plugins-official과 같은 Anthropic 제어 마켓플레이스의 플러그인을 참조해야 합니다. 다른 마켓플레이스를 가리키는 힌트는 자동으로 삭제됩니다.
- stderr에 작성: stderr는
example-cli deploy | jq와 같은 셸 파이프라인에서 태그를 제외합니다. Claude Code는 두 스트림을 모두 스캔하므로 stdout도 작동합니다. CLAUDECODE에서 제어:CLAUDECODE환경 변수가 설정된 경우에만 내보냅니다. 이렇게 하면 마커가 CLI를 직접 실행하는 사용자에게 나타나지 않습니다.
공식 마켓플레이스에 플러그인 추가
힌트 프로토콜은 공식 Anthropic 마켓플레이스에 나열된 플러그인에 대해서만 적용됩니다. 플러그인을 제출하려면 앱 내 제출 양식 중 하나를 사용하세요:- Claude.ai: claude.ai/settings/plugins/submit
- Console: platform.claude.com/plugins/submit
참고 항목
- 플러그인 만들기: CLI가 권장하는 플러그인 빌드
- 플러그인 마켓플레이스 만들기 및 배포: 공식 마켓플레이스 외부에서 플러그인 호스팅
- 환경 변수:
CLAUDECODE및 관련 변수에 대한 전체 참조