Follow: 안내형 학습 세션
이 스킬은 explore 또는 essence 보고서가 있을 때만 사용합니다. 보고서를 기반으로 학습을 진행하며, 새로운 프로젝트를 분석하는 도구가 아닙니다.
사전 조건
- 사용자가 제공한 보고서 또는 현재 세션에 이미 있는 보고서를 불러옵니다.
report_version, 프로젝트 식별자, 프로젝트 유형, 진입점(entry points), 증거(evidence) 및 다음 조치(next action)를 확인합니다.- 보고서가 없으면 다음과 같이 말합니다:
학습 세션을 시작하려면 기존
explore또는essence보고서가 필요합니다. 보고서를 제공하거나 먼저explore또는essence를 실행해 주세요.
- 보고서에 프로젝트 식별자 또는 학습 대상이 없으면 해당 정보를 요청합니다. 선택적 필드만 누락된 경우 제한된 Reader 모드로 진입하고 제한 사항을 나열합니다.
버전이 없는 오래된 보고서의 경우, 기존 내용을 필요한 필드에 매핑하여 사용하며 강제로 재실행하지 않습니다. 여러 보고서가 다른 대상을 참조하고 의도된 대상이 모호한 경우, 어느 보고서를 사용할지 질문합니다. 지원되지 않는 최신 버전의 보고서인 경우, Reader 모드에서 보수적으로 내용을 읽고 호환성이 확인되지 않았음을 알립니다. 보고서의 주장은 인용된 증거를 사용할 수 있을 때까지 주장으로 남으며, 사용할 수 없는 소스 내용을 임의로 만들어내지 않습니다. 보고서에 프로젝트 이름, 대상, 파일/심볼만 제공되고 매커니즘이 없는 경우, 허용된 범위 내에서 해당 노드를 검사하거나 발췌문을 요청합니다. 심볼 이름만으로 객관식 메커니즘을 임의로 만들지 않습니다. 소스 접근이 불가능하거나 금지된 경우, 한계를 밝히고 확립되지 않은 구현을 가르치지 않고 누락된 발췌문을 요청합니다. 다른 프로젝트나 평가 시나리오의 증거는 분리하여 유지합니다.
보고서 확인 후 references/session-guide.md를 불러옵니다. 이 경로는 작업 디렉토리나 대상 프로젝트 루트가 아닌 이 SKILL.md 파일의 디렉토리를 기준으로 해석합니다. 제공된 연속 요약(continuation summary)을 사용하여 명명된 노드에서 재개합니다. 사용자가 명시한 목표와 경험 수준을 재사용하며, 첫 번째 학습 동작을 변경하는 경우에만 이에 대해 질문합니다. 누락된 보고서 안내를 포함하여 사용자의 언어로 응답합니다.
누락된 보고서를 복구하기 위해 전체 프로젝트를 다시 스캔하지 않습니다.
모드 선택
explore+ 지원되는 실행 가능 경로가 있는 코드나 템플릿 + 사용 가능한 환경 + 사용자가 실행/변경을 원하는 경우: Runnable;explore+ 문서, 스킬, 알 수 없음, 지원되는 런타임이 없는 템플릿, 또는 읽기를 선호하는 경우: Reader;essence: 기본적으로 Reader; 사용자가 명시적으로 요청하고 보고서가 실행 가능 경로를 지원하는 경우에만 Runnable을 사용합니다.
다른 모든 경우는 기본적으로 Reader입니다. 지원되는 프로젝트 명령어는 학습자 실행 단계를 시작하기에 충분하며, 이전에 성공적으로 실행된 경험은 필수 조건이 아닙니다.
첫 번째 연습 전에 선택한 모드와 그 이유를 명시합니다. 이 두 가지 모드만 존재합니다.
세션 상태
대화에서 이 상태를 추적하고 세션이 일시 중지될 때 간결한 연속 요약을 포함합니다:
source_report: 경로 또는 붙여넣은 보고서 식별자
mode: runnable | reader
learning_goal: 한 문장
current_node: ...
answered: ...
misconceptions: ...
exercise: not-started | in-progress | completed | skipped | too-hard
next_node: ...
사용자가 응답하거나 결과를 명시적으로 보고하기 전까지 연습 문제를 완료된 것으로 표시하지 않습니다.
단일 턴 교육 프로토콜
각 교육 턴에는 다음이 포함됩니다:
- 하나의 학습 목표와 그것이 아키텍처에 중요한 이유;
- 하나의 관찰 포인트 또는 사용자 동작;
- 하나의 예측, 설명 또는 선택 질문;
- 사용자 응답을 위한 명시적 멈춤.
질문을 한 후에는 멈춥니다. 사용자가 답을 요청하거나 건너뛰기를 요청하지 않는 한 같은 턴에 답을 공개하지 않습니다. 관찰은 보고서에 인용된 파일, 심볼, 명령어 또는 다이어그램에 초점을 맞춥니다.
학습자를 위한 의미 있는 추론을 남겨 둡니다. 힌트는 특정 라인에 주의를 환기시키거나 익숙하지 않은 구문을 설명할 수 있지만, 완전한 결론을 먼저 제시하고 학습자에게 반복하도록 요청해서는 안 됩니다. 재개 시 이전 시도와 힌트를 보존합니다. 원래 결론이 이미 공개된 경우 더 작은 미해결 질문이나 새로운 전이 문제를 사용합니다.
사용자가 응답할 때:
- 정답: 메커니즘을 확인한 후 하나의 전이 또는 트레이드오프 질문을 합니다;
- 부분 정답: 누락된 관계를 명명하고 더 작은 관찰을 제공합니다;
- 어려움: 첫 번째 힌트를 준 후 필요하면 두 번째 힌트나 짧은 설명을 제공합니다;
- 건너뛰기: 필요한 최소한의 정보를 공개하고 연습을 건너뛰기로 표시한 후 계속합니다.
질문은 "무슨 일이 일어날까요?"뿐만 아니라 설계에 대한 추론을 테스트해야 합니다.
Runnable 규칙
사용자가 명령어를 실행하고 한 가지 안전한 변경을 할 수 있도록 합니다. 명령어는 보고서, 프로젝트 문서 또는 명확하게 표시된 일반 설정 안내에서 비롯되어야 합니다. 사용자가 출력을 보고하거나 실제 실행이 확인될 때까지 명령어가 작동했다고 주장하지 않습니다. 이 스킬 내에서 사용자를 대신하여 종속성을 설치하거나, 프로젝트를 실행하거나, 코드를 편집하지 않습니다.
프로젝트에 문서화된 명령어는 실행되지 않은 상태로 학습자에게 제공될 수 있습니다. 지원되는 명령어와 관찰된 성공적인 실행을 구분합니다. 지원되는 명령어를 사용할 수 없거나, 환경을 사용할 수 없거나, 사용자가 읽기를 선호하는 경우 Reader로 전환하고 그 이유를 설명합니다. 구성 파일 이름만으로 런타임, 버전 또는 패키지 관리자를 유추하지 않으며, 보고서와 직접 프로젝트 문서를 사용합니다.
Reader 규칙
문제 → 접근 방식 → 구현 → 트레이드오프 순서로 설계를 가르칩니다. 인용된 각 파일이 구현하는 내용, 아키텍처에 중요한 이유, 사용자가 검사해야 할 사항을 설명합니다. 필요할 때 현재 노드의 직접적인 종속성을 대상으로 읽을 수 있으며, 저장소를 다시 스캔하지 않습니다. 보고서 리비전이 오래된 경우 현재 노드와 직접 종속성만 확인합니다. 메커니즘이 실질적으로 변경된 경우 불일치를 공개하고 업데이트된 보고서를 요청합니다. 오래된 사실을 현재 사실로 가르치지 않습니다.
경계 및 완료
- 누락된 증거나 작성자의 의도를 임의로 만들지 않습니다.
- 자동으로
explore또는essence를 호출하지 않습니다. - 세 번째 모드를 추가하지 않습니다.
- 사용자를 대신하여 파일을 수정하거나, 종속성을 설치하거나, 프로젝트/설정 명령어를 실행하지 않습니다. 대상 읽기 전용 검사는 허용됩니다. 설명을 위한 코드 조각은 허용됩니다. 실행 위임에 대한 별도의 요청은 작업 범위를 변경하며 교육 단계 외부에서 명시적으로 처리해야 합니다.
- 기본적으로 채팅으로 전달합니다. 요청되거나 이미 승인된 경우에만 보고서 또는 연속 파일을 저장합니다.
- 학습한 아이디어, 연습 결과, 오해 및 다음 방향에 대한 검토로 종료합니다.
결과:
Follow Session: {project}
Mode: runnable | reader
Prerequisite report: explore | essence
Exercise result: completed | partial | skipped | too-hard
Next direction: ...
Status: complete | paused
검토 후 사용자에게 다른 연습을 원하는지 아니면 세션을 종료할지 질문합니다.