Othman-Benbrahim/SPC-심볼릭 프롬프트 압축
최소한의 심볼릭 DSL, 로컬 로제타 스톤, 그리고 클로드 실행 스킬을 통해 LLM 세션의 토큰 비용을 절감합니다.
개요
SPC(Symbolic Prompt Compression)는 토큰 사용을 최적화하기 위해 사용자 정의 심볼릭 언어를 사용하는 Claude Code용 경량 스킬입니다. 사용자는 일반적으로 긴 명령어를 의미나 기능을 잃지 않으면서 간결한 심볼로 대체함으로써 반복적인 프롬프트와 일상적인 패턴과 관련된 오버헤드를 제거할 수 있습니다.
핵심 심볼
다음은 기본 심볼릭 레퍼토리입니다:
| 심볼 | 확장 의미 | 예시 |
|---|---|---|
$C | 컨텍스트 (Chat Context) | $C:코드베이스 개요 → 다음 컨텍스트를 고려하세요: [codebase overview] |
$R | 역할 (Role) | $R:리뷰어 → 당신은 코드 리뷰어 역할을 합니다 |
$A | 행동 (Action) | $A:리팩터 → 지정된 함수를 리팩터링하세요 |
$S | 요약 (Summarize) | $S → 이전 대화를 한 문장으로 요약하세요 |
$L | 로깅 (Log) | $L:작업_시작 → 에이전트 로그 시스템에 '작업_시작'을 기록하세요 |
$T | 작업 (Task) | $T:버그 수정 → 사용자가 요청한 작업을 실행하세요: 버그 수정 |
사용법
- 활성화: 설치 후 Claude Code는 자동으로 심볼 매처를 등록합니다.
- 작성: 명령을 입력할 때 위의 심볼을 사용하세요.
- 실행: Claude Code가 자동으로 심볼을 확장하여 일반 텍스트로 처리합니다.
예시
입력:
$R:코드리뷰어 $A:분석 $T:src/main.py 리뷰
확장 출력:
당신은 코드 리뷰어 역할을 합니다. 요청된 파일 src/main.py를 분석하세요. 주의할 점: 성능, 가독성, 보안.
고급 기능
- 로컬 로제타 스톤: 재정의나 새 심볼을 위해
~/.spc/rosetta.json을 편집하세요. - 상세 모드: 컨텍스트 디버깅을 위해
$V:true를 사용하세요. - 체이닝:
$R:개발자 $A:코딩 $S와 같이 여러 심볼을 결합하세요.
제한 사항
- 심볼릭 확장은 사용자 정의 매핑에 의해 정의되며, 기존의 시스템 프롬프트를 변경하지 않습니다.
- 복잡한 체인은 상세 플래그 없이 디버깅하기 어려울 수 있습니다.
- 현지화는 현재 영어와 프랑스어 심볼을 지원합니다.
스킬 구성 요소
spc_symbolic_compression.py: 심볼 등록 및 확장 로직.rosetta.json: 사용자 정의 심볼릭 매핑.README.md: 문서 및 예시.
라이선스
MIT