Claude Code Plugins

Community-maintained marketplace

Feedback

cs-guide-writer

@younwony/TIL
0
0

CS 학습 문서를 작성합니다. "오늘의 CS", "CS 정리", "{주제} 정리해줘", "최근 이슈 CS" 요청 시 사용하세요.

Install Skill

1Download skill
2Enable skills in Claude

Open claude.ai/settings/capabilities and find the "Skills" section

3Upload to Claude

Click "Upload skill" and select the downloaded ZIP file

Note: Please verify skill by going through its instructions before using it.

SKILL.md

name cs-guide-writer
description CS 학습 문서를 작성합니다. "오늘의 CS", "CS 정리", "{주제} 정리해줘", "최근 이슈 CS" 요청 시 사용하세요.

CS 문서 작성 도우미

CS-GUIDE.md 템플릿에 맞춰 학습 문서를 작성하는 Skill입니다.

트리거 키워드

  • "오늘의 CS: {주제}" - 특정 주제로 문서 작성
  • "오늘의 CS" - 주제 미지정 시 옵션 제안 (아래 참고)
  • "CS 정리: {주제}"
  • "{주제} 정리해줘" (CS 관련 주제인 경우)
  • "최근 이슈 CS" - 최신 기술 트렌드 주제

"오늘의 CS" 주제 미지정 시 처리

주제 없이 "오늘의 CS"만 요청한 경우, AskUserQuestion 도구를 사용하여 다음 옵션을 제안:

옵션 1: 최신 트렌드 (Recommended)

  • 웹 검색으로 2025년 최신 기술 트렌드 조사
  • 가장 관련성 높은 주제 1개 선택하여 문서 작성
  • 문서 상단에 Trend 마크 추가

옵션 2: 카테고리 선택

아래 카테고리 중 선택하면 해당 분야의 핵심 주제 추천:

대분류 세부 분야 추천 주제 예시
Network 프로토콜 HTTP/HTTPS, TCP/IP, UDP, WebSocket, gRPC
아키텍처 REST API, GraphQL, CDN, 로드밸런싱, DNS
보안 TLS/SSL, CORS, 네트워크 보안
OS 프로세스/스레드 프로세스 vs 스레드, 컨텍스트 스위칭, 스케줄링
메모리 가상 메모리, 페이징, 메모리 단편화, GC
동기화 뮤텍스, 세마포어, 데드락, IPC
파일 시스템 파일 디스크립터, I/O 모델, 버퍼/캐시
DB 기초 정규화, 인덱스, 트랜잭션, ACID
성능 쿼리 최적화, 실행 계획, 커넥션 풀
분산 샤딩, 복제, 파티셔닝, CAP 정리
NoSQL Redis, MongoDB, Elasticsearch, 캐싱 전략
Algorithm 기초 시간/공간 복잡도, Big-O 표기법
자료구조 Array, LinkedList, Tree, Graph, Hash
알고리즘 정렬, 탐색, DP, 그리디, 백트래킹
System Design 확장성 수평/수직 확장, 로드밸런싱, Rate Limiting
분산 시스템 분산 락, 합의 알고리즘, 이벤트 소싱, CDC
아키텍처 MSA, 이벤트 드리븐, CQRS, DDD
메시징 Kafka, RabbitMQ, 메시지 큐 패턴
Programming 패러다임 OOP, 함수형 프로그래밍, 리액티브
설계 SOLID, 디자인 패턴, 클린 아키텍처
품질 TDD, 리팩토링, 코드 리뷰, 테스트 전략
API REST 설계, API 버저닝, 문서화
Security 인증/인가 OAuth, JWT, Session, RBAC
암호화 대칭/비대칭 암호화, 해싱, Salt
취약점 OWASP Top 10, SQL Injection, XSS, CSRF
AI/Agent 기초 LLM 동작 원리, 프롬프트 엔지니어링
도구 AI Agent, MCP, Function Calling
응용 RAG, 벡터 DB, 임베딩
DevOps CI/CD 파이프라인, 자동화, GitOps
컨테이너 Docker, Kubernetes, 서비스 메시
모니터링 로깅, 메트릭, 트레이싱, APM
Language Java JVM, GC, 동시성, Stream API
Kotlin 코루틴, Null Safety, 확장 함수
일반 타입 시스템, 메모리 모델, 컴파일러

