Documentation
¶
Overview ¶
Package index construye el árbol de índice de nem (estilo PageIndex): una tabla de contenidos jerárquica (project → chat → commit) que el agente navega y razona, sin embeddings. Los commits aportan su resumen gratis (el mensaje escrito por el agente); los chats crudos se resumen heurísticamente (o con un summarizer pluggable inyectado en fases posteriores).
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func HeuristicSummary ¶
HeuristicSummary arma un resumen barato (sin LLM) que describe la TAREA del chat: saltea boilerplate (AGENTS.md, /init, IDE-context, "session continued"), desenvuelve el pedido real, lo limpia a un lead de 1-2 frases, y agrega una cola corta de keywords salientes (mejor recall en búsqueda). Es el default de nem y también el fallback cuando el backend LLM falla.
Types ¶
type Builder ¶
type Builder interface {
// Build refresca el árbol (project → chat → commit). Es INCREMENTAL: reusa
// los resúmenes y embeddings que ya existen y solo computa lo nuevo/cambiado
// (chats sin resumen, commits nuevos), salvo que se use WithForce. Idempotente.
Build() (*Report, error)
}
Builder construye/refresca el árbol de índice.
type Option ¶
type Option func(*config) error
Option configura al Builder.
func WithEmbedder ¶
WithEmbedder activa la capa de embeddings: tras construir el árbol, embebe los resúmenes de los nodos y los guarda. Si el backend falla, el índice igual se construye (los embeddings simplemente no se generan).
func WithForce ¶ added in v0.2.1
WithForce fuerza recomputar TODOS los resúmenes y embeddings, ignorando los que ya existen. Sin esto, Build es incremental: reusa el trabajo previo y solo calcula lo nuevo/cambiado (chats sin resumen, commits nuevos).
func WithProgress ¶
func WithProgress(fn ProgressFunc) Option
WithProgress recibe callbacks de avance (para mostrar "N/total" en el CLI).
func WithSummarizer ¶
func WithSummarizer(s summarize.Summarizer) Option
WithSummarizer usa un Summarizer con LLM (Ollama/API) para los resúmenes de chat, con fallback al heurístico si el backend falla o devuelve vacío.
func WithSummaryFunc ¶
func WithSummaryFunc(fn SummaryFunc) Option
WithSummaryFunc reemplaza el resumidor de chats (default: heurístico).
type ProgressFunc ¶
ProgressFunc recibe el avance de Build (stage = "summarize" | "embed").