payroll
급여명세서 PDF 생성 + 이메일 발송. 급여 데이터를 받아 A4 PDF를 만들고 각 사원에게 이메일로 발송합니다. "급여명세서", "급여 보내기", "payroll" 등 급여 관련 요청 시 사용.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
급여명세서 PDF 생성 + 이메일 발송. 급여 데이터를 받아 A4 PDF를 만들고 각 사원에게 이메일로 발송합니다. "급여명세서", "급여 보내기", "payroll" 등 급여 관련 요청 시 사용.
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Configure, observe, and recover Discord AI jobs from the ADK workspace with either Codex or Claude. Use for Discord setup, background-job status, live activity, stalled-job diagnosis, reboot recovery, idle rotation, or session history.
Codex 또는 Claude로 실행되는 Discord 백그라운드 작업의 설정·상태·실시간 활동·재부팅 복구를 ADK 워크스페이스에서 관리합니다.
세션 변경사항을 분석해 verify-* 스킬 드리프트를 탐지하고 자동 생성/업데이트합니다. issue-driven-development Sync 단계, 새 패턴/규칙 도입 후, PR 전 검증 스킬 커버리지 확인 시 반드시 사용. /manage-skills로 호출.
원요청 무결성과 세션 바인딩 하네스의 원문 해시체인, 완전 범위 추적, 서명 권한, 2회 Clean 결박, Claude Code/Codex 등록·동등성을 결정론으로 검증합니다. request-contract·session-inject 코어/어댑터·설정·스키마·review-pass를 수정한 뒤, Review/Post-test Review 및 커밋 전에 반드시 사용합니다.
등록된 모든 verify-* 스킬을 순차 실행해 통합 검증 보고서를 생성합니다. 기능 구현 후, PR 전, 코드 리뷰 시, issue-driven-development Review/Post-test Review 단계마다 반드시 사용. /verify-implementation으로 호출.
기존 제품의 경로·진입점·내비게이션·사용자 여정·운영 표면이 기능 추가 뒤에도 유지되는지 기준 버전과 보존 계약으로 검증합니다. 기존 프로젝트의 기능 추가·통합·리팩터링 후, planning/integration 리뷰와 release 전에 반드시 사용합니다.
| name | payroll |
| description | 급여명세서 PDF 생성 + 이메일 발송. 급여 데이터를 받아 A4 PDF를 만들고 각 사원에게 이메일로 발송합니다. "급여명세서", "급여 보내기", "payroll" 등 급여 관련 요청 시 사용. |
| argument-hint | [YYYY-MM | 데이터를 직접 입력] |
사원 급여 데이터 → A4 PDF 급여명세서 생성 → 이메일 발송 (Office 365 SMTP)
pip install reportlab
사용자가 제공한 급여 데이터(테이블, 텍스트 등)를 아래 JSON 구조로 변환:
{
"year": 2026,
"month": 3,
"company": {
"name": "(주)넥스테인",
"eng_name": "nextain Inc.",
"biz_no": "<YOUR_BIZ_NO>",
"ceo": "<YOUR_CEO_NAME>",
"address": "경기도 화성시 효행구 매송면 매송고색로 422번길 77, 나동 107호"
},
"employees": [
{
"code": 1,
"name": "사원명",
"email": "email@nextain.io",
"hire_date": "2026-03-11",
"items": {
"기본급": 3000000,
"식대": 135483
},
"deductions": {
"국민연금": 135000,
"건강보험": 111900
},
"total_pay": 3135483,
"total_deduction": 246900,
"net_pay": 2888583
}
]
}
회사 정보는 docs-business/01. 회사 정보/base-info.md 참조.
먼저 dry-run으로 PDF만 생성하여 확인:
python .agents/skills/payroll/scripts/send_payroll.py \
--data '<JSON>' \
--output-dir 'docs-business/06. 급여/YYYY-MM/' \
--dry-run
출력 디렉토리: docs-business/06. 급여/{YYYY-MM}/
생성된 PDF 경로를 사용자에게 보여주고 확인 요청:
python .agents/skills/payroll/scripts/send_payroll.py \
--data '<JSON>' \
--output-dir 'docs-business/06. 급여/YYYY-MM/'
SMTP 인증:
SMTP_USER 환경변수 (기본: noreply@nextain.io)SMTP_PASS 환경변수 (필수)없으면 사용자에게 안내: "SMTP_PASS 환경변수를 설정해주세요."
| 사원 | 이메일 | 발송 | |
|---|---|---|---|
| ... | ... | ... | O/X |
| 에러 | 조치 |
|---|---|
| reportlab 미설치 | pip install reportlab 안내 |
| SMTP_PASS 미설정 | dry-run으로 PDF만 생성, 환경변수 설정 안내 |
| 폰트 없음 | sudo dnf install google-noto-sans-cjk-fonts 안내 |
| 이메일 실패 | 에러 메시지 표시, PDF는 보존됨 |