옵션 3: TODO 목록

여러 주제를 한 번에 요청할 때 사용. 작성해야 할 문서를 리스트로 관리:

사용 예시:

  • "오늘의 CS: 트랜잭션, 인덱스, 정규화 정리해줘"
  • "Network 카테고리 기초 문서들 정리해줘"
  • "면접 준비용으로 OS 핵심 5개 정리해줘"

처리 방식:

  1. 요청된 주제들을 TodoWrite 도구로 TODO 목록에 추가
  2. 각 주제별로 순차적으로 문서 작성
  3. 완료된 항목은 completed로 표시
  4. 전체 진행 상황을 사용자에게 표시

질문 형식 예시

오늘의 CS 주제를 어떻게 선택할까요?

1. 최신 트렌드 (Recommended) - 2025년 기술 트렌드에서 주제 선정
2. 카테고리 선택 - 관심 분야에서 핵심 주제 추천
3. TODO 목록 - 여러 주제를 리스트로 작성 (예: "트랜잭션, 인덱스, 정규화")

카테고리 판단 기준

카테고리 세부 분류 주제 예시
network/ 프로토콜 HTTP, HTTPS, TCP/IP, UDP, WebSocket, gRPC
아키텍처 REST API, GraphQL, CDN, 로드밸런싱, DNS
보안 TLS/SSL, CORS, 방화벽, VPN
os/ 프로세스/스레드 컨텍스트 스위칭, 스케줄링, PCB, TCB
메모리 가상 메모리, 페이징, 세그멘테이션, GC
동기화 뮤텍스, 세마포어, 데드락, 조건 변수
파일 시스템 파일 디스크립터, I/O 모델, 버퍼/캐시
IPC 파이프, 소켓, 공유 메모리, 메시지 큐
db/ 기초 정규화, 인덱스, 트랜잭션, ACID
성능 쿼리 최적화, 실행 계획, 커넥션 풀, N+1
분산 샤딩, 복제, 파티셔닝, CAP, PACELC
NoSQL Redis, MongoDB, Elasticsearch, 캐싱 전략
algorithm/ 기초 시간/공간 복잡도, Big-O, 점근 표기법
자료구조 Array, LinkedList, Tree, Graph, Hash
알고리즘 정렬, 탐색, DP, 그리디, 백트래킹, 분할정복
data-structure/ 선형 Array, LinkedList, Stack, Queue, Deque
비선형 Tree, Graph, Heap, Trie
해시 HashMap, HashSet, 충돌 해결
system-design/ 확장성 수평/수직 확장, 로드밸런싱, Rate Limiting
분산 시스템 분산 락, 합의 알고리즘, 이벤트 소싱, CDC
아키텍처 MSA, 이벤트 드리븐, CQRS, DDD, 헥사고날
메시징 Kafka, RabbitMQ, 메시지 큐 패턴, Pub/Sub
git/ 기초 버전 관리, 커밋, 브랜치, 머지
전략 Git Flow, GitHub Flow, Trunk-Based
내부 Git 객체, 참조, reflog
language/ Java JVM, GC, 동시성, Stream, 메모리 모델
Kotlin 코루틴, Null Safety, 확장 함수, DSL
일반 타입 시스템, 컴파일러, 인터프리터
programming/ 패러다임 OOP, 함수형 프로그래밍, 리액티브
설계 SOLID, 디자인 패턴, 클린 아키텍처
품질 TDD, 리팩토링, 코드 리뷰, 정적 분석
API REST 설계, API 버저닝, OpenAPI, 문서화
security/ 인증/인가 OAuth 2.0, JWT, Session, RBAC, ABAC
암호화 대칭/비대칭, 해싱, Salt, HTTPS
취약점 OWASP Top 10, SQL Injection, XSS, CSRF
보안 설계 제로 트러스트, 시크릿 관리, 보안 감사
ai-agent/ 기초 LLM 동작 원리, 토큰화, 프롬프트 엔지니어링
도구 AI Agent, MCP, Function Calling, Tool Use
응용 RAG, 벡터 DB, 임베딩, Fine-tuning
devops/ CI/CD 파이프라인, GitHub Actions, GitOps
컨테이너 Docker, Kubernetes, Helm, 서비스 메시
모니터링 로깅, 메트릭, 트레이싱, APM, SRE
인프라 IaC, Terraform, 클라우드 서비스
trend/ - 최신 기술 트렌드, 연도별 이슈

