Community생산성 & 협업github.com

loselen/test-me

하나의 학습 결과를 확인하는 짧은 활동을 설계하고, 루브릭으로 학습자의 시도를 평가하며, 맞춤형 피드백과 힌트를 제공하고, 모든 시도를 SQLite에 기록한 후 결과 충족 여부를 판단합니다. teach-me 단계가 끝날 때마다 사용하세요.

test-me란 무엇인가요?

test-me 스킬은 하나의 학습 결과(outcome)가 학습자에 의해 충족되었는지 확인하기 위해 설계된 형성 평가 도구입니다. 이 스킬은 여러 교육학적 연구(Black & Wiliam의 형성 평가, Wiliam의 힌지 질문, Biggs의 구성적 정렬 등)에 기반하여, 학습자가 단순히 인식하는 것이 아니라 실제로 생산(production)하도록 요구하는 과제를 설계합니다. 각 학습 결과에 대해 2~3개의 문항(힌지 문항, 생산 문항, 생성 문항)을 계획하고, 학습자의 답변을 2~4 기준 루브릭으로 평가하여 '정답', '부분 정답', '오답'으로 판정합니다. 오답은 실수(slip), 결함(gap), 오개념(misconception)으로 분류하고 단계별 힌트를 제공합니다. 모든 시도는 SQLite 데이터베이스에 기록되며, 마지막 3개 항목이 연속으로 정답이고, 최소 하나가 생산/전이 항목이며, 힌트 4단계를 사용하지 않고, 학습자가 적절한 확신 수준으로 올바른 설명을 제공한 경우에만 결과가 충족된 것으로 판단합니다. 이 스킬은 Claude Code를 포함한 모든 AI 에이전트 환경에서 사용할 수 있으며, `${CLAUDE_SKILL_DIR}` 환경 변수를 통해 스킬 폴더 경로를 참조합니다.

지원 대상✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/loselen/learn-anything/tree/HEAD/skills/test-me

Installed? Explore more 생산성 & 협업 skills: steipete/gemini, steipete/gh-issues, steipete/skill-creator · View all 6 →

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

test-me은(는) 무엇을 하나요?

하나의 결과(outcome)를 정확히 그 결과가 명명하는 능력을 요구하는 과제로 확인하고, 답변이 보여주는 것에 따라 행동하세요.

기반 연구: 형성 평가(Black & Wiliam 1998), 힌지 질문(Wiliam 2011), 구성적 정렬(Biggs 1996), 인식보다 생산(McDaniel et al. 2007), 생성적 과제(Fiorella & Mayer 2016), 루브릭(Jonsson & Svingby 2007), 정교한 피드백(Shute 2008; Hattie & Timperley 2007), 조건부 스캐폴딩 및 힌트 사다리(Wood et al. 1976; Aleven et al. 2016), 버그 분석(Brown & Burton 1978), 숙달 기준(Kelly et al. 2015).

데이터베이스: 번들 스크립트를 학습자의 프로젝트 루트(채팅이 시작된 폴더)에서 실행하세요. 데이터는 ./.learn/learn.db에 저장됩니다. ${CLAUDE_SKILL_DIR}은 이 스킬의 폴더입니다. Claude Code가 이 값을 채우며, 다른 에이전트는 이 SKILL.md가 포함된 폴더의 경로를 사용해야 합니다.

1. 활동 설계

과제를 결과의 동사(verb)에 맞추세요: "설명하라"면 설명을 요구하고, "풀어라" 또는 "작성하라"면 수업과 다른 표면 세부 사항을 가진 새로운 문제를 제시하며, "디버그하라"면 고쳐야 할 결함이 있는 작업을 제시하세요.

2~3개 항목을 계획하고, 메시지당 하나씩 제시하세요:

  1. 힌지 항목: 객관식 질문 또는 "무슨 일이 일어날지 예측하세요" 유형으로, 모든 오답이 특정 오개념과 일치해야 합니다. 정답은 추측하기 어려워야 합니다.
  2. 생산 항목: 학습자가 새로운 문제(근접 전이)에 대해 스스로 답을 생산합니다.
  3. (선택 사항) 생성 항목: 이유를 설명하거나, 오류를 찾거나, 약간 다른 상황에 적용하세요.

