feat: add ask user question

This commit is contained in:
voocel
2026-03-09 19:52:43 +08:00
parent 75bdda1fe3
commit ef55c89e9d
13 changed files with 868 additions and 83 deletions

View File

@@ -7,6 +7,7 @@ import (
)
// BuildCoordinator 组装 Coordinator Agent 及其 SubAgent。
// 返回 Agent 和 AskUserTool供调用方注入 handler
func BuildCoordinator(
cfg Config,
store *state.Store,
@@ -14,9 +15,10 @@ func BuildCoordinator(
refs tools.References,
prompts Prompts,
styles map[string]string,
) *agentcore.Agent {
) (*agentcore.Agent, *tools.AskUserTool) {
// 共享工具
contextTool := tools.NewContextTool(store, refs, cfg.Style)
askUser := tools.NewAskUserTool()
// Architect SubAgent 工具
architectTools := []agentcore.Tool{
@@ -75,10 +77,11 @@ func BuildCoordinator(
subagentTool := agentcore.NewSubAgentTool(architect, writer, editor)
return agentcore.NewAgent(
agent := agentcore.NewAgent(
agentcore.WithModel(model),
agentcore.WithSystemPrompt(prompts.Coordinator),
agentcore.WithTools(subagentTool, contextTool),
agentcore.WithTools(subagentTool, contextTool, askUser),
agentcore.WithMaxTurns(60),
)
return agent, askUser
}