조제약국 복약지도 메모와 재고·발주를 Claude Code로 줄이는 실무 절차
조제약국 약사·사무직 대상. 휘갈겨 쓴 복약지도 메모 정리, 재고 점검, 발주 후보 추출을 Claude Code로 밑작업하는 법을 프롬프트 템플릿과 검증 스크립트로 안내합니다.
저녁 무렵의 조제약국. 처방전이 몰려드는 시간이 지나가고 나면, 제 손에는 포스트잇과 메모지가 열 장쯤 남아 있었습니다.
“이 환자분, 아침 혈압약을 자주 깜빡한다고 하셨지”, “와파린 복용 중, 청국장 얘기는 했는데 다음에도 확인”. 휘갈겨 쓴 복약지도 메모들입니다. 이걸 약력(藥歷)에 옮겨 적는 게 마감 후의 일상적인 일이었습니다.
힘든 건 글씨가 지저분해서도, 양이 많아서도 아닙니다. 지친 머리로 옮겨 적으면 실수한다는 겁니다. 한번은 다른 환자의 메모와 헷갈려 약력에 적기 시작했다가 가슴이 철렁한 적이 있습니다. 다행히 투약 전에 알아챘지만, 그 뒤로 “단순 작업일수록 기계에 밑작업을 시키고 싶다”고 생각하게 됐습니다.
그래서 시험해 본 게 Claude Code입니다. AI에 휘갈긴 메모를 정리하게 하고, 재고 점검표에서 발주 후보를 골라내게 한다. 최종 확인은 제가 한다. 이 분담으로 바꾸고 나서 마감 후 사무 작업이 꽤 가벼워졌습니다. 오늘은 그 방법을, 약사와 사무직이 오늘부터 따라 할 수 있는 형태로 정리하겠습니다.
핵심 요약
- Claude Code는 “글자로 된 파일”을 한국어 지시로 다듬는 도구입니다. 복약지도 메모 정리, 재고표 정돈, 발주 후보 추출 같은 밑작업에 잘 맞습니다.
- 맡기는 건 “정리·정렬·추출”까지. 약학적 판단, 상호작용 확인, 최종 발주 수량 결정은 약사가 반드시 직접 합니다.
- 개인정보는 그대로 넘기지 않습니다. 환자명은 기호로 바꾸고, 사내 폐쇄 환경에서 쓴다는 전제를 맨 처음 정해 둡니다.
- 템플릿 프롬프트와 검증 스크립트를 준비했으니, 복붙해서 자기 약국 양식에 맞추기만 하면 돌아갑니다.
- 체감상 메모 정리와 발주 리스트 작성으로 하루 30~60분의 사무 시간이 남습니다.
조제약국에서 시간이 녹는 지점
먼저 독자상을 분명히 하겠습니다. 이 글이 도움이 되는 건 이런 현장입니다.
- 하루 40
120장의 처방전을 처리하는, 약사 24명 규모의 약국 - 약력 입력과 재고 관리를, 약사와 약국 사무직이 나눠 맡고 있다
- 청구 프로그램이나 약력 시스템은 있지만, “메모 정리”와 “점검 집계”는 손작업으로 남아 있다
조제약국의 하루를 업무 흐름으로 늘어놓으면, 시간이 녹는 자리가 보입니다.
| 공정 | 주된 작업 | 되돌이가 생기기 쉬운 지점 |
|---|---|---|
| 접수·처방 감사 | 처방전 확인, 의문 조회 | 나중에 약력에 쓸 내용의 메모 |
| 조제·감사 | 피킹, 검수 | 재고 소진을 투약 직전에 알아챔 |
| 투약·복약지도 | 환자 응대, 지도 내용 구두 확인 | 휘갈긴 메모의 임시 보관 |
| 약력 입력 | 메모를 약력에 옮겨 적기 | 글씨 판독, 환자 혼동 |
| 재고·발주 | 점검, 발주 수량 결정 | 엑셀 옮겨 적기 실수, 발주 누락 |
굵게 표시하고 싶을 만큼 큰 게 마지막의 “약력 입력”과 “재고·발주”입니다. 둘 다 머리를 쓰는 판단은 일부뿐이고, 나머지는 옮겨 적기·정리·정렬이라는 단순 작업입니다. 여기가 Claude Code가 나설 자리입니다.
Claude Code 자체가 처음인 분은, 먼저 비엔지니어를 위한 시작법과 Claude Code 입문 가이드를 훑어보면 이다음 절차가 쏙 들어옵니다.
사용 사례 1: 휘갈긴 복약지도 메모를 약력 형식으로 정리하기
구두로 확인한 내용을 항목별로 휘갈겨 적어 두고, 그걸 Claude Code에 넘겨 약력 형식으로 정리하게 합니다. SOAP 형식(S=환자의 호소, O=객관적 소견, A=평가, P=계획)으로 정렬해 달라고 하면 옮겨 적기가 훨씬 빨라집니다.
부탁할 때의 요령은 환자명을 넘기지 않는 것입니다. 메모 단계에서 “환자 A”, “환자 B”처럼 기호로 해 둡니다.
정리하고 싶은 메모 예시는 이런 식입니다.
환자A 60대 여성
암로디핀5mg 지속
아침만 복용 자주 깜빡 본인 말로는 출근 전 정신없음
약 달력 제안 → 다음에 반응 봄
혈압 가정 측정값 위가 140대라고
이 메모에 붙일 프롬프트 템플릿이 다음입니다. ---여기부터--- 아래에 자기 메모를 붙이기만 하면 돌아갑니다.
당신은 조제약국의 약력 기재를 돕는 어시스턴트입니다.
다음 휘갈긴 메모를 SOAP 형식의 약력 초안으로 정리해 주세요.
규칙:
- S/O/A/P 네 개 머리말로 나눈다. 판단이 망설여지는 정보는 A에 두고, 끝에 "(확인 필요)"를 붙인다.
- 메모에 없는 정보를 지어내지 않는다. 약학적 평가나 제안을 덧붙이지 않는다.
- 환자명·생년월일·전화번호 등 개인을 특정할 수 있는 정보가 있으면 "[개인정보]"로 가린다.
- 마지막에 "약사가 확인해야 할 점"을 항목으로 3개까지 적는다.
---여기부터---
(여기에 휘갈긴 메모를 붙임)
핵심은 “메모에 없는 정보를 지어내지 않는다”고 명시하는 것입니다. 이걸 넣지 않으면 AI는 친절한 마음에 “혈압 목표는 130 미만이 바람직하다” 같은 일반론을 더해 옵니다. 약력은 사실의 기록이므로, 멋대로 덧붙이면 방해가 됩니다.
나온 초안은 약사가 읽고, 약학적 평가를 자기 말로 더해 쓴 다음 약력 시스템에 옮겨 적습니다. 이 “밑작업은 AI, 판단은 사람”이라는 선을 무너뜨리지 않는 게 관건입니다.
사용 사례 2: 점검표에서 발주 후보만 뽑아내기
재고 관리에서 힘든 건, 점검한 숫자를 들여다보며 “어느 게 줄어들었나”를 눈으로 골라내는 작업입니다. 이건 Claude Code에 맡기면 빠릅니다.
점검 CSV(재고표)를 준비합니다. 환자 정보는 전혀 포함되지 않으므로, 이쪽은 개인정보 걱정이 적어 다루기 쉬운 소재입니다.
의약품명,규격,재고수,1일평균사용량,발주점,제조사
암로디핀OD정,5mg,180,22,150,A사
록소프로펜정,60mg,95,40,200,B사
레바미피드정,100mg,420,18,150,C사
산화마그네슘정,330mg,60,35,150,D사
이 CSV에 붙일 프롬프트 템플릿입니다.
당신은 조제약국의 재고 관리를 돕는 어시스턴트입니다.
다음 CSV 재고표를 읽고, 발주 후보를 표로 내 주세요.
판정 규칙:
- "재고수 ÷ 1일평균사용량"으로 남은 일수를 계산하고, 소수 첫째 자리까지 표시한다.
- 재고수가 발주점을 밑도는 품목에 "발주 필요", 남은 일수가 5일 미만인 품목에 "긴급" 표시를 붙인다.
- 남은 일수가 짧은 순으로 정렬한다.
- 추천 발주 수량은 계산하지 않는다. 최종 수량은 약사가 정하므로, 판단 자료의 제시에 그친다.
출력은 "의약품명 / 규격 / 남은 일수 / 상태 / 제조사" 표만으로 한다.
여기서도 “추천 발주 수량은 계산하지 않는다”고 못 박았습니다. 발주 수량은 납기·최소 발주 단위·행사·계절 요인으로 달라지므로, AI에 숫자를 내게 하면 “그럴듯하지만 현장에 안 맞는 수치”가 혼자 돌아다닙니다. AI는 후보 추출과 정렬까지, 결정은 사람. 이걸 지킵니다.
사용 사례 3: 발주 리스트의 누락을 검증 스크립트로 기계 점검하기
AI에 정리시킨 발주 후보를, 마지막에 프로그램으로 이중 확인합니다. 사람 눈에만 기대면 바쁜 날에는 꼭 놓치기 때문입니다.
다음 스크립트는 점검 CSV를 읽어, 발주점을 밑돈 품목을 기계적으로 추려 냅니다. Node.js가 있으면 돌아갑니다. AI 출력과 맞대어 빠뜨림이 없는지 확인하는 용도입니다.
// check-stock.mjs : 점검 CSV에서 발주해야 할 품목을 기계적으로 추출한다
import { readFile } from "node:fs/promises";
const csv = await readFile("./stock.csv", "utf8");
const [header, ...rows] = csv.trim().split(/\r?\n/);
const cols = header.split(",");
const idx = (name) => cols.indexOf(name);
const iName = idx("의약품명");
const iStock = idx("재고수");
const iUse = idx("1일평균사용량");
const iPoint = idx("발주점");
const alerts = [];
for (const line of rows) {
const c = line.split(",");
const name = c[iName];
const stock = Number(c[iStock]);
const use = Number(c[iUse]);
const point = Number(c[iPoint]);
// 숫자가 깨진 행은 건너뛰지 않고 경고한다 (옮겨 적기 실수 발견이 목적)
if ([stock, use, point].some((n) => Number.isNaN(n))) {
alerts.push(`${name}: 숫자를 읽을 수 없습니다. CSV를 확인하세요`);
continue;
}
const daysLeft = use > 0 ? (stock / use).toFixed(1) : "무한";
if (stock < point) {
const urgent = use > 0 && stock / use < 5 ? "[긴급]" : "[발주 필요]";
alerts.push(`${urgent} ${name}: 재고${stock} / 남은${daysLeft}일`);
}
}
if (alerts.length === 0) {
console.log("발주점을 밑돈 품목은 없습니다.");
} else {
console.log("발주를 검토해야 할 품목:");
alerts.forEach((a) => console.log(" - " + a));
}
점검 CSV를 stock.csv라는 이름으로 같은 폴더에 두고, 이렇게 실행합니다.
node check-stock.mjs
이 스크립트의 값어치는 계산 속도가 아닙니다. 숫자가 깨진 행을 말없이 건너뛰지 않고 경고하는 점입니다. 재고 수의 자릿수를 잘못 친 옮겨 적기 실수는 현장에서 자주 일어나는데, 이게 있으면 “12”가 “1200”이 된 행을 기계가 골라 줍니다. AI의 정리 결과와 이 스크립트의 출력, 둘 다 일치하는 것만 발주 리스트에 채택하는 이중 구조로 하면 안심입니다.
스크립트를 자기 약국 양식으로 키우고 싶어지면, 프롬프트 설계 응용과 생산성을 높이는 잔기술이 참고가 됩니다.
AI에 맡길 범위와, 사람이 반드시 판단할 범위
선 긋기를 표로 정리해 둡니다. 이걸 맨 처음 정해 두면 현장에서 헤매지 않습니다.
| 작업 | Claude Code에 맡겨도 됨 | 사람(약사)이 반드시 판단 |
|---|---|---|
| 복약지도 메모 | 형식 정리, SOAP 정렬 | 약학적 평가, 지도 방침 결정 |
| 상호작용·병용 | 해당할 만한 항목의 목록화 | 상호작용 판단, 의문 조회 필요 여부 |
| 재고표 | 남은 일수 계산, 후보 추출 | 발주 수량·발주처·시기 결정 |
| 문서 작성 | 안내문·게시물 초안 | 최종 문안의 책임, 게시 가부 |
망설일 때의 판단 기준은 단순합니다. 틀리면 환자 안전과 관련되는 일은 전부 사람이 한다. 정리·정렬·추출처럼, 틀려도 원본 데이터를 보면 알아챌 수 있는 것만 AI에 맡긴다. 이 한 선만 지키면 AI는 안전한 밑일꾼이 됩니다.
개인정보·보안에서 빼놓을 수 없는 주의점
조제약국은 민감 개인정보 덩어리입니다. 여기는 지나칠 만큼 신중해도 딱 좋습니다.
- 환자를 특정할 수 있는 정보는 넘기지 않는다. 이름·생년월일·보험 번호·전화번호는, 메모 단계에서 “환자 A”, “[개인정보]“로 바꾼다. 정리 후에 사람이 실명으로 되돌린다.
- 입력 데이터의 취급을 확인한다. 업무 이용에서는, 입력 내용이 모델 학습에 쓰이지 않는 계약 형태·설정을 고른다. 개인적으로 시험하기 전에 자사 규칙과 이용 약관을 반드시 확인한다. 판단이 망설여지면 관리 약사나 정보 관리 담당에게 상담한 뒤 쓴다.
- 재고 CSV에는 환자 정보를 포함하지 않는다. 재고표는 환자와 무관하므로 다루기 쉽다. 거꾸로 말하면, 약력 계열 데이터와 재고 데이터 파일을 섞지 않는 것이 사고 방지가 된다.
- 출력을 약력 시스템에 직접 연결하지 않는다. AI 출력은 반드시 사람이 읽고 나서 옮겨 적는다. 자동으로 운영 시스템에 써 넣는 연동은 처음에는 만들지 않는다.
공적인 가이드라인도 한 번 훑어보면 안심입니다. 한국 보건복지부와 한국보건의료정보원의 개인정보 보호 안내서·의료정보 관리 자료가 의료 현장에서 정보를 다루는 기준이 됩니다.
도입 전후로 무엇이 바뀌었나, ROI의 어림
숫자는 약국 규모에 따라 달라지므로, 어디까지나 제 체감 어림입니다.
- 복약지도 메모 정리: 1건 3분 걸리던 옮겨 적기가, 정리 초안을 고치는 방식으로 1건 1분으로. 하루 20건이면 약 40분 단축.
- 발주 후보 추려 내기: 점검 후 눈 점검 20분이, 추출+검증 스크립트로 5분 안팎으로. 약 15분 단축.
- 합쳐서 하루 대략 30
60분. 월 20일 가동이면, 월 1020시간어치의 사무 시간이 남는 계산입니다.
남은 시간으로 무엇을 하느냐가 본 게임입니다. 저는 그 시간을 재고 발주 정밀도 재점검과, 복약지도 질을 높이는 준비에 돌렸습니다. 사무를 줄이는 것 자체보다, 판단에 쓸 시간이 늘었다는 게 컸습니다.
도입 단계나 팀에 퍼뜨리는 법은 CLAUDE.md 작성법에 정리한 “규칙을 파일에 적어 공유한다”는 생각이 그대로 쓸 수 있습니다. 약국 양식이나 금지 사항을 파일에 적어 두면, 누가 부탁해도 같은 품질의 초안이 돌아옵니다.
약국 전체로 운용 규칙을 정비하고 싶다, 개인정보 취급까지 포함해 안전하게 시작하고 싶다는 단계라면, 현장에 맞춘 도입 연수·상담으로 함께 설계하는 게 지름길입니다. 여러 매장으로의 확산이나, 직원용 절차 만들기까지 한꺼번에 상담할 수 있습니다.
자주 묻는 질문
Q. 약력 내용을 AI에 넣어도 법령상 괜찮나요. A. 환자를 특정할 수 있는 정보를 포함한 채 외부 서비스로 보내는 건 피하세요. 기호화한 메모를 정리시키고 실명은 사람이 되돌리는 운용이라면, 개인정보를 밖으로 내보내지 않고 끝납니다. 최종 가부는 자사 규정과 이용 약관으로 확인하세요.
Q. 청구 프로그램이나 약력 시스템과 직접 연결할 수 있나요. A. 연결할 수 있지만, 처음에는 안 하기를 권합니다. AI 출력을 사람이 확인하고 나서 손으로 옮겨 적는 방식이 가장 사고가 적습니다. 익숙해지고, 멈추는 장치를 마련한 다음에 자동화를 검토합니다.
Q. IT에 밝지 않은 사무 직원도 쓸 수 있나요. A. 쓸 수 있습니다. 하는 일은 한국어로 부탁하는 것뿐입니다. 검증 스크립트는 처음에 한 번 설정하면, 이후에는 “node 명령을 치는” 것만으로 돌릴 수 있습니다.
Q. 발주 수량까지 내 주지 않나요. A. 기술적으로는 낼 수 있지만 권하지 않습니다. 발주 수량은 납기·최소 단위·계절 요인이 얽히므로, 후보 제시까지에 그치고 수량은 약사가 정하세요.
실제로 시험해 본 결과
제 약국의 메모 20건과 재고표 한 장으로 1주일 시험했습니다. 확인하고 싶었던 건 “사고 안 내고 편해지는가” 한 가지였습니다.
복약지도 메모 정리는 SOAP 배분이 꽤 정확했습니다. 망설여지는 정보를 A에 몰고 “(확인 필요)“를 붙이라는 지시가 효과를 내, 제가 확인해야 할 곳이 한눈에 보이게 됐습니다. 한편 지시를 느슨하게 한 회차에는 역시나 일반론 덧붙임이 섞였습니다. “지어내지 않는다”는 한 문장이 얼마나 중요한지 몸으로 확인했습니다.
재고는 검증 스크립트가 효과를 봤습니다. AI가 추출한 발주 후보와 맞대 보니, 자릿수 입력 실수가 1건 발견됐습니다. 재고 수를 “45”로 쳐야 할 곳을 “450”으로 친 행으로, AI도 스크립트도 “재고 과다로 발주 불필요”로 판정하고 있었습니다. 원인은 원본 데이터의 옮겨 적기 실수. AI의 똑똑함보다, 깨진 숫자를 놓치지 않는 장치 쪽이 현장에서는 효과가 있다고 다시 느꼈습니다.
결론으로, 메모 정리와 발주 후보의 밑작업은 안심하고 맡길 수 있다는 게 지금의 실감입니다. 판단은 사람, 밑일은 AI. 이 분담을 무너뜨리지 않으면 조제약국의 사무는 확실히 가벼워집니다.
무료 PDF: Claude Code 치트시트
이메일을 입력하면 명령, 리뷰 습관, 안전한 워크플로를 정리한 PDF를 받을 수 있습니다.
개인정보를 안전하게 관리하며 스팸을 보내지 않습니다.
작성자 소개
Masa
Claude Code 실무 워크플로와 팀 도입을 검증하는 엔지니어입니다.
관련 글
제작사가 Claude Code에 고객 사이트를 맡기기 전 권한 체크리스트
고객 사이트를 안전하게 AI로 수정하기 위한 에이전시용 권한과 검증 절차입니다.
SaaS 고객지원 버그 신고를 Claude Code로 재현 절차로 바꾸는 방법
모호한 문의를 재현 단계, 증거, 개발자 전달 메모로 정리하는 지원팀 워크플로입니다.
Obsidian 묵은 메모를 Claude Code 지시서로 바꾸는 10분 루틴
Obsidian에 쌓인 메모가 매번 쓸모없어지는 분께. 사실·결정·미확인으로 분류해 Claude Code가 그대로 움직일 지시서로 바꾸는 아침 10분의 형(型)을 소개합니다.