code2prompt: conversión de bibliotecas de código en archivos prompt comprensibles para grandes modelos

Introducción general

code2prompt es una herramienta de línea de comandos de código abierto, creada por el desarrollador Mufeed VH y alojada en GitHub, diseñada para ayudar a los usuarios a convertir rápidamente bases de código enteras en prompts adecuados para el Large Language Model (LLM). Genera una salida Markdown formateada recorriendo el directorio de código, generando una estructura de árbol de fuentes y consolidando el contenido de los archivos para su uso directo en tareas como el análisis de código, la documentación o la mejora de características. Con soporte para la personalización de plantillas Handlebars, estadísticas de recuento de tokens e integración Git diff, la herramienta es especialmente adecuada para desarrolladores que quieran aprovechar la potencia de grandes modelos como ChatGPT (o Claude) para gestionar bases de código complejas. Tanto si se trata de optimizar el rendimiento como de encontrar errores o generar confirmaciones, code2prompt ofrece importantes mejoras de eficiencia. A 3 de marzo de 2025, el proyecto contaba con más de 4.500 estrellas, lo que demuestra su amplia aceptación en la comunidad de desarrolladores.

code2prompt:将代码库转换为大模型可理解的prompt文件

 

Lista de funciones

  • Conversión de la base de código: Consolida los archivos de código de un directorio especificado en un único prompt legible por LLM.
  • Generación del árbol de código fuente: Genera automáticamente una estructura de árbol de directorios de código para facilitar la comprensión de la disposición del proyecto.
  • Personalización de plantillasPersonalice el formato de salida con las plantillas de Handlebars para adaptarse a una amplia gama de escenarios de uso.
  • Recuento de fichasGeneración estadística de indicaciones para ficha número para garantizar la adaptación a las limitaciones contextuales de los distintos modelos.
  • Integración de Git: Soporte para añadir Git diff y log para mostrar el historial de cambios en el código.
  • Filtrado de documentos: Soporta el filtrado de archivos en modo glob, ignorando contenido extraño como .gitignore.
  • Salida MarkdownGenerar documentos Markdown estructurados para cargarlos directamente en LLM.
  • Soporte multiplataformaEstable en Linux, macOS y Windows.
  • Soporte para portapapeles: Copie automáticamente las puntas generadas en el portapapeles para mejorar la eficacia operativa.

 

Utilizar la ayuda

Proceso de instalación

code2prompt es una herramienta de línea de comandos escrita en Rust con un sencillo proceso de instalación y soporte para múltiples métodos. Aquí están los pasos detallados:

Método 1: Instalación a través del código fuente

  1. condiciones previasAsegúrese de que Rust y Cargo (el gestor de paquetes de Rust) están instalados en su sistema. Esto se puede comprobar con el siguiente comando:
    rustc --version
    cargo --version

Si no lo tienes, visita el sitio web de Rust para descargarlo e instalarlo.
2. almacén de clones::

git clone https://github.com/mufeedvh/code2prompt.git
cd code2prompt
  1. Compilación e instalación::
    cargo build --release
    

    Una vez compilado, el target/release/ para encontrar el directorio code2prompt Archivo ejecutable.

  2. Mover a ruta global(Opcional): Mueve los archivos a una ruta del sistema para llamadas globales, por ejemplo:
    sudo mv target/release/code2prompt /usr/local/bin/
    

Método 2: Precompilando los binarios

  1. Visite la página de versiones de GitHub para descargar la última versión del binario para su sistema operativo (p. ej. code2prompt-v2.0.0-linux-x86_64).
  2. Descomprimir y dar permiso de ejecución:
    chmod +x code2prompt
    
  3. Mover a ruta global (opcional):
    sudo mv code2prompt /usr/local/bin/
    

Método 3: Instalación a través de Nix

Si utiliza el gestor de paquetes Nix, puede instalarlo directamente:

# 无 flakes
nix-env -iA nixpkgs.code2prompt
# 有 flakes
nix profile install nixpkgs#code2prompt

Utilización

Una vez instalado, puede ejecutarlo desde la línea de comandos code2prompt. A continuación se detalla el procedimiento de funcionamiento de las principales funciones:

1. Uso básico: generar sugerencias para la base de código

Supongamos que tiene un directorio de código /path/to/codebaseejecute el siguiente comando:

code2prompt /path/to/codebase
  • La salida contendrá el árbol fuente y todos los contenidos de los archivos, generados por defecto en formato Markdown y copiados al portapapeles.
  • Muestra de salida:
    Source Tree:
    

    dir/
    archivo1.rs
    └── file2.py

    `dir/file1.rs`:
    <文件内容>
    

2. Plantillas personalizadas

code2prompt proporciona plantillas integradas (por ejemplo, para generar mensajes de confirmación git, comentarios de documentación, etc.) ubicadas en el directorio de instalación de la aplicación templates/ carpeta. También puede crear plantillas personalizadas. Por ejemplo, utilizando la carpeta document-the-code.hbs Añade comentarios al documento:

code2prompt /path/to/codebase -t templates/document-the-code.hbs
  • Las plantillas personalizadas deben seguir la sintaxis de Handlebars, con variables como absolute_code_path(ruta del código),source_tree(árbol de código fuente) y files(lista de documentos).

3. Recuento de fichas y opciones de codificación

Ver el número de fichas de sugerencia generadas, con soporte para múltiples divisores:

code2prompt /path/to/codebase --tokens -c cl100k
  • Participio optativo:cl100k(por defecto),p50kyp50k_edityr50k.

4. Integración de Git

Añadir Git diff (archivos por etapas):

code2prompt /path/to/codebase --diff

Compare las diferencias entre las dos ramas:

code2prompt /path/to/codebase --git-diff-branch "main, development"

Obtener el registro de commit entre ramas:

code2prompt /path/to/codebase --git-log-branch "main, development"

5. Filtrado de documentos

Excluir archivos o directorios específicos:

code2prompt /path/to/codebase --exclude "*.log" --exclude "tests/*"

Contiene sólo archivos específicos:

code2prompt /path/to/codebase --include "*.rs" --include "*.py"

6. Guardar salida

Guarde los resultados en un archivo en lugar de copiarlos en el portapapeles:

code2prompt /path/to/codebase -o output.md

Ejemplo de funcionamiento

Supongamos que desea generar recomendaciones de optimización del rendimiento para un proyecto Python:

  1. Ejecutar comando:
    code2prompt /path/to/project -t templates/improve-performance.hbs -o prompt.md
    
  2. comandante en jefe (militar) prompt.md Contenido cargado en Claude o ChatGPT, introduzca "Sugerir optimizaciones de rendimiento basadas en esta base de código".
  3. Obtener las opciones de optimización devueltas por el modelo, como la optimización de bucles, recomendaciones de gestión de memoria, etc.

advertencia

  • Si la función de portapapeles falla en algunos sistemas (por ejemplo, Ubuntu 24.04), exporte al terminal y cópielo manualmente:
    code2prompt /path/to/codebase -o /dev/stdout | xclip -selection c
    
  • sonda .gitignore para garantizar que se ignoran correctamente los archivos extraños (disponible con la función --no-ignore (Desactivado).

Con los pasos anteriores, puede empezar rápidamente a utilizar code2prompt y convertir fácilmente su base de código en grandes modelos de prompts utilizables, completando todo el proceso, desde el análisis hasta la optimización.

© declaración de copyright

Artículos relacionados

Sin comentarios

Debe iniciar sesión para participar en los comentarios.
Acceder ahora
ninguno
Sin comentarios...