pub async fn run_task( task: &str, config: &Config, memory: Arc<dyn Memory>, skills: Arc<dyn SkillLibrary>, recorder: Arc<FsRecorder>, soul: Option<Soul>, flags: RunFlags, ) -> Result<()>