Let task agents create and manage subtasks
This commit is contained in:
@@ -568,7 +568,7 @@ func (m *Manager) ensureLive(ctx context.Context, sess api.AgentSession, task ap
|
||||
if err != nil {
|
||||
return nil, err
|
||||
}
|
||||
tools := []mcp.Tool{m.askTool(l), m.cancelQuestionTool(l), m.createTaskTool(l), m.setMergeTitleTool(l), m.stopMergeTool(l), m.setTaskSummaryTool(l), m.searchClosedTool(l), m.exposePortTool(l)}
|
||||
tools := append([]mcp.Tool{m.askTool(l), m.cancelQuestionTool(l), m.setMergeTitleTool(l), m.stopMergeTool(l), m.setTaskSummaryTool(l), m.searchClosedTool(l), m.exposePortTool(l)}, m.subtaskTools(l)...)
|
||||
if sess.Role == api.Implementer && task.WorkflowStage != nil {
|
||||
frozen, err := m.store.TaskWorkflow(ctx, task.Id)
|
||||
if err != nil {
|
||||
@@ -848,6 +848,10 @@ func (m *Manager) turnEnded(ctx context.Context, l *live, res endResult) error {
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
go m.closeMergedSubtasks(l.taskID, l.dir)
|
||||
if payload["summary"] == true && discard.State == store.DiscardNone {
|
||||
go m.reportToParent(l.taskID, res.result)
|
||||
}
|
||||
mergingBy := ""
|
||||
if finished && !handoff {
|
||||
mergingBy, err = m.store.MergingBy(ctx, l.taskID)
|
||||
|
||||
Reference in New Issue
Block a user