Skip to content
Back to skills

Jangbu Tag

ASecurity

표준 거래내역에 계정과목을 매핑하는 스킬. 룰 기반 분류 우선(80%+), 실패 건만 LLM fallback(마스킹 뷰), 사용자 확인 루프. 한국 거래처 100개 시드 룰 포함, 내부 계정 ↔ 국세청 표준계정 이중 구조.

  • 82 stars
  • 0 votes
  • 0 copies
  • 7 views
  • Added May 27, 2026
businesspython

Security analysis

A100/100

Scanned May 27, 2026

npx -y skills add kimlawtech/korean-jangbu-for --skill jangbu-tag --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Jangbu Tag?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Jangbu Tag
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/kimlawtech-jangbu-tag/badge)](https://www.skillsdirectory.com/skills/kimlawtech-jangbu-tag)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: jangbu-tag
description: 표준 거래내역에 계정과목을 매핑하는 스킬. 룰 기반 분류 우선(80%+), 실패 건만 LLM fallback(마스킹 뷰), 사용자 확인 루프. 한국 거래처 100개 시드 룰 포함, 내부 계정 ↔ 국세청 표준계정 이중 구조.
---

# jangbu-tag

거래내역 → 계정과목 매핑 스킬.

## 분류 전략

1. **룰 기반 (LLM 미경유)** — `classify_with_rules` 호출로 일괄 처리
2. **LLM fallback** — 룰 실패 건에 한해 마스킹된 뷰만 LLM에 전달
3. **사용자 확인** — 낮은 confidence 건은 사용자 검증 후 `apply_classification(source="user")`

## 계정 구조 (이중)

- **내부 계정**: 유연. 예) `광고선전비_구글`, `광고선전비_메타`, `SaaS_노션`
- **국세청 계정**: 고정. `accounts/nts_standard.json` 매핑 테이블 경유
- 세무 리포트 생성 시 내부 → 국세청 자동 변환

## 인터뷰 플로우

### Step 1. 대상 기간 확인

```
분류할 거래 기간을 선택하세요.

[1] 이번 달
[2] 전월
[3] 올해 전체
[4] 특정 기간 입력

미분류 거래만 처리합니다.
```

### Step 2. 룰 기반 일괄 분류

```python
classify_with_rules(start_date="2026-04-01", end_date="2026-04-30")
```

결과 예시:
```
룰 분류 완료: 87건
분류 실패(LLM fallback 필요): 13건
```

### Step 3. LLM fallback (분류 실패 건)

**핵심**: `list_transactions(unclassified_only=True)` 응답은 **이미 마스킹된 뷰**.

#### LLM 분류 프롬프트 템플릿

```
다음 거래를 한국 일반기업회계기준 계정과목으로 분류하세요.
거래처명·적요에 토큰(TK_*)이 있으면 그대로 두고 문맥으로만 판단.

거래 목록:
{
  "tx_abc": {"date": "2025-09-07", "amount": 142025, "direction": "outflow", 
             "counterparty": "CLAUDE.AI SUBSCRIPTION", "description": "..."},
  "tx_def": {...}
}

사용 가능 계정과목 (이 목록 외 사용 금지):
- 복리후생비: 직원 복리·회식·식대·간식·건강검진
- 여비교통비: 택시·KTX·주유·출장
- 접대비: 고객 접대 (5만원 이상 식사가 유력 신호)
- 통신비: 휴대폰·인터넷·유선전화
- 수도광열비/전력비: 수도·전기·가스
- 임차료: 월세·사무실 임대
- 지급수수료: SaaS 구독·은행 수수료·법무·회계·세무 용역비
- 광고선전비: 페이스북·구글·네이버 광고
- 도서인쇄비: 책·출판물·인쇄
- 소모품비: 사무용품·다이소·IKEA
- 세금과공과: 4대보험·세금·지방세
- 수선비·보험료·차량유지비·운반비·교육훈련비·회의비
- 급여·상여금·퇴직급여·잡급
- 매출액/이자수익 (inflow일 때)

각 거래에 대해 JSON으로 반환:
{
  "tx_abc": {"internal_account": "지급수수료", "confidence": 0.92, 
             "reason": "CLAUDE.AI는 AI SaaS 구독"},
  ...
}

confidence < 0.7인 건은 "사용자 확인 필요"로 표시.
```

#### 적용 절차

1. `list_transactions(unclassified_only=True, limit=50)` — 50건씩 배치
2. 위 프롬프트로 LLM 호출 → JSON 결과
3. confidence ≥ 0.7: `apply_classification(source="llm")` 자동 저장
4. confidence < 0.7: Step 4로 사용자 확인

LLM 분류 시 반드시 한국 일반기업회계기준의 표준 계정 사용.

### Step 4. 낮은 confidence 건 사용자 확인

```
다음 거래의 계정을 확인해주세요.

거래: TK_ACCOUNT_ID_xxxx | 2026-04-15 | 500,000원 | outflow
적요: (마스킹된 내용)
추정 계정: 지급수수료 (confidence=0.65)

[1] 지급수수료 유지
[2] 다른 계정 지정
[3] 스킵 (미분류 유지)
```

사용자 입력 시:
```python
apply_classification(
    transaction_id="tx_xxx",
    internal_account="지급수수료",
    confidence=1.0,
    source="user"
)
```

### Step 5. 결과 요약

```
분류 완료:
- 룰: 87건
- LLM: 10건 (평균 confidence 0.78)
- 사용자: 3건
- 최종 미분류: 0건

다음:
- [3] 세무 리포트 생성 (jangbu-tax)
- [4] 경영 리포트 생성 (jangbu-dash)
```

## 시드 룰 적용

최초 실행 시 `rules/seed_rules.json` 을 `classification_rules` 테이블에 주입.
이미 존재하는 룰은 중복 추가 안함. 사용자가 `apply_classification(source="user")` 할 때 학습용 룰로 자동 등록할지는 사용자에게 확인 후 결정.

## 신뢰도 기준

| Confidence | 출처 | 처리 |
|---|---|---|
| 1.00 | counterparty_exact / user 확정 | 자동 적용 |
| 0.90 | counterparty_regex | 자동 적용 |
| 0.80 | description_regex | 자동 적용 |
| 0.70~0.79 | LLM 추정 | 사용자 확인 권장 |
| 0.00 | 매칭 실패 | LLM fallback |

## 보안

- 룰 분류는 LLM 미경유 — 민감정보 외부 노출 없음
- LLM fallback 시에도 `list_transactions`의 마스킹 뷰만 사용
- 사업자번호·계좌번호·카드번호는 토큰으로 치환된 상태로만 노출
- `apply_classification` 호출마다 audit.log 기록

## 엣지 케이스

- 동일 거래처가 여러 용도(예: 쿠팡 = 사무용품 or 복리후생) — 적요 텍스트 우선순위로 추가 룰 작성
- 분개가 필요한 거래(계정 간 대체) — MVP 범위 외, 향후 분개 엔진에서 처리
- 계정 신규 생성 — `accounts/nts_standard.json`에 없으면 "지급수수료" 기본 매핑 후 사용자에게 확인

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.