Documentation
¶
Index ¶
- Constants
- type AskUserInput
- type AskUserOutput
- type Candidate
- type CompactInput
- type CompactOutput
- type DebugInfo
- type Elicitor
- type ListCandidatesInput
- type ListCandidatesOutput
- type MatchFragment
- type MatchInput
- type MatchOutput
- type Option
- type RemoveInput
- type RemoveOutput
- type RemoveTuple
- type Service
- type ShowInput
- type ShowOutput
- type SummarizeChunk
- type SummarizeInput
- type SummarizeOutput
- type TransformSpec
Constants ¶
View Source
const Name = "message"
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AskUserInput ¶
type AskUserInput struct {
Message string `json:"message" description:"The question or prompt to display to the user."`
Schema map[string]interface{} `json:"schema,omitempty" description:"Optional JSON Schema for the expected user response."`
}
AskUserInput is the tool input for message-askUser.
type AskUserOutput ¶
type AskUserOutput struct {
Action string `json:"action"`
Payload map[string]interface{} `json:"payload,omitempty"`
}
AskUserOutput is the tool result for message-askUser.
type CompactInput ¶
type CompactOutput ¶
type Elicitor ¶
type Elicitor interface {
Elicit(ctx context.Context, turn *memory.TurnMeta, role string, req *plan.Elicitation) (messageID string, status string, payload map[string]interface{}, err error)
}
Elicitor abstracts the elicitation service to avoid a direct import cycle.
type ListCandidatesInput ¶
type ListCandidatesInput struct {
// Max number of candidates to return (default: 50)
Limit int `json:"limit,omitempty" description:"Max number of candidates to return (default 50)."`
// Types filter (user, assistant, tool). Empty = all
Types []string `json:"types,omitempty" description:"Optional types to include: user, assistant, tool."`
}
type ListCandidatesOutput ¶
type ListCandidatesOutput struct {
Candidates []Candidate `json:"candidates"`
}
type MatchFragment ¶
type MatchInput ¶
type MatchOutput ¶
type MatchOutput struct {
Size int `json:"size"`
Fragments []MatchFragment `json:"fragments"`
}
type Option ¶
type Option func(*Service)
Option configures optional dependencies on the message service.
func WithElicitor ¶
WithElicitor sets the elicitation dependency for the askUser tool.
type RemoveInput ¶
type RemoveInput struct {
Tuples []RemoveTuple `json:"tuples"`
}
type RemoveOutput ¶
type RemoveTuple ¶
type Service ¶
type Service struct {
// contains filtered or unexported fields
}
Service provides message utilities exposed to agents.
func New ¶
New creates a basic service; summarization/match require dependencies set via options or NewWithDeps.
func NewWithDeps ¶
func NewWithDeps(conv apiconv.Client, core coreGen, emb embedder.Finder, summarizeChunk, matchChunk int, summaryModel, summaryPrompt, defaultModel, embedModel string, opts ...Option) *Service
NewWithDeps provides full dependencies for summarize/match operations.
func (*Service) Methods ¶
func (s *Service) Methods() svc.Signatures
type ShowInput ¶
type ShowInput struct {
MessageID string `json:"messageId"`
ByteRange *textutil.IntRange `json:"byteRange,omitempty" description:"Optional byte range [from,to) over the selected content."`
Sed []string `json:"sed,omitempty" description:"List of sed programs applied in order to the selected content."`
Transform *TransformSpec `json:"transform,omitempty" description:"Transform with selector+fields or queryLanguage+query, then format as csv or ndjson."`
}
type ShowOutput ¶
type SummarizeChunk ¶
type SummarizeInput ¶
type SummarizeOutput ¶
type TransformSpec ¶
type TransformSpec struct {
Selector string `json:"selector,omitempty" description:"Simple dot-path (e.g., data or data.items). No wildcards or object construction."`
Format string `json:"format,omitempty" description:"Output format" choices:"csv,ndjson"`
Fields []string `json:"fields,omitempty" description:"CSV column order; derived when empty."`
MaxRows int `json:"maxRows,omitempty" description:"Row cap (0 = no cap)."`
}
Click to show internal directories.
Click to hide internal directories.