Skip to main content
Glama
davidvc
by davidvc

Herramienta de conocimiento de código

Una herramienta de gestión del conocimiento para repositorios de código que utiliza incrustaciones vectoriales. Esta herramienta ayuda a mantener y consultar el conocimiento sobre su código fuente mediante técnicas avanzadas de incrustación.

Construcción e instalación

1. Construya el paquete

Primero, debes crear los archivos de distribución:

# Clone the repository git clone https://github.com/yourusername/code-knowledge-tool.git cd code-knowledge-tool # Create and activate a virtual environment python -m venv venv source venv/bin/activate # Install build tools python -m pip install --upgrade pip build # Build the package python -m build

Esto creará dos archivos en el directorio dist/:

  • code_knowledge_tool-0.1.0-py3-none-any.whl (archivo de rueda para la instalación)

  • code_knowledge_tool-0.1.0.tar.gz (distribución fuente)

2. Instalar el paquete

Prerrequisitos

  1. Asegúrese de que Ollama esté instalado y ejecutándose:

# Install Ollama (if not already installed) curl https://ollama.ai/install.sh | sh # Start Ollama service ollama serve
  1. Instalar el paquete:

Opción 1: Instalar desde el archivo de rueda (recomendado para su uso)
# Navigate to where you built the package cd /path/to/code_knowledge_tool # Install from the wheel file pip install dist/code_knowledge_tool-0.1.0-py3-none-any.whl
Opción 2: Instalar en modo editable (recomendado para desarrollo)

Esta opción es la mejor si desea modificar la herramienta o contribuir a su desarrollo:

# Assuming you're already in the code-knowledge-tool directory # and have activated your virtual environment # Install in editable mode with development dependencies pip install -e ".[dev]"

Related MCP server: LanceDB MCP Server

Integración con RooCode/Cline

  1. Copia la configuración de MCP a tu configuración:

Para Cline (VSCode):

# Open the settings file open ~/Library/Application\ Support/Code/User/globalStorage/rooveterinaryinc.roo-cline/settings/cline_mcp_settings.json

Añade esta configuración:

{ "mcpServers": { "code_knowledge": { "command": "python", "args": ["-m", "code_knowledge_tool.mcp_tool"], "env": { "PYTHONPATH": "${workspaceFolder}" } } } }

Para RooCode:

# Open the settings file open ~/Library/Application\ Support/RooCode/roocode_config.json

Agregue la misma configuración que la anterior.

  1. Reinicie RooCode/Cline para cargar la nueva herramienta.

Uso como banco de memoria y proveedor de contexto RAG

Esta herramienta puede servir como banco de memoria de su proyecto y proveedor de contexto RAG. Para configurarlo:

  1. Copie la plantilla proporcionada a su proyecto:

cp clinerules_template.md /path/to/your/project/.clinerules
  1. Personalice las reglas y patrones en .clinerules para las necesidades de su proyecto

La plantilla incluye instrucciones completas para:

  • Gestión de la base de conocimientos

  • Flujos de trabajo de desarrollo basados en RAG

  • Directrices de calidad del código

  • Prácticas de gestión de la memoria

Consulte clinerules_template.md para obtener detalles completos de configuración y uso.

Características

  • Almacenamiento vectorial local para el conocimiento del código

  • Generación eficiente de incrustaciones con Ollama

  • Compatibilidad con múltiples tipos de archivos

  • Comprensión de código sensible al contexto

  • Integración con RooCode y Cline a través de MCP

  • Aumento de contexto basado en RAG

  • Almacenamiento persistente de conocimiento

Requisitos

  • Python 3.8 o superior

  • Servicio Ollama ejecutándose localmente

  • chromadb para operaciones vectoriales

Desarrollo

Ejecución de pruebas

El proyecto sigue un enfoque de pruebas que prioriza la integración, centrándose en la funcionalidad integral y el cumplimiento del contrato MCP. El conjunto de pruebas consta de:

  1. Pruebas de contrato MCP

    • Registro y ejecución de herramientas

    • Gestión de recursos

    • Operaciones de conocimiento

    • Manejo de errores

  2. Pruebas de compilación de paquetes

    • Verificación de la instalación

    • Resolución de dependencia

    • Inicialización del servidor MCP

    • Funcionalidad básica

Para ejecutar las pruebas:

# Install test dependencies pip install -e ".[dev]" # Run all tests pytest # Run specific test suites pytest tests/integration/test_mcp_contract.py -v # MCP functionality pytest tests/integration/test_package_build.py -v # Installation verification

Requisitos del entorno de prueba:

# Ensure Ollama is running ollama serve

Las pruebas utilizan un directorio temporal (test_knowledge_store) que se limpia automáticamente entre ejecuciones de pruebas.

Para obtener más detalles sobre la estrategia y los patrones de prueba, consulte la documentación en docs/ .

Distribución futura

Si desea que este paquete esté disponible a través de pip (es decir, pip install code-knowledge-tool ), deberá:

  1. Registrar una cuenta en PyPI

  2. Instalar twine: pip install twine

  3. Sube tu distribución: twine upload dist/*

Sin embargo, por ahora, utilice los métodos de instalación y compilación locales descritos anteriormente.

Licencia

Licencia MIT

-
security - not tested
F
license - not found
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/davidvc/code-knowledge-mcptool'

If you have feedback or need assistance with the MCP directory API, please join our Discord server