AgentSkillsCN

research

对主题进行调研,厘清学习所需的概念与术语,并整理至 Obsidian 待办事项中

SKILL.md
--- frontmatter
name: research
description: "주제를 리서치하여 학습에 필요한 개념/용어를 파악하고, Obsidian 백로그로 정리"
argument-hint: "<주제> [카테고리]"
plugin-version: "__PLUGIN_VERSION__"

Research Skill

주제를 깊이 리서치하여 학습에 필요한 개념과 용어를 파악하고, Obsidian 호환 백로그 파일로 정리한다.

활성화 조건

  • "/research <주제>"
  • "<주제>에 대해 리서치해줘"
  • "<주제> 학습 로드맵 만들어줘"

비활성화 조건

  • 특정 개념 하나를 깊게 학습하고 싶을 때 → /til 사용
  • 백로그 진행 상황만 확인할 때 → /backlog 사용
  • 이미 해당 카테고리에 백로그가 있고, 항목을 추가/수정만 하고 싶을 때 → 직접 파일 편집
  • 사용자가 이미 학습 순서를 알고 있고 바로 학습을 시작하고 싶을 때 → /til로 바로 시작

워크플로우

Phase 1: 주제 리서치

  1. 사용자가 제공한 주제를 웹 검색과 문서를 통해 넓게 조사한다
  2. 해당 주제를 이해하기 위해 필요한 개념, 용어, 선행 지식을 파악한다
  3. 개념 간 의존 관계를 분석한다 (A를 알아야 B를 이해할 수 있다)

Phase 2: 백로그 정리

  1. 파악한 개념들을 학습 순서대로 정렬한다 (선행 지식 → 핵심 개념 → 심화)
  2. 각 항목에 간단한 설명(1줄)을 붙인다
  3. 사용자에게 백로그를 보여주고 피드백을 받는다
  4. 사용자가 항목을 추가/제거/순서 변경할 수 있다

Phase 3: 저장

  1. 사용자가 "저장해줘", "정리해줘" 등을 말하면 백로그 파일을 저장한다
  2. ./til/{카테고리}/backlog.md 경로에 저장한다
  3. 카테고리 폴더가 없으면 자동 생성
  4. 이미 backlog.md가 있으면 병합한다:
    • [x]로 완료된 항목은 새 리서치에서 해당 항목이 없어도 반드시 보존한다
    • 동일 이름 항목은 기존 체크 상태([x]/[ ])를 유지한다
    • 새 항목은 기존 섹션(선행 지식/핵심 개념/심화)에 맞춰 추가한다
    • 동일 항목이 새 리서치에서 다른 섹션으로 분류된 경우, 기존 섹션 위치를 유지한다
    • 기존 항목의 설명이나 링크가 달라진 경우, 기존 것을 유지한다 (덮어쓰지 않음)
    • 기존 sources는 보존하고 새 항목만 추가한다 (기존 URL을 덮어쓰지 않음)
  5. TIL MOC에 백로그 링크를 추가한다
  6. 변경된 파일(백로그 + TIL MOC)을 하나의 atomic commit으로 커밋한다
    • 커밋 메시지: 📋 research: {주제} 학습 백로그 - {카테고리}
    • push는 하지 않는다 (로컬 커밋만)

백로그 파일 템플릿

markdown
---
tags:
  - backlog
  - {카테고리}
aliases:
  - "Backlog - {주제}"
updated: YYYY-MM-DD
sources:
  slug-a:
    - https://원본-url-1
  slug-b:
    - https://원본-url-1
    - https://원본-url-2
---

# {주제} 학습 백로그

## 선행 지식
- [ ] [개념A](til/{카테고리}/{slug-a}.md) - 간단한 설명
- [ ] [개념B](til/{카테고리}/{slug-b}.md) - 간단한 설명

## 핵심 개념
- [ ] [개념C](til/{카테고리}/{slug-c}.md) - 간단한 설명
- [ ] [개념D](til/{카테고리}/{slug-d}.md) - 간단한 설명

## 심화
- [ ] [개념E](til/{카테고리}/{slug-e}.md) - 간단한 설명
- [ ] [개념F](til/{카테고리}/{slug-f}.md) - 간단한 설명

