Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/ZhangShenao/harness9
/ functions
Functions
1,385 in github.com/ZhangShenao/harness9
⨍
Functions
1,385
◇
Types & classes
252
Method
Check
(r *Result)
internal/evals/assertions.go:181
Method
Check
(r *Result)
internal/evals/assertions.go:195
Method
Check
(r *Result)
internal/evals/assertions.go:215
Method
Clear
Clear 删除该会话的全部消息。
internal/memory/sqlite_session.go:176
Method
Clear
(_ context.Context)
internal/engine/agent_loop_test.go:518
Method
Close
(_ context.Context)
internal/tools/bash_test.go:223
Method
Close
Close 是空操作:DockerEnvironment 不负责容器生命周期,由 Manager/Container 管理。
internal/sandbox/docker_environment.go:31
Method
Close
Close 终止子进程并等待 readLoop goroutine 退出。 若 Start() 在启动 readLoop 前失败(loopRun == false),跳过 <-t.done 以避免永久阻塞。
internal/mcp/transport.go:211
Method
Close
()
internal/mcp/manager_test.go:22
Method
Close
()
internal/mcp/client_test.go:183
Method
Close
Close 关闭 Client 的底层传输层。
internal/mcp/client.go:143
Method
Compact
(msgs []schema.Message)
internal/engine/compact_test.go:27
Method
Compact
Compact 对当前 session 的历史消息执行一次强制压缩,跳过 80% 阈值检查。 行为说明: - compactor 为 nil 时:立即返回零值 CompactionData 和 nil error(no-op) - session 为 nil 时:立即返回零值 Compaction
internal/engine/compact.go:32
Method
CompactForce
CompactForce 强制压缩,跳过 token 预算阈值检查,直接移除最旧的非 system 消息。 用于手动触发的 /compact 命令:无论当前 token 用量多少,都执行一次结构裁剪。 与 Compact 的区别:minTail 固定为 1,允许在消息数量很少时也能压缩。 注意:此
internal/memory/compaction.go:133
Method
CompactForce
CompactForce 强制压缩,跳过 token 预算阈值检查,总是尝试 LLM 摘要。 用于手动触发的 /compact 命令:无论当前 token 用量多少,都执行摘要压缩。 与 Compact 的区别:minTail 固定为 1,允许在消息数量很少时也能压缩(只保留最新 1 条)。
internal/memory/summarization.go:143
Method
Consolidate
(ctx context.Context)
internal/ltm/provider.go:37
Method
Definition
Definition 返回 web_search 工具的 schema 定义。
internal/tools/web_search.go:53
Method
Definition
Definition 返回工具元信息。
internal/tools/memory_search.go:27
Method
Definition
Definition 返回工具元信息,包含描述和 JSON Schema 参数定义。
internal/tools/todo_write.go:60
Method
Definition
()
internal/tools/web_fetch.go:52
Method
Definition
()
internal/tools/registry_test.go:22
Method
Definition
()
internal/tools/registry_test.go:34
Method
Definition
Definition 返回工具元信息。
internal/tools/memory_write.go:37
Method
Definition
Definition 动态生成工具定义:subagent_type 枚举所有已注册子代理,description 拼接各用途。
internal/subagent/task_tool.go:36
Method
Definition
()
internal/subagent/runner_test.go:53
Method
Definition
()
internal/engine/stream_test.go:415
Method
Definition
Definition 返回工具元信息,包含描述和参数 JSON Schema。
internal/skills/use_skill_tool.go:26
Method
Definition
()
internal/hooks/hook_test.go:18
Method
Definition
()
internal/hooks/hook_test.go:66
Method
Embed
(ctx context.Context, text string)
internal/ltm/provider.go:31
Method
Execute
(_ context.Context, _ json.RawMessage)
internal/tools/registry_test.go:26
Method
Execute
(_ context.Context, _ json.RawMessage)
internal/tools/registry_test.go:37
Method
Execute
Execute 根据工具名称查找并执行对应工具。若工具不存在,返回包含错误信息的 ToolResult。 工具执行失败时,错误会被捕获并封装为 IsError=true 的 ToolResult, 使引擎能够将错误信息作为 Observation 回传给 LLM,支持自愈(Self-Healing)
internal/tools/registry.go:83
Method
Execute
Execute 处理 memory_write 调用,返回写入后条目的 JSON(remove 返回状态消息)。
internal/tools/memory_write.go:76
Method
Execute
Execute 解析参数、查找子代理定义并执行(前台阻塞 / 后台异步)。
internal/subagent/task_tool.go:80
Method
Execute
(context.Context, json.RawMessage)
internal/subagent/runner_test.go:57
Method
Execute
(_ context.Context, _ schema.ToolCall)
internal/engine/compact_test.go:18
Method
Execute
(_ context.Context, call schema.ToolCall)
internal/engine/agent_loop_test.go:81
Method
Execute
(_ context.Context, call schema.ToolCall)
internal/engine/agent_loop_test.go:92
Method
Execute
(ctx context.Context, call schema.ToolCall)
internal/engine/agent_loop_test.go:346
Method
Execute
(ctx context.Context, _ json.RawMessage)
internal/engine/stream_test.go:425
Method
Execute
(_ context.Context, _ json.RawMessage)
internal/hooks/hook_test.go:21
Method
Execute
(_ context.Context, args json.RawMessage)
internal/hooks/hook_test.go:69
Method
Extract
(msgs []schema.Message)
internal/memory/summarization_test.go:425
Method
FormatForInjection
()
internal/memory/summarization_test.go:350
Method
Generate
(_ context.Context, _ []schema.Message, _ []schema.ToolDefinition)
internal/observability/provider_test.go:19
Method
Generate
(_ context.Context, _ []schema.Message, _ []schema.ToolDefinition)
internal/observability/provider_test.go:156
Method
Generate
(_ context.Context, msgs []schema.Message, _ []schema.ToolDefinition)
internal/memory/summarization_test.go:22
Method
Generate
(_ context.Context, _ []schema.Message, _ []schema.ToolDefinition)
internal/memory/summarization_test.go:296
Method
Generate
(_ context.Context, _ []schema.Message, _ []schema.ToolDefinition)
internal/memory/summarization_test.go:413
Method
Generate
(ctx context.Context, msgs []schema.Message, tools []schema.ToolDefinition)
internal/engine/agent_loop_test.go:533
Method
Generate
Generate 未在流式路径中使用,仅满足 LLMProvider 接口约束。
internal/engine/stream_test.go:288
Method
Generate
Generate 实现 LLMProvider 接口的阻塞式调用。 通过共享的 convertMessages / convertTools 完成类型转换后, 调用 Anthropic SDK 的 Messages API 获取完整响应,并提取实际 token 用量。
internal/provider/anthropic.go:92
Method
Generate
Generate 实现 LLMProvider 接口的阻塞式调用。 通过共享的 convertMessages / convertTools 完成类型转换后, 调用 OpenAI SDK 的 Chat Completions API 获取完整响应,并提取实际 token 用量。
internal/provider/openai.go:123
Method
Generate
Generate 实现 LLMProvider 接口的阻塞式调用,委托给 simulateResponse。 测试桩不模拟真实 API 调用,Usage 返回 nil。
internal/provider/providertest/mock.go:39
Method
Generate
Generate 实现 LLMProvider 接口,执行回调并返回结果。Usage 返回 nil(测试桩)。
internal/provider/providertest/mock.go:120
Method
Generate
(_ context.Context, _ []schema.Message, _ []schema.ToolDefinition)
internal/ltm/extractor_test.go:17
Method
GenerateStream
(_ context.Context, _ []schema.Message, _ []schema.ToolDefinition)
internal/observability/provider_test.go:22
Method
GenerateStream
(ctx context.Context, _ []schema.Message, _ []schema.ToolDefinition)
internal/observability/provider_test.go:160
Method
GenerateStream
(ctx context.Context, messages []schema.Message, tools []schema.ToolDefinition)
internal/engine/agent_loop_test.go:57
Method
GenerateStream
(ctx context.Context, msgs []schema.Message, td []schema.ToolDefinition)
internal/engine/agent_loop_test.go:114
Method
GenerateStream
(ctx context.Context, msgs []schema.Message, tools []schema.ToolDefinition)
internal/engine/agent_loop_test.go:537
Method
GenerateStream
(_ context.Context, _ []schema.Message, _ []schema.ToolDefinition)
internal/engine/stream_test.go:292
Method
GenerateStream
GenerateStream 委托给 Generate,将结果包装为 channel 返回。 eval 场景不需要逐 token 流式,因此简化为一次性 Done 事件。 错误情况:将错误包装为 StreamChunkError 写入 channel 后关闭,不返回 channel error。 这
internal/evals/provider.go:83
Method
GenerateStream
GenerateStream 实现 LLMProvider 接口的流式调用。 在独立 goroutine 中迭代 SDK 流,文本增量发送 StreamChunkTextDelta, 工具调用通过 accumulator 累积后随 StreamChunkDone 一并输出。 从 message_st
internal/provider/anthropic.go:138
Method
GenerateStream
GenerateStream 实现 LLMProvider 接口的流式调用。 在独立 goroutine 中迭代 SDK 流,文本增量发送 StreamChunkTextDelta, 工具调用通过 accumulator 累积后随 StreamChunkDone 一并输出。 通过 StreamOpt
internal/provider/openai.go:162
Method
GenerateStream
GenerateStream 实现 LLMProvider 接口的流式调用。 文本内容以单次 StreamChunkTextDelta 发送,结束时发送含完整 Message 的 StreamChunkDone。
internal/provider/providertest/mock.go:45
Method
GenerateStream
(ctx context.Context, msgs []schema.Message, tools []schema.ToolDefinition)
internal/provider/providertest/mock.go:125
Method
GetAvailableTools
GetAvailableTools 遍历注册表,收集所有工具的 ToolDefinition 并返回。 返回的列表顺序不固定(map 迭代顺序不确定)。
internal/tools/registry.go:70
Method
GetAvailableTools
()
internal/engine/compact_test.go:17
Method
GetAvailableTools
()
internal/engine/agent_loop_test.go:80
Method
GetAvailableTools
()
internal/engine/agent_loop_test.go:91
Method
GetAvailableTools
()
internal/engine/agent_loop_test.go:345
Method
GetMessages
GetMessages 返回历史消息,按插入顺序升序排列。 limit=0 返回全部;limit>0 返回最近 limit 条(升序)。
internal/memory/sqlite_session.go:30
Method
GetMessages
(_ context.Context, _ int)
internal/engine/agent_loop_test.go:503
Method
GetTodos
GetTodos 内存实现:始终返回空列表(无持久化)。
internal/memory/mem_session.go:70
Method
GetTodos
GetTodos 返回该会话已持久化的任务列表,按 position 升序排列。
internal/memory/sqlite_session.go:185
Method
GetTodos
(_ context.Context)
internal/engine/agent_loop_test.go:519
Method
ID
()
internal/tools/bash_test.go:222
Method
ID
()
internal/sandbox/docker_environment.go:28
Method
ID
ID 返回 Sandbox UUID。
internal/sandbox/container.go:81
Method
Init
Init 实现 tea.Model,启动输入框光标闪烁;若有 sandboxCh 同时启动 Sandbox 状态监听;若有 mcpCh 同时启动 MCP 状态监听。
cmd/harness9/tui.go:375
Method
Name
Name 返回工具标识符 "memory_search"。
internal/tools/memory_search.go:24
Method
Name
()
internal/tools/registry_test.go:20
Method
Name
()
internal/tools/registry_test.go:33
Method
Name
Name 返回工具标识符 "memory_write"。
internal/tools/memory_write.go:34
Method
Name
Name 返回工具标识符 "task"。
internal/subagent/task_tool.go:33
Method
Name
()
internal/subagent/runner_test.go:52
Method
Name
()
internal/engine/stream_test.go:413
Method
Name
()
internal/hooks/hook_test.go:17
Method
Name
()
internal/hooks/hook_test.go:65
Function
NewAnthropicProvider
NewAnthropicProvider 创建并返回 AnthropicProvider 实例。 从环境变量读取 ANTHROPIC_API_KEY 和 ANTHROPIC_BASE_URL 完成认证配置; maxTokens <= 0 时自动设为 4096(Anthropic API 要求必须指定
internal/provider/anthropic.go:61
Method
Notify
Notify 发送 JSON-RPC 通知(无 ID,不等待响应)。
internal/mcp/transport.go:198
Method
Notify
Notify 通过 HTTP POST 发送 JSON-RPC 通知(fire-and-forget,忽略响应体)。 使用 5s 超时避免服务器不可达时无限阻塞。
internal/mcp/transport.go:287
Method
Notify
(_ string, _ json.RawMessage)
internal/mcp/manager_test.go:27
Method
Notify
(_ string, _ json.RawMessage)
internal/mcp/client_test.go:174
Method
OnInteractionEnd
(_ context.Context, _ int, _ error)
internal/engine/observer.go:25
Method
OnInteractionEnd
(ctx context.Context, turns int, err error)
internal/engine/agent_loop_test.go:679
Method
OnInteractionStart
(ctx context.Context, _, _ string)
internal/engine/observer.go:22
Method
OnInteractionStart
(ctx context.Context, sid, prompt string)
internal/engine/agent_loop_test.go:673
← previous
next →
601–700 of 1,385, ranked by callers