일반 소개
code2prompt는 개발자 Mufeed VH가 만들고 GitHub에서 호스팅하는 오픈 소스 명령줄 도구로, 사용자가 전체 코드 베이스를 대규모 언어 모델(LLM)에 적합한 프롬프트로 빠르게 변환할 수 있도록 설계되었습니다. 코드 디렉터리를 탐색하여 소스 트리 구조를 생성하고 코드 분석, 문서화 또는 기능 개선과 같은 작업에 직접 사용할 수 있도록 파일의 내용을 통합하여 형식이 지정된 마크다운 출력을 생성합니다. 핸들바 템플릿 사용자 지정, 토큰 카운팅 통계, Git diff 통합을 지원하는 이 도구는 특히 다음과 같은 대규모 모델의 강력한 기능을 활용하려는 개발자에게 적합합니다. ChatGPT (또는 Claude)를 사용하여 복잡한 코드베이스를 처리할 수 있습니다. 성능 최적화, 버그 찾기, 커밋 생성 등 코드2프롬프트는 상당한 효율성 향상을 제공합니다. 2025년 3월 3일 현재, 이 프로젝트는 4,500개가 넘는 별을 획득하여 개발자 커뮤니티에서 널리 수용되고 있음을 입증하고 있습니다.

기능 목록
- 코드베이스 변환지정된 디렉터리의 코드 파일을 LLM에서 읽을 수 있는 단일 프롬프트로 통합합니다.
- 소스 코드 트리 생성프로젝트 레이아웃을 쉽게 이해할 수 있도록 코드 디렉터리의 트리 구조를 자동으로 생성합니다.
- 템플릿 사용자 지정핸들바 템플릿으로 출력 형식을 사용자 지정하여 다양한 사용 시나리오를 지원하세요.
- 토큰 수다음에 대한 통계적 프롬프트 생성 토큰 숫자를 사용하여 다양한 모델의 컨텍스트 제약 조건에 맞게 조정할 수 있습니다.
- Git 통합코드 변경 내역을 표시하기 위해 Git diff 및 로그 추가를 지원합니다.
- 문서 필터링.gitignore와 같은 불필요한 콘텐츠를 무시하는 글로브 모드 파일 필터링을 지원합니다.
- 마크다운 출력구조화된 마크다운 문서를 생성하여 LLM에 바로 업로드할 수 있습니다.
- 크로스 플랫폼 지원Linux, macOS 및 Windows에서 안정적입니다.
- 클립보드 지원: 생성된 팁을 클립보드에 자동으로 복사하여 운영 효율성을 높입니다.
도움말 사용
설치 프로세스
code2prompt는 간단한 설치 과정과 다양한 방법을 지원하는 Rust로 작성된 명령줄 도구입니다. 자세한 단계는 다음과 같습니다:
방법 1: 소스 코드를 통한 설치
- 사전 조건Rust와 Cargo(Rust의 패키지 관리자)가 시스템에 설치되어 있는지 확인합니다. 다음 명령으로 확인할 수 있습니다:
rustc --version cargo --version
아직 설치되어 있지 않다면 Rust 웹사이트를 방문하여 다운로드하여 설치하세요.
2. 클론 창고::
git clone https://github.com/mufeedvh/code2prompt.git
cd code2prompt
- 컴파일 및 설치::
cargo build --release
컴파일이 완료되면
target/release/
디렉토리를 찾아code2prompt
실행 파일입니다. - 글로벌 경로로 이동(선택 사항): 예를 들어 전역 호출을 위해 파일을 시스템 경로로 이동합니다:
sudo mv target/release/code2prompt /usr/local/bin/
방법 2: 바이너리 사전 컴파일하기
- 운영 체제에 맞는 최신 버전의 바이너리를 다운로드하려면 GitHub 릴리스 페이지를 방문하세요(예
code2prompt-v2.0.0-linux-x86_64
). - 압축을 풀고 실행 권한을 부여합니다:
chmod +x code2prompt
- 전역 경로로 이동합니다(선택 사항):
sudo mv code2prompt /usr/local/bin/
방법 3: Nix를 통한 설치
Nix 패키지 관리자를 사용하는 경우 직접 설치할 수 있습니다:
# 无 flakes
nix-env -iA nixpkgs.code2prompt
# 有 flakes
nix profile install nixpkgs#code2prompt
사용법
설치가 완료되면 명령줄에서 실행할 수 있습니다. code2prompt
. 다음은 주요 기능에 대한 자세한 작동 절차입니다:
1. 기본 사용법: 코드 베이스 힌트 생성하기
코드 디렉터리가 있다고 가정해 보겠습니다. /path/to/codebase
를 클릭하고 다음 명령을 실행합니다:
code2prompt /path/to/codebase
- 출력에는 기본적으로 마크다운 형식으로 생성되어 클립보드에 복사된 소스 트리와 모든 파일 콘텐츠가 포함됩니다.
- 샘플 출력:
Source Tree:
dir/
file1.rs
└── file2.py`dir/file1.rs`: <文件内容>
2. 사용자 지정 템플릿
code2prompt는 설치 디렉터리에 있는 기본 제공 템플릿(예: git 커밋 메시지, 문서 주석 등 생성용)을 제공합니다. templates/
폴더에 저장합니다. 사용자 지정 템플릿을 만들 수도 있습니다. 예를 들어 document-the-code.hbs
문서 댓글을 추가합니다:
code2prompt /path/to/codebase -t templates/document-the-code.hbs
- 사용자 지정 템플릿은 다음과 같은 변수를 사용하여 핸들바 구문을 따라야 합니다.
absolute_code_path
(코드 경로)를 입력합니다,source_tree
(소스 코드 트리) 및files
(문서 목록).
3. 토큰 카운팅 및 인코딩 옵션
여러 분할기를 지원하여 생성된 힌트 토큰의 수를 확인합니다:
code2prompt /path/to/codebase --tokens -c cl100k
- 선택적 분사:
cl100k
(기본값),p50k
및p50k_edit
및r50k
.
4. Git 통합
Git diff(스테이징된 파일)를 추가합니다:
code2prompt /path/to/codebase --diff
두 지점 간의 차이점을 비교하세요:
code2prompt /path/to/codebase --git-diff-branch "main, development"
브랜치 간 커밋 로그를 가져옵니다:
code2prompt /path/to/codebase --git-log-branch "main, development"
5. 문서 필터링
특정 파일 또는 디렉터리를 제외합니다:
code2prompt /path/to/codebase --exclude "*.log" --exclude "tests/*"
특정 파일만 포함합니다:
code2prompt /path/to/codebase --include "*.rs" --include "*.py"
6. 출력 저장
결과를 클립보드에 복사하는 대신 파일로 저장합니다:
code2prompt /path/to/codebase -o output.md
작동 예
Python 프로젝트에 대한 성능 최적화 권장 사항을 생성하고 싶다고 가정해 보겠습니다:
- 실행 명령을 실행합니다:
code2prompt /path/to/project -t templates/improve-performance.hbs -o prompt.md
- 최고 사령관(군)
prompt.md
다음에 업로드된 콘텐츠 Claude 또는 ChatGPT에 "이 코드 기반을 기반으로 성능 최적화 제안"을 입력합니다. - 루프 최적화, 메모리 관리 권장 사항 등 모델에서 반환한 최적화 옵션을 가져옵니다.
주의
- 일부 시스템(예: 우분투 24.04)에서 클립보드 기능이 작동하지 않는 경우 터미널로 내보낸 후 수동으로 복사하세요:
code2prompt /path/to/codebase -o /dev/stdout | xclip -selection c
- 프로브
.gitignore
파일을 사용하여 불필요한 파일을 올바르게 무시할 수 있습니다(--no-ignore
(사용 안 함).
위의 단계를 통해 코드2프롬프트를 빠르게 시작하고 코드 기반을 사용 가능한 대형 모델로 쉽게 전환하여 분석에서 최적화에 이르는 전체 프로세스를 완료할 수 있습니다.
© 저작권 정책
이 글은 저작권이 있으며 무단으로 복제해서는 안 됩니다.
관련 문서
댓글 없음...