전체 문서
이 페이지 목차
도구와 권한 공개 API
이 페이지는 고정 소스 리비전의 production(non-test) Go 파일을 AST로 열거한 공개 계약 색인이다. 테스트 선언, 비공개 식별자, 비공개 receiver 메서드는 제외했다. 각 행의 근거는 선언이 있는 파일 자체이며, 자세한 기본값과 실패 의미는 설정 참조, 도구 계약, 저장 스키마에서 보완한다.
다른 묶음: 실행 코어 · 도구/권한 · 컨텍스트/지속성 · 확장/조정
tool
tool · 관계
이 대상을 사용하는 기능·모듈·계약 · 1개
- 계약 사용 · tool, permission, hook · tool, permission, hook package의 exported 선언·signature 참조 · api-tool-ask · api-tool-bash · api-tool-deferred · api-tool-files · api-tool-helpers · api-tool-ls · api-tool-monitor · api-tool-multiedit · api-tool-registry · api-tool-ripgrep · api-tool-schema · api-tool-search · api-tool-shell-session · api-tool-shell-tools · api-tool-sleep · api-tool-task · api-tool-tasklist · api-tool-taskoutput · api-tool-taskstop · api-tool-todo · api-tool-tool · api-tool-webfetch · api-tool-websearch · api-permission-permission · api-hook-hook
| 종류 | 식별자 | 선언/시그니처 | 근거 |
|---|---|---|---|
| const | ExecuteExtraToolName |
<code>const ExecuteExtraToolName = "ExecuteExtraTool"</code> | tool/deferred.go |
| const | KindBash |
<code>const KindBash TaskKind = "bash"</code> | tool/task.go |
| const | KindMonitor |
<code>const KindMonitor TaskKind = "monitor"</code> | tool/task.go |
| const | SearchExtraToolsName |
<code>const SearchExtraToolsName = "SearchExtraTools"</code> | tool/deferred.go |
| const | TaskCompleted |
<code>const TaskCompleted TaskStatus = "completed"</code> | tool/task.go |
| const | TaskFailed |
<code>const TaskFailed TaskStatus = "failed"</code> | tool/task.go |
| const | TaskKilled |
<code>const TaskKilled TaskStatus = "killed"</code> | tool/task.go |
| const | TaskRunning |
<code>const TaskRunning TaskStatus = "running"</code> | tool/task.go |
| const | TodoCompleted |
<code>const TodoCompleted TodoStatus = "completed"</code> | tool/todo.go |
| const | TodoInProgress |
<code>const TodoInProgress TodoStatus = "in_progress"</code> | tool/todo.go |
| const | TodoPending |
<code>const TodoPending TodoStatus = "pending"</code> | tool/todo.go |
| field | Answer.Selected |
<code>Selected []string</code> | tool/ask.go |
| field | Notification.Kind |
<code>Kind TaskKind</code> | tool/task.go |
| field | Notification.OutputPath |
<code>OutputPath string</code> | tool/task.go |
| field | Notification.Status |
<code>Status TaskStatus</code> | tool/task.go |
| field | Notification.Summary |
<code>Summary string</code> | tool/task.go |
| field | Notification.TaskID |
<code>TaskID string</code> | tool/task.go |
| field | Option.Description |
<code>Description string</code> | tool/ask.go |
| field | Option.Label |
<code>Label string</code> | tool/ask.go |
| field | ProgressInfo.Message |
<code>Message string</code> | tool/tool.go |
| field | Question.Header |
<code>Header string</code> | tool/ask.go |
| field | Question.MultiSelect |
<code>MultiSelect bool</code> | tool/ask.go |
| field | Question.Options |
<code>Options []Option</code> | tool/ask.go |
| field | Question.Question |
<code>Question string</code> | tool/ask.go |
| field | Result.Content |
<code>Content []llm.ContentBlock</code> | tool/tool.go |
| field | Result.Extra |
<code>Extra []llm.Message</code> | tool/tool.go |
| field | Result.IsError |
<code>IsError bool</code> | tool/tool.go |
| field | SearchResult.Description |
<code>Description string json:"description"</code> |
tool/websearch.go |
| field | SearchResult.Position |
<code>Position int json:"position"</code> |
tool/websearch.go |
| field | SearchResult.Title |
<code>Title string json:"title"</code> |
tool/websearch.go |
| field | SearchResult.URL |
<code>URL string json:"url"</code> |
tool/websearch.go |
| field | SpawnSpec.Command |
<code>Command string</code> | tool/task.go |
| field | SpawnSpec.Description |
<code>Description string</code> | tool/task.go |
| field | SpawnSpec.Env |
<code>Env []string</code> | tool/task.go |
| field | SpawnSpec.Kind |
<code>Kind TaskKind</code> | tool/task.go |
| field | SpawnSpec.WorkingDir |
<code>WorkingDir string</code> | tool/task.go |
| field | Spec.Concurrent |
<code>Concurrent func(json.RawMessage) bool</code> | tool/tool.go |
| field | Spec.Description |
<code>Description string</code> | tool/tool.go |
| field | Spec.Name |
<code>Name string</code> | tool/tool.go |
| field | Spec.Permissions |
<code>Permissions func(ctx context.Context, input json.RawMessage, pc permission.Context) permission.Decision</code> | tool/tool.go |
| field | Spec.Prompt |
<code>Prompt string</code> | tool/tool.go |
| field | Spec.RawInput |
<code>RawInput bool</code> | tool/tool.go |
| field | Spec.ReadOnly |
<code>ReadOnly func(json.RawMessage) bool</code> | tool/tool.go |
| field | Spec.Run |
<code>Run func(ctx context.Context, input json.RawMessage, tc *ToolContext) (Result, error)</code> | tool/tool.go |
| field | Spec.Schema |
<code>Schema map[string]any</code> | tool/tool.go |
| field | Task.Command |
<code>Command string</code> | tool/task.go |
| field | Task.Description |
<code>Description string</code> | tool/task.go |
| field | Task.EndTime |
<code>EndTime time.Time</code> | tool/task.go |
| field | Task.ExitCode |
<code>ExitCode int</code> | tool/task.go |
| field | Task.ID |
<code>ID string</code> | tool/task.go |
| field | Task.Kind |
<code>Kind TaskKind</code> | tool/task.go |
| field | Task.OutputPath |
<code>OutputPath string</code> | tool/task.go |
| field | Task.StartTime |
<code>StartTime time.Time</code> | tool/task.go |
| field | Task.Status |
<code>Status TaskStatus</code> | tool/task.go |
| field | TaskInfo.Backgrounded |
<code>Backgrounded bool</code> | tool/task.go |
| field | TaskInfo.Command |
<code>Command string</code> | tool/task.go |
| field | TaskInfo.Description |
<code>Description string</code> | tool/task.go |
| field | TaskInfo.EndTime |
<code>EndTime time.Time</code> | tool/task.go |
| field | TaskInfo.ExitCode |
<code>ExitCode int</code> | tool/task.go |
| field | TaskInfo.ID |
<code>ID string</code> | tool/task.go |
| field | TaskInfo.Kind |
<code>Kind TaskKind</code> | tool/task.go |
| field | TaskInfo.OutputPath |
<code>OutputPath string</code> | tool/task.go |
| field | TaskInfo.StartTime |
<code>StartTime time.Time</code> | tool/task.go |
| field | TaskInfo.Status |
<code>Status TaskStatus</code> | tool/task.go |
| field | Todo.Content |
<code>Content string json:"content"</code> |
tool/todo.go |
| field | Todo.Status |
<code>Status TodoStatus json:"status"</code> |
tool/todo.go |
| field | ToolContext.AgentID |
<code>AgentID string</code> | tool/tool.go |
| field | ToolContext.Emit |
<code>Emit func(ProgressInfo)</code> | tool/tool.go |
| field | ToolContext.Env |
<code>Env []string</code> | tool/tool.go |
| field | ToolContext.MaxOutputChars |
<code>MaxOutputChars int</code> | tool/tool.go |
| field | ToolContext.OutputDir |
<code>OutputDir string</code> | tool/tool.go |
| field | ToolContext.Tasks |
<code>Tasks *Manager</code> | tool/tool.go |
| field | ToolContext.ToolUseID |
<code>ToolUseID string</code> | tool/tool.go |
| field | ToolContext.WorkingDir |
<code>WorkingDir string</code> | tool/tool.go |
| field | WebFetchConfig.CACert |
<code>CACert string</code> | tool/webfetch.go |
| field | WebFetchConfig.InsecureTLS |
<code>InsecureTLS bool</code> | tool/webfetch.go |
| field | WebFetchConfig.Proxy |
<code>Proxy string</code> | tool/webfetch.go |
| field | WebSearchConfig.Backend |
<code>Backend string</code> | tool/websearch.go |
| field | WebSearchConfig.BraveAPIKey |
<code>BraveAPIKey string</code> | tool/websearch.go |
| field | WebSearchConfig.CACert |
<code>CACert string</code> | tool/websearch.go |
| field | WebSearchConfig.DeepSeekAPIKey |
<code>DeepSeekAPIKey string</code> | tool/websearch.go |
| field | WebSearchConfig.DeepSeekBaseURL |
<code>DeepSeekBaseURL string</code> | tool/websearch.go |
| field | WebSearchConfig.DeepSeekModel |
<code>DeepSeekModel string</code> | tool/websearch.go |
| field | WebSearchConfig.InsecureTLS |
<code>InsecureTLS bool</code> | tool/websearch.go |
| field | WebSearchConfig.Proxy |
<code>Proxy string</code> | tool/websearch.go |
| field | WebSearchConfig.TavilyAPIKey |
<code>TavilyAPIKey string</code> | tool/websearch.go |
| func | BackgroundTasksDisabled |
<code>func BackgroundTasksDisabled() bool</code> | tool/task.go |
| func | Build |
<code>func Build(s Spec) CoreTool</code> | tool/tool.go |
| func | Capture |
<code>func Capture(tc *ToolContext, s string) string</code> | tool/helpers.go |
| func | CaptureOnce |
<code>func CaptureOnce(tc *ToolContext, s string) string</code> | tool/helpers.go |
| func | DefaultTools |
<code>func DefaultTools() []CoreTool</code> | tool/registry.go |
| func | EnsureRipgrep |
<code>func EnsureRipgrep() string</code> | tool/ripgrep.go |
| func | Errorf |
<code>func Errorf(s string) Result</code> | tool/tool.go |
| func | InteractiveShellDisabled |
<code>func InteractiveShellDisabled() bool</code> | tool/shell_session.go |
| func | NewAskUserQuestion |
<code>func NewAskUserQuestion(ask AskUserFunc) CoreTool</code> | tool/ask.go |
| func | NewBash |
<code>func NewBash() CoreTool</code> | tool/bash.go |
| func | NewEdit |
<code>func NewEdit() CoreTool</code> | tool/files.go |
| func | NewExecuteExtraTool |
<code>func NewExecuteExtraTool(reg *Registry, unlock *UnlockSet) CoreTool</code> | tool/deferred.go |
| func | NewGlob |
<code>func NewGlob() CoreTool</code> | tool/search.go |
| func | NewGrep |
<code>func NewGrep() CoreTool</code> | tool/search.go |
| func | NewLS |
<code>func NewLS() CoreTool</code> | tool/ls.go |
| func | NewManager |
<code>func NewManager(sessionID string) (*Manager, error)</code> | tool/task.go |
| func | NewMonitor |
<code>func NewMonitor() CoreTool</code> | tool/monitor.go |
| func | NewMultiEdit |
<code>func NewMultiEdit() CoreTool</code> | tool/multiedit.go |
| func | NewRead |
<code>func NewRead() CoreTool</code> | tool/files.go |
| func | NewRegistry |
<code>func NewRegistry(tools ...CoreTool) *Registry</code> | tool/registry.go |
| func | NewSearchExtraTools |
<code>func NewSearchExtraTools(reg *Registry, deferred []string) CoreTool</code> | tool/deferred.go |
| func | NewShellClose |
<code>func NewShellClose() CoreTool</code> | tool/shell_tools.go |
| func | NewShellList |
<code>func NewShellList() CoreTool</code> | tool/shell_tools.go |
| func | NewShellOpen |
<code>func NewShellOpen() CoreTool</code> | tool/shell_tools.go |
| func | NewShellRead |
<code>func NewShellRead() CoreTool</code> | tool/shell_tools.go |
| func | NewShellSend |
<code>func NewShellSend() CoreTool</code> | tool/shell_tools.go |
| func | NewSleep |
<code>func NewSleep() CoreTool</code> | tool/sleep.go |
| func | NewTaskList |
<code>func NewTaskList() CoreTool</code> | tool/tasklist.go |
| func | NewTaskOutput |
<code>func NewTaskOutput() CoreTool</code> | tool/taskoutput.go |
| func | NewTaskStop |
<code>func NewTaskStop() CoreTool</code> | tool/taskstop.go |
| func | NewTodoStore |
<code>func NewTodoStore() *TodoStore</code> | tool/todo.go |
| func | NewUnlockSet |
<code>func NewUnlockSet(initial ...string) *UnlockSet</code> | tool/deferred.go |
| func | NewWebFetch |
<code>func NewWebFetch(cfg WebFetchConfig) CoreTool</code> | tool/webfetch.go |
| func | NewWebSearch |
<code>func NewWebSearch(cfg WebSearchConfig) (CoreTool, error)</code> | tool/websearch.go |
| func | NewWrite |
<code>func NewWrite() CoreTool</code> | tool/files.go |
| func | RenderDeferredToolsBlock |
<code>func RenderDeferredToolsBlock(names []string) string</code> | tool/deferred.go |
| func | RenderTodoReminder |
<code>func RenderTodoReminder(todos []Todo) string</code> | tool/todo.go |
| func | RipgrepPath |
<code>func RipgrepPath() string</code> | tool/ripgrep.go |
| func | ShellSessionTools |
<code>func ShellSessionTools() []CoreTool</code> | tool/shell_tools.go |
| func | Text |
<code>func Text(s string) Result</code> | tool/tool.go |
| func | ValidateInput |
<code>func ValidateInput(schema map[string]any, raw json.RawMessage) error</code> | tool/schema.go |
| func | WebSearchProbe |
<code>func WebSearchProbe(ctx context.Context, cfg WebSearchConfig, query string, limit int) ([]SearchResult, error)</code> | tool/websearch.go |
| interface method | CoreTool.Call |
<code>Callfunc(ctx context.Context, input json.RawMessage, tc *ToolContext) (Result, error)</code> | tool/tool.go |
| interface method | CoreTool.CheckPermissions |
<code>CheckPermissionsfunc(ctx context.Context, input json.RawMessage, pc permission.Context) permission.Decision</code> | tool/tool.go |
| interface method | CoreTool.Description |
<code>Descriptionfunc() string</code> | tool/tool.go |
| interface method | CoreTool.InputSchema |
<code>InputSchemafunc() map[string]any</code> | tool/tool.go |
| interface method | CoreTool.IsConcurrencySafe |
<code>IsConcurrencySafefunc(input json.RawMessage) bool</code> | tool/tool.go |
| interface method | CoreTool.IsReadOnly |
<code>IsReadOnlyfunc(input json.RawMessage) bool</code> | tool/tool.go |
| interface method | CoreTool.Name |
<code>Namefunc() string</code> | tool/tool.go |
| interface method | CoreTool.Prompt |
<code>Promptfunc() string</code> | tool/tool.go |
| method | Manager.Background |
<code>func (*Manager) Background(id string)</code> | tool/task.go |
| method | Manager.Cleanup |
<code>func (*Manager) Cleanup()</code> | tool/task.go |
| method | Manager.DrainNotifications |
<code>func (*Manager) DrainNotifications() []Notification</code> | tool/task.go |
| method | Manager.Forget |
<code>func (*Manager) Forget(id string)</code> | tool/task.go |
| method | Manager.Get |
<code>func (*Manager) Get(id string) (TaskInfo, bool)</code> | tool/task.go |
| method | Manager.Kill |
<code>func (*Manager) Kill(id string) bool</code> | tool/task.go |
| method | Manager.KillAll |
<code>func (*Manager) KillAll() int</code> | tool/task.go |
| method | Manager.List |
<code>func (*Manager) List() []TaskInfo</code> | tool/task.go |
| method | Manager.Output |
<code>func (*Manager) Output(id string, maxBytes int) (string, error)</code> | tool/task.go |
| method | Manager.RunForeground |
<code>func (*Manager) RunForeground(ctx context.Context, spec SpawnSpec, timeout time.Duration) (t *Task, finished bool, output string, err error)</code> | tool/task.go |
| method | Manager.Spawn |
<code>func (*Manager) Spawn(spec SpawnSpec) (*Task, error)</code> | tool/task.go |
| method | Manager.Wait |
<code>func (*Manager) Wait(ctx context.Context, id string, timeout time.Duration) (TaskInfo, bool)</code> | tool/task.go |
| method | Notification.String |
<code>func (Notification) String() string</code> | tool/task.go |
| method | Option.UnmarshalJSON |
<code>func (*Option) UnmarshalJSON(data []byte) error</code> | tool/ask.go |
| method | Registry.Add |
<code>func (*Registry) Add(t CoreTool)</code> | tool/registry.go |
| method | Registry.Get |
<code>func (*Registry) Get(name string) (CoreTool, bool)</code> | tool/registry.go |
| method | Registry.List |
<code>func (*Registry) List() []CoreTool</code> | tool/registry.go |
| method | Registry.Schemas |
<code>func (*Registry) Schemas() []llm.ToolSchema</code> | tool/registry.go |
| method | Result.Flatten |
<code>func (Result) Flatten() string</code> | tool/tool.go |
| method | TaskStatus.Terminal |
<code>func (TaskStatus) Terminal() bool</code> | tool/task.go |
| method | TodoStore.List |
<code>func (*TodoStore) List() []Todo</code> | tool/todo.go |
| method | TodoStore.Tool |
<code>func (*TodoStore) Tool() CoreTool</code> | tool/todo.go |
| method | UnlockSet.Add |
<code>func (*UnlockSet) Add(names ...string)</code> | tool/deferred.go |
| method | UnlockSet.Has |
<code>func (*UnlockSet) Has(name string) bool</code> | tool/deferred.go |
| method | UnlockSet.List |
<code>func (*UnlockSet) List() []string</code> | tool/deferred.go |
| type | Answer |
<code>type Answer struct</code> | tool/ask.go |
| type | AskUserFunc |
<code>type AskUserFunc func(ctx context.Context, q Question) Answer</code> | tool/ask.go |
| type | CoreTool |
<code>type CoreTool interface</code> | tool/tool.go |
| type | Manager |
<code>type Manager struct</code> | tool/task.go |
| type | Notification |
<code>type Notification struct</code> | tool/task.go |
| type | Option |
<code>type Option struct</code> | tool/ask.go |
| type | ProgressInfo |
<code>type ProgressInfo struct</code> | tool/tool.go |
| type | Question |
<code>type Question struct</code> | tool/ask.go |
| type | Registry |
<code>type Registry struct</code> | tool/registry.go |
| type | Result |
<code>type Result struct</code> | tool/tool.go |
| type | SearchResult |
<code>type SearchResult struct</code> | tool/websearch.go |
| type | SpawnSpec |
<code>type SpawnSpec struct</code> | tool/task.go |
| type | Spec |
<code>type Spec struct</code> | tool/tool.go |
| type | Task |
<code>type Task struct</code> | tool/task.go |
| type | TaskInfo |
<code>type TaskInfo struct</code> | tool/task.go |
| type | TaskKind |
<code>type TaskKind string</code> | tool/task.go |
| type | TaskStatus |
<code>type TaskStatus string</code> | tool/task.go |
| type | Todo |
<code>type Todo struct</code> | tool/todo.go |
| type | TodoStatus |
<code>type TodoStatus string</code> | tool/todo.go |
| type | TodoStore |
<code>type TodoStore struct</code> | tool/todo.go |
| type | ToolContext |
<code>type ToolContext struct</code> | tool/tool.go |
| type | UnlockSet |
<code>type UnlockSet struct</code> | tool/deferred.go |
| type | WebFetchConfig |
<code>type WebFetchConfig struct</code> | tool/webfetch.go |
| type | WebSearchConfig |
<code>type WebSearchConfig struct</code> | tool/websearch.go |
permission
| 종류 | 식별자 | 선언/시그니처 | 근거 |
|---|---|---|---|
| const | Allow |
<code>const Allow Behavior = "allow"</code> | permission/permission.go |
| const | Ask |
<code>const Ask Behavior = "ask"</code> | permission/permission.go |
| const | Deny |
<code>const Deny Behavior = "deny"</code> | permission/permission.go |
| const | ModeAcceptEdits |
<code>const ModeAcceptEdits Mode = "acceptEdits"</code> | permission/permission.go |
| const | ModeAuto |
<code>const ModeAuto Mode = "auto"</code> | permission/permission.go |
| const | ModeBypass |
<code>const ModeBypass Mode = "bypassPermissions"</code> | permission/permission.go |
| const | ModeDefault |
<code>const ModeDefault Mode = "default"</code> | permission/permission.go |
| const | ModeDontAsk |
<code>const ModeDontAsk Mode = "dontAsk"</code> | permission/permission.go |
| const | ModePlan |
<code>const ModePlan Mode = "plan"</code> | permission/permission.go |
| field | Context.Allowed |
<code>Allowed []string</code> | permission/permission.go |
| field | Context.Disallowed |
<code>Disallowed []string</code> | permission/permission.go |
| field | Context.Mode |
<code>Mode Mode</code> | permission/permission.go |
| field | Context.WorkingDir |
<code>WorkingDir string</code> | permission/permission.go |
| field | Decision.Behavior |
<code>Behavior Behavior</code> | permission/permission.go |
| field | Decision.Message |
<code>Message string</code> | permission/permission.go |
| field | Decision.Suggestions |
<code>Suggestions []Update</code> | permission/permission.go |
| field | Decision.UpdatedInput |
<code>UpdatedInput json.RawMessage</code> | permission/permission.go |
| field | Request.Ask |
<code>Ask CanUseTool</code> | permission/permission.go |
| field | Request.Ctx |
<code>Ctx Context</code> | permission/permission.go |
| field | Request.Input |
<code>Input json.RawMessage</code> | permission/permission.go |
| field | Request.IsReadOnly |
<code>IsReadOnly bool</code> | permission/permission.go |
| field | Request.ToolDecision |
<code>ToolDecision Decision</code> | permission/permission.go |
| field | Request.ToolName |
<code>ToolName string</code> | permission/permission.go |
| field | Update.Rule |
<code>Rule string json:"rule"</code> |
permission/permission.go |
| field | Update.Type |
<code>Type string json:"type"</code> |
permission/permission.go |
| func | Allowed |
<code>func Allowed() Decision</code> | permission/permission.go |
| func | AskUser |
<code>func AskUser(msg string) Decision</code> | permission/permission.go |
| func | Denied |
<code>func Denied(msg string) Decision</code> | permission/permission.go |
| func | Evaluate |
<code>func Evaluate(ctx context.Context, req Request) Decision</code> | permission/permission.go |
| type | Behavior |
<code>type Behavior string</code> | permission/permission.go |
| type | CanUseTool |
<code>type CanUseTool func(ctx context.Context, toolName string, input json.RawMessage, pc Context) Decision</code> | permission/permission.go |
| type | Context |
<code>type Context struct</code> | permission/permission.go |
| type | Decision |
<code>type Decision struct</code> | permission/permission.go |
| type | Mode |
<code>type Mode string</code> | permission/permission.go |
| type | Request |
<code>type Request struct</code> | permission/permission.go |
| type | Update |
<code>type Update struct</code> | permission/permission.go |
hook
| 종류 | 식별자 | 선언/시그니처 | 근거 |
|---|---|---|---|
| const | PostToolUse |
<code>const PostToolUse EventType = "PostToolUse"</code> | hook/hook.go |
| const | PostToolUseFailure |
<code>const PostToolUseFailure EventType = "PostToolUseFailure"</code> | hook/hook.go |
| const | PreToolUse |
<code>const PreToolUse EventType = "PreToolUse"</code> | hook/hook.go |
| const | SessionEnd |
<code>const SessionEnd EventType = "SessionEnd"</code> | hook/hook.go |
| const | SessionStart |
<code>const SessionStart EventType = "SessionStart"</code> | hook/hook.go |
| const | Stop |
<code>const Stop EventType = "Stop"</code> | hook/hook.go |
| const | SubagentStart |
<code>const SubagentStart EventType = "SubagentStart"</code> | hook/hook.go |
| const | UserPromptSubmit |
<code>const UserPromptSubmit EventType = "UserPromptSubmit"</code> | hook/hook.go |
| field | Event.AgentType |
<code>AgentType string</code> | hook/hook.go |
| field | Event.Input |
<code>Input json.RawMessage</code> | hook/hook.go |
| field | Event.IsError |
<code>IsError bool</code> | hook/hook.go |
| field | Event.Messages |
<code>Messages []llm.Message</code> | hook/hook.go |
| field | Event.Prompt |
<code>Prompt string</code> | hook/hook.go |
| field | Event.Result |
<code>Result json.RawMessage</code> | hook/hook.go |
| field | Event.ToolName |
<code>ToolName string</code> | hook/hook.go |
| field | Event.Type |
<code>Type EventType</code> | hook/hook.go |
| field | Result.AdditionalContext |
<code>AdditionalContext string</code> | hook/hook.go |
| field | Result.Decision |
<code>Decision string</code> | hook/hook.go |
| field | Result.Message |
<code>Message string</code> | hook/hook.go |
| field | Result.PreventContinuation |
<code>PreventContinuation bool</code> | hook/hook.go |
| field | Result.UpdatedInput |
<code>UpdatedInput json.RawMessage</code> | hook/hook.go |
| func | NewRegistry |
<code>func NewRegistry() *Registry</code> | hook/hook.go |
| method | Registry.FireSessionEnd |
<code>func (*Registry) FireSessionEnd(ctx context.Context)</code> | hook/hook.go |
| method | Registry.FireSessionStart |
<code>func (*Registry) FireSessionStart(ctx context.Context)</code> | hook/hook.go |
| method | Registry.FireSubagentStart |
<code>func (*Registry) FireSubagentStart(ctx context.Context, agentType string)</code> | hook/hook.go |
| method | Registry.FireUserPromptSubmit |
<code>func (*Registry) FireUserPromptSubmit(ctx context.Context, prompt string) string</code> | hook/hook.go |
| method | Registry.On |
<code>func (*Registry) On(t EventType, f Func) *Registry</code> | hook/hook.go |
| method | Registry.PostToolUse |
<code>func (*Registry) PostToolUse(ctx context.Context, name string, input, result []byte, isErr bool)</code> | hook/hook.go |
| method | Registry.PreToolUse |
<code>func (*Registry) PreToolUse(ctx context.Context, name string, input []byte) (bool, string, []byte)</code> | hook/hook.go |
| method | Registry.Stop |
<code>func (*Registry) Stop(ctx context.Context, messages []llm.Message) (prevent bool, blockingErrors []string, message string)</code> | hook/hook.go |
| type | Event |
<code>type Event struct</code> | hook/hook.go |
| type | EventType |
<code>type EventType string</code> | hook/hook.go |
| type | Func |
<code>type Func func(ctx context.Context, ev Event) Result</code> | hook/hook.go |
| type | Registry |
<code>type Registry struct</code> | hook/hook.go |
| type | Result |
<code>type Result struct</code> | hook/hook.go |