템플릿 규칙

  1. 체크박스: Obsidian에서 체크 가능한 - [ ] 형식. 학습 완료 시 - [x]로 체크
  2. 링크: 각 항목은 [표시명](til/{카테고리}/{slug}.md) 형태로 표준 마크다운 링크. /til로 학습 후 TIL 노트가 생기면 자동 연결됨
  3. 3단계 구분: 선행 지식 / 핵심 개념 / 심화로 나눠 학습 우선순위를 표현
  4. 간단한 설명: 항목당 1줄. "이게 뭔지"를 빠르게 파악할 수 있는 정도
  5. updated: 백로그가 마지막으로 수정된 날짜
  6. sources: 각 항목의 slug를 키로, 리서치 시 참조한 원본 URL 목록을 배열로 저장. 하나의 개념에 여러 출처가 있을 수 있다. /til 학습 시 원본 출처로 활용됨. URL이 없는 항목(웹 검색으로 얻은 일반 지식)은 생략 가능

TIL MOC 연동

백로그 저장 시 ./til/TIL MOC.md의 해당 카테고리에 백로그 링크를 추가한다:

markdown
### claude-code
- [Backlog](til/claude-code/backlog.md)
1. [Claude Code 개요](til/claude-code/overview.md)

백로그 링크는 해당 카테고리의 TIL 목록 위에 둔다.

/til과의 연계

  • 백로그에서 학습할 항목을 골라 /til 개념명 카테고리로 학습하면 TIL이 생성된다
  • 백로그 항목이 이미 표준 마크다운 링크([표시명](til/{카테고리}/{slug}.md))이므로, TIL 파일이 생성되면 Obsidian에서 자동으로 연결됨
  • 백로그에 추가된 항목은 다른 스킬(/til, /save)에서 "백로그 항목"으로 인식되어 본문에서 바로 링크로 사용된다
  • 사용자가 직접 Obsidian에서 체크박스를 체크하여 완료를 표시한다

인수 처리

  • 첫 번째 인수: 리서치 주제 (필수)
    • 예: "Kubernetes", "함수형 프로그래밍", "OAuth 2.0"
  • 두 번째 인수: 카테고리 (선택)
    • 예: "devops", "programming", "security"
    • 미지정 시 주제에서 자동 추론

실행 예시

code
/research Kubernetes devops
/research 함수형 프로그래밍
/research OAuth 2.0 security

주의사항

  • 백로그는 "학습해야 할 것"의 목록이지, 학습 내용 자체가 아니다
  • 각 항목의 설명은 1줄로 짧게. 상세 내용은 /til로 학습할 때 작성한다
  • 기존 backlog.md가 있을 때는 덮어쓰지 않고 병합한다
  • 한국어로 작성하되, 기술 용어는 원어 병기 (예: "클로저(Closure)")

피해야 할 실패 모드

  • 백로그가 너무 넓음: 항목이 20개를 넘으면 주제를 더 좁히거나 하위 카테고리로 분리한다
  • 항목이 너무 모호함: "기본 개념" 같은 이름 대신 "MVCC (Multi-Version Concurrency Control)" 처럼 구체적으로 명명
  • 의존 관계 무시: A를 알아야 B를 이해할 수 있는데 B를 선행 지식에 두는 실수. 반드시 의존 순서를 검증
  • 기존 백로그 덮어쓰기: 이미 backlog.md가 있을 때 새 내용으로 통째로 교체하지 않는다. 기존 항목(특히 [x] 완료 항목)을 보존하고 병합
  • 설명 없는 항목: - [ ] [개념](개념.md)만 있고 설명이 없으면, 나중에 이게 뭔지 알 수 없다. 반드시 1줄 설명을 붙인다
  • 민감 정보 포함: 백로그 항목 설명에 회사 내부 시스템명, 실제 URL, 계정 정보 등을 포함하지 않는다. 일반적인 용어로 대체한다

완료 체크리스트 (Phase 3)

저장 시 아래 항목을 모두 확인한다:

  • 백로그 항목이 3단계(선행 지식 / 핵심 개념 / 심화)로 분류됨
  • 각 항목에 1줄 설명이 있음
  • 기존 백로그가 있으면 병합됨 (완료 항목 [x] 보존)
  • TIL MOC에 백로그 링크(- [Backlog](til/{카테고리}/backlog.md))가 추가됨
  • sources frontmatter에 원본 URL이 있는 항목은 모두 매핑됨
  • 사용자에게 /til로 학습을 시작하는 방법을 안내함