Versions in this module Expand all Collapse all v0 v0.26.0 Jun 13, 2026 Changes in this version + func WithHandler(ctx context.Context, h Handler) context.Context + type EventData struct + Data any + Kind string + type FileRepository struct + func NewFileRepository(dir string) *FileRepository + func (r *FileRepository) Save(_ context.Context, trace *Trace) error + type FunctionCall struct + Arguments map[string]any + ID string + Name string + type Handler interface + AddEvent func(ctx context.Context, kind string, data any) + EndAgentExecute func(ctx context.Context, err error) + EndChildAgent func(ctx context.Context, err error) + EndLLMCall func(ctx context.Context, data *LLMCallData, err error) + EndSubAgent func(ctx context.Context, err error) + EndToolExec func(ctx context.Context, result map[string]any, err error) + Finish func(ctx context.Context) error + StartAgentExecute func(ctx context.Context) context.Context + StartChildAgent func(ctx context.Context, name string) context.Context + StartLLMCall func(ctx context.Context) context.Context + StartSubAgent func(ctx context.Context, name string) context.Context + StartToolExec func(ctx context.Context, toolName string, args map[string]any) context.Context + func AsChildAgent(parent Handler, name string) Handler + func HandlerFrom(ctx context.Context) Handler + func Multi(handlers ...Handler) Handler + type LLMCallData struct + InputTokens int + Model string + OutputTokens int + Request *LLMRequest + Response *LLMResponse + type LLMRequest struct + Messages []Message + SystemPrompt string + Tools []ToolSpec + type LLMResponse struct + FunctionCalls []*FunctionCall + Texts []string + type Message struct + Contents []MessageContent + Role string + type MessageContent struct + Arguments map[string]any + ID string + MediaType string + Name string + Result map[string]any + Text string + Title string + ToolCallID string + Type string + URL string + func NewMediaContent(contentType, mediaType string) MessageContent + func NewRedactedThinkingContent() MessageContent + func NewTextContent(text string) MessageContent + func NewThinkingContent(reasoning string) MessageContent + func NewToolCallContent(id, name string, args map[string]any) MessageContent + func NewToolResponseContent(toolCallID, name string, result map[string]any) MessageContent + type Option func(*Recorder) + func WithMetadata(meta TraceMetadata) Option + func WithRepository(repo Repository) Option + func WithStackTrace() Option + func WithTraceID(id string) Option + type Recorder struct + func New(opts ...Option) *Recorder + func (r *Recorder) AddEvent(ctx context.Context, kind string, data any) + func (r *Recorder) EndAgentExecute(ctx context.Context, err error) + func (r *Recorder) EndChildAgent(ctx context.Context, err error) + func (r *Recorder) EndLLMCall(ctx context.Context, data *LLMCallData, err error) + func (r *Recorder) EndSubAgent(ctx context.Context, err error) + func (r *Recorder) EndToolExec(ctx context.Context, result map[string]any, err error) + func (r *Recorder) Finish(ctx context.Context) error + func (r *Recorder) StartAgentExecute(ctx context.Context) context.Context + func (r *Recorder) StartChildAgent(ctx context.Context, name string) context.Context + func (r *Recorder) StartLLMCall(ctx context.Context) context.Context + func (r *Recorder) StartSubAgent(ctx context.Context, name string) context.Context + func (r *Recorder) StartToolExec(ctx context.Context, toolName string, args map[string]any) context.Context + func (r *Recorder) Trace() *Trace + type Repository interface + Save func(ctx context.Context, trace *Trace) error + type Span struct + Children []*Span + Duration time.Duration + EndedAt time.Time + Error string + Event *EventData + Kind SpanKind + LLMCall *LLMCallData + Name string + ParentID string + SpanID string + StackTrace []StackFrame + StartedAt time.Time + Status SpanStatus + ToolExec *ToolExecData + type SpanKind string + const SpanKindAgentExecute + const SpanKindEvent + const SpanKindLLMCall + const SpanKindSubAgent + const SpanKindToolExec + type SpanStatus string + const SpanStatusError + const SpanStatusOK + type StackFrame struct + File string + Function string + Line int + type ToolExecData struct + Args map[string]any + Error string + Result map[string]any + ToolName string + type ToolSpec struct + Description string + Name string + type Trace struct + EndedAt time.Time + Metadata TraceMetadata + RootSpan *Span + StartedAt time.Time + TraceID string + type TraceMetadata struct + Labels map[string]string + Model string + Strategy string