<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:

def cluster_autocomplete(self, text, line, start_index, end_index):
        "autocomplete for the use command, obtain list of clusters first"
        if not self.CACHED_CLUSTERS:
            clusters = [cluster.name for cluster in api.get_all_clusters()]
            self.CACHED_CLUSTERS = clusters

        if text:
            return [cluster for cluster in self.CACHED_CLUSTERS if cluster.startswith(text)]
        else:
            return self.CACHED_CLUSTERS