이슈 #236
Ryan Lee이(가) 7달 전에 변경
Jade의 프리셋 적용
## 완료 내역
- AXI 프리셋(`docs/AXI_instructions.md`)을 시스템 프롬프트로 주입 (`src/services/api/anthropic.ts:47`)
- Anthropic messages API의 `system` 블록과 `messages` 배열을 분리 조합
- `system`: AXI_INSTRUCTIONS (프리셋) + `cache_control: { type: 'ephemeral' }` 로 프롬프트 캐싱
- `messages`: user/assistant 대화 히스토리 (역할별)
- 사용자 메시지는 `wrapUserInput()`으로 `[사용자 입력]...[/사용자 입력]` 마커 래핑하여 시스템 프롬프트와 명확히 분리 (`src/stores/chatStore.ts:116-118`)
- `StreamChatOptions.system` 파라미터로 호출 측에서 프리셋 오버라이드 가능 (기본값 AXI_INSTRUCTIONS)
## 주요 파일
- `src/services/api/anthropic.ts` — `streamChat({ messages, system })` 조합 및 호출
- `docs/AXI_instructions.md` — AXI 프리셋 본문 (babel의 markdown transformer로 import)
- `src/types/markdown.d.ts` — `.md` import 타입 선언
- `src/stores/chatStore.ts` — 사용자 입력 래핑
## 관련 커밋
- `e019bca` (fixes ref #236) — 시스템 + 사용자 프롬프트 조합 로직
- `05e9836` — AXI §8 하이재킹·내부 지침 노출 방지 보강
뒤로