수업이나 이전 시도의 항목을 절대 재사용하지 마세요.

2. 각 답변 평가

  1. 답변 직후 "확신도는 얼마인가요: 1 추측, 2 어느 정도 확신, 3 확실"을 질문하세요.
  2. 결과의 기준(예: 올바른 결과, 타당한 추론, 올바른 용어)에서 가져온 2~4 기준 루브릭으로 판단하세요. 평결: correct, partial, 또는 incorrect.
  3. 오답인 경우 오류를 분류하세요: 실수(slip), 결함(gap) (필수 선수 지식 누락), 또는 오개념(misconception) (일관된 잘못된 규칙).

3. 피드백 제공

짧게 유지하고, 작업에 관한 내용으로, 세 가지 질문에 답하세요:

  • 잘한 점: 구체적인 한 가지, 학습자의 답변을 인용하여.
  • 문제점: 가장 중요한 한 가지 이슈, 최종 답변이 아니라 방법 수준에서.
  • 다음 단계: 하나의 구체적인 행동.

학습자가 확신했지만 틀렸다면, 솔직히 말하세요("당신은 확신했지만, 실패한 이유는 다음과 같습니다"); 이러한 교정이 가장 잘 기억됩니다.

오답인 경우, 새 시도마다 힌트 단계 하나씩을 제공하며, 절대 해결책으로 바로 뛰어넘지 마세요:

  1. 지시 힌트: "2단계를 다시 보세요"
  2. 원리 프롬프트: "...에 적용되는 규칙은 무엇인가요?"
  3. 부분적인 작업 단계
  4. 전체 해결책, 그런 다음 도움 없이 풀어야 하는 새로운 병렬 항목

4. 모든 시도 기록

각 답변을 평가한 후 저장하세요(항목 시도당 한 행):

python3 "${CLAUDE_SKILL_DIR}/scripts/db.py" attempt '{"outcome_id": 7, "activity": "<항목>", "answer": "<학습자 답변>", "verdict": "correct", "feedback": "<간략: 오류 유형, 사용된 힌트 수준, 확신도, 전달한 내용>"}'

텍스트에 어색한 따옴표가 포함된 경우 stdin에 heredoc을 사용하세요.

5. 판단

다음 모든 조건이 충족되면 결과가 충족됩니다:

  • 마지막 3개 항목이 연속으로 정답
  • 그중 적어도 하나는 생산 또는 전이 항목
  • 그중 어느 것도 힌트 단계 4가 필요하지 않음
  • 학습자가 확신도 2 또는 3으로 올바른 설명을 적어도 하나 제공

그런 다음 표시하세요:

python3 "${CLAUDE_SKILL_DIR}/scripts/db.py" met '{"outcome_id": 7}'

이것은 결과가 충족된 날짜를 저장합니다. 결과는 노드에 남은 결과 수를 알려줍니다. teach-me으로 제어권을 넘기세요.

충족되지 않은 경우, 경로를 선택하고 teach-me으로 제어권을 넘기세요:

  • 실수(slip) → 새 항목 하나 더
  • 오개념(misconception) → 갈등을 보이게 하여 재교육한 후, 새 활동
  • 결함(gap) → 누락된 선수 지식을 가르치거나 추가(create-map)
  • 같은 결과에 대해 3회 이상 실패한 활동 → 결과가 너무 큼; 단계를 나누고 더 작게 가르치세요

함정

  • 결과가 생산을 요구할 때 인식 질문을 사용하는 것.
  • 학습자가 어떻게 생각하는지에 대해 아무것도 드러내지 않는 객관식 선택지.
  • 정답 하나로 숙달을 선언하는 것.
  • 항목을 재사용하여 학습자가 생각하는 대신 기억하게 하는 것.
  • 첫 실수에서 답을 제시하는 것.
  • 모든 오류를 한 번에 나열하는 것. 가장 중요한 것부터 먼저 고치세요.

Individual skills in this repo

This repo contains 3 individual skills — each has its own dedicated page.

관련 스킬