集成 ToolExecutor 到 Room

- 在 Room 结构体中添加 ToolExecutor 字段
- 在 Load 函数中初始化 ToolExecutor
This commit is contained in:
scorpio 2026-03-10 09:37:42 +08:00
parent 9a4ff4713a
commit cbbb7d399d
2 changed files with 38 additions and 32 deletions

View File

@ -12,6 +12,7 @@ import (
"github.com/sdaduanbilei/agent-team/internal/agent" "github.com/sdaduanbilei/agent-team/internal/agent"
"github.com/sdaduanbilei/agent-team/internal/llm" "github.com/sdaduanbilei/agent-team/internal/llm"
"github.com/sdaduanbilei/agent-team/internal/prompt" "github.com/sdaduanbilei/agent-team/internal/prompt"
"github.com/sdaduanbilei/agent-team/internal/room/tools"
"github.com/sdaduanbilei/agent-team/internal/skill" "github.com/sdaduanbilei/agent-team/internal/skill"
"github.com/sdaduanbilei/agent-team/internal/store" "github.com/sdaduanbilei/agent-team/internal/store"
) )
@ -33,6 +34,8 @@ func Load(roomDir string, agentsDir string, skillsDir string, opts ...LoadOption
r := &Room{Config: cfg, Dir: roomDir, members: make(map[string]*agent.Agent), Mode: "plan", Status: StatusPending} r := &Room{Config: cfg, Dir: roomDir, members: make(map[string]*agent.Agent), Mode: "plan", Status: StatusPending}
r.ToolExecutor = tools.NewExecutor(filepath.Join(roomDir, "workspace"))
projectRoot := filepath.Dir(agentsDir) projectRoot := filepath.Dir(agentsDir)
if data, err := os.ReadFile(filepath.Join(projectRoot, "SYSTEM.md")); err == nil { if data, err := os.ReadFile(filepath.Join(projectRoot, "SYSTEM.md")); err == nil {
r.systemRules = string(data) r.systemRules = string(data)

View File

@ -10,6 +10,7 @@ import (
"github.com/sdaduanbilei/agent-team/internal/agent" "github.com/sdaduanbilei/agent-team/internal/agent"
"github.com/sdaduanbilei/agent-team/internal/llm" "github.com/sdaduanbilei/agent-team/internal/llm"
"github.com/sdaduanbilei/agent-team/internal/prompt" "github.com/sdaduanbilei/agent-team/internal/prompt"
"github.com/sdaduanbilei/agent-team/internal/room/tools"
"github.com/sdaduanbilei/agent-team/internal/skill" "github.com/sdaduanbilei/agent-team/internal/skill"
"github.com/sdaduanbilei/agent-team/internal/store" "github.com/sdaduanbilei/agent-team/internal/store"
"github.com/sdaduanbilei/agent-team/internal/user" "github.com/sdaduanbilei/agent-team/internal/user"
@ -71,6 +72,8 @@ type Room struct {
Store *store.Store Store *store.Store
currentGroupID int64 // 当前用户消息的 group_id currentGroupID int64 // 当前用户消息的 group_id
ToolExecutor *tools.Executor
cancelFunc func() cancelFunc func()
cancelMu sync.Mutex cancelMu sync.Mutex
} }