This paper proposes a new algorithm based on the clonal selection principle for the design of spreading codes for DS-CDMA. The algorithm follows a multi-objective approach, generating complex spreading codes with good autocorrelation as well as good crosscorrelation properties. It also enables spreading code design with no restrictions on the number of users or code length. The algorithm maintains a repertoire of codes that are subject to cloning and undergo a process of affinity maturation to obtain better codes. Results indicate that the produces code sets that lie very close to the theoretical Pareto front. Categories and Subject Descriptors D.3.3 [Artificial Intelligence]: Problem Solving, Control Methods, and Search – heuristic methods. General Terms: Algorithms, Design.