bilig은(는) 무엇을 하나요?
Node.js 서비스와 에이전트 도구를 위한 수식 워크페이퍼 및 XLSX 재계산 런타임: 셀 편집, 재계산, 읽기 확인(readback), JSON 영속화.
개요
proompteng/bilig는 AI 에이전트(Claude Code, Cursor, Codex 등)나 Node.js 서비스가 XLSX 파일을 로드하여 셀 값을 변경하고, 모든 수식을 다시 계산한 뒤, 변경된 결과를 읽어 확인하고 최종 상태를 JSON 파일로 저장할 수 있는 도구입니다.
주요 기능
- 워크페이퍼 로드: 기존
.xlsx파일을 메모리에 로드합니다. - 셀 편집: 특정 셀에 숫자, 텍스트, 수식을 설정합니다.
- 전체 재계산: 모든 수식 셀을 다시 계산하여 최신 결과를 반영합니다.
- 읽기 확인(readback): 특정 셀 또는 전체 시트의 계산된 값을 읽어옵니다.
- JSON 영속화: 현재 워크페이퍼 상태(값, 수식, 시트 구조)를 JSON 파일로 저장합니다.
지원 플랫폼
- Claude Code
- Cursor
- Codex
- 직접 Node.js 스크립트
사용 예시 (AI 에이전트)
# 워크페이퍼 로드
node bilig.js load sample.xlsx
# 셀 A1에 값 설정
node bilig.js set A1 100
# 셀 B1에 수식 설정
node bilig.js set B1 =A1*2
# 모든 수식 재계산
node bilig.js recalc
# 셀 값 읽기 확인
node bilig.js get B1
# 출력: 200
# 상태를 JSON으로 저장
node bilig.js persist output.json
API 서버 모드
--serve 플래그를 사용하여 REST API 서버로 실행할 수 있습니다.
node bilig.js --serve --port 3000
API 엔드포인트
| 메서드 | 경로 | 설명 |
|---|---|---|
POST | /load | XLSX 파일 로드 |
POST | /set | 셀 값 설정 |
POST | /recalc | 전체 재계산 실행 |
GET | /get | 셀 값 조회 |
POST | /persist | JSON으로 저장 |
환경 변수
BILIG_PORT: API 서버 포트 (기본값: 3000)BILIG_JSON_DIR: JSON 영속화 디렉토리 (기본값:./data)
의존성
- Node.js >= 16
xlsx-populate>= 1.21
설치
npm install
라이선스
MIT