2026 Selected Works · 공무원이 쓴 코드

딴짓하는 공무원이
코드로 바꾼 것들.

7년 차 광진구청 주무관이
HWP 지옥·법령 미로·문서 홍수·통계 미아에서 탈출하기 위해 만든
공공 도메인 오픈소스 8선.

AuthorRyu Seungin · 류주임
Affiliation광진구청 AI.Do
StackTypeScript · Rust · Tauri · MCP · Next.js
GitHub ★3,500+ stars
Scroll
01Flagship · Selected Work 1,952

법제처 42개 API,
9개 도구로 압축했다.

법령·판례·헌재·조세심판·관세해석까지 17개 결정 도메인. Claude·Cursor·Windsurf·Zed·Claude.ai 웹에서 바로 호출. v4.4에서 노출 도구를 19개 → 9개로 통폐합(컨텍스트 52% 감축) — 다단계 리서치 legal_research + 인용검증·판례 생사·행위시법·영향그래프를 묶은 legal_analysis.

KOREAN-LAW-MCP

사람이 법에 묻듯,
AI도 법에 묻는다.

"화관법 38조 알려줘" — 약칭을 실명으로, 조문번호를 API 코드로, 3단 위임(법률→시행령→시행규칙)을 트리로. 그리고 AI가 지어낸 가짜 조문·가짜 판례를 legal_analysis가 법제처 DB로 직접 교차검증한다.

42
API → 9 Tools
17
Decision Domains
v4.5.2
9-Tool 현행
MCP 1.27 TypeScript Stateless HTTP Fly.io · mcp.gomdori.app/law 법제처 Open API
claude · korean-law-mcp · stdio
— 9 MCP Tools (v4.4 통폐합) · 42 API 전체 커버 · 17 결정 도메인
search_law · 법령 검색
get_law_text · 본문·3단 위임
get_annexes · 별표·별지서식
search_decisions · 17 domains
get_decision_text · 17 domains
legal_research ⭐ 다단계 체인
legal_analysis ⭐ 검증·영향·생사
discover_tools · 80+ 전문도구
execute_tool · 전문도구 실행

인용 검증 — 환각 차단

LLM이 쓴 "상법 제401조의2 제7항" — 실제로는 제2항이 끝이다. 법제처 DB로 교차검증해 존재하지 않는 조문을 ✗로 리턴한다. v3.5의 킬러 피처, 지금은 legal_analysis에 통합.

17개 도메인 · 2개 도구로

판례·헌재·조세심판·공정위·노동위·관세해석·개인정보위·권익위·학칙·공사공단·조약·영문법령 — search_decisions(domain) 하나로.

약칭 자동 인식 · 52종

"화관법" → "화학물질관리법". v3.3.1에서 LAW_ALIAS 11 → 52종 확장. 산안법·중처법·청탁금지법·공정거래법까지 커버.

§

조문번호 ↔ JO 코드

"제38조" ↔ "003800". 사람의 언어와 기계의 언어 사이, 오래된 번역 문제를 도구 한 개로 끝낸다.

HWPX · HWP 별표 추출

법률 별표·별지서식이 HWP로 배포되는 한국식 문제. kordoc 엔진을 내장해 표·텍스트를 Markdown으로 변환한다.

legal_research — 다단계 리서치

"과태료 감경" "FTA 통관" "위임입법 미비" — 질문 하나에 법령·판례·해석례·조례·개정이력까지 묶어서. v4.4에서 옛 8개 chain_* 도구를 한 도구로 통합했다.

02Document Infrastructure · Engine + Desktop 1,103

모두 파싱해버리겠다.
HWP3 · HWP · HWPX · HWPML · PDF · XLS · XLSX · DOCX → Markdown.

대한민국 공공문서의 절반은 HWP다. 세상의 나머지 절반은 이 포맷을 파싱할 수 없다. kordoc이 순수 JS로 엔진을 짜고, kordoc-ai가 그 위에 Gemini 3 Flash를 얹은 데스크톱 앱을 올린다.

.hwp3 .hwp
한컴 3.0(johab) · 5.x OLE2 복호화
.hwpx
ZIP+XML · DRM 자동 추출
.hwpml
XML 기반 HWP
.pdf
선 기반 표 감지 · OCR
.xls .xlsx .docx
병합·스타일·각주
kordoc v3.1.1 core
Magic-byte Router
+ 2-Pass Table Builder
+ rhwp AES-128 복호화
# Markdown
+ IRBlock[]
# 학교교육과정 운영 계획 ## 1. 편성 근거 - 초·중등교육법 제23조 - 2022 개정 교육과정 총론 | 학년 | 국어 | 수학 | 영어 | |-----|-----|-----|-----| | 3학년 | 6 | 4 | 2 | | 4학년 | 5 | 4 | 3 | > HWPX 중첩 표, merged cell, 배포용 DRM, 깨진 ZIP, XLSX 수식까지 복원됩니다.

