From study-assistant
수업 관련 문제를 텍스트 또는 이미지로 받아 정형화된 포맷으로 재정의(문제, 보기)하고 정답과 해설을 제공하는 스킬. 사용자가 "이 문제 풀어줘", "정답 알려줘", "문제 해설해줘", "이거 답이 뭐야", "문제 사진 보내줄게", "solve" 등을 요청하거나, 문제 텍스트를 붙여넣거나 문제 이미지(스크린샷/사진)를 첨부할 때 사용한다.
How this skill is triggered — by the user, by Claude, or both
Slash command
/study-assistant:solve-questionThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
수업 내용에 포함되는 문제를 텍스트 또는 이미지로 입력받아, 문제를 정형화하고 정답과 해설을 제공한다.
수업 내용에 포함되는 문제를 텍스트 또는 이미지로 입력받아, 문제를 정형화하고 정답과 해설을 제공한다.
사용자가 문제를 제공하는 방식은 두 가지이다.
# 이미지 입력 처리
# uploads 폴더에 업로드된 이미지를 Read 도구로 읽기
# Read(file_path='/sessions/{session_id}/mnt/uploads/문제사진.png')
# → 시각적으로 문제 내용을 파악
입력된 문제의 유형을 판별한다:
원본 문제를 정형화된 포맷으로 재구성한다.
## 문제 재정의
**과목**: [과목명] (담당교수: [교수명])
**시험**: [시험 구분]
**문제 N번** ([문제유형], [배점])
> [문제 본문]
| 보기 | 내용 |
|------|------|
| ① | [보기 1] |
| ② | [보기 2] |
---
## 정답: [번호 또는 답]
## 해설
[왜 정답인지 설명]
[객관식이면 오답 보기 각각에 대한 분석]
## 출처
| 과목 | 주차 | 섹션 |
|------|------|------|
| [과목명] | [N주차] | [해당 섹션/학습단계 제목] |
해설 마지막에 반드시 출처 섹션을 추가한다. 출처는 아래 우선순위로 결정:
import os
SESSION_BASE = '/sessions/{session_id}'
MNT = os.path.join(SESSION_BASE, 'mnt')
SYSTEM_DIRS = {'uploads', '.claude', '.skills', '.local-plugins',
'.cowork-lib', '.cowork-perm-req', '.cowork-perm-resp'}
def find_source_in_notes(keywords):
"""전체 과목 강의노트에서 키워드를 검색하여 출처를 반환"""
# Grep 도구로 전체 강의노트 검색
# pattern: 키워드
# path: /sessions/{session_id}/mnt/
# glob: "**/강의노트/*.md"
# output_mode: "content" (-B 2 -A 2로 컨텍스트 확보)
#
# 검색 결과에서:
# 1. 파일 경로 → 과목명 + 주차 번호 추출
# 2. 매칭 라인 위의 가장 가까운 ## 헤더 → 섹션명 추출
pass
문제의 핵심 키워드 2~3개로 Grep 검색을 실행한다:
Grep(pattern="키워드", glob="**/강의노트/*.md", output_mode="content", -B=5)
검색 결과에서:
03주차-강의노트.md) → 주차 추출.../[4-1] 머신러닝/강의노트/...) → 과목명 추출## 헤더 → 섹션(학습단계) 추출## 출처
| 과목 | 주차 | 섹션 |
|------|------|------|
| 머신러닝 | 3주차 | 모델 성능 평가 > 교차 검증 |
> 3주차 강의노트 "교차 검증" 섹션에서 K-Fold CV의 원리를 다루고 있습니다.
강의노트에서 찾을 수 없는 경우:
## 출처
해당 내용은 현재 작성된 강의노트에서 확인되지 않습니다.
미리알림 일정 기준으로 **머신러닝 4주차 (모델 검증 전략)**에서 다룰 가능성이 높습니다.
사용자가 여러 문제를 한 번에 제공하면:
| 번호 | 정답 | 키워드 | 출처 |
|------|------|--------|------|
| 1 | ③ | 비지도학습 | 머신러닝 12주차 |
| 2 | ① | 정규화 | 빅데이터기초수학 3주차 |
| 3 | O | 과적합 | 머신러닝 3주차 |
코딩 문제인 경우 추가 처리:
# 코딩 문제는 Bash 도구로 실제 실행하여 결과 검증
# python3 -c "실행할 코드"
1. 입력 판별 (텍스트 vs 이미지)
2. 이미지면 Read 도구로 시각적 인식
3. 문제 유형 판별 (객관식/O·X/단답형/서술형/코딩)
4. 문제 재정의 (정형화된 포맷으로 재구성)
5. 정답 도출 (강의노트 참조 가능)
6. 해설 작성 (정답 이유 + 오답 분석 + 개념 요약)
7. 코딩 문제면 실제 실행으로 검증
npx claudepluginhub cjrain-12505614/study-assistant-marketplace --plugin study-assistantCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.