Joyuno's Dev Blog

2026-05-11 (월) 개발일지

dev-blog

오늘은 bit-scalp 프로젝트의 프로세스 관리 최적화에 Claude를 메인 도구로 삼은 하루였다. pgrep으로 백그라운드 스캘퍼 인스턴스를 추적하던 중, 단순 로그 던지기 대신 작업 흐름 다이어그램을 먼저 그려 프롬프트에 넣으니 AI의 제안이 실전적으로 변했다.

pgrep 패턴 매칭 프롬프팅의 효과

평소 pgrep 옵션만 나열하며 물어보면 AI가 기본 예시만 반복했다.

“bit-scalp 스캘퍼 프로세스를 pgrep으로 정확히 필터링하는 명령어 3가지 제안해. PID만 출력하고, 오래된 프로세스 우선순위 매겨.”

이 프롬프트에 정확한 프로세스명 컨텍스트(bit-scalp-scalper)를 추가하니, -f와 -o 조합을 즉시 제안하며 중복 PID 피하는 노하우까지 나왔다.

잘 통한 점:

  • 컨텍스트가 구체적일수록 AI 출력이 pgrep -f 'bit-scalp-scalper'처럼 바로 복붙 가능.
  • 2번째 반복에서 “이전 제안 기반으로 오래된 PID만 골라” 하니 체인 프롬프트가 자연스럽게 작동.

안 통한 점:

  • 패턴이 모호하면(scalper만) AI가 과도한 정규식 제안 — 검증에 10분 날림.
접근법 응답 시간 실전 적용률
옵션만 나열 10초 40%
프로세스명+시나리오 20초 90%

ASCII 흐름도로 컨텍스트 강화

pgrep 결과를 후속 스크립트에 넘기는 로직을 설계할 때, 텍스트 다이어그램을 써봤다.

[pgrep bit-scalp] --> PID 리스트
                   |
                   v
[헬스체크 루프] --> JSON 출력 --> 알림

위 다이어그램 기반으로 bash 스크립트 작성. pgrep 실패 시 재시작 로직 포함.

노하우: Claude Sonnet 3.5에 이걸 던지니 루프 안정화 아이디어(타임아웃 추가)를 바로 잡아줌. 이전엔 “재시작 스크립트 써줘”만 하면 무한루프 위험 코드 나옴.

배운 점:

  1. 다이어그램은 5줄 이내 — 길면 AI가 구조 무시.
  2. AI 코드 후 pgrep으로 직접 테스트: 3회 실행 중 1회만 edge case 잡음.
  3. 안 통함: 다이어그램 화살표가 복잡하면 AI가 “병렬 처리”로 오해.

AI 출력 검증 루틴 정립

AI가 준 pgrep 기반 스크립트를 바로 돌리지 않고, 단계 검증 도입.

  • 1단계: dry-run (echo로 PID 시뮬).
  • 2단계: Claude에게 “이 코드의 실패 케이스 3가지 나열해”.

잘 통한 점: 실패 케이스 물으니 “프로세스명 변경 시”를 짚어 미리 패치. 안 통한 점: AI가 제안한 JSON 파싱이 bash 한계로 직접 수정 — AI는 아이디어, 인간은 구현 분업 명확.

다음 시도:

  • 검증 프롬프트 템플릿 저장: claude-pgrep-check.md.

오늘의 한줄

pgrep 작업에서 ASCII 컨텍스트 + 체인 프롬프트가 AI 활용도를 2배 끌어올렸다.