Documentation
¶
Overview ¶
Package ingest parsea los archivos de sesión de los agentes (Codex, Claude Code) y los persiste en el Store de nem. Los parsers son puros (archivo → ParsedChat); la orquestación inserta de forma idempotente.
Index ¶
Constants ¶
const ( RoleUser = "user" RoleAssistant = "assistant" RoleReasoning = "reasoning" RoleTool = "tool" )
Roles con los que se persisten los mensajes. user/assistant son la conversación; reasoning es el razonamiento del agente (thinking/reasoning); tool son las llamadas a herramientas y sus salidas (compactadas).
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ParsedChat ¶
ParsedChat es el resultado de parsear un archivo de sesión: el chat y sus mensajes, listos para persistir.
type Parser ¶
type Parser interface {
// Source identifica al agente: "codex" | "claude".
Source() string
// DefaultRoot devuelve el directorio raíz por defecto de las sesiones.
DefaultRoot() (string, error)
// Parse parsea el contenido de un archivo de sesión.
Parse(r io.Reader, sessionPath string) (*ParsedChat, error)
}
Parser convierte un archivo de sesión de un agente en un ParsedChat. Es la abstracción que implementa cada agente soportado (codex, claude).
func NewClaudeParser ¶
func NewClaudeParser() Parser
NewClaudeParser crea el parser de sesiones de Claude Code.
func NewCodexParser ¶
func NewCodexParser() Parser
NewCodexParser crea el parser de sesiones de Codex.