W propose a conceptual framework and a collection of tools to develop a general knowledge repository. This repository is designed to provide facilities to encode a large collection of existing and to-be-developed knowledge bases, and to support general retrieval across these knowledge bases as required to inform the development of new decision support (or other knowledge based) systems. The fundamental technological commitments are as follows. We employ an architecture that provides very strong support for the encapsulation of knowledge bases as well as any number of tools to operate on those knowledge bases. We employ a base representation language such as loom to serve as the target language for reformulation of existing knowledge bases. Within this base language, all prior knowledge will be classified along problem-solving dimensions the goals, constraints, and contextual factors associated with using thatKnowledge to solve a given problem. We identify a critical kind of knowledge, called problem solving skill knowledge, which defines when and how data is used to solve problems. This knowledge is plan-like and is critical to the processes that support knowledge reuse. Problem-solving skill knowledge is classified as mentioned, and intelligent browsing facilities are used to match this knowledge to user requirements thereby defining a retrieval paradigm . Knowledge repositories are significantly stronger than knowledge bases, since they encode problem-solving skill knowledge, not just a collection of facts. They will be useful in all applications of knowledge-based technology.