Documentation
¶
Overview ¶
Package tools 提供 Agent 工具系统:注册、定义、调度
Index ¶
- func BoolProp(desc string) map[string]any
- func BuildToolDef(name, desc string, params map[string]any) types.ToolDefinition
- func IntProp(desc string) map[string]any
- func ObjectSchema(properties map[string]any, required []string) map[string]any
- func PreviewEditDiff(workDir, path, oldString, newString string) (string, error)
- func PreviewWriteDiff(workDir, path, newContent string) (string, error)
- func RegisterBuiltins(r *Registry, cfg BuiltinConfig)
- func StringProp(desc string) map[string]any
- type BuiltinConfig
- type Registry
- func (r *Registry) Execute(name string, ctx types.ToolContext, input map[string]any) (string, error)
- func (r *Registry) Get(name string) (*types.RegisteredTool, bool)
- func (r *Registry) List() []types.ToolDefinition
- func (r *Registry) ListNames() []string
- func (r *Registry) Register(rt *types.RegisteredTool)
- func (r *Registry) RequiresApproval(name string) bool
- func (r *Registry) RiskLevel(name string) string
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func BuildToolDef ¶
func BuildToolDef(name, desc string, params map[string]any) types.ToolDefinition
BuildToolDef 创建工具定义的辅助函数
func ObjectSchema ¶
ObjectSchema 构造一个 object 类型的 JSON Schema
func PreviewEditDiff ¶
PreviewEditDiff builds the diff for an edit_file request, enforcing the same uniqueness rule as the executor.
func PreviewWriteDiff ¶
PreviewWriteDiff builds the same diff that write_file would return, without modifying the file. It is used by the permission prompt.
func RegisterBuiltins ¶
func RegisterBuiltins(r *Registry, cfg BuiltinConfig)
RegisterBuiltins 注册所有内置工具到注册表
Types ¶
type BuiltinConfig ¶
BuiltinConfig 内置工具需要的配置
type Registry ¶
type Registry struct {
// contains filtered or unexported fields
}
Registry 工具注册表
func (*Registry) Execute ¶
func (r *Registry) Execute(name string, ctx types.ToolContext, input map[string]any) (string, error)
Execute 执行指定工具
func (*Registry) RequiresApproval ¶
RequiresApproval 检查工具是否需要审批
Click to show internal directories.
Click to hide internal directories.