오늘도 공부
CLI-Anything: 모든 소프트웨어를 AI Agent가 사용할 수 있게 만드는 CLI 자동 생성 도구 본문
AI Agent 시대가 본격적으로 열리면서 기존 소프트웨어를 AI가 직접 사용하는 문제가 점점 중요해지고 있습니다.
하지만 대부분의 소프트웨어는 GUI 중심으로 설계되어 있기 때문에 AI Agent가 사용하기 어렵습니다.
이 문제를 해결하기 위해 등장한 프로젝트가 바로 CLI-Anything입니다.
이 글에서는 GitHub 프로젝트 CLI-Anything이 무엇인지, 어떤 문제를 해결하는지, 그리고 실제로 어떻게 사용하는지 개발자 관점에서 정리해보겠습니다.
GitHub - HKUDS/CLI-Anything: CLI-Anything: Making ALL Software Agent-Native
CLI-Anything: Making ALL Software Agent-Native. Contribute to HKUDS/CLI-Anything development by creating an account on GitHub.
github.com
프로젝트 소개
CLI-Anything은 기존 소프트웨어를 AI Agent가 사용할 수 있는 CLI 인터페이스로 자동 변환하는 도구입니다. (github.com)
핵심 아이디어는 매우 간단합니다.
“모든 소프트웨어를 CLI 기반 인터페이스로 만들어 AI Agent가 사용할 수 있게 하자.”
이 프로젝트는 홍콩대학교 HKUDS(Data Intelligence Lab) 팀에서 개발한 오픈소스 프로젝트입니다. (GitHub)
프로젝트의 주요 목표는 다음과 같습니다.
- 기존 소프트웨어를 Agent-native software로 변환
- GUI 중심 프로그램을 CLI 기반 인터페이스로 자동 생성
- AI Agent가 직접 명령어 기반으로 소프트웨어를 조작하도록 지원
예를 들어 다음과 같은 소프트웨어를 생각해봅시다.
- GIMP
- Blender
- LibreOffice
- Stable Diffusion WebUI
이런 프로그램은 대부분 GUI 기반입니다.
CLI-Anything을 사용하면 다음과 같은 CLI 명령으로 제어할 수 있습니다.
cli-anything-libreoffice document new -o report.json --type writer
cli-anything-libreoffice writer add-heading -t "Q1 Report"
cli-anything-libreoffice export render output.pdf -p pdf
즉,
GUI 소프트웨어 → CLI 인터페이스 → AI Agent 제어
이 구조를 자동으로 만들어주는 도구입니다.
왜 이 프로젝트가 등장했을까
AI Agent는 점점 더 많은 작업을 자동화하고 있습니다.
대표적인 예:
- Claude Code
- Cursor
- OpenCode
- Gemini CLI
하지만 AI Agent에는 하나의 큰 문제가 있습니다.
AI Agent는 실제 소프트웨어를 잘 사용하지 못한다
현재 AI Agent가 소프트웨어를 사용하는 방법은 대부분 다음과 같습니다.
1️⃣ UI Automation
예:
- Selenium
- Playwright
- Screen automation
문제점
- 매우 불안정
- UI 변경에 취약
- 속도가 느림
2️⃣ API 기반 접근
API가 있는 서비스는 문제가 없습니다.
하지만 대부분의 전문 소프트웨어는 API가 없습니다.
예
- Blender
- Photoshop
- LibreOffice
- CAD 프로그램
3️⃣ 기능이 제한된 재구현
일부 프로젝트는 소프트웨어를 새로 구현합니다.
하지만 문제는 다음과 같습니다.
- 기능의 90%를 재구현하지 못함
- 유지보수가 어려움
CLI-Anything의 해결 방법
CLI-Anything은 완전히 다른 접근을 합니다.
기존 소프트웨어를 그대로 사용하면서 CLI 인터페이스만 자동 생성
즉,
Existing Software
↓
CLI Generation
↓
Agent Control
이렇게 만들어 AI Agent가 실제 소프트웨어를 직접 사용할 수 있도록 합니다. (GitHub)
핵심 기능
CLI-Anything이 제공하는 핵심 기능을 살펴보겠습니다.
1️⃣ 소프트웨어 자동 분석
CLI-Anything은 먼저 대상 소프트웨어 코드를 분석합니다.
분석 과정에서 다음을 수행합니다.
- 소스코드 스캔
- GUI 동작 → API 매핑
- 기능 목록 추출
예
Menu: File → New
Action: create_project()
Menu: Layer → Add
Action: add_layer()
이렇게 내부 기능을 분석합니다.
2️⃣ 자동 CLI 설계
분석된 기능을 기반으로 CLI 명령 구조를 자동 설계합니다.
예
project new
layer add
document export
이 구조는 일반적인 CLI 스타일을 따릅니다.
tool command subcommand options
예
cli-anything-gimp layer add --name background
3️⃣ CLI 구현 자동 생성
CLI-Anything은 Python Click 기반 CLI를 자동 생성합니다.
예:
import click
@click.group()
def cli():
pass
@cli.command()
@click.option("--name")
def new(name):
create_project(name)
@cli.command()
@click.option("--layer")
def add(layer):
add_layer(layer)
if __name__ == "__main__":
cli()
생성되는 기능
- CLI 명령어
- REPL 인터페이스
- JSON 출력
- undo / redo
- 테스트 코드
4️⃣ Agent 친화적인 JSON 출력
AI Agent가 CLI를 사용할 때 가장 중요한 것은 구조화된 출력입니다.
CLI-Anything은 JSON 모드를 지원합니다.
cli-anything-libreoffice --json document info
출력
{
"name": "Q1 Report",
"type": "writer",
"pages": 1,
"elements": 2
}
이 구조는 AI Agent가 파싱하기 매우 쉽습니다.
5️⃣ Interactive REPL 지원
CLI-Anything은 REPL 인터페이스도 제공합니다.
cli-anything-blender
예
blender> scene new --name ProductShot
✓ Created scene: ProductShot
blender> object add-mesh --type cube
✓ Added mesh
AI Agent는 대화형 CLI 환경에서 지속적인 작업을 수행할 수 있습니다.
프로젝트 구조
CLI-Anything은 크게 Plugin + CLI Generator + Harness 구조로 이루어져 있습니다.

구성 요소 설명
구성 요소역할
| Analyzer | 소프트웨어 코드 분석 |
| CLI Designer | CLI 구조 설계 |
| CLI Generator | CLI 코드 생성 |
| Test Generator | 테스트 코드 생성 |
| Publisher | CLI 패키지 배포 |
CLI 생성 파이프라인
CLI-Anything은 다음 7단계 파이프라인으로 동작합니다. (GitHub)
1️⃣ Analyze
2️⃣ Design
3️⃣ Implement
4️⃣ Plan Tests
5️⃣ Write Tests
6️⃣ Document
7️⃣ Publish
이 과정이 한 번의 명령어로 자동 실행됩니다.
설치 방법
CLI-Anything은 Claude Code plugin 형태로 설치됩니다.
1️⃣ Marketplace 추가
/plugin marketplace add HKUDS/CLI-Anything
2️⃣ Plugin 설치
/plugin install cli-anything
3️⃣ CLI 생성
예: GIMP
/cli-anything ./gimp
이 명령어 하나로
- CLI 생성
- 테스트 코드 생성
- CLI 패키지 생성
모든 작업이 실행됩니다.
생성된 CLI 사용 예시
설치
cd gimp/agent-harness
pip install -e .
사용
cli-anything-gimp --help
예
cli-anything-gimp project new --width 1920 --height 1080
언제 사용하면 좋을까
CLI-Anything은 특히 다음 상황에서 유용합니다.
1️⃣ AI Agent 자동화
예
- AI design automation
- AI document generation
- AI 3D modeling pipeline
2️⃣ GUI 프로그램 자동화
예
- Blender
- LibreOffice
- GIMP
3️⃣ ML 워크플로 자동화
예
- Stable Diffusion
- ComfyUI
- model training pipeline
CLI-Anything의 비전
CLI-Anything의 비전은 매우 명확합니다.
“모든 소프트웨어를 AI Agent가 사용할 수 있도록 만들자.”
미래에는
Human → GUI
AI Agent → CLI
이 구조가 표준이 될 가능성이 높습니다.
CLI-Anything은 그 중간을 연결하는 프로젝트입니다.
마무리
CLI-Anything은 단순한 CLI 생성기가 아닙니다.
이 프로젝트의 진짜 의미는 다음과 같습니다.
AI Agent 시대를 위한 소프트웨어 인터페이스 표준을 만들려는 시도
핵심 아이디어
- 기존 소프트웨어를 버리지 않는다
- CLI 인터페이스를 자동 생성한다
- AI Agent가 직접 사용하게 만든다
AI Agent가 실제 업무 도구를 사용하는 시대가 온다면,
CLI-Anything 같은 프로젝트는 매우 중요한 역할을 할 가능성이 높습니다.
'AI' 카테고리의 다른 글
| Playwright Interactive mode 설명 (0) | 2026.03.10 |
|---|---|
| OpenRAG (문서를 업로드하고, 처리하고, 검색하고, 대화형으로 활용) (0) | 2026.03.10 |
| AFFiNE: 오픈소스로 만든 Notion + Miro 스타일 지식 협업 플랫폼 (0) | 2026.03.09 |
| MiroFish: 다중 AI 에이전트로 미래를 시뮬레이션하는 예측 엔진 (0) | 2026.03.09 |
| Claude Code에서 Impeccable 적용하기: AI가 만드는 UI 품질을 한 단계 올리는 방법 (0) | 2026.03.09 |
