ab79a2a72b
- Replace static pipeline diagram with self-driving loop (check memory → decide → execute → repeat) - Remove detailed memory structure JSON schemas from all files - Remove honcho-specific storage strategy from skill (storage is caller's responsibility) - Add auto_repeat section to config.yaml (enabled, max_sessions_per_chat, stop_conditions) - Add rule 8 (auto-repeat) and rule 9 (termination conditions) to execution rules - Add session transition logic to adaptation.md (due cards → review, incomplete → study)
94 lines
3.6 KiB
Markdown
94 lines
3.6 KiB
Markdown
---
|
|
name: self-study-agent
|
|
description: "Autonomous self-study pipeline with feedback loop. Learn topics → test yourself → get feedback → adapt. Uses spaced repetition, interleaving, and desirable difficulty. Stores all knowledge in memory as a structured knowledge base."
|
|
version: 3.0.0
|
|
author: User
|
|
tags: [learning, pipeline, feedback-loop, self-testing, spaced-repetition]
|
|
dependencies: [websearch, webfetch]
|
|
---
|
|
|
|
# Self-Study Agent
|
|
|
|
자율 학습 파이프라인입니다. 학습 → 자기 평가 → 피드백 → 적응 루프를 통해 지식을 구축합니다.
|
|
|
|
**이 스킬은 학습과 평가만 담당합니다.** 메모리 저장은 에이전트가 처리합니다.
|
|
|
|
## 실행 구조
|
|
|
|
한 번의 실행으로 에이전트가 메모리 상태에 따라 자동으로 다음을 반복합니다:
|
|
|
|
```
|
|
[시작]
|
|
│
|
|
├─ 1. 메모리 확인
|
|
│ ├─ due 카드 존재 → 복습 세션 실행
|
|
│ ├─ 미완료 주제 존재 → 새 학습 세션 실행
|
|
│ └─ 모두 완료 → 새 주제 탐색
|
|
│
|
|
├─ 2. 학습/복습 세션
|
|
│ ├─ Phase 1: 주제 선택 → 소스 발견 → 추출 → 종합
|
|
│ └─ Phase 2: 자기 평가 루프 (최대 20회)
|
|
│
|
|
├─ 3. 결과를 메모리에 저장
|
|
│
|
|
└─ 4. 다시 1번으로 → 반복
|
|
(종료 조건 충족 시까지)
|
|
```
|
|
|
|
**종료 조건**: due 카드 0, 미완료 주제 0, 최대 세션 도달
|
|
|
|
## 파이프라인 단계
|
|
|
|
| 단계 | 파일 | 설명 |
|
|
|------|------|------|
|
|
| 1 | `pipeline/01-topic-selection.md` | 주제 선택 (목표/호기심/트렌드/복습) |
|
|
| 2 | `pipeline/02-source-discovery.md` | 소스 발견 (웹/학술/GitHub/문서) |
|
|
| 3 | `pipeline/03-extraction.md` | 지식 추출 (개념/팩트/절차/코드) |
|
|
| 4 | `pipeline/04-synthesis.md` | 지식 종합 (연결/요약/학습 목표) |
|
|
| 5 | `pipeline/05-session-report.md` | 세션 리포트 출력 |
|
|
|
|
## 피드백 루프 단계
|
|
|
|
| 단계 | 파일 | 설명 |
|
|
|------|------|------|
|
|
| F1 | `feedback/self-testing.md` | 문제 생성 + 답변 + 피드백 |
|
|
| F2 | `feedback/spaced-repetition.md` | 간격 반복 (FSRS 알고리즘) |
|
|
| F3 | `feedback/interleaving.md` | 교차 학습 (주제 혼합 출제) |
|
|
| F4 | `feedback/adaptation.md` | 적응 로직 + 메트릭 |
|
|
|
|
## 실행 규칙
|
|
|
|
1. **능동적 회상** — 문제를 풀 때 메모리에서만 꺼냄 (소스 접근 금지)
|
|
2. **피드백은 에이전트가 생성** — 정오 판정 + 설명 + 관련 개념 링크
|
|
3. **모든 학습 결과는 메모리에 저장**
|
|
4. **간격 반복 적용** — FSRS 알고리즘으로 복습 스케줄 관리
|
|
5. **교차 학습** — 한 세션에서 여러 주제 문제를 혼합 출제
|
|
6. **바람직한 난이도** — 정답률에 따라 난이도 자동 조절
|
|
7. **루프 20회 제한** — 충분한 학습 기회 보장
|
|
8. **자동 반복** — 세션 종료 후 메모리를 확인하여 due 카드/미완료 주제가 있으면 즉시 다음 세션을 자동으로 실행
|
|
9. **종료 조건** — due 카드 0, 미완료 주제 0, 최대 세션 도달 시 종료
|
|
|
|
## 예시 흐름
|
|
|
|
```
|
|
[실행 시작]
|
|
→ 메모리 확인: due 카드 없음, 미완료 주제 "Rust Async"
|
|
→ 새 학습 세션 시작
|
|
|
|
[학습 세션]
|
|
주제: Rust Async
|
|
소스: rust-lang.org, tokio.rs
|
|
추출 → 종합 → 메모리에 저장
|
|
|
|
[자기 평가 루프]
|
|
1회: "Rust의 Future란?" → 정답
|
|
2회: "Tokio에서 spawn은?" → 정답
|
|
3회: "Async/Await의 차이점은?" → 오답 → 피드백 → 재학습
|
|
...
|
|
20회: 정답률 92% → 종료 → 메모리에 저장
|
|
|
|
[자동 반복]
|
|
→ 메모리 확인: due 카드 3개 (복습 필요)
|
|
→ 복습 세션 자동 실행
|
|
```
|