Skip to main content

Architecture Overview

Simili Bot uses a modular, pipeline-based architecture designed for flexibility and extensibility. It is built to handle organization-scale issue management while maintaining a small, efficient footprint.

System Design

Simili Bot acts as a bridge between GitHub events and AI-powered analysis engines. It processes events sequentially through a customizable pipeline of 14 discrete steps.

High-Level Components

  1. Event Source: GitHub Actions (Webhook) or the Simili CLI provides the issue/PR context.
  2. Pipeline Engine: Orchestrates the execution of 14 steps, passing a shared Context object forward.
  3. Search Layer: Flexible backends (GitHub Native Hybrid, Qdrant, or BM25).
  4. Intelligence Layer: Integration with Google Gemini, OpenAI, and Anthropic Claude.

The 14-Step Pipeline

The pipeline is composed of distinct modules that handle specific logic:
1

Initialization

Gatekeeper & Command Handler: Validates the repo and parses @simili-bot commands.
2

Search Preparation

VectorDB Prep: Ensures collections exist if using Qdrant.
3

Similarity Discovery

Similarity Search / GitHub Similarity: Finds related issues using the chosen backend.
4

Analysis

LLM Router & Duplicate Detector: Performs deep logic checks on routing and relationship.
5

Triage

Quality Checker & Triage: Scores the issue and suggests labels.
6

Action Building

Response Builder: Constructs the final summary comment.
7

Execution

Action Executor: Posts to GitHub and triggers labels/transfers.
8

Post-Processing

Indexer & Scheduler: Updates the vector DB and schedules pending background tasks.

Core Technologies

Simili Bot is designed for the modern AI stack.

Pipeline Engine

A step-based execution model written in Go 1.24. Each step implements a common interface, making the system highly extensible.

Search Architecture

The bot supports Hybrid Routing and Hybrid Search:
  • Routing: Combines static rules with semantic VDB-based logic.
  • Search: Combines dense vector embeddings (Gemini/OpenAI) with sparse keyword matching (BM25/GitHub Native).

Integration Layer

High-performance clients for:
  • Google Gemini: Preferred for high-dimensional embeddings (3072 dims).
  • Qdrant: Low-latency vector storage and retrieval.
  • GitHub: REST (v3) and GraphQL APIs for comprehensive management.

Technical Specifications


Next Steps

Pipeline Reference

Search Backends