Two essential tools for LLM-assisted development - discovered through market research of actual developer pain points.
- 373 functions analyzed for dependency tracking
- 244 files indexed for context search
- AST-based impact prediction
- Keyword + Semantic search support
Solves: "I fixed one thing and broke another" regression problem
# Analyze project dependencies
python3 dependency_analyzer.py analyze --project-root /path/to/project
# Predict impact before changing code
python3 dependency_analyzer.py impact --project-root /path --file code.pyFeatures:
- AST-based dependency extraction
- BFS traversal for impact prediction
- Risk level assessment (LOW/MEDIUM/HIGH/CRITICAL)
- Dependency graph generation (JSON)
Output Example:
=== Impact Analysis Report ===
Changed File: auth.py
Functions: 5
Total Affected Functions: 12
⚠️ Overall Risk: HIGH
Solves: "Can't find past conversations/files" context loss problem
# Search files
python3 external_memory_rag.py search --project-root /path --query "authentication"
# Generate context from query
python3 external_memory_rag.py context --project-root /path --query "how to implement login"Features:
- Keyword-based search (fast, no dependencies)
- Semantic search (optional, requires sentence-transformers)
- Conversation indexing
- Auto-context generation
Output Example:
📄 Found 5 results:
1. auth_handler.py
Score: 15.00 | Lines: 245
Snippet: ...authentication flow using JWT tokens...
# Clone repository
git clone https://github.com/yourusername/llm-dev-tools.git
cd llm-dev-tools
# Optional: Install semantic search support
pip install sentence-transformersDependency Analyzer:
# Check impact before modifying file
python3 dependency_analyzer.py impact \
--project-root /your/project \
--file /your/project/module.py \
--save-report impact_report.txtExternal Memory RAG:
# Search for relevant files
python3 external_memory_rag.py search \
--project-root /your/project \
--query "database connection" \
--top-k 5These tools were built based on Phase 1 market research analyzing real developer pain points:
- Pain Collection: Analyzed Reddit, OpenAI forums, GitHub issues
- Gap Analysis: Identified top complaints
- Solution Design: Built tools addressing specific pains
- Prototype Testing: Validated with real projects
- Regression Prevention: Developers fear "fix one, break another"
- Context Loss: Hard to find past conversations/decisions
- Automation Gap: Existing tools require manual data input
Algorithm:
- AST parsing to extract function/class definitions
- Build dependency graph (forward + reverse)
- BFS traversal for impact prediction
- Risk scoring based on affected function count
Risk Levels:
LOW: 0 affected functionsMEDIUM: 1-4 affected functionsHIGH: 5-19 affected functionsCRITICAL: 20+ affected functions
Search Methods:
-
Keyword Search (default):
- TF-IDF-like scoring
- Exact match bonus
- Fast, no dependencies
-
Semantic Search (optional):
- Sentence-BERT embeddings
- Cosine similarity matching
- Requires
sentence-transformers
Index Structure:
{
"file_index": {filepath: content},
"embedding_index": {filepath: vector},
"conversation_index": {id: content}
}Minimum (Keyword Search Only):
- Python 3.8+
- Standard library only
Optional (Semantic Search):
sentence-transformersnumpy
# Analyze project
python3 dependency_analyzer.py analyze --project-root PATH [--save-graph FILE]
# Predict impact
python3 dependency_analyzer.py impact --project-root PATH --file FILE [--save-report FILE]
# Demo
python3 dependency_analyzer.py demo# Index files
python3 external_memory_rag.py index --project-root PATH [--save FILE] [--no-embeddings]
# Search
python3 external_memory_rag.py search --project-root PATH --query QUERY [--top-k N] [--method METHOD]
# Generate context
python3 external_memory_rag.py context --project-root PATH --query QUERY [--top-files N]
# Demo
python3 external_memory_rag.py demoContributions welcome! These tools solve real problems - if you have ideas for improvements, please open an issue or PR.
MIT License - See LICENSE file for details
Built with SPQR methodology - Problem-first, solution-driven development