cli-anything-drawio은(는) 무엇을 하나요?
Draw.io용 CLI 래퍼 — 명령줄에서 다이어그램을 생성, 편집 및 내보낼 수 있습니다.
설치
이 CLI는 cli-anything-drawio 패키지의 일부로 설치됩니다:
pip install cli-anything-drawio
전제 조건:
- Python 3.10+
- 시스템에 drawio가 설치되어 있어야 합니다
사용법
기본 명령
# 도움말 표시
cli-anything-drawio --help
# 대화형 REPL 모드 시작
cli-anything-drawio
# 새 프로젝트 생성
cli-anything-drawio project new -o project.json
# JSON 출력으로 실행 (에이전트 소비용)
cli-anything-drawio --json project info -p project.json
REPL 모드
하위 명령 없이 호출하면 CLI가 대화형 REPL 세션을 시작합니다:
cli-anything-drawio
# 탭 완성 및 히스토리와 함께 대화형으로 명령 입력
명령 그룹
프로젝트
프로젝트 관리: 새로 만들기, 열기, 저장, 정보.
| 명령 | 설명 |
|---|---|
new | 새 빈 다이어그램 생성 |
open | 기존 .drawio 프로젝트 파일 열기 |
save | 현재 프로젝트 저장 |
info | 상세 프로젝트 정보 표시 |
xml | 현재 프로젝트의 원시 XML 출력 |
presets | 사용 가능한 페이지 크기 프리셋 목록 |
도형
도형 작업: 추가, 제거, 이동, 크기 조정, 스타일.
| 명령 | 설명 |
|---|---|
add | 다이어그램에 도형 추가 |
remove | ID로 도형 제거 |
list | 페이지의 모든 도형 나열 |
label | 도형의 레이블 텍스트 업데이트 |
move | 도형을 새 좌표로 이동 |
resize | 도형 크기 조정 |
style | 도형의 스타일 속성 설정 |
info | 도형에 대한 상세 정보 표시 |
types | 사용 가능한 모든 도형 유형 나열 |
연결선
연결선 작업: 추가, 제거, 스타일.
| 명령 | 설명 |
|---|---|
add | 두 도형 사이에 연결선 추가 |
remove | ID로 연결선 제거 |
label | 연결선의 레이블 업데이트 |
style | 연결선의 스타일 속성 설정 |
list | 페이지의 모든 연결선 나열 |
styles | 사용 가능한 엣지 스타일 목록 |
페이지
페이지 작업: 추가, 제거, 이름 변경, 나열.
| 명령 | 설명 |
|---|---|
add | 새 페이지 추가 |
remove | 인덱스로 페이지 제거 |
rename | 페이지 이름 변경 |
list | 모든 페이지 나열 |
내보내기
내보내기 작업: PNG, PDF, SVG로 렌더링.
| 명령 | 설명 |
|---|---|
render | 다이어그램을 파일로 내보내기 |
formats | 사용 가능한 내보내기 형식 목록 |
세션
세션 관리: 상태, 실행 취소, 다시 실행.
| 명령 | 설명 |
|---|---|
status | 현재 세션 상태 표시 |
undo | 마지막 작업 실행 취소 |
redo | 마지막으로 취소한 작업 다시 실행 |
save-state | 세션 상태를 디스크에 저장 |
list | 저장된 모든 세션 나열 |
예제
새 프로젝트 생성
새 drawio 프로젝트 파일을 만듭니다.
cli-anything-drawio project new -o myproject.json
# 또는 프로그래매틱 사용을 위한 JSON 출력
cli-anything-drawio --json project new -o myproject.json
대화형 REPL 세션
undo/redo를 지원하는 대화형 세션을 시작합니다.
cli-anything-drawio
# 대화형으로 명령 입력
# 'help'를 사용하여 사용 가능한 명령 확인
# 'undo' 및 'redo'로 히스토리 탐색
프로젝트 내보내기
프로젝트를 최종 출력 형식으로 내보냅니다.
cli-anything-drawio --project myproject.json export render output.pdf --overwrite
상태 관리
CLI는 다음과 함께 세션 상태를 유지합니다:
- 실행 취소/다시 실행: 최대 50단계의 히스토리
- 프로젝트 지속성: 프로젝트 상태를 JSON으로 저장/로드
- 세션 추적: 수정 사항 및 변경 사항 추적
출력 형식
모든 명령은 이중 출력 모드를 지원합니다:
- 사람이 읽을 수 있는 형식 (기본값): 표, 색상, 서식 있는 텍스트
- 기계가 읽을 수 있는 형식 (
--json플래그): 에이전트 소비를 위한 구조화된 JSON
# 사람 출력
cli-anything-drawio project info -p project.json
# 에이전트용 JSON 출력
cli-anything-drawio --json project info -p project.json
AI 에이전트용
이 CLI를 프로그래매틱 방식으로 사용할 때:
- 항상
--json플래그를 사용하여 구문 분석 가능한 출력 얻기 - 반환 코드 확인 - 0은 성공, 0이 아닌 값은 오류
- stderr 파싱하여 실패 시 오류 메시지 확인
- 파일 작업에는 절대 경로 사용
- 내보내기 작업 후 출력 파일 존재 여부 확인
더 많은 정보
- 전체 문서: 패키지 내 README.md 참조
- 테스트 범위: 패키지 내 TEST.md 참조
- 방법론: cli-anything-plugin의 HARNESS.md 참조
버전
1.0.0