난이도 체계

난이도는 3개로 고정하지 않고 유연하게 세분화할 수 있습니다.

핵심 원칙:

  1. 카테고리 정의가 최우선 - 각 카테고리는 "~란?" 정의 문서로 시작
  2. 선수 지식 기반 순서 - 선수 지식이 없는 것 → 있는 것 순서
레벨 설명 표기 예시
[1] 정의/기초 카테고리 정의, 선수 지식 없음 > \[1] 정의` · 선수 지식 없음`
[2] 입문 기본 개념, 간단한 선수 지식 > \[2] 입문` · 선수 지식: 없음`
[3] 중급 실무 핵심, 여러 기초 지식 > \[3] 중급` · 선수 지식: 문서명`
[4] 심화 복잡한 개념, 다중 선수 지식 > \[4] 심화` · 선수 지식: 문서1, 문서2`
[5+] 필요 시 추가 가능 -

문서 작성 템플릿

# {주제명}

> `[N] {레벨명}` · 선수 지식: [선수 문서](./path.md) 또는 "없음"

> `Trend` {연도}  ← 트렌드 주제인 경우에만 추가

> 한 줄 정의 (명확하고 간결하게)

`#핵심한글` `#CoreEnglish` `#약어` `#FullName` `#관련기술1` `#관련기술2` `#하위개념` `#사용사례` `#면접키워드` ... (최대 30개)

## 왜 알아야 하는가?

{이 개념을 왜 배워야 하는지}

- **실무**: {실무에서 어떻게 활용되는지}
- **면접**: {면접에서 왜 자주 나오는지}
- **기반 지식**: {이 개념이 다른 개념의 기반이 되는 이유}

## 핵심 개념

- {핵심 1}
- {핵심 2}
- {핵심 3}

## 쉽게 이해하기

{실생활 비유로 개념 설명}

## 상세 설명

### {소주제 1}

{내용}

**왜 이렇게 하는가?**
{이유 설명}

## 동작 원리 (해당 시)

{다이어그램 또는 단계별 설명}

## 예제 코드 (해당 시)

```java
// 예제 코드

트레이드오프 (해당 시)

장점 단점
{장점} {단점}

트러블슈팅 (해당 시)

사례 1: {증상/문제 요약}

증상

{에러 메시지, 로그, 현상}

원인 분석

{왜 발생했는지 - 기술적 근거 포함}

해결 방법

{구체적인 명령어/코드와 함께 해결법 제시}

예방 조치

{모니터링, 설정 변경 등 재발 방지 방법}

면접 예상 질문

Q: {질문}

A: {답변 - "왜?"에 대한 설명 포함}

연관 문서

문서 연관성 난이도
선수 문서 선수 지식 Beginner
관련 문서 관련 개념 Intermediate
후속 문서 심화 학습 Advanced

참고 자료

  • {출처}

## 키워드 작성 가이드

문서 상단에 검색용 키워드를 작성합니다. 나중에 검색 시 해당 문서를 쉽게 찾을 수 있도록 합니다.

### 키워드 작성 원칙

1. **최대 30개**까지 작성 가능 (내용에 맞게 충분히 작성)
2. **한글/영문** 모두 포함 (검색 편의)
3. **약어와 전체 명칭** 모두 포함
4. **관련 기술/도구/서비스/프레임워크** 포함
5. **동의어/유사어/대체 용어** 포함
6. **사용 사례/시나리오** 관련 키워드 포함
7. **면접 키워드** 포함 (자주 나오는 질문 관련)

### 키워드 분류 체계

키워드는 다음 카테고리별로 작성합니다:

| 분류 | 설명 | 예시 |
|------|------|------|
| **핵심 개념** | 주제의 핵심 용어 (한글/영문) | `#트랜잭션` `#Transaction` |
| **약어/전체명** | 약어와 풀네임 | `#MSA` `#마이크로서비스` `#Microservices` |
| **관련 기술** | 함께 사용되는 기술/도구 | `#Spring` `#JPA` `#Hibernate` |
| **하위 개념** | 세부 개념/종류 | `#ReadCommitted` `#Serializable` |
| **사용 사례** | 실제 적용 시나리오 | `#분산락` `#동시성제어` `#데드락` |
| **비교 대상** | 대안/경쟁 기술 | `#MySQL` `#PostgreSQL` `#Oracle` |
| **면접 키워드** | 면접 빈출 주제 | `#ACID` `#격리수준` `#락` |

### 카테고리별 키워드 예시 (확장)

| 카테고리 | 주제 | 키워드 (최대 30개) |
|----------|------|-------------------|
| **AI/Agent** | AI Agent | `#AI에이전트` `#AIAgent` `#LLM` `#대규모언어모델` `#Claude` `#GPT` `#Gemini` `#ChatGPT` `#Anthropic` `#OpenAI` `#Google` `#자율AI` `#Agentic` `#ToolUse` `#FunctionCalling` `#ReAct` `#CoT` `#ChainOfThought` `#프롬프트` `#RAG` `#벡터DB` `#임베딩` `#파인튜닝` `#토큰` `#컨텍스트윈도우` |
| **Network** | WebSocket | `#웹소켓` `#WebSocket` `#WS` `#WSS` `#실시간통신` `#양방향통신` `#FullDuplex` `#Socket.io` `#STOMP` `#SockJS` `#채팅` `#푸시알림` `#게임서버` `#Polling` `#LongPolling` `#SSE` `#ServerSentEvents` `#HTTP업그레이드` `#핸드셰이크` `#연결유지` `#Stateful` `#Spring` `#Netty` |
| **DB** | 트랜잭션 | `#트랜잭션` `#Transaction` `#ACID` `#원자성` `#Atomicity` `#일관성` `#Consistency` `#격리성` `#Isolation` `#지속성` `#Durability` `#커밋` `#Commit` `#롤백` `#Rollback` `#격리수준` `#IsolationLevel` `#ReadUncommitted` `#ReadCommitted` `#RepeatableRead` `#Serializable` `#락` `#Lock` `#데드락` `#Deadlock` `#동시성` `#MVCC` |
| **OS** | 프로세스 | `#프로세스` `#Process` `#스레드` `#Thread` `#PCB` `#ProcessControlBlock` `#컨텍스트스위칭` `#ContextSwitch` `#스케줄링` `#Scheduling` `#fork` `#exec` `#IPC` `#프로세스간통신` `#공유메모리` `#파이프` `#소켓` `#메시지큐` `#좀비프로세스` `#고아프로세스` `#멀티프로세스` `#멀티스레드` |
| **System Design** | MSA | `#MSA` `#마이크로서비스` `#Microservices` `#분산시스템` `#DistributedSystem` `#API게이트웨이` `#APIGateway` `#서비스메시` `#ServiceMesh` `#Istio` `#Envoy` `#서비스디스커버리` `#로드밸런싱` `#서킷브레이커` `#Resilience4j` `#Saga패턴` `#CQRS` `#이벤트소싱` `#EventDriven` `#Kafka` `#RabbitMQ` `#Docker` `#Kubernetes` `#컨테이너` `#오케스트레이션` |
| **Programming** | OOP | `#OOP` `#객체지향` `#ObjectOriented` `#캡슐화` `#Encapsulation` `#상속` `#Inheritance` `#다형성` `#Polymorphism` `#추상화` `#Abstraction` `#SOLID` `#SRP` `#OCP` `#LSP` `#ISP` `#DIP` `#클래스` `#Class` `#인터페이스` `#Interface` `#추상클래스` `#오버라이딩` `#오버로딩` `#디자인패턴` `#의존성주입` `#DI` |
| **Security** | JWT | `#JWT` `#JsonWebToken` `#토큰` `#Token` `#인증` `#Authentication` `#인가` `#Authorization` `#AccessToken` `#RefreshToken` `#Bearer` `#Claim` `#Payload` `#Header` `#Signature` `#HS256` `#RS256` `#만료시간` `#토큰탈취` `#토큰무효화` `#블랙리스트` `#OAuth` `#OIDC` `#세션` `#Stateless` |

