Your Code. Your Style. Your AI Shadow.
Symbiote is an intelligent, adaptive coding assistant that learns how you codeβand then becomes your snarky, ever-evolving sidekick. It observes, remembers, critiques (sometimes too honestly), and writes code in your exact style, almost like your second brain... if your second brain had better linting skills.
Powered by LangGraph, LangChain, LLaMA 3.3, and Gemini API, Symbiote builds a personal graph of your habits, quirks, and coding rituals to deliver personalized suggestions, witty corrections, and hauntingly familiar code snippets.
- π§ Intelligent Memory System (FAISS + Google GenAI) Persistent pattern learning that remembers your coding style across sessions
- π LangGraph Multi-Agent Workflows Dynamic orchestration with intelligent agent routing and state management
- π€ AI-Powered Interactive Chat Chat with your codebase using LLaMA 3.3 orchestration and Gemini code generation
- π Deep Code Analysis (Python AST) Advanced code structure analysis, complexity metrics, and pattern detection
- π οΈ Intelligent Tool System Advanced tool calling with parallel execution and rich context
- π§© Multi-Language Code Parsing Supports Python, JavaScript, TypeScript, Java, C++, Go, Rust, and more
- π Persistent Pattern Memory FAISS vector store with Google GenAI embeddings for intelligent code suggestions
- π¬ Sass-Enabled Feedback Modeβ’ Adjustable snark levels (0-10) for entertaining code reviews and commentary
- π Context-Aware Code Generation Gemini-powered generation that learns and adapts to your exact coding style
- π Intelligent Project Analysis AI-powered analysis of your entire codebase structure and patterns
- π¦Ύ Real-Time Workflow Execution LangGraph workflows for complex multi-step coding tasks
Symbiote implements advanced functionality with your complete tech stack:
- Persistent Pattern Learning: Learns from your coding patterns and stores them in FAISS vector database
- Style Recognition: Analyzes and remembers your coding style preferences
- Context-Aware Suggestions: Provides suggestions based on similar past patterns
- Cross-Session Memory: Patterns persist across sessions and projects
- Multi-Agent Orchestration: Intelligent routing between LLaMA and Gemini agents
- State Management: Maintains conversation context and workflow state
- Parallel Tool Execution: Execute multiple tools simultaneously for efficiency
- Error Recovery: Automatic fallback and error handling in workflows
- Structural Analysis: Extract classes, functions, imports, and variables
- Complexity Metrics: Calculate cyclomatic complexity and maintainability index
- Pattern Detection: Identify design patterns, code smells, and best practices
- Quality Assessment: Automated code quality scoring and recommendations
- Standard Tool Calling: OpenAI/Anthropic compatible tool call format
- Multi-Turn Conversations: Proper conversation flow with tool results
- Async Tool Execution: Non-blocking tool operations
- Rich Tool Registry: File ops, git management, shell execution, code search, AST analysis
- Contextual Understanding: Understands project structure and codebase
- Intelligent Code Generation: Generates code that matches your style
- Proactive Analysis: Automatically suggests improvements and patterns
- Learning from Feedback: Improves responses based on your interactions
Symbiote uses a sophisticated multi-agent system with full tech stack integration:
-
π§ LangGraph Workflow Orchestrator
- Manages complex multi-agent interactions with state management
- Intelligent routing between agents based on task requirements
- Parallel tool execution and error recovery
- Advanced conversation flows
-
π¦Ύ LLaMA 3.3 Agent (Orchestrator)
- Handles user input, intent detection, and tool selection
- Uses standard OpenAI/Anthropic tool calling format
- Manages multi-turn conversations with proper context
- Integrates with FAISS memory for pattern-aware responses
-
π Gemini Agent (Code Specialist)
- Receives enhanced context from LLaMA and memory patterns
- Generates code that matches learned user patterns
- Performs deep code analysis and refactoring
- Returns structured responses with explanations
-
π οΈ Enhanced Tool System
- File operations with intelligent caching
- Git management with smart suggestions
- Shell execution with safety checks
- AST-based code analysis and pattern extraction
- Vector memory search and pattern retrieval
-
π§ FAISS Vector Memory
- Stores coding patterns with Google GenAI embeddings
- Learns from user interactions and code generations
- Provides context-aware suggestions
- Persists knowledge across sessions
-
π‘ Communication
- Agents communicate via structured LangChain messages
- LangGraph manages workflow state and routing
- Memory integration provides enhanced context
- Advanced tool result processing
- User makes a request (code generation, analysis, file operations, etc.)
- LangGraph Workflow analyzes intent and retrieves relevant patterns from FAISS memory
- Intelligent Routing determines optimal agent and tool combination
- Parallel Tool Execution gathers context (files, git status, code analysis)
- Memory-Enhanced Processing incorporates learned patterns and user preferences
- LLaMA Agent orchestrates the response with proper tool calling
- Gemini Agent generates contextual code matching user's style
- Pattern Learning stores successful interactions for future use
- Structured Response delivered with proper formatting and explanations
- Context Awareness: Automatically understands project structure
- Pattern Matching: Uses FAISS to find similar past solutions
- Style Consistency: Maintains your coding style across generations
- Multi-Turn Memory: Remembers conversation context and tool results
- Error Recovery: Intelligent fallback and retry mechanisms
- Modular tool registry for easy extension.
- Tools for file operations, git, shell, search, and more.
- LLaMA can chain tool calls and handle tool outputs.
- Error handling, logging, and extensibility for new tools.
- Persistent Vector Storage: FAISS-based pattern memory that persists across sessions
- Multi-Language Support: Analyzes Python, JavaScript, TypeScript, Java, C++, Go, Rust
- Style Preference Detection: Learns naming conventions, indentation, API usage patterns
- Architectural Pattern Recognition: Identifies design patterns and code organization preferences
- File Operations: Read, modify, and create files through natural language
- Terminal Integration: Execute shell commands directly from chat
- Context-Aware Assistance: Understands your entire codebase for better suggestions
- Git Integration: Analyze diffs, commits, and repository history
- LangGraph Workflows: Multi-agent analysis pipelines for comprehensive insights
- Complexity Metrics: Function complexity, code quality assessment
- Documentation Analysis: Comment patterns and documentation preferences
- Import/Dependency Mapping: Understanding of your library and framework usage
Adjustable personality levels (0-10 scale):
- 0-3: Professional and helpful
- 4-6: Friendly with occasional humor
- 7-8: Sarcastic but constructive
- 9-10: Full tsundere mode (use at your own risk! π€)
Personality is fully adjustable! Use the
/sass <level>
command, config file, or CLI flag to set your preferred sass level. All agents (LLaMA and Gemini) will adapt their tone and style accordingly for every interaction.
- VSCode Extension: Integrated IDE experience with real-time suggestions
- GitHub App: Automated PR commenting and code review workflows
- Visual Style Dashboard: Interactive graph visualization of your coding patterns
- Team Mode: Multi-developer style blending and team preference learning
- Custom Model Support: Integration with local LLMs and other AI providers
- Code Refactoring Agent: Automated code improvement suggestions
- Documentation Generator: Auto-generate docs matching your writing style
- "Clone Me" Mode: Train a model to write code exactly like you
- Code Archaeology: Deep analysis of coding evolution over time
- Style Conflict Resolution: Help teams reconcile different coding preferences
- Smart Code Templates: Generate boilerplate matching your exact patterns
Symbiote has been enhanced with modern tool calling patterns for improved reliability and standardization:
- π§ Standard Tool Calling: Uses OpenAI/Anthropic compatible tool calling format instead of custom JSON
- π¬ Multi-Turn Conversations: Proper conversation flow with tool results integrated into context
- β‘ Parallel Tool Execution: Execute multiple tools simultaneously for better performance
- π‘οΈ Enhanced Error Handling: Structured error responses with proper tool result tracking
- π Better Tool Definitions: LangChain StructuredTool integration with proper schemas
- π Conversation Memory: Maintains conversation history with tool interactions for context
Aspect | Old Implementation | Enhanced Implementation |
---|---|---|
Tool Format | Custom JSON parsing | Standard tool_calls objects |
Conversation | Single-turn | Multi-turn with history |
Tool Execution | Sequential | Parallel execution |
Error Handling | Basic try/catch | Structured tool_result objects |
Integration | Custom parser | LangChain tool binding |
- LangGraph β Dynamic multi-agent workflows for code analysis
- LangChain β Agent orchestration, memory management & tool integration
- LLaMA 3.3 β Orchestration, tool use, and workflow management
- Gemini API β Advanced code understanding, generation & intelligent insights
- FAISS β Vector storage for persistent pattern memory
- Google GenAI β Embeddings and natural language processing
- Python AST β Deep code structure analysis and pattern extraction
See requirements.txt
for all dependencies. Core stack includes:
- langgraph, langchain, langchain-community, langchain-core, langchain-google-genai
- google-genai, faiss-cpu, httpx
- pydantic, typing-extensions, python-dotenv, pathlib, dataclasses-json
-
Clone and setup:
git clone <your-repo> cd Symbiote python -m venv .venv source .venv/bin/activate # Linux/Mac # or .venv\Scripts\activate # Windows pip install -r requirements.txt
-
Set up API keys:
cp .env.example .env # Edit .env and add your API keys: # GROQ_API_KEY=your_groq_api_key_here # GOOGLE_API_KEY=your_google_api_key_here
-
Run Symbiote:
python main.py
-
Start coding with your AI assistant!
𧬠You: create a hello world function π€ Symbiote: *generates clean Python code* 𧬠You: /sass 8 π€ Symbiote: Fine, I'll be more sarcastic... π
Made by Vivek Sharma β the type of dev whose AI assistant may become too powerful.
MIT β Use it, break it, improve it, sass it. Just don't sell it as your symbiote. π€