Documentation
¶
Index ¶
- func IsDangerousCommand(command string) bool
- func ValidateInput(ctx context.Context, tool Tool, input any) error
- type BashTool
- type CallMCPTool
- type DelegateTool
- type DiffEmitter
- type EditDiffLine
- type EditDiffLineKind
- type EditFileTool
- type EditOp
- type GlobTool
- type GrepTool
- type InputValidator
- type PermissionRequester
- type ReadFileTool
- type Registry
- type SubagentRunner
- type Tool
- type WebFetchTool
- type WriteFileTool
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func IsDangerousCommand ¶
IsDangerousCommand returns true if the command should require explicit user approval.
Types ¶
type BashTool ¶
type BashTool struct {
// contains filtered or unexported fields
}
func NewBashTool ¶
func NewBashTool(guard *filesystem.Guard, permissionRequester PermissionRequester) *BashTool
func (*BashTool) Description ¶
func (*BashTool) InputSchema ¶
type CallMCPTool ¶
type CallMCPTool struct {
// contains filtered or unexported fields
}
func NewCallMCPTool ¶
func NewCallMCPTool(manager keenmcp.Runtime, permissionRequester PermissionRequester) *CallMCPTool
func (*CallMCPTool) Description ¶
func (t *CallMCPTool) Description() string
func (*CallMCPTool) InputSchema ¶
func (t *CallMCPTool) InputSchema() map[string]any
func (*CallMCPTool) Name ¶
func (t *CallMCPTool) Name() string
func (*CallMCPTool) ValidateInput ¶
func (t *CallMCPTool) ValidateInput(ctx context.Context, input any) error
type DelegateTool ¶
type DelegateTool struct {
// contains filtered or unexported fields
}
func NewDelegateTool ¶
func NewDelegateTool(runner SubagentRunner, namedAgents []string) *DelegateTool
func (*DelegateTool) Description ¶
func (t *DelegateTool) Description() string
func (*DelegateTool) InputSchema ¶
func (t *DelegateTool) InputSchema() map[string]any
func (*DelegateTool) Name ¶
func (t *DelegateTool) Name() string
func (*DelegateTool) ValidateInput ¶
func (t *DelegateTool) ValidateInput(_ context.Context, input any) error
type DiffEmitter ¶
type DiffEmitter interface {
EmitDiff(lines []EditDiffLine)
}
type EditDiffLine ¶
type EditDiffLine struct {
Kind EditDiffLineKind
OldLineNum int
NewLineNum int
Content string
}
type EditDiffLineKind ¶
type EditDiffLineKind int
const ( DiffLineContext EditDiffLineKind = iota DiffLineAdded DiffLineRemoved DiffLineHunk )
type EditFileTool ¶
type EditFileTool struct {
// contains filtered or unexported fields
}
func NewEditFileTool ¶
func NewEditFileTool(guard *filesystem.Guard, diffEmitter DiffEmitter, permissionRequester PermissionRequester) *EditFileTool
func (*EditFileTool) Description ¶
func (t *EditFileTool) Description() string
func (*EditFileTool) InputSchema ¶
func (t *EditFileTool) InputSchema() map[string]any
func (*EditFileTool) Name ¶
func (t *EditFileTool) Name() string
func (*EditFileTool) ValidateInput ¶
func (t *EditFileTool) ValidateInput(_ context.Context, input any) error
type GlobTool ¶
type GlobTool struct {
// contains filtered or unexported fields
}
func NewGlobTool ¶
func NewGlobTool(guard *filesystem.Guard, permissionRequester PermissionRequester) *GlobTool
func (*GlobTool) Description ¶
func (*GlobTool) InputSchema ¶
type GrepTool ¶
type GrepTool struct {
// contains filtered or unexported fields
}
func NewGrepTool ¶
func NewGrepTool(guard *filesystem.Guard, permissionRequester PermissionRequester) *GrepTool
func (*GrepTool) Description ¶
func (*GrepTool) InputSchema ¶
type InputValidator ¶
type PermissionRequester ¶
type ReadFileTool ¶
type ReadFileTool struct {
// contains filtered or unexported fields
}
func NewReadFileTool ¶
func NewReadFileTool(guard *filesystem.Guard, permissionRequester PermissionRequester) *ReadFileTool
func (*ReadFileTool) Description ¶
func (t *ReadFileTool) Description() string
func (*ReadFileTool) InputSchema ¶
func (t *ReadFileTool) InputSchema() map[string]any
func (*ReadFileTool) Name ¶
func (t *ReadFileTool) Name() string
func (*ReadFileTool) ValidateInput ¶
func (t *ReadFileTool) ValidateInput(_ context.Context, input any) error
type Registry ¶
type Registry struct {
// contains filtered or unexported fields
}
func NewRegistry ¶
func NewRegistry() *Registry
type SubagentRunner ¶
type WebFetchTool ¶
type WebFetchTool struct{}
func NewWebFetchTool ¶
func NewWebFetchTool() *WebFetchTool
func (*WebFetchTool) Description ¶
func (t *WebFetchTool) Description() string
func (*WebFetchTool) InputSchema ¶
func (t *WebFetchTool) InputSchema() map[string]any
func (*WebFetchTool) Name ¶
func (t *WebFetchTool) Name() string
func (*WebFetchTool) ValidateInput ¶
func (t *WebFetchTool) ValidateInput(_ context.Context, input any) error
type WriteFileTool ¶
type WriteFileTool struct {
// contains filtered or unexported fields
}
func NewWriteFileTool ¶
func NewWriteFileTool(guard *filesystem.Guard, diffEmitter DiffEmitter, permissionRequester PermissionRequester) *WriteFileTool
func (*WriteFileTool) Description ¶
func (t *WriteFileTool) Description() string
func (*WriteFileTool) InputSchema ¶
func (t *WriteFileTool) InputSchema() map[string]any
func (*WriteFileTool) Name ¶
func (t *WriteFileTool) Name() string
func (*WriteFileTool) ValidateInput ¶
func (t *WriteFileTool) ValidateInput(_ context.Context, input any) error
Click to show internal directories.
Click to hide internal directories.