Lyra Intel - Frequently Asked Questions¶
Common questions and answers about Lyra Intel.
Table of Contents¶
- General
- Installation & Setup
- Features & Capabilities
- Performance & Scalability
- Security & Privacy
- Integration
- Troubleshooting
- Development
General¶
What is Lyra Intel?¶
Lyra Intel is a comprehensive code intelligence platform that analyzes codebases to provide insights about code quality, security vulnerabilities, architecture, dependencies, and more. It combines static analysis, ML-powered semantic search, and AI integration to help developers understand and improve their code.
What languages does it support?¶
Core support: - Python - JavaScript/TypeScript - Go - Rust - Java
Extended parsers: - C++ (templates, inheritance, STL) - C# (async/await, LINQ, properties) - Ruby (mixins, metaprogramming) - PHP (traits, namespaces)
Is it open source?¶
Yes, Lyra Intel is open source under the MIT License.
How is it different from other code analysis tools?¶
Key differentiators: - Comprehensive: 70+ components covering analysis, security, metrics, visualization - Scalable: From single files to enterprise monorepos - ML-Powered: Semantic code search using sentence transformers - Extensible: Plugin system for custom analyzers - Modern: WebSocket streaming, React dashboard, IDE extensions - Cloud-Ready: Kubernetes, Terraform, auto-scaling support
Installation & Setup¶
What are the system requirements?¶
Minimum: - Python 3.9+ - 2GB RAM - 1GB disk space
Recommended: - Python 3.11+ - 8GB RAM - 10GB disk space - Redis (for caching) - PostgreSQL (for production)
How do I install it?¶
# From source
git clone https://github.com/nirholas/lyra-intel.git
cd lyra-intel
pip install -e .
# Or via pip (when published)
pip install lyra-intel
Do I need Redis or PostgreSQL?¶
For development: No, it works with in-memory cache and SQLite.
For production: Yes, recommended for performance and persistence.
Can I run it in Docker?¶
Yes! Docker and Docker Compose configurations are included:
docker-compose up
Features & Capabilities¶
What can Lyra Intel analyze?¶
- Code Quality: Complexity, maintainability, code smells
- Security: Vulnerabilities, secrets, OWASP Top 10
- Dependencies: Dependency graphs, circular dependencies, vulnerabilities
- Architecture: Component relationships, module structure
- Metrics: LOC, complexity, test coverage
- Git History: Commits, contributors, blame analysis
- Documentation: Auto-generate docs from code
Does it support semantic code search?¶
Yes! Semantic search uses ML embeddings to find code by meaning, not just keywords:
search.search("authenticate users with OAuth")
# Finds authentication code even if it doesn't mention "OAuth"
Can it detect security vulnerabilities?¶
Yes, it includes: - Hardcoded secrets (API keys, passwords) - SQL injection patterns - XSS vulnerabilities - Insecure deserialization - Path traversal - Command injection - Dependency CVEs
Does it have AI integration?¶
Yes, supports: - OpenAI (GPT-4, GPT-3.5) - Anthropic (Claude) - Local models (Ollama, llama.cpp)
AI features: - Code explanation - Bug detection - Refactoring suggestions - Test generation
Can I create custom analyzers?¶
Yes! The plugin system allows custom analyzers:
class MyAnalyzer(AnalyzerPlugin):
def analyze(self, code, language, **kwargs):
# Your analysis logic
return {"issues": [...]}
Performance & Scalability¶
How fast is it?¶
Typical performance: - Small project (1K files): 30-60 seconds - Medium project (10K files): 5-10 minutes - Large project (100K+ files): 30-60 minutes (with distributed mode)
Single file analysis: < 1 second
How does it scale for large codebases?¶
Three scaling modes:
- Local Mode: Single machine (< 10K files)
- Distributed Mode: Multiple workers (10K-100K files)
- Cloud Mode: Auto-scaling infrastructure (100K+ files)
Does it cache results?¶
Yes, multi-level caching: - L1: In-memory LRU cache - L2: Redis cache (1 hour TTL) - L3: Database persistence
Can I run it distributed?¶
Yes, with multiple workers:
# Coordinator node
coordinator = Coordinator(workers=10)
await coordinator.distribute_analysis(files)
# Worker nodes
worker = Worker(coordinator_url="...")
await worker.start()
Security & Privacy¶
Is my code sent to external services?¶
By default, NO. All analysis runs locally.
Optional AI features may send code snippets to: - OpenAI API (if configured) - Anthropic API (if configured)
You can use local AI models (Ollama) for complete privacy.
How is sensitive data handled?¶
- Code is never logged or persisted without consent
- API keys and secrets are detected but not stored
- All data transmission uses TLS 1.3
- Database encryption at rest (AES-256)
Does it store my code?¶
Only if you explicitly configure database storage. By default: - Analysis results are cached (configurable TTL) - Original code is not stored - Only metadata and findings are persisted
What authentication methods are supported?¶
- API Keys (bcrypt hashed)
- JWT tokens
- OAuth 2.0 / OpenID Connect
- SAML 2.0
- LDAP
Is it compliant with security standards?¶
- OWASP Top 10 coverage
- SARIF 2.1.0 output (GitHub Code Scanning compatible)
- CWE mapping
- CVSS scoring
- SOC 2 compatible architecture
Integration¶
Can I integrate with GitHub?¶
Yes! Multiple integration points:
- GitHub Actions (CI/CD)
- Code Scanning (SARIF upload)
- Pull Request comments
- Issues creation
What about GitLab?¶
Yes, full GitLab integration:
gitlab = GitLabIntegration(...)
gitlab.comment_on_merge_request(mr_iid=42, comment="...")
gitlab.create_issue(title="...", description="...")
Does it work with Bitbucket?¶
Yes:
bitbucket = BitbucketIntegration(...)
bitbucket.comment_on_pull_request(pr_id=123, comment="...")
bitbucket.create_build_status(commit_hash="...", state="SUCCESSFUL")
Are there IDE extensions?¶
Yes: - VS Code extension (TypeScript) - JetBrains plugin (IntelliJ, PyCharm, WebStorm)
Both support: - Real-time analysis - Inline warnings - Security highlighting - Quick fixes
Can I export results?¶
Yes, multiple formats: - PDF (professional reports) - SARIF (GitHub Code Scanning) - Excel (multi-sheet workbooks) - CSV (data analysis) - JSON (programmatic access)
Troubleshooting¶
Analysis is slow¶
Solutions:
1. Enable caching (Redis)
2. Exclude unnecessary files (.gitignore, config)
3. Use distributed mode
4. Disable AI features for faster analysis
Out of memory errors¶
Solutions: 1. Increase memory limit 2. Analyze in batches 3. Use streaming mode 4. Exclude large files
Import errors¶
Solutions:
1. Ensure Python 3.9+ is installed
2. Install all dependencies: pip install -e .
3. Check for conflicting packages
WebSocket connection fails¶
Solutions: 1. Check firewall settings 2. Verify port is not in use 3. Ensure WebSocket server is running 4. Check CORS configuration
Redis connection errors¶
Solutions:
1. Ensure Redis is running: redis-cli ping
2. Check connection URL
3. Verify network access
4. Check Redis authentication
Development¶
How do I contribute?¶
See CONTRIBUTING.md for guidelines.
Can I add support for new languages?¶
Yes! Create a custom parser:
from src.analyzers.base import BaseParser
class MyLanguageParser(BaseParser):
def parse(self, code):
# Parse code and return AST
return ast_data
How do I run tests?¶
# Run all tests
pytest
# With coverage
pytest --cov=src tests/
# Specific test file
pytest tests/test_engine.py
Where can I get help?¶
- Documentation: docs/
- Examples: EXAMPLES.md
- Tutorials: TUTORIAL.md
- Issues: GitHub Issues
How do I report a bug?¶
Open an issue on GitHub with: - Description of the problem - Steps to reproduce - Expected vs actual behavior - Environment details (OS, Python version) - Log output (if applicable)
Can I request features?¶
Yes! Open a feature request issue with: - Use case description - Proposed solution - Why it would be useful - Examples (if applicable)
Still have questions?¶
- Check the complete documentation
- Read the tutorials
- See code examples
- Open an issue on GitHub contact nich on Github | nich on X