하루 일과: 클로드 코드 세션 전체 안내

발행: (2026년 6월 11일 AM 12:15 GMT+9)
6 분 소요
원문: Dev.to

출처: Dev.to

7부 중 7부 · 시리즈: AI 개발자 핸드북 만들기 · GitHub

비밀번호 재설정 기능을 만들고 있습니다. 사용자가 이메일을 입력 → 재설정 링크를 받음 → 링크를 클릭 → 새 비밀번호를 입력합니다. 표준 흐름이며, 중간 난이도입니다.

전체 워크플로우를 사용해 모든 단계를 살펴보겠습니다 — 마치 이 시스템을 만든 사람의 어깨 너머를 보는 듯이.

“당신의 워크플로우를 보여주면, 당신의 출력 품질을 보여드리겠습니다.”

Claude가 자동으로 백그라운드에서 로드됩니다:
~/.claude/CLAUDE.md 로드됨                ← 전역 핸드북
.claude/CLAUDE.md 로드됨                 ← 프로젝트 규칙 (TypeScript, pnpm)
memory/MEMORY.md 스캔됨                 ← 모든 레슨 및 선호도

아직 입력한 내용이 없습니다. Claude는 이미 알고 있습니다:

  • 기능 기반 폴더 구조
  • 상태 관리 단계(Ladder)
  • 데이터베이스 목킹 금지
  • 커밋에 AI 기여 표시 금지
  • 프로파일러 증거 없이 useCallback 사용 금지
  • “방에 들어오기 전에 파일을 검토해 주는 의사가 ‘그럼, 당신이 누구인지 다시 알려 주세요?’라고 묻는 사람보다 더 유용합니다.”

/status

모델: claude-sonnet-4-6
노력: 보통
플러그인: security-guidance

30초. 과부하 시 대체 모델이 로드될 때도 있고, 플러그인이 조용히 실패할 때도 있습니다. 이 검사는 30초가 소요되며, 30분 뒤에 깜짝 놀라지 않게 해줍니다.

“조종사가 조종석에 앉은 뒤 첫 번째 행동은 이륙이 아니라, 모든 계기가 정상적으로 표시되는지 확인하는 것입니다.”

/cost
→ 사용 토큰: 2,847 | 예상 비용: $0.004

이 숫자를 기록해 두세요. 나중에 비용이 많이 드는 코드 리뷰 단계와 비교할 것입니다. 갑작스러운 급증은 무언가 잘못됐다는 신호입니다.

/plan

비밀번호 재설정 기능 구축:

  • 사용자가 /forgot-password 에 이메일 입력
  • 시스템이 재설정 링크(토큰, 1시간 유효) 전송
  • 사용자가 링크 클릭 → /reset-password?token=xxx 로 이동
  • 새 비밀번호 입력
  • 토큰 검증, 비밀번호 업데이트, 토큰 무효화

Claude가 계획을 제시합니다 — 아직 코드는 없습니다:

제안 접근법:

  1. DB: password_reset_tokens 테이블 추가

    • id, user_id, token(해시), expires_at, used_at
  2. API

    • POST /api/auth/forgot-password — 토큰 생성, 이메일 전송
    • POST /api/auth/reset-password — 토큰 검증, 비밀번호 업데이트
  3. UI

    • /features/auth/ForgotPasswordForm.tsx
    • /features/auth/ResetPasswordForm.tsx
    • usePasswordReset.ts
  4. 테스트

    • 단위: 토큰 생성/검증 로직
    • 통합: 실제 테스트 DB와 함께 전체 흐름
    • E2E는 제외(핵심 경로가 아님)

시작하기 전 질문:

  • 이메일 제공자는 어떤 것을 사용할까요?
  • 토큰 길이와 해시 알고리즘 선호도는?
  • 사용된 토큰은 삭제할까요, 아니면 사용 표시만 할까요?

“답을 가정하는 계획보다 질문을 던지는 계획이 더 가치 있습니다.”

당신이 질문에 답하고 계획을 승인하면 코딩이 시작됩니다.

Claude가 구현을 시작합니다. 선호도가 로드돼 있기 때문에 자동으로:

  • /features/auth/ForgotPasswordForm.tsx 를 생성 ( /components/ForgotPassword.tsx 가 아님)
  • 폼 필드에 useState 사용, API 호출에 TanStack Query 활용
  • catch 블록은 console.error 로 로깅하고 토스트로 표시
  • 프로파일러 증거 없이 핸들러에 useCallback을 추가하지 않음

당신은 지켜보고, 흐름이 어긋나면 바로 리디렉션합니다.

“감독은 불신이 아니라, 작은 교정을 미리 잡아 큰 우회로 가는 것을 방지하는 방법입니다.”

pnpm test

테스트는 반드시 0으로 종료돼야 합니다. “대부분 통과”, “실패한 테스트는 무관한 것”은 허용되지 않습니다. 모든 테스트가 통과해야 합니다.

테스트가 실패하면:

FAIL features/auth/usePasswordReset.test.ts
  ✗ handles expired token correctly
    Expected: { error: 'Token expired' }
    Received: { error: undefined }

멈추고 수정합니다. 다시 테스트를 실행하고 초록색이 될 때까지 진행합니다.

“편지를 교정 없이 보내지는 않듯, 코드를 테스트 없이 배포하지도 않습니다. 테스트 게이트가 교정 역할을 합니다

0 조회
Back to Blog

관련 글

더 보기 »

Eidentic 소개

Today we're releasing Eidentic, an open-source TypeScript SDK for building AI agents with self-improving memory and the production fundamentals built in — not b...

Typescript의 타입

Introdução Tipos são uma forma de definir a “forma” ou o contrato dos dados que estamos usando no código. Pensando em Javascript puro, ele é dinâmico: você pode...