본문으로 건너뛰기

"tutorial" 태그로 연결된 12개 게시물개의 게시물이 있습니다.

모든 태그 보기

[Claude Code Plugin 만들기 #1] Plugin 입문 — AI 비서에게 업무 매뉴얼 만들어주기

· 약 5분
Nam Young Kim
Data Fullstack Engineer

이 글은 Claude Code Plugin 만들기 시리즈의 첫 번째 편입니다. Plugin이 무엇인지, 왜 필요한지, 그리고 어떤 구성 요소로 이루어져 있는지 알아봅니다.


TL;DR

  • Plugin은 Claude Code에 커스텀 기능을 추가하는 확장 시스템
  • Skills(배경 지식), Commands/Skills(슬래시 명령어), Hooks(자동 규칙), Agents(전문가 팀) 4가지로 구성
  • plugin.json 매니페스트 하나로 패키징하여 팀과 공유 가능
  • 프로젝트별 .claude/ 설정과 달리, Plugin은 여러 프로젝트에서 재사용 가능

[Claude Code Plugin 만들기 #2] 스킬과 커맨드 — AI에게 새 능력 가르치기

· 약 6분
Nam Young Kim
Data Fullstack Engineer

이 글은 Claude Code Plugin 만들기 시리즈의 두 번째 편입니다. Skill과 Command를 직접 만드는 방법, SKILL.md frontmatter 옵션, 그리고 실수 사례를 다룹니다.


TL;DR

  • Skill = SKILL.md 파일 하나로 Claude에게 배경 지식을 가르치는 것
  • Command와 Skill은 공식적으로 통합됨 — 둘 다 /skill-name으로 호출
  • frontmatter의 user-invocable, disable-model-invocation으로 호출 방식 제어
  • references/ 패턴으로 긴 내용을 분리하여 컨텍스트 효율 극대화

[Claude Code Plugin 만들기 #3] 훅으로 자동화 — 규칙은 한 번 정하면 자동으로

· 약 9분
Nam Young Kim
Data Fullstack Engineer

이 글은 Claude Code Plugin 만들기 시리즈의 세 번째 편입니다. Hooks의 구조, 이벤트 종류, exit code의 정확한 의미, 그리고 실전 디버깅 사례를 다룹니다.


TL;DR

  • Hooks는 hooks.json에 정의하는 자동 실행 규칙
  • 14가지 이벤트 중 PreToolUse, PostToolUse, SessionStart가 핵심
  • exit 0 = 성공, exit 2 = 의도적 차단, 그 외 = 에러
  • exit 1은 "차단"이 아니라 "에러" — 이 차이를 모르면 버그를 만든다
  • hook 타입: command(셸 명령), prompt(LLM 평가), agent(다중 턴 검증) 3가지

[Claude Code Plugin 만들기 #4] 자기 개선 루프 — AI가 스스로 성장하게 만들기

· 약 6분
Nam Young Kim
Data Fullstack Engineer

이 글은 Claude Code Plugin 만들기 시리즈의 마지막 편입니다. Plugin이 시간이 지남에 따라 계속 발전하는 자기 개선 시스템을 구축하는 방법을 다룹니다.


TL;DR

  • Plugin은 한 번 만들고 끝이 아니라, 계속 발전시키는 것
  • /reflect/harvest/prune 3단계 사이클로 지식 축적
  • docs/MISTAKES.mddocs/PATTERNS.md에 교훈을 체계적으로 기록
  • scope 태그(universal vs project-only)로 지식의 재사용 범위를 결정
  • 일관성 검증 스크립트로 설정 간 불일치 자동 감지

[Claude Code 마스터하기 #1] 핵심 기능 총정리: 이것만 알면 시작할 수 있다

· 약 7분
Nam Young Kim
Data Fullstack Engineer

이 글은 Claude Code 시리즈의 첫 번째 편입니다. 기본 기능부터 차근차근 다루며, 실제 개발 시나리오에서 어떻게 활용하는지 보여드립니다.


TL;DR

  • Claude Code는 터미널에서 동작하는 AI 코딩 어시스턴트
  • 파일 읽기/수정, 명령 실행, Git 작업까지 직접 수행
  • CLAUDE.md로 프로젝트 컨텍스트를 주면 더 똑똑해짐
  • 슬래시 커맨드(/help, /init, /compact)로 효율적 작업

[Claude Code 마스터하기 #2] Hooks & Headless Mode: 반복 작업을 자동화하는 법

· 약 12분
Nam Young Kim
Data Fullstack Engineer

이 글은 Claude Code 시리즈의 두 번째 편입니다. Part 1에서 기본 기능을 익혔다면, 이제 자동화로 넘어갑니다.


TL;DR

  • Hooks: 특정 이벤트 발생 시 자동으로 스크립트 실행
  • Headless Mode: 대화 없이 명령 실행 후 결과만 받기
  • 조합하면 CI/CD, pre-commit, 자동 포맷팅 등 무한 자동화 가능

[Claude Code 마스터하기 #3] Subagents, Skills, Agent SDK: 확장의 모든 것

· 약 12분
Nam Young Kim
Data Fullstack Engineer

이 글은 Claude Code 시리즈의 세 번째 편입니다. Part 1-2에서 기본과 자동화를 다뤘다면, 이제 진정한 확장으로 넘어갑니다.


TL;DR

  • Subagents: 독립 컨텍스트에서 작업하는 전문가 에이전트 (토큰 절약)
  • Skills: Claude가 자동으로 판단해서 사용하는 능력 (vs 슬래시 커맨드)
  • Agent SDK: Claude Code 엔진을 코드로 제어 (Python/TypeScript)
  • 셋을 조합하면 복잡한 멀티 에이전트 시스템 구축 가능

개발 블로그를 위한 MCP 서버 구축기 (1): Git 기반 설계와 기본 구현

· 약 7분
Nam Young Kim
Data Fullstack Engineer

Claude Desktop에서 개발 블로그 콘텐츠를 실시간으로 조회할 수 있도록 하는 MCP 서버를 만들어보겠습니다.

🎯 들어가며

블로그 포스트와 기술 문서가 늘어나면서 한 가지 고민이 생겼습니다. "Claude에게 내 블로그 내용을 어떻게 알려줄 수 있을까?"

매번 대화할 때마다 복사-붙여넣기로 콘텐츠를 전달하는 건 비효율적입니다. 그래서 MCP (Model Context Protocol) 서버를 구축해서 Claude Desktop이 직접 블로그 콘텐츠에 접근할 수 있도록 만들기로 했습니다.

개발 블로그를 위한 MCP 서버 구축기 (2): 인메모리 역인덱스로 검색 기능 구현

· 약 8분
Nam Young Kim
Data Fullstack Engineer

키워드 기반 검색을 위한 역인덱스(Inverted Index)를 설계하고 가중치 기반 점수 시스템을 구현합니다.

🎯 들어가며

1편에서는 Git 기반 MCP 서버의 기본 구조와 콘텐츠 조회 기능을 구현했습니다. 하지만 블로그 포스트가 늘어나면 문제가 생깁니다.

"Python에 대한 글이 있나요?"

목록을 일일이 확인하는 건 비효율적입니다. 검색 기능이 필요합니다.

개발 블로그를 위한 MCP 서버 구축기 (3): Cold Start 1초 미만을 위한 캐싱과 에러 복구

· 약 7분
Nam Young Kim
Data Fullstack Engineer

Git Commit Hash 기반 캐싱으로 서버 시작 시간을 1초 미만으로 줄이고, 에러 복구 전략을 구현합니다.

🎯 들어가며

1편에서 Git 기반 아키텍처를, 2편에서 역인덱스 검색 기능을 구현했습니다. 하지만 실제로 사용해보면 한 가지 불편함이 있습니다.

"서버 시작이 너무 느려요"

매번 Claude Desktop을 열 때마다 Git clone과 인덱스 빌드가 발생합니다. 콘텐츠가 늘어날수록 점점 더 오래 걸리죠.

이번 편에서는 캐싱 시스템을 구현해서 Cold Start를 1초 미만으로 줄이고, 에러 복구 전략으로 안정성을 높입니다.

VSCode Python 개발환경 완벽 설정 가이드 (2025)

· 약 6분
Nam Young Kim
Data Fullstack Engineer

Black, isort, Flake8을 Ruff 하나로 통합하고, 생산성을 극대화하는 VSCode 설정

들어가며

Python 개발을 하다 보면 코드 포맷팅, 린팅, import 정리 등 여러 도구를 조합해서 사용하게 됩니다. 기존에는 Black + isort + Flake8 조합이 일반적이었지만, 이제는 Ruff 하나로 이 모든 것을 대체할 수 있습니다.

이 글에서는 Ruff를 중심으로 한 VSCode Python 개발환경 설정을 정리합니다.