Communitygithub.com

CLI Creator

Python CLI 도구 설계 및 감사를 위한 설치 가능한 에이전트 스킬입니다.

CLI Creator란 무엇인가요?

이 스킬은 프로덕션 등급의 Python CLI 도구와 CLI 관련 스킬/템플릿을 설계, 감사, 리팩터링하기 위한 라우터 역할을 합니다. 새로운 CLI를 만들거나 기존 CLI를 검토할 때 명령 표면을 작게 유지하고, 설치 가능성을 보장하며, 검토 결과를 구조화된 형식으로 출력하도록 안내합니다. Typer, Click, argparse 등 다양한 프레임워크를 지원하며, CLI 유형(유틸리티, 설정 기반, 대화형 등)에 따라 적합한 아키텍처를 선택할 수 있는 편향 테이블을 제공합니다. 또한 리뷰 워크플로우, 감사 출력 템플릿, 참조 문서 로딩 규칙을 통해 일관된 품질 관리를 돕습니다. 클로드 코드, 커서, Codex와 같은 AI 에이전트 환경에서 사용할 수 있으며, pip 설치와 같은 표준적인 검증 절차를 포함합니다.

지원 대상~Claude Code~Codex CLI~Cursor
npx skills add AdvancingTitans/cli-creator-skill

즐겨 사용하는 AI에게 물어보기

이 에이전트 스킬이 미리 로드된 새 채팅을 엽니다.

문서

CLI Creator은(는) 무엇을 하나요?

프로덕션 등급 Python CLI 도구 및 CLI 관련 스킬/템플릿을 구축하고 감사하기 위한 라우터입니다. CLI 형태를 결정하고, 명령 표면을 작게 유지하며, 설치 가능성을 보장하고, 검토 결과를 구조화된 형식으로 출력하는 데 사용합니다. 이 스킬은 가볍게 유지됩니다: 필요한 참조만 읽으세요.

사용 시기

  • 새 Python CLI 또는 명령 트리.
  • CLI 리팩터, 단순화 또는 패키징 정리.
  • CLI 검토/감사 (UX, 설정, 오류, 캐시, 릴리스 흐름 포함).
  • CLI 패키지처럼 동작하는 에이전트 스킬, 스캐폴드 또는 템플릿.
  • 설치, 휠 또는 콘솔 스크립트 동작 검증.

CLI 유형 선택

유형편향
명령 우선 유틸리티얇은 라우터, 엄격한 종료 코드, JSON/일반 출력.
설정 기반 도구설정 발견, 우선 순위, 재현성.
대화형 어시스턴트흐름/상태 머신, 프롬프트, 복구.
하이브리드 CLI작은 명령 트리 + 재사용 가능한 오케스트레이션.
성능 중심 CLI지연 임포트, 제한된 IO, 캐시/진행률.
플러그인/확장 가능 CLI안정적인 확장 계약 및 레지스트리.

어시스턴트 아키텍처를 명령 우선 도구에 강제하지 마세요. 단일 스크립트 형태를 성장하는 제품에 강제하지 마세요.

핵심 규칙

  • 사용자 작업을 해결하는 가장 작은 CLI를 선호하세요.
  • 최소 CLI/YAGNI 경로를 사용하세요: 도구에 명령이 한두 개이고, 영구 상태, 네트워크, 플러그인, 자격 증명이 없으면 작게 유지하세요. Rich, Pydantic, platformdirs, 캐시 계층, doctor 또는 플러그인 레지스트리를 즉각적인 문제를 해결하지 않는 한 추가하지 마세요.
  • 이름, 플래그, 종료 코드, 설정 키, 출력 모드를 안정적으로 유지하세요.
  • 기본값을 유용하고 안전하게 만드세요.
  • 라우팅, 도메인 로직, IO, 설정, 지속성, 렌더링 및 통합을 분리하세요.
  • JSON 또는 일반 모드로 머신 출력을 스크립트 가능하게 유지하세요.
  • README 명령이 설치된 콘솔 스크립트인지 확인하세요.

참조-로딩 규칙

작업에 필요한 참조만 읽으세요:

  • 생성 또는 리팩터: references/creation-playbook.md.
  • 검토 또는 감사: references/review-rubric.md 및 references/pitfalls-and-solutions.md.
  • 구현 세부 사항, 패키징, 보안, 크로스 플랫폼 동작, Rich 출력, 캐시 또는 LLM 제공자: references/technical-best-practices.md.
  • 스킬/패키지 유지 보수를 위해, 워크스페이스 루트 거버넌스 폴더 skill-ir/, evals/, scripts/, reports/, registry/가 있을 때 참조하세요. 이는 설치된 스킬 복사본에 번들되지 않은 유지 보수자 측 라우팅 보조 도구입니다.

해당 참조를 여기에 복제하지 마세요. 현재 작업에 필요할 때만 로드하세요.

새 CLI 또는 스킬 생성 흐름

  1. 제품 형태를 결정하세요: 누가 실행하는지, 어떤 압력을 받는지, 무엇을 캐시/기억/잊어야 하는지.
  2. 몇 가지 안정적인 명령과 실제 예제로 명령 표면을 설계하세요.
  3. 맞는 가장 작은 스택을 선택하세요.
    • 대부분의 CLI에는 Typer 또는 Click.
    • 아주 작은 stdlib 친화적 도구에만 argparse.
  4. 다음 두 릴리스를 견딜 수 있는 가장 작은 아키텍처를 선택하세요.
  5. 제품 루프를 구현하세요: 입력, 검증, 실행, 렌더링, 지속성, 종료 코드, 복구 힌트.
  6. 출시 전에 검증하세요.