OLE2 + Record Stream

HWP 5.x 바이너리를 UTF-16LE, zlib 해제, 21종 제어 캐릭터까지 직접 풀어낸다. 한컴오피스 없이, 순수 JavaScript로.

2-Pass Table Builder

colSpan·rowSpan 꼬이지 않는다. 선 기반 PDF 표 감지 + 한국 공문서 key-value 자동 인식까지.

🔓

배포용 HWP · DRM HWPX

관공서 "열람 제한" HWP는 rhwp AES-128 포팅. DRM이 걸린 HWPX는 한컴 COM API로 자동 추출(v2.4.0).

📝

양식 자동 채우기

fillHwpx()가 HWPX XML을 직접 조작해 글꼴·크기·정렬 100% 보존한 채 빈칸만 교체. 체크박스·어노테이션까지.

Markdown → HWPX 역변환

AI가 쓴 답변을 다시 보고서 양식으로. heading·bold·table 서식 유지. 복붙 노가다 제거.

🧩

4 Interfaces

npm 라이브러리 · CLI · MCP 서버(8 tools) · Tauri 데스크톱 앱(kordoc-ai). 어디서 불러도 같은 Markdown.

KORDOC-AI · DESKTOP COMPANION

엔진 위에 얹은 Tauri 데스크톱 앱.

React 19 + Tauri 2.10 + Node.js Sidecar. kordoc으로 로컬 파싱하고, Gemini 3 Flash로 요약·OCR·K팀장 검토. MCP 원클릭 설치, 폴더 드래그드롭, 15개 액션 · 24개 RPC 메서드. Windows MSI 하나.

AI 요약 4×3
AI OCR (Gemini Vision)
문서 병합 · 서식 유지
K팀장 검토
BATTLE-TESTED

5개 실전 공공 프로젝트에서 검증

학교교육과정 · 사전기획 보고서 · 법률 별표 · 구 소식지 · 공공데이터 파이프라인. 수천 개의 진짜 관공서 문서가 부러지지 않고 지나갔다. korean-law-mcp와 Anything에도 같은 엔진이 내장되어 돈다.

학교교육과정
사전기획 보고서
법률 별표
구청 소식지
03Desktop App · Offline-first 348

파일을 찾지 말고,
내용을 찾으세요.

HWPX·PDF·Office 수천 개 문서 본문을 1초 안에. 100% 로컬. 폐쇄망 환경에서 AI 기능을 꺼도 모든 검색이 동작한다.

Anything — v2.7.3
● 하이브리드
키워드
시맨틱
파일명
4,287건 중 3건 · 42ms

1초 본문 검색 · RRF 하이브리드

SQLite FTS5 + usearch HNSW를 RRF로 병합. Lindera 2.0 한국어 형태소 분석 내장. 파일명을 몰라도, 열어보지 않아도, 안에 있는 문장을 찾는다.

완전 오프라인 가능

KoSimCSE-roberta(768차원) ONNX로 임베딩, PaddleOCR ONNX로 OCR — 전부 로컬. AI를 끄면 네트워크 트래픽 제로, 폐쇄망 PC에서 그대로 동작.

🜛

Tauri 2.10 · Rust 네이티브

Clean Architecture로 Parsers / Indexer / Search Engine 분리. 메모리·바이너리에서 Electron을 이긴다. MSI 하나로 배포, WebView2·VC++까지 번들.

RAG 질의응답 (선택)

"2026년 예산 얼마야?" 자연어 질문에 Gemini가 근거 문서와 페이지 번호까지 같이 답한다. BYOK 방식, API 키는 로컬에만.

+5More Open Source · 공공 도메인 도구

대표작 셋 옆에,
5개를 더 만들었다.

법령 AI 플랫폼부터 공시·통계·주소·건축까지. 같은 철학 하나 — 관공서 데이터를 자연어 한 줄로. 카드를 누르면 프로젝트별 상세 페이지로.

+딸깍 시리즈 · 가볍게 쓰는 도구

눌러서 딸깍,
그걸로 끝.

포트폴리오 8선 옆에, 혼자 쓰려고 만들었다가 공개한 작은 도구들. 로그인 없음 · 설치 없음 · 바로 딸깍.

낮에는 공무원,
밤에는 관공서 문법을 다시 씁니다.

7년 동안 HWP 파일을 밀어내며 살았다. 어느 날 전부 파싱하기로 했다.
npm 패키지 하나, MCP 서버 넷, 데스크톱 앱 둘, 웹 서비스 둘, 익스텐션 하나. 그리고 이 페이지.

github.com/chrisryugj ↗

낮에 공무원이라 겪었다. 그래서 밤에 코드로 옮겼다.