docs: def curate_skills_data(self, skills_data):
          """ Sync skills_data with actual skills on disk. """
          local_skills = [s for s in self.list() if s.is_local]
          default_skills = [s.name for s in self.list_defaults()]
          local_skill_names = [s.name for s in local_skills]
          skills_data_skills = [s['name'] for s in skills_data['skills']]
  
          # Check for skills that aren't in the list
          for skill in local_skills:
              if skill.name not in skills_data_skills:
                  if skill.name in default_skills:
                      origin = 'default'
                  elif skill.url:
                      origin = 'cli'
                  else:
                      origin = 'non-msm'
                  entry = build_skill_entry(skill.name, origin, False)
                  skills_data['skills'].append(entry)
  
          # Check for skills in the list that doesn't exist in the filesystem
          remove_list = []
          for s in skills_data.get('skills', []):
              if (s['name'] not in local_skill_names and
                      s['installation'] == 'installed'):
                  remove_list.append(s)
          for skill in remove_list:
              skills_data['skills'].remove(skill)
          return skills_data