명령 표면 예제

my-cli run
my-cli init
my-cli config show
my-cli doctor
my-cli cache clear
my-cli check PATH
my-cli fetch QUERY --json
my-cli export ID --output result.md

규칙:

  • 필수 도메인 객체에는 인수를 사용하세요.
  • 수정자, 출력 모드, 선택적 동작에는 옵션을 사용하세요.
  • 자동화를 위해 --json 또는 --format json을 제공하세요.
  • --quiet, --verbose, --debug를 일관되게 제공하세요.
  • 읽기 전용으로 들리는 명령에서 예상치 못한 네트워크나 변경을 피하세요.

검증 기대치

명령 표면, 설치 경로, 휠 경로가 중요할 때 항상 검증하세요:

  • 루트 명령 및 각 최상위 명령에 대한 --help.
  • 새 환경에 깨끗하게 설치.
  • 도구에 설정이 있는 경우 누락된 설정 또는 첫 실행 경로.
  • 도구가 입력을 검증하는 경우 잘못된 설정 또는 오류 경로.
  • 지원되는 경우 성공 경로 및 JSON/스크립트 가능 모드.
  • 도구에 캐시가 있는 경우 캐시 새로고침 및 캐시 지우기.
  • 패키징 메타데이터 및 콘솔 스크립트.
  • 설치 신뢰도를 원할 때 리포지토리 외부에서 휠 설치.

해당되는 경우 이 간편한 팩을 사용하세요:

uv venv /tmp/cli-audit
. /tmp/cli-audit/bin/activate
uv pip install -e .
cli-creator-skill --help
cli-creator-skill install
uv build
uv pip install dist/*.whl
python -m pytest

검토 워크플로우

기존 CLI 또는 CLI 관련 스킬/템플릿을 감사할 때:

검토 전에 읽으세요:

  • references/review-rubric.md
  • references/pitfalls-and-solutions.md

감사가 구현 세부 사항, 패키징, 보안, 크로스 플랫폼 동작, Rich 출력, 캐싱 또는 LLM 제공자를 다루는 경우 references/technical-best-practices.md를 읽으세요.

그런 다음:

  1. 리포지토리 형태 검사: 패키지 레이아웃, 명령 진입점, 설정 파일, 테스트, 문서, CI.
  2. 도움말 실행: 루트 --help 및 명령 수준 도움말.
  3. 콜백에서 도메인 서비스, 렌더러까지 하나의 성공 명령 경로 추적.
  4. 하나의 실패 경로를 추적하고 오류 품질 검사.
  5. 설정 우선 순위 확인: 플래그, 환경 변수, 프로젝트 설정, 사용자 설정, 기본값.
  6. 보안 확인: 비밀, 셸 실행, 경로 처리, 안전하지 않은 설정/플러그인, 원격 측정, 서브프로세스 타임아웃, 종속성 공급망.
  7. 성능 확인: 시작 임포트, 네트워크 타임아웃, 캐시 동작, 파일 발견.
  8. 자동화 확인: 종료 코드, JSON 출력, stdin/stdout/stderr 분리, 비-TTY 동작.
  9. 패키징 확인: Python 버전, 종속성, 스크립트, 휠, README 명령.
  10. references/review-rubric.md로 모든 평가 영역 점수 매기기.
  11. 먼저 발견 사항을 제시한 다음 우선 순위가 지정된 수정 사항 제시.

필수 감사 출력

감사 출력에는 다음 섹션이 순서대로 포함되어야 합니다:

**발견 사항**

**점수**

| 영역 | 점수 | 참고 |
|---|---:|---|

**수정 순서**

**테스트 격차**

**검증 명령**

유지 보수 참고 사항

  • 이 스킬을 라우터로 유지하세요. 구현 세부 사항은 네 개의 참조에 넣으세요.
  • 명령 예제, 감사 제목, 검증 팩을 패키지 릴리스와 동기화하세요.
  • 유지 보수자 측 거버넌스의 경우, 워크스페이스 루트 skill-ir/, evals/, scripts/, reports/, registry/ 폴더가 있을 때 사용하세요. 설치된 스킬의 일부인 것처럼 취급하지 마세요.

이 스킬이 도움이 되는 부분

  • 처음부터 새 Python CLI 설계.
  • UX, 패키징, 오류, 모델 설정, 캐싱, 유지 보수성을 위한 기존 CLI 검토.
  • Typer, Click, argparse 또는 하이브리드 애플리케이션 구조화.
  • 사용자가 양식을 작성하는 것처럼 느끼지 않게 하는 자연스러운 다중 턴 CLI 흐름 구축.
  • 실제로 필요할 때 진단, 캐시, 메모리 프로파일, 첫 실행 설정 흐름 추가.
  • 트리거 명확성, 참조 완전성, 명령 템플릿, 출력 계약, 유지 보수 전략에 대한 CLI 관련 스킬 및 템플릿 검토.

설계 기반

이 스킬은 Python 패키징, Typer, Click, Rich, uv, Ruff, Pydantic 및 LLM 제공자 통합에 대한 유지 보수자 경험과 공식 문서 패턴을 증류합니다. 비공식 타사 리포지토리의 코드나 지침을 벤더링하지 않습니다.

관련 스킬