### 키워드 포맷

```markdown
`#핵심한글` `#CoreEnglish` `#약어` `#관련기술1` `#관련기술2` `#하위개념1` `#하위개념2` `#사용사례` `#비교대상` `#면접키워드`

키워드 개수 가이드

문서 복잡도 권장 키워드 수
기초 개념 (정의) 10~15개
중급 개념 15~20개
심화 개념 20~25개
복합 주제 25~30개

작업 절차

  1. 카테고리 판단: 주제에 맞는 카테고리 선택
  2. 난이도 판단: [1] 정의/기초 → [2] 입문 → [3] 중급 → [4] 심화 중 선택
    • 카테고리 정의 문서("~란?")는 반드시 [1]
    • 선수 지식이 없으면 낮은 레벨, 있으면 높은 레벨
  3. 파일 생성: cs/{category}/{topic}.md (kebab-case)
  4. 내용 작성: 위 템플릿 준수
    • 정의: 한 문장으로 명확하게
    • 키워드: 검색용 키워드 10~30개 (한글/영문, 약어, 관련 기술, 하위 개념, 면접 키워드)
    • 왜 알아야 하는가: 실무/면접/기반지식 관점
    • 난이도 태그 + 연관 문서 필수
  5. README 업데이트: cs/{category}/README.md의 해당 레벨 섹션에 링크 추가
  6. git add: 생성/수정된 파일 staging

README 업데이트 시 확인사항

  • 해당 레벨 섹션([1], [2], [3], [4])에 문서 추가
  • 선수 지식이 있다면 명시
  • 전체 목차에도 추가
  • 정의 문서가 없으면 TODO로 추가

품질 기준

항목 기준
정확성 공식 문서, 신뢰할 수 있는 출처 기반
이해 용이성 "쉽게 이해하기" 섹션 필수 포함
논리성 모든 설명에 "왜?"에 대한 답변 포함
실용성 면접 대비 + 실무 적용 가능한 내용
트러블슈팅 실무 문제 사례와 해결법 포함 (해당 시)

트러블슈팅 품질 기준

조건 설명
재현 가능 같은 환경에서 같은 문제를 재현할 수 있어야 함
구체적 수치 에러 메시지, 로그, 메트릭 등 구체적 데이터 포함
원인 분석 "왜 발생했는지" 기술적 분석 필수
다중 해결책 가능하다면 여러 해결 방법 제시
예방 조치 재발 방지를 위한 모니터링, 설정 가이드

최근 이슈 CS 처리

"최근 이슈 CS" 요청 시:

  1. 웹 검색으로 최신 기술 트렌드 조사
  2. 가장 관련성 높은 주제 1개 선택
  3. 적절한 카테고리에 문서 생성 (주로 ai-agent/ 또는 주제에 맞는 카테고리)
  4. 문서 상단에 Trend 마크 추가
  5. cs/trend/README.md에도 링크 추가 (트렌드 인덱스)