Files
picoclaw/pkg/tools/integration/shared.go
T

78 lines
1.8 KiB
Go

package integrationtools
import (
"context"
"github.com/sipeed/picoclaw/pkg/session"
toolshared "github.com/sipeed/picoclaw/pkg/tools/shared"
)
type (
Tool = toolshared.Tool
ToolResult = toolshared.ToolResult
AsyncCallback = toolshared.AsyncCallback
)
func WithToolContext(ctx context.Context, channel, chatID string) context.Context {
return toolshared.WithToolContext(ctx, channel, chatID)
}
func WithToolInboundContext(
ctx context.Context,
channel, chatID, messageID, replyToMessageID string,
) context.Context {
return toolshared.WithToolInboundContext(ctx, channel, chatID, messageID, replyToMessageID)
}
func WithToolSessionContext(
ctx context.Context,
agentID, sessionKey string,
scope *session.SessionScope,
) context.Context {
return toolshared.WithToolSessionContext(ctx, agentID, sessionKey, scope)
}
func ToolChannel(ctx context.Context) string {
return toolshared.ToolChannel(ctx)
}
func ToolChatID(ctx context.Context) string {
return toolshared.ToolChatID(ctx)
}
func ToolMessageID(ctx context.Context) string {
return toolshared.ToolMessageID(ctx)
}
func ToolAgentID(ctx context.Context) string {
return toolshared.ToolAgentID(ctx)
}
func ToolSessionKey(ctx context.Context) string {
return toolshared.ToolSessionKey(ctx)
}
func ToolSessionScope(ctx context.Context) *session.SessionScope {
return toolshared.ToolSessionScope(ctx)
}
func ErrorResult(message string) *ToolResult {
return toolshared.ErrorResult(message)
}
func SilentResult(forLLM string) *ToolResult {
return toolshared.SilentResult(forLLM)
}
func NewToolResult(forLLM string) *ToolResult {
return toolshared.NewToolResult(forLLM)
}
func UserResult(content string) *ToolResult {
return toolshared.UserResult(content)
}
func MediaResult(forLLM string, mediaRefs []string) *ToolResult {
return toolshared.MediaResult(forLLM, mediaRefs)
}