Versions in this module Expand all Collapse all v0 v0.2.0 Aug 24, 2026 Changes in this version + func PluginsByLanguage() map[Language]*LanguagePlugin + func VerifyComponentImports(root string, components []ComponentNode, pairs map[string]map[string]int) map[string]bool + type AnalysisService struct + func NewAnalysisService(client *FalkorClient, workspaceRoot string) *AnalysisService + func (a *AnalysisService) DeadCandidates(ctx context.Context, limit int) ([]DeadCandidate, DeadCodeSummary, error) + func (a *AnalysisService) Hubs(ctx context.Context, t HubThresholds, limit int) ([]HubScore, error) + func (a *AnalysisService) Impact(ctx context.Context, symbol string, maxDepth int) (*ImpactReport, error) type BuilderOption + func WithWorkspaceRoot(root string) BuilderOption + type CallerTier struct + Callers []SymbolRef + Depth int type CodeEdge + Object string + SourceQName string + TargetQName string + type ComponentImpact struct + Callers int + Name string type ComponentNode + UnverifiedDownstream []string + UnverifiedUpstream []string type Config + WorkspaceRoot string + type DeadCandidate struct + FilePath string + Kind string + Language string + Name string + QualifiedName string + Reason string + StartLine int + type DeadCodeSummary struct + DroppedAsReferenced int + GraphCandidates int + TestOnly []DeadCandidate + Unverified int + VerifiedDead []DeadCandidate + type HubScore struct + FanIn int + FanOut int + FilePath string + Junction bool + Kind string + Name string + QualifiedName string + Risk RiskLevel + SharedDefinitions int + StartLine int + TotalDegree int + type HubThresholds struct + Critical int + High int + JunctionFanIn int + JunctionFanOut int + Medium int + func DefaultHubThresholds() HubThresholds + type ImpactReport struct + Components []ComponentImpact + MaxDepth int + Query string + Risk RiskLevel + RiskReasons []string + Root SymbolRef + Tiers []CallerTier + TotalCallers int type LanguagePlugin + FuncDefPattern string + RuntimeEntryNames []string + TestFilePrefixes []string + TestFileSuffixes []string + func (p *LanguagePlugin) DefinitionLineRe(symbol string) *regexp.Regexp + func (p *LanguagePlugin) IsTestFileName(fileName string) bool + type RiskLevel string + const RiskCritical + const RiskHigh + const RiskLow + const RiskMedium + type SymbolRef struct + Component string + FilePath string + Kind string + Name string + QualifiedName string + StartLine int v0.1.0 Aug 24, 2026 Changes in this version + const CodeChatSystemPrompt + const DefaultRRFK + const DefaultVectorDimension + var GoPlugin = &LanguagePlugin + var JavaScriptPlugin = &LanguagePlugin + var PythonPlugin = &LanguagePlugin + var RustPlugin = &LanguagePlugin + func EnrichComponents(ctx context.Context, p LLMProvider, components []CodeNode, ...) (map[string]ComponentEnrichment, error) + func FetchTEIDimension(baseURL string) (int, error) + func PingFalkorDB(addr string) error + func PingOllama(baseURL, apiKey string) error + func PingTEI(baseURL string) error + func RegisterLanguage(p *LanguagePlugin) + func RegisteredExtensions() []string + type BuilderOption func(*CodeContextBuilder) + func WithBuilderLogger(l *slog.Logger) BuilderOption + type CallGraph struct + Depth int + Direction string + Edges []CodeEdge + Nodes []CodeNode + Root string + type CallSite struct + CalleeName string + IsMethodCall bool + Line int + Object string + type CodeChatResult struct + Answer string + Context string + Error string + Query string + ScopeResolved bool + Sources []CodeNode + type CodeContext struct + Content string + Nodes []CodeNode + Query string + ScopeResolved bool + type CodeContextBuilder struct + func NewCodeContextBuilder(client *FalkorClient, embedder Embedder, rerankURL, rerankToken string, ...) *CodeContextBuilder + func (b *CodeContextBuilder) Build(ctx context.Context, params CodeContextBuilderParams) (CodeContext, error) + type CodeContextBuilderParams struct + Query string + Scope *ComponentScope + type CodeEdge struct + Line int + SourceUID string + TargetUID string + Type string + type CodeNode struct + DocComment string + Embedding []float32 + EndLine int + FileHash string + FilePath string + IndexedAt int64 + IsExported bool + Kind string + Language string + Name string + QualifiedName string + Receiver string + Role string + Score float64 + Signature string + StartLine int + UID string + func DetectComponents(nodes []CodeNode, rootPath string) []CodeNode + type ComponentEnrichment struct + Description string + Dir string + Name string + Role string + type ComponentNode struct + Color string + Description string + Downstream []string + FileCount int + FilePath string + Name string + Role string + Symbols []string + Upstream []string + type ComponentScope struct + IncludeDeps bool + MaxDeps int + Name string + type Config struct + BM25Limit int + CallGraphDepth int + FalkorDBAddr string + GraphName string + LLMAPIKey string + LLMBaseURL string + LLMModel string + Logger *slog.Logger + RRFK int + RerankToken string + RerankURL string + ResultCap int + SemanticLimit int + TEIURL string + Workers int + type Embedder interface + Dimension func() int + Embed func(ctx context.Context, texts []string) ([][]float32, error) + type Engine struct + Client *FalkorClient + Config Config + Embedder Embedder + Indexer *Indexer + func New(cfg Config) (*Engine, error) + func (e *Engine) Ask(ctx context.Context, query string, scope ...*ComponentScope) (CodeChatResult, error) + func (e *Engine) Close() error + type ErrEmbeddingFailed struct + Cause error + func (e ErrEmbeddingFailed) Error() string + func (e ErrEmbeddingFailed) Unwrap() error + type ErrFalkorDBUnavailable struct + Addr string + Err error + func (e ErrFalkorDBUnavailable) Error() string + func (e ErrFalkorDBUnavailable) Unwrap() error + type ErrInvalidQuery struct + Query string + func (e ErrInvalidQuery) Error() string + type ErrLLMUnavailable struct + BaseURL string + Err error + func (e ErrLLMUnavailable) Error() string + func (e ErrLLMUnavailable) Unwrap() error + type ErrRetrievalTimeout struct + Duration time.Duration + func (e ErrRetrievalTimeout) Error() string + type ErrSymbolNotFound struct + QualifiedName string + func (e ErrSymbolNotFound) Error() string + type ErrTEIUnavailable struct + Err error + URL string + func (e ErrTEIUnavailable) Error() string + func (e ErrTEIUnavailable) Unwrap() error + type ErrWorkspaceNotFound struct + func (e ErrWorkspaceNotFound) Error() string + type ExtractResult struct + Calls []CallSite + Edges []CodeEdge + FileNode CodeNode + Symbols []CodeNode + type Extractor struct + func NewExtractor(lang Language) (*Extractor, error) + func NewExtractorFromBytes(query []byte) *Extractor + func NewExtractorFromBytesWithLang(query []byte, lang Language) *Extractor + func (e *Extractor) Extract(result *ParseResult) (*ExtractResult, error) + type FalkorClient struct + func NewFalkorClient(addr, graphName string) (*FalkorClient, error) + func NewFalkorClientDim(addr, graphName string, dim int) (*FalkorClient, error) + func (c *FalkorClient) Close() error + func (c *FalkorClient) CreateCodeEdge(_ context.Context, edge CodeEdge) error + func (c *FalkorClient) CreateCodeEdgeBatch(_ context.Context, edges []CodeEdge) error + func (c *FalkorClient) DeleteCodeByFile(_ context.Context, filePath string) error + func (c *FalkorClient) DeleteOrphanComponents(_ context.Context) (int64, error) + func (c *FalkorClient) GetCallGraph(_ context.Context, qualifiedName, direction string, depth int, maxResults int) (*CallGraph, error) + func (c *FalkorClient) GetComponentTree(_ context.Context) ([]ComponentNode, error) + func (c *FalkorClient) GetComponentsSymbolSummaries(_ context.Context) (map[string][]string, error) + func (c *FalkorClient) GetFileHashes(_ context.Context) (map[string]string, error) + func (c *FalkorClient) Graph() *falkordb.Graph + func (c *FalkorClient) Name() string + func (c *FalkorClient) Schema() error + func (c *FalkorClient) SearchCodeBM25(_ context.Context, queryText, kind string, scopeComponentNames []string, ...) ([]CodeNode, error) + func (c *FalkorClient) SearchCodeSemantic(_ context.Context, embedding []float64, kind string, ...) ([]CodeNode, error) + func (c *FalkorClient) UpdateComponentMeta(_ context.Context, filePath, newName, role, description string) error + func (c *FalkorClient) UpsertCodeNode(_ context.Context, node CodeNode) (string, error) + func (c *FalkorClient) UpsertCodeNodeBatch(_ context.Context, nodes []CodeNode) ([]string, error) + type GoQualifier struct + func (q *GoQualifier) DiscoverRoot(projectPath string) (string, error) + func (q *GoQualifier) Qualify(pkg, receiver, name, kind string) string + type IndexRequest struct + Ignore []string + Languages []string + Path string + type IndexResult struct + Duration time.Duration + EdgesCreated int + Errors []error + FilesProcessed int + NodesCreated int + type Indexer struct + func NewIndexer(client *FalkorClient, embedder Embedder, workers int, opts ...IndexerOption) (*Indexer, error) + func (idx *Indexer) Index(ctx context.Context, req IndexRequest) (*IndexResult, error) + type IndexerOption func(*Indexer) + func WithLogger(l *slog.Logger) IndexerOption + func WithProvider(p LLMProvider) IndexerOption + type JSQualifier struct + func (q *JSQualifier) DiscoverRoot(projectPath string) (string, error) + func (q *JSQualifier) Qualify(pkg, receiver, name, kind string) string + type LLMEvent struct + Delta string + Error error + Type LLMEventType + type LLMEventType string + const LLMEventError + const LLMEventFinish + const LLMEventTextDelta + type LLMMessage struct + Content string + Role string + type LLMParams struct + Messages []LLMMessage + Seed *int + Temperature *float64 + type LLMProvider interface + Stream func(ctx context.Context, params LLMParams) (iter.Seq[*LLMEvent], error) + type Language string + const LangGo + const LangJavaScript + const LangPython + const LangRust + func DetectLanguage(ext string) (Language, bool) + type LanguagePlugin struct + Extensions []string + Name Language + NewExtractor func() (*Extractor, error) + NewParser func() (*Parser, error) + Qualifier SymbolQualifier + func LookupByExtension(ext string) (*LanguagePlugin, bool) + type OllamaProvider struct + func NewOllamaProvider(baseURL, model, apiKey string) *OllamaProvider + func (p *OllamaProvider) Stream(ctx context.Context, params LLMParams) (iter.Seq[*LLMEvent], error) + type ParseResult struct + Lang Language + Src []byte + Tree *sitter.Tree + TsLang *sitter.Language + type Parser struct + func NewParser(lang Language) (*Parser, error) + func (p *Parser) Close() + func (p *Parser) ParseBytes(src []byte) (*ParseResult, error) + func (p *Parser) ParseFile(filePath string) (*ParseResult, error) + type PythonQualifier struct + func (q *PythonQualifier) DiscoverRoot(projectPath string) (string, error) + func (q *PythonQualifier) Qualify(pkg, receiver, name, kind string) string + type RerankClient struct + func NewRerankClient(url, token string) *RerankClient + func (r *RerankClient) Rerank(ctx context.Context, query string, texts []string) ([]int, error) + type RustQualifier struct + func (q *RustQualifier) DiscoverRoot(projectPath string) (string, error) + func (q *RustQualifier) Qualify(pkg, receiver, name, kind string) string + type SymbolQualifier interface + DiscoverRoot func(projectPath string) (modulePath string, err error) + Qualify func(pkg, receiver, name, kind string) string + type TEIEmbedder struct + func NewTEIEmbedder(baseURL string, dimension int) (*TEIEmbedder, error) + func NewTEIEmbedderAuto(baseURL string) (*TEIEmbedder, error) + func (e *TEIEmbedder) Close() error + func (e *TEIEmbedder) Dimension() int + func (e *TEIEmbedder) Embed(ctx context.Context, texts []string) ([][]float32, error)