개발 생산성 워크플로우
AI 코딩 도구의 설정 파일 최적화, 팀 단위 협업 규칙, 반복 작업 자동화 등 개발 생산성을 높이는 실무 방법을 다룹니다. 도구를 도입하는 것에서 그치지 않고, 팀 전체의 작업 흐름에 자연스럽게 녹아들도록 조정하는 과정에 무게를 둡니다. 실제 적용 사례와 함께 시행착오에서 얻은 점도 함께 공유합니다.
글 25편 최근 업데이트순
Vitest로 테스트 전환: 설정과 모킹 전략
기존 테스트 러너를 Vitest로 전환할 때 실행 환경 설정과 모듈 모킹 전략을 단계별로 정리했다. jsdom·Node 환경 분리, vi.mock 호이스팅 주의점, vi.spyOn과 가짜 타이머를 활용한 비동기 테스트 검증 절차를 다룬다.
Storybook으로 컴포넌트 문서화와 시각 회귀 테스트
UI 컴포넌트를 상태별로 문서화하고 시각적 회귀를 자동으로 검출하는 Storybook 구축 방법을 정리했다. 기본·변형·예외 스토리 설계, play 함수 상호작용 테스트, 스냅샷 비교 노이즈 제거와 접근성 검사를 다룬다.
Playwright E2E 테스트 구축과 flaky 테스트 줄이기
Playwright로 브라우저 E2E 테스트를 구축할 때 간헐적으로 실패하는 flaky 테스트를 줄이는 설계 기준을 정리했다. 역할 기반 로케이터와 웹 우선 단언, storageState 인증 재사용, 테스트 데이터 격리, CI trace 수집 방법을 다룬다.
프론트엔드 에러 모니터링: Sentry 소스맵과 릴리스 추적
배포 후 프론트엔드 오류를 원본 코드 기준으로 추적하려면 소스맵 업로드와 릴리스 태깅이 필수다. Sentry 설정에서 오류 그룹화와 노이즈 필터링, beforeSend 민감 정보 마스킹, 릴리스별 회귀 확인 절차까지 실무 기준으로 정리했다.
pnpm 워크스페이스와 Turborepo로 모노레포 구성하기
여러 앱과 패키지를 한 저장소에서 관리하는 모노레포를 pnpm 워크스페이스와 Turborepo로 구성하는 실무 방법을 정리했다. 패키지 경계 설계부터 공용 설정 공유, 빌드 캐시와 CI 파이프라인 연동까지 실무 순서대로 다룬다.
GitHub Actions 기반 AI 코드 리뷰 봇 구축: PR 비용 방어와 정적 분석 분리 실무
GitHub Actions 환경에서 AI 기반 PR 코드 리뷰 봇을 구축할 때 대규모 Diff로 인한 토큰 비용 폭증을 방어하고, ESLint 등 정적 분석 도구와 역할을 엄격히 분리하는 실무 CI 워크플로우 구성법을 상세히 다룹니다.
AI 에이전트가 같은 실패를 반복하지 않게: 재시도 계층 나누기, 도구별 서킷 브레이커, 반복 호출 차단
도구를 호출하는 AI 에이전트가 같은 실패를 되풀이하지 않도록 SDK 재시도와 도구 재시도를 나누고, 지수 백오프·지터, 도구별 서킷 브레이커, 같은 입력 반복 감지, 루프 상한을 Python 코드로 구현하고 실행 결과로 확인한다.
Semgrep으로 AI 생성 코드의 보안 패턴 자동 검사하기: 규칙 작성부터 PR 차단까지
AI 코딩 도구가 만들기 쉬운 위험 패턴을 Semgrep 사용자 정의 규칙으로 검사하는 방법을 정리했다. 규칙 YAML 작성, ruleid·ok 주석으로 규칙 테스트, nosemgrep 예외 관리, GitHub Actions에서 --error로 PR을 막는 구성을 다룬다.
Cursor 클라우드 에이전트를 사내 머신에서 실행하기: agent worker start 설정과 네트워크·보안 점검
Cursor Self-Hosted Machines로 클라우드 에이전트의 도구 실행을 직접 관리하는 머신에서 돌리는 방법을 정리했다. agent worker start 등록 절차, 아웃바운드 허용 도메인, 개인 머신과 팀 풀 차이, 데이터 처리 경계를 다룬다.
npm 신뢰 게시 설정: GitHub Actions OIDC로 토큰 없이 배포하고 48시간 검증 기한 넘기지 않기
npm 토큰 대신 GitHub Actions OIDC로 패키지를 게시하는 신뢰 게시 설정 순서를 정리했다. 48시간 안에 첫 게시로 검증해야 하는 새 규칙, id-token 권한 워크플로, 옮겨야 할 트리거, 만료 시 복구 방법을 다룬다.
AI 사용 감사 로그: 커밋 트레일러로 어떤 도구·모델이 관여했는지 남기고 CI에서 모으기
AI 코딩 도구가 관여한 변경을 나중에 추적할 수 있도록 커밋 트레일러에 도구·모델·검토자를 남기고, 범위 안 커밋에서 누락을 찾는 수집 스크립트를 정리했다. 이 사이트 저장소 27개 커밋의 실제 트레일러 집계와, 프롬프트 원문을 남기지 않는 이유도 다룬다.
Biome으로 ESLint·Prettier 옮기기: migrate 명령 결과, 옮겨지지 않는 규칙, unsafe 수정 검토
ESLint·Prettier 설정을 Biome으로 옮기는 절차를 예제 프로젝트에 Biome 2.5.15를 직접 적용한 결과로 정리했다. 옮기지 못한 규칙, 꺼진 VCS 연동, safe·unsafe 수정의 차이와 unsafe 수정이 console.log 줄을 지운 diff까지 다룬다.
AI로 테스트 픽스처·시드 데이터 만들기: 고정 시드 팩토리와 개인정보 검사
AI로 테스트 데이터를 만들 때 지킬 세 조건(재현 가능, 경계값 포함, 개인정보 없음)을 고정 시드 팩토리와 경계값 목록, 개인정보 검사 스크립트로 구현했다. 같은 시드로 같은 해시가 나오는 실행 결과와, 운영 데이터를 복사한 픽스처를 검사에서 걸러낸 결과를 다룬다.
클라우드 코딩 에이전트 실행 환경 만들기: 설정 파일 표준화와 시작 전 자가 점검 스크립트
클라우드에서 도는 코딩 에이전트가 매번 같은 환경에서 시작하도록 Copilot cloud agent의 copilot-setup-steps.yml과 devcontainer.json으로 설정을 코드화하고, 도구 버전·환경 변수·네트워크를 작업 전에 점검하는 스크립트와 실행 결과를 정리했다.
GitHub Code Quality 조직 대시보드 활용: 활성화부터 Trends 탭을 주간 회고에 쓰는 방법
GitHub Code Quality를 저장소와 조직 단위로 활성화하는 설정 경로와 전제 조건, 조직 대시보드의 Health·Trends 탭에서 볼 지표와 필터를 정리하고, 추세 데이터를 주간 회고와 AI 생성 코드 점검에 쓰는 순서와 해석할 때 주의할 점을 다룬다.
큰 AI 생성 PR을 스택 PR로 나누기: git rebase --update-refs와 gh로 계층별 리뷰하는 방법
AI 에이전트가 만든 수천 줄짜리 변경을 데이터 모델, API, UI 계층의 스택 PR로 나누는 방법을 git과 gh만으로 정리했다. rebase --update-refs로 중간 브랜치까지 옮기는 실행 결과와, 아래 PR을 squash 병합한 뒤 --onto로 정리하는 순서를 다룬다.
AI로 에러 로그 디버깅하기: 최초 오류 추출, 비밀값 마스킹, 가설 검증 순서
에러 로그를 AI에 그대로 붙여 넣는 대신, 시간순 최초 오류를 뽑고 비밀값을 가린 요약을 만드는 스크립트와 가설을 하나씩 검증하는 순서를 정리했다. 실제로 재현한 fetch 실패 로그에서 원인이 연결 거부가 아니라 차단 포트였던 사례를 함께 다룬다.
AI 코딩 어시스턴트와 TDD: 실패하는 테스트부터 확인하는 node:test 실습
AI 코딩 어시스턴트에 테스트를 먼저 쓰게 할 때의 순서를 Node.js 내장 테스트 러너로 실습한다. 구현 전 실패 확인, 첫 구현에서 경계값 테스트가 버그를 잡은 실행 결과, 구현을 따라 쓴 약한 테스트가 같은 버그를 놓치는 비교까지 정리했다.
AI 생성 코드에 테스트 붙이기: 커버리지로 빈 경로를 찾고, 커버리지가 놓치는 규칙은 직접 고르기
AI가 구현과 함께 만든 정상 경로 테스트에 Node.js 커버리지를 돌려 빠진 분기를 찾고, 경계 테스트를 추가해 100%를 만든 뒤에도 커버리지가 잡지 못하는 상한 규칙이 있다는 것을 실행 결과로 보여 준다. 요청 템플릿과 리뷰 기준도 정리했다.
AI API 비용과 Rate Limit 설계: 사용자별 토큰 예산, retry-after 재시도, 지출 한도 429 구분
AI API 호출 래퍼에 사용자별 일일 토큰 예산, retry-after를 따르는 재시도, 재시도하면 안 되는 월 지출 한도 429 구분을 넣는 방법을 Claude API 문서 기준으로 정리하고, 모의 서버 실행 결과와 실행 중 발견한 예산 추정 버그 수정 과정을 다룬다.
OpenAPI 스펙으로 타입을 생성하고 AI가 API 계약을 지키게 하기
OpenAPI 스펙을 API 계약의 기준으로 삼아 타입을 생성하고 AI가 응답 형태를 지어내지 않게 하는 방법을 정리했다. openapi-typescript 생성, openapi-fetch 사용, 규칙 파일 연결, CI 계약 검사를 다룬다.
AI 생성 코드에 ESLint·Prettier·tsc를 커밋 전에 자동 적용하기
AI가 만든 코드가 형식·린트·타입 오류를 안고 커밋되지 않도록 husky와 lint-staged로 커밋 전 검사를 자동화하는 방법을 정리했다. 스테이징 파일만 검사하는 구성, tsc 전체 검사 연결, 실패 시 복구 동작, CI 이중 검증을 다룬다.
시크릿·.env가 AI 코딩 도구 컨텍스트에 들어가지 않게 막는 설정
AI 코딩 도구가 .env와 비밀 파일을 읽지 않게 막는 설정을 도구별 공식 문서로 정리했다. Claude Code deny 규칙과 샌드박스, Cursor .cursorignore, Copilot 콘텐츠 제외의 범위와 빈틈, 비밀값 분리 원칙을 다룬다.
개발자를 위한 AI 프롬프트 엔지니어링: 기획 요구사항을 설계와 구현 요청으로 바꾸는 4단계
Anthropic의 프롬프트 모범 사례(명확한 지시, 이유 제시, 예시, XML 태그, 추측 금지)를 개발 흐름에 대응시키고, 기획 문장을 질문과 가정으로 나누는 단계부터 설계 비교, 수정 범위를 제한한 구현 요청, 자기 교정 검증까지 바로 쓸 수 있는 템플릿으로 정리했다.
Claude Code 토큰 사용량 줄이는 설정: CLAUDE.md, settings.json, 세션 관리
Claude Code에서 토큰이 쓰이는 지점을 CLAUDE.md, MCP 도구, 대화 기록, 긴 명령 출력으로 나누고 각각을 줄이는 설정을 정리했다. 200줄 이하 CLAUDE.md, 경로별 규칙, permissions deny, /clear와 /compact, 훅 활용법을